@ediosyncratic see https://cfengine.com/dev/issues/4325 for the ordering discussion.

`methods` promises are guaranteed to be **attempted** in the order given.  In that, they are unique; although in practice all promises are tried in the order given, the agent can rearrange them any way it likes.