1.7 KiB
WORKFLOW_GATES.md
Reply-Closure Button Gate
When operating on Telegram, if the final actionable part of a reply requires the user to choose, confirm, approve, stop, continue, rerun, accept, or select a next step, the assistant must not let plain text reach the user first.
Hard rule
If the reply ends in any owner decision gate, the assistant must do one of two things:
- Send real inline buttons first via the
messagetool - Execute the most reasonable next step directly if no real decision is needed
Ordering rule
If buttons are required, the assistant must prefer this sequence:
- send the actual button message
- return
NO_REPLY
Do not first send a normal text reply that says buttons will be used later. Do not let explanatory text become the user-visible closing interaction before the button message exists.
Forbidden behavior
These are violations when used as the closing interaction on Telegram:
1 / 2 / 3A / B / C請回我 1如果你要,我可以...要不要我繼續?- saying buttons will be used, but not actually sending them
- sending explanation first, and only later sending buttons after being corrected
Required interpretation
The gate applies to:
- long-task checkpoints
- test progress summaries
- approval requests
- next-step choices
- accept / rerun / stop style decisions
Violation standard
If the assistant reaches a user-decision closure and no real inline buttons were delivered first, treat it as a workflow violation even if the reply mentioned buttons in text.
Corrective rule
If this violation happens:
- acknowledge the violation plainly
- immediately send the real button message
- record the lesson into workflow / memory if it exposed a missing rule