HomePhabricator

Fix a looping workflow when trying to submit a partially-effectless transaction…

Description

Fix a looping workflow when trying to submit a partially-effectless transaction group

Summary:
Ref T13289. If you do this:

  • Subscribe to a task (so we don't generate a subscribe side-effect later).
  • Prepare a transaction group: sign with MFA, change projects (don't make any changes), add a comment.
  • Submit the transaction group.

...you'll get prompted "Some actions don't have any effect (the non-change to projects), apply remaining effects?".

If you confirm, you get MFA'd, but the MFA flow loses the "continue" confirmation, so you get trapped in a workflow loop of confirming and MFA'ing.

Instead, retain the "continue" bit through the MFA.

Also, don't show "You can't sign an empty transaction group" if there's a comment.

See also T13295, since the amount of magic here can probably be reduced. There's likely little reason for "continue" or "hisec" to be magic nowadays.

Test Plan:

  • Went through the workflow above.
  • Before: looping workflow.
  • After: "Continue" carries through the MFA gate.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13289

Differential Revision: https://secure.phabricator.com/D20552