Skip to content

Run이 끝난 뒤 검증된 journal 기록으로 변경 내역을 보여 준다 (ADR-0057) - #108

Merged
SonAIengine merged 1 commit into
mainfrom
feat/committed-change-report
Oct 25, 2026
Merged

SonAIengine merged 1 commit into
mainfrom
feat/committed-change-report

Conversation

@SonAIengine

Copy link
Copy Markdown
Contributor

요약

Run이 끝나면 모델 요약 외에, verifier를 통과한 journal 기록에서 다시 만든 변경 내역을 보여 준다. 요약이 틀려도 사용자가 실제 변경을 확인할 수 있다.

  • REPL: 답변 뒤 Changes 블록 (patch +N -M과 -/+ 줄, write 생성/교체, process·terminal은 "file changes not tracked"). 줄·명령 상한, control character escape, /resume 시 새 항목만.
  • xgen run: stderr에 XGEN_CHANGE run_id=.. kind=.. 한 줄씩, 읽기 실패 시 XGEN_CHANGES_UNAVAILABLE.
  • protocol·SQLite schema·journal 변경 없음. 기록을 읽기만 한다.

변경 분류: 범용 표시 계약 (특정 도구·파일 규칙 없음).

검증

  • cargo test --workspace 731 passed, clippy·fmt 통과
  • e2e: stale digest patch 거절 후 바른 patch가 적용된 Run에서 XGEN_CHANGE는 적용된 patch 한 줄
  • 실사용(deepseek, 대화형): 3개 사례 x 3회, 화면 변경 내역이 git diff --numstat과 9/9 일치. 중복 행 사례가 화면에 그대로 보임

🤖 Generated with Claude Code

REPL은 Run이 끝나면 모델 요약과 committed 수만 보여 줘서, 요약이 틀려도 실제로 무엇이
바뀌었는지 확인할 수 없었다. 재현(3개 저장소 x 3회)에서 한 저장소는 3회 모두 README에 중복
행을 넣었고, 그중 2회는 요약이 "누락 없음"이라고 말했다.

- inspect_local_changes: Succeeded Receipt + Completed Step만 Receipt 순서로 모으고, 인자는
  승인된 material recipe(digest·Step·capability 대조), changed는 verifier가 확인한 tool
  output에서 가져온다. workspace를 다시 읽지 않는다.
- REPL: 답변 뒤 Changes 블록. patch는 +N -M과 공유 앞뒤 줄을 뺀 -/+ 줄, write는 생성/교체와
  줄 수, process 실행과 터미널 입력은 "file changes not tracked". 변경당 12줄, 전체 40줄,
  명령 120자 상한, control character 전부 escape, /resume 시 새 항목만.
- xgen run: stderr에 XGEN_CHANGE 한 줄씩(내용·인자 제외), 실패 시 XGEN_CHANGES_UNAVAILABLE.
- protocol·SQLite schema·journal 변경 없음.

실사용(deepseek): 3개 사례 x 3회 화면 변경 내역이 git diff --numstat과 9/9 일치.
9 MB 파일 사례에서 python3 실행 명령 표시 확인. cargo test --workspace 731 통과, clippy 통과.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@SonAIengine
SonAIengine merged commit fcdedb7 into main Oct 25, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant