Show staged changes in the code_changes brief fact #887

Closed
opened 2026-10-01 16:33:33 +00:00 by jared · 1 comment
Owner

Problem

The code_changes brief fact does not show a file deletion that the programmer staged with git rm. The behavior-verifier reads that fact. It then reports a deletion ticket's acceptance criteria as outstanding, although the files are deleted. The run goes back to the test-writer, which cannot write a red test, and the Runner escalates with unexpected_pass.

Observed

In #883 implementation 2, the programmer deleted plugins/os-sdlc/maps/coding.yaml and plugins/os-sdlc/maps/poodr-implementation.yaml. git status --short showed both as staged deletions (D ). Behavior-verifier dispatch 13 failed AC 1 and AC 2 because its production diff showed no deletion. Its handoff said that staged deletions may be missing from code_changes. Test-writer dispatch 14 found no red test possible. The Runner returned:

{"type":"escalation","node":"needs-orchestrator","reason":"unexpected_pass:test-writer/diff-test"}

The orchestrator finished the ticket by hand.

Reproduce

n/a: needs a live pipeline run; stage a deletion with git rm in a programmer dispatch, then read the behavior-verifier brief's code_changes.

Origin

  • Trigger: /os-sdlc:implement 883 (implementation 2), 2026-10-01
  • Improvised this session: hand-finished #883 after the escalation
  • Chain: behavior-verifier wrong fail verdict ← code_changes (query/brief/facts.rb:99) is built from Project::Changes#code_diff (query/project/changes.rb:31) ← Git::Repo#changed_paths (adapter/git/repo.rb:55) runs git diff --name-only plus untracked files, which omits every staged change; staged_paths exists but is not used ← DESIGN (plugins/os-sdlc/lib/os_sdlc/adapter/git/repo.rb)
  • Root candidate: none
  • Where: plugins/os-sdlc/lib/os_sdlc/adapter/git/repo.rb (changed_paths)

VERDICT: CREATE — the source confirms that changed_paths omits staged changes, so a git rm deletion never reaches the behavior-verifier (ticket-skeptic, 2026-10-01).

  • Session: 48007765-88b8-473d-a30b-3a551275ef48
  • Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os/48007765-88b8-473d-a30b-3a551275ef48.jsonl
## Problem The `code_changes` brief fact does not show a file deletion that the programmer staged with `git rm`. The behavior-verifier reads that fact. It then reports a deletion ticket's acceptance criteria as outstanding, although the files are deleted. The run goes back to the test-writer, which cannot write a red test, and the Runner escalates with `unexpected_pass`. ## Observed In #883 implementation 2, the programmer deleted `plugins/os-sdlc/maps/coding.yaml` and `plugins/os-sdlc/maps/poodr-implementation.yaml`. `git status --short` showed both as staged deletions (`D `). Behavior-verifier dispatch 13 failed AC 1 and AC 2 because its production diff showed no deletion. Its handoff said that staged deletions may be missing from `code_changes`. Test-writer dispatch 14 found no red test possible. The Runner returned: ``` {"type":"escalation","node":"needs-orchestrator","reason":"unexpected_pass:test-writer/diff-test"} ``` The orchestrator finished the ticket by hand. ## Reproduce n/a: needs a live pipeline run; stage a deletion with `git rm` in a programmer dispatch, then read the behavior-verifier brief's `code_changes`. ## Origin - Trigger: /os-sdlc:implement 883 (implementation 2), 2026-10-01 - Improvised this session: hand-finished #883 after the escalation - Chain: behavior-verifier wrong fail verdict ← `code_changes` (`query/brief/facts.rb:99`) is built from `Project::Changes#code_diff` (`query/project/changes.rb:31`) ← `Git::Repo#changed_paths` (`adapter/git/repo.rb:55`) runs `git diff --name-only` plus untracked files, which omits every staged change; `staged_paths` exists but is not used ← DESIGN (`plugins/os-sdlc/lib/os_sdlc/adapter/git/repo.rb`) - Root candidate: none - Where: plugins/os-sdlc/lib/os_sdlc/adapter/git/repo.rb (`changed_paths`) VERDICT: CREATE — the source confirms that `changed_paths` omits staged changes, so a `git rm` deletion never reaches the behavior-verifier (ticket-skeptic, 2026-10-01). - Session: 48007765-88b8-473d-a30b-3a551275ef48 - Transcript: /home/jared/.claude/projects/-home-jared-dev-cc-os/48007765-88b8-473d-a30b-3a551275ef48.jsonl
Author
Owner

Resolution

Done: Folded into #726 as evidence

Evidence: Same mechanism; see occurrence comment on #726

Follow-ups: none

## Resolution **Done:** Folded into #726 as evidence **Evidence:** Same mechanism; see occurrence comment on #726 **Follow-ups:** none
jared closed this issue 2026-10-18 18:59:17 +00:00
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#887
No description provided.