No os-sdlc role migrates existing tests named in Required work #863

Open
opened 2026-09-30 21:23:24 +00:00 by jared · 1 comment
Owner

Problem

The os-sdlc ticket map gives new tests to the test-writer and production changes to the programmer. The programmer never edits tests. The test-writer adds one new test for each acceptance criterion. No role changes an existing test that pins a seam that the ticket replaces. ## Retired tests only deletes whole files. Thus a ticket that replaces a seam leaves the old tests failing, and the programmer spends each repair on failures that it must not fix.

Observed

Two runs on 2026-09-30 escalated for this cause:

  • #858, implementation 17: bound_exhausted:programmer-repair/fail after dispatches 135-138. The ticket did not name the stale tea-runner tests (issue_source_test.rb, issue_source_forgejo_test.rb, issue_source_github_test.rb, tracker/tea_*_test.rb). Hand-finished.
  • #856, implementation 18: bound_exhausted:programmer-repair/fail after dispatches 145-148. The ticket named about 14 test files to migrate in Required work items 8-12. The test-writer left them unchanged and added new tests. Each repair used 3-4 tool calls. Suite: 285 runs, 15 failures, 9 errors; about 20 were the named stale tests. Hand-finished.
    A ticket that names the migration does not prevent the failure, because the work list has no owner for it.

Reproduce

n/a: observed in two pipeline runs; a ticket whose Required work names an existing test file to migrate reproduces it.

Approach

Give existing-test migration an owner. Option 1: the test-writer round includes Required work items that name existing test files, and the test-reviewer checks them. Option 2: a dedicated node migrates the named tests before the programmer runs.

Acceptance criteria

  1. A ticket whose Required work names an existing test file to migrate completes its implementation without a hand-finish.

VERDICT: CREATE — two runs (#858, #856) escalated for the same cause; no open ticket assigns existing-test migration to a role (#727 Retired-tests check, #709 post-green test defects, #644 writer/reviewer loop are different).

Origin

Session: e5cfbe57-4cd0-4d7e-aabd-f64294775172
Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os/e5cfbe57-4cd0-4d7e-aabd-f64294775172.jsonl
Where: plugins/os-sdlc maps/poodr-ticket-implementation.yaml (work-list Align step, test-writer brief)

## Problem The os-sdlc ticket map gives new tests to the test-writer and production changes to the programmer. The programmer never edits tests. The test-writer adds one new test for each acceptance criterion. No role changes an existing test that pins a seam that the ticket replaces. `## Retired tests` only deletes whole files. Thus a ticket that replaces a seam leaves the old tests failing, and the programmer spends each repair on failures that it must not fix. ## Observed Two runs on 2026-09-30 escalated for this cause: - #858, implementation 17: `bound_exhausted:programmer-repair/fail` after dispatches 135-138. The ticket did not name the stale tea-runner tests (`issue_source_test.rb`, `issue_source_forgejo_test.rb`, `issue_source_github_test.rb`, `tracker/tea_*_test.rb`). Hand-finished. - #856, implementation 18: `bound_exhausted:programmer-repair/fail` after dispatches 145-148. The ticket named about 14 test files to migrate in Required work items 8-12. The test-writer left them unchanged and added new tests. Each repair used 3-4 tool calls. Suite: 285 runs, 15 failures, 9 errors; about 20 were the named stale tests. Hand-finished. A ticket that names the migration does not prevent the failure, because the work list has no owner for it. ## Reproduce n/a: observed in two pipeline runs; a ticket whose Required work names an existing test file to migrate reproduces it. ## Approach Give existing-test migration an owner. Option 1: the test-writer round includes Required work items that name existing test files, and the test-reviewer checks them. Option 2: a dedicated node migrates the named tests before the programmer runs. ## Acceptance criteria 1. A ticket whose Required work names an existing test file to migrate completes its implementation without a hand-finish. VERDICT: CREATE — two runs (#858, #856) escalated for the same cause; no open ticket assigns existing-test migration to a role (#727 Retired-tests check, #709 post-green test defects, #644 writer/reviewer loop are different). ## Origin Session: e5cfbe57-4cd0-4d7e-aabd-f64294775172 Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os/e5cfbe57-4cd0-4d7e-aabd-f64294775172.jsonl Where: plugins/os-sdlc maps/poodr-ticket-implementation.yaml (work-list Align step, test-writer brief)
Author
Owner

User ruled Option A on 2026-10-01. Children: #865, #866. Premise correction: ## Retired tests already supports path#method; this work covers shared helpers and fakes.

User ruled Option A on 2026-10-01. Children: #865, #866. Premise correction: `## Retired tests` already supports `path#method`; this work covers shared helpers and fakes.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jared/cc-os#863
No description provided.