os-sdlc: second red round after behavior-verifier fail cannot converge when the programmer already implemented the outstanding criteria #724
Labels
No labels
P0
P1
P2
P3
bug
category/code-change
category/cross-repo
category/eval-run
category/investigation
category/no-test-target
category/owner-ruling
category/prose-artifact
category/recurring-chore
category/structure
category/umbrella
crc-refactor
create
delete
enhancement
filed-by/agent
filed-by/user
frozen
lint-rule
needs-info
needs-triage
next
plugin/cc-architect
plugin/os
plugin/os-adr
plugin/os-aidd-lint
plugin/os-backlog
plugin/os-context
plugin/os-doc-hygiene
plugin/os-sdlc
plugin/os-vault
project/cc-os
ready-for-agent
ready-for-human
recurring
review
rule-proposal
update
waiting
wayfinder:grilling
wayfinder:map
wayfinder:map
wayfinder:research
wayfinder:task
wayfinder:task
wontfix
worklist/deviations
worklist/lint-rule
worklist/new-implement-build
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
jared/cc-os#724
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
In the poodr-ticket-implementation map, a behavior-verifier fail routes back to test-writer for a red round.
But by then the programmer's green rounds have already changed production (here: Worktree::Git, AfterMerge, Invocation wiring all existed).
New tests for grep-shaped acceptance criteria (no ENV in lib, only git.rb spawns git) are green on arrival, and test-reviewer must reject tests with no red evidence.
Result: 5 consecutive test-writer/test-reviewer fail cycles (dispatches 453-471) with no possible exit; the progress bound (#511) never escalated.
VERDICT: CREATE (user-directed: workflow defects surfaced during /os-sdlc:implement are the only acceptable terminal reason and must be captured)
Observed
Reviewer's stated objection round 9: "four test methods are unexpectedly green; none is named in any red_tests entry" for finish_command_collaborators_test.rb and lib_collaborator_boundary_test.rb.
Reproduce
n/a: needs a ticket whose criteria are partly satisfied by an earlier green round; see implementation 43 dispatch history.
Origin
Trigger: /os-sdlc:implement 717, implementation 43, session 89876543-c418-46b0-b994-dd6dc6887802
Improvised this session: hand-finished after the loop (same as #718 impl 38)
Chain: unbounded red/review loop ← test-reviewer requires red evidence ← production already green from prior programmer round ← map has no "already satisfied, skip to suite-check" route
Root candidate: this ticket
Where: plugins/os-sdlc/maps/poodr-ticket-implementation.yaml, the behavior-verifier → test-writer edge and the test-reviewer red-evidence rule.
Session: 89876543-c418-46b0-b994-dd6dc6887802
Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os/89876543-c418-46b0-b994-dd6dc6887802.jsonl
Second occurrence 2026-09-25: procman #1, implementation 6. After behavior-verifier failed one criterion (README example runnable), test-reviewer rejected dispatches 42, 44, 46 partly because tests for criteria the programmer had already implemented were green; the Runner escalated on bound_exhausted:test-reviewer/fail after 7 writer/reviewer rounds. Inlining a loop-back framing in the reviewer prompt did not stop it. Session 8dde24ae-74d3-4884-810d-e4c873a6c2ab.
Resolution
Done: behavior-verifier fail edge no longer resets its own bound; third fail escalates
Evidence: commit
1c41b2e7merged9f272c2f; red test loop_ledger_test#test_ticket_map_behavior_verifier_fail_exhausts_its_bound_across_test_reviewer_fails; os-sdlc suite 1318 runs 0 failuresFollow-ups: none