LZH-YS1998
14ee8806de
fix(engine): single live dispatcher per run + unified approval decision channel
...
OBS-4: checkpoint answers for a run whose dispatcher is still live no longer
re-enter _execute_company_mode (re-entry reset live claim registries and the
attempt ledger stamped in-flight cards interrupted until the streak limit
killed them). The executor keeps a _live_run_dispatchers refcount; task and
peer checkpoint resumes deliver the input in place and wake the dispatcher.
Runs without a live dispatcher keep the original re-entry resume semantics.
OBS-7: approval decisions expressed through the chat/checkpoint route now
reach the approval engine instead of being parsed as plain task input
(which _ask_user treated as deny, re-escalating until the card died).
normalize_escalation_reply maps decision tokens/synonyms (never silently
denies free text), escalation_context_for_blocked_tool rebuilds the
allowlist context from pause_request.permission_context, and
_resume_task_checkpoint applies the grant via
apply_deferred_escalation_decision — the same engine path as the UI card.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-28 10:55:55 +08:00
..
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 14:35:43 +08:00
2026-07-14 20:31:10 +08:00
2026-07-07 22:19:22 +08:00
2026-07-28 10:55:55 +08:00
2026-07-01 17:56:31 +08:00
2026-07-21 11:18:12 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-13 23:02:39 +08:00
2026-07-28 10:55:55 +08:00
2026-07-28 10:55:43 +08:00
2026-07-28 10:55:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-07 22:33:39 +08:00
2026-07-26 22:14:47 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 20:31:10 +08:00
2026-07-14 16:59:24 +08:00
2026-07-16 09:20:40 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 16:59:24 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 14:35:43 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-21 15:40:27 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 10:52:22 +08:00
2026-07-01 17:56:31 +08:00
2026-07-04 17:53:12 +08:00
2026-07-03 10:14:16 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 14:35:43 +08:00
2026-07-01 17:56:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-14 14:35:43 +08:00
2026-07-14 10:52:22 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-07 22:59:53 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 10:52:22 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-27 00:04:42 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-08 18:43:27 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-14 14:35:43 +08:00
2026-07-14 10:52:22 +08:00
2026-07-08 18:43:27 +08:00
2026-07-07 22:38:33 +08:00
2026-07-03 10:14:16 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-08 21:06:39 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 20:31:10 +08:00
2026-07-01 17:56:31 +08:00
2026-07-16 09:20:40 +08:00
2026-07-14 14:35:43 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 14:35:43 +08:00
2026-07-01 17:56:31 +08:00
2026-07-01 17:56:31 +08:00
2026-07-26 22:14:47 +08:00
2026-07-01 17:56:31 +08:00
2026-07-14 10:52:22 +08:00
2026-07-01 17:56:31 +08:00
2026-07-09 20:46:14 +08:00