fix(kanban): gate autonomous dispatch by governance headers - #21914
fix(kanban): gate autonomous dispatch by governance headers#21914camaragon wants to merge 3 commits into
Conversation
|
Closing — please reopen when a concrete use case lands. The mechanics here are clean (header parser + gate at recompute_ready / claim_task / has_spawnable_ready / dispatch_once, with a sane backward-compat default of Two carve-outs from this PR are worth shipping independently if you'd like:
When the governance-header story has a concrete consumer (a real RFC for which UI sets headers, what the dashboard shows, how operators correct mis-headered cards), happy to revisit. Reopening this PR is welcome at that point — the parser + gate work is good and won't have rotted much. Thanks @camaragon. |
Summary
Approval:andExecution:headersobserve,propose,execute-safe) with worker/assigned execution to be spawnableTest Plan
python -m pytest tests/hermes_cli/test_kanban_db.py tests/tools/test_cron_prompt_injection.py -q -o 'addopts='→ 76 passed locallyCI note
Current PR CI has repository-baseline noise:
testis red, but currentmainat839cdd1b054a75ff1b581199a83488c8e0f2f788is also red on the same lane.ruff + ty difffailed only while posting/updating the PR lint comment with403 Resource not accessible by integration; the lint report itself says ruff has 0 issues and ty diagnostics are warnings.Risk
Low. Dispatcher gating is intentionally conservative for new governance headers while legacy cards without headers keep existing worker/execute-safe default behavior.
Notes
origin/main.