fix(kanban): freeze repeated identical failures - #68027
Conversation
|
Final reconciliation verification at combined candidate
No deployment or merge was performed. |
|
Thanks for the detailed failure-loop hardening and coverage. The premise remains present on current main: I found no verified blocking defect in the proposed implementation. This is an automated hermes-sweeper review. |
SummaryThirteen PRs address or reference #59333/#66909; #59367, #59536, and #59645 implement the requested global Related pull requests
Duplicates#59536 and #59645 are later implementations of #59367. #61372 overlaps the review-reblock portion of #58695, while #61366 and #64585 address the same parentless-dependency cause with different terminal states. Suggested consolidationAuthor action: rebase #59367 onto current main, preserving its boolean-rejection tests and validated routing/event behavior; close #59536 and #59645 as duplicates of #59367 despite their keep_open reviews because their visible diffs retain the validation/default-registration defects summarized above, and close #66909 as a duplicate of #59333. Keep #68027 open with the salvage path of its durable fingerprint, audited rearm, and automatic-path guards; keep #59906, #61366/#64585, and #63723 in separately scoped salvage lanes addressing their recorded reviews, re-scope #60476 away from #59333, narrow #58695 to the safe review-reblock exemption unless an authorized ordered verdict source is added, and retain #61372 only as the closed reference. Cross-PR triage: Reviewed 13 pull requests and 2 issues in this complex. Each diff was read against this issue; Assessment working set: 301 kB of PR diffs, 27 kB of issue/PR text, 17 kB of discussion (19 comments), 10 verify verdicts. verdicts reflect diff content, not PR titles. Part of an automated triage batch. |
Summary
Observable behavior
Attempts one and two may be explicitly retried. The third materially identical failure atomically routes the card to triage and makes every automatic launch/reclaim/promotion/decomposition path ineligible. A reasoned operator rearm clears the breaker and restores eligibility.
Test plan
scripts/run_tests.sh tests/hermes_cli/test_kanban_block_kinds.py tests/hermes_cli/test_kanban_core_functionality.py tests/hermes_cli/test_kanban_db.py tests/hermes_cli/test_kanban_decompose.py tests/plugins/test_kanban_dashboard_plugin.py tests/tools/test_kanban_tools.py— 679 passedpython3 -m py_compile ...— passedgit diff --check origin/main...HEAD— passedProvenance
This semantically ports the accepted local block-loop chain and the independently reviewed third-identical-failure hardening onto current
main, preserving original commit authorship.