You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Gated skill: the person who asked never sees the outcome in their chat; the requesting agent's wake-up run carries no channel context #3653
A person asks an agent for an action that needs approval. The approver approves, the action runs and succeeds. The person's chat keeps showing "pending" and is never updated with the outcome.
Steps
As Dana in a Workspace chat with refco-companion: /chase-overdue INV-1001 --request-key rc3-approve
The companion calls refco-ops with /send-payment-reminder INV-1001 --request-key rc3-approve; the skill gate holds it and raises an approval for Sam.
As Sam, approve in the Inbox.
refco-ops runs once and succeeds (file written, metric recorded).
Expected
Dana's chat shows how the request ended.
Actual
Dana's chat ends at the companion's "pending" reply. No further message arrives.
The platform does wake the requesting agent twice ([Trinity] Approved, now running … and [Trinity] Finished successfully …, the #3520 notice), and the companion writes a complete outcome reply each time. Both wake-up runs have no channel context, so the reply is attached to no conversation.
No source_channel, source_channel_chat_id, source_channel_thread, source_channel_client or source_user_email is passed, although execute_task accepts all of them. The gate record already holds the run the request came from (requester_execution_id), and that run carries the person's chat.
Gate request gate-37f5246de57aaf7946649a2a217c9b29397b04db: state succeeded, requester_execution_id = BZ_yoOpa5OA0IdaupJJtzg.
enterprise_portal_messages for the session: 4 rows, the last one the "pending" reply at 14:01:00Z. The run finished at 14:02:06Z.
Response of GGjpvYa3ig1A5fhWxkUviA begins "The payment reminder for INV-1001 was sent successfully."
Scope
Seen with a Workspace (portal) requester. The wake-up call is the same for every channel, so a request that started in Slack or Telegram is expected to behave the same way (not tested). Rejected and expired outcomes use the same wake-up (not yet tested on rc3).
Not verified
Whether passing the originating run's channel fields to execute_task is sufficient for the reply to be written into the Workspace thread, or whether the portal needs an explicit delivery step for a run it did not start.
Related: #3520 (the agent-side completion notice, fixed by #3630).
Rejected path, same build (v1.0.0-rc3, refco): Dana's chat again stays on "pending" after Sam rejects with a reason. The requesting agent's wake-up run (8p2g9Pm15SMliVT6AJLMlg, skill_gate, no channel context) received Rejected … Reason given: "customer disputes", and the agent itself then raised an alert to Dana's Inbox (alert-8p2g9Pm15SMliVT6AJLMlg-inv1003-refused, "Payment reminder for INV-1003 refused — customer disputes").
So on a rejection the person was told, in the Inbox, because the agent chose to raise an alert. On the approved run (GGjpvYa3ig1A5fhWxkUviA) the agent raised nothing, and the person was told nowhere. In neither case does the chat the request was made in show the outcome.
Activity
obasilakis commentedon Oct 13, 2026
/claim
github-actions commentedon Oct 13, 2026
Claimed by @obasilakis. Label
status-in-progressadded.Next steps:
feature/3653-<short-slug>Fixes #3653obasilakis commentedon Oct 13, 2026
Rejected path, same build (
v1.0.0-rc3, refco): Dana's chat again stays on "pending" after Sam rejects with a reason. The requesting agent's wake-up run (8p2g9Pm15SMliVT6AJLMlg,skill_gate, no channel context) receivedRejected … Reason given: "customer disputes", and the agent itself then raised an alert to Dana's Inbox (alert-8p2g9Pm15SMliVT6AJLMlg-inv1003-refused, "Payment reminder for INV-1003 refused — customer disputes").So on a rejection the person was told, in the Inbox, because the agent chose to raise an alert. On the approved run (
GGjpvYa3ig1A5fhWxkUviA) the agent raised nothing, and the person was told nowhere. In neither case does the chat the request was made in show the outcome.docs(security): /cso --diff report for the gated-request chat context (…
fix(skill-gate): the person who asked sees how a gated request ended (#…