Skip to content

fix(reverse_sync): verify --no-normalize 옵션을 추가합니다#983

Merged
jk-kim0 merged 3 commits intomainfrom
jk/reverse-sync-verify-no-normalize
Apr 6, 2026
Merged

fix(reverse_sync): verify --no-normalize 옵션을 추가합니다#983
jk-kim0 merged 3 commits intomainfrom
jk/reverse-sync-verify-no-normalize

Conversation

@jk-kim0
Copy link
Copy Markdown
Contributor

@jk-kim0 jk-kim0 commented Apr 5, 2026

Summary

  • reverse-sync verify --no-normalize 옵션을 추가하여 정규화 없이 roundtrip 비교하는 원시 모드를 지원합니다
  • FC/패치 차이의 실제 규모를 반복적으로 확인할 수 있습니다
  • --no-normalize 모드에서는 첫 번째 h1 제거와 trailing 빈 줄 정규화만 적용합니다

Test plan

  • python3 -m pytest tests/test_reverse_sync_roundtrip_verifier.py — 37 passed
  • reverse-sync verify --branch=split/ko-proofread-20260221-administrator-manual-general — 45/45 PASS (기본 모드)
  • reverse-sync verify --branch=... --no-normalize — 34 passed, 11 failed (원시 모드에서 정규화 효과 확인)

🤖 Generated with Claude Code

정규화 없이 roundtrip 비교하는 원시 모드를 추가하여,
FC/패치 차이의 실제 규모를 반복적으로 확인할 수 있게 합니다.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel bot commented Apr 5, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
querypie-docs Ready Ready Preview, Comment Apr 5, 2026 7:06pm

Request Review

verify --no-normalize 인자 추가로 깨진 배치 CLI 테스트 기대값을 갱신합니다.

push usage 요약에도 --no-normalize 옵션을 반영하여 실제 지원 범위와 도움말을 일치시킵니다.
jk-kim0 added a commit to jk-kim0/skills-jk that referenced this pull request Apr 5, 2026
…#191)

## 문제 현상

querypie/querypie-docs#983 을 debate-review로 E2E 검증하는 과정에서 debate-review
자체에 두 가지 회귀가 드러났습니다.

1. CC cross-review 응답이 `{issue_id, action}` 형태로 오면 orchestrator가
`decision` 필드를 찾지 못해 Step2에서 실패합니다.
2. Step 도중 실패해 checkpoint가 남은 세션도 같은 HEAD에서는 `Session already completed
for this HEAD`로 차단되어 recovery 경로로 재진입할 수 없습니다.

## 구현 내용

- cross-review 응답 정규화에 `action -> decision` alias를 추가했습니다.
- Step2 진행 로그도 `action` alias를 읽도록 맞췄습니다.
- failed state라도 orchestrator checkpoint가 남아 있으면 같은 HEAD에서 `init`이 세션을
`resumed`로 복구하도록 조정했습니다.
- 위 두 회귀를 고정하는 CLI/orchestrator/progress 테스트를 추가했습니다.

## 검증

- `python3 -m pytest skills/cc-codex-debate-review/tests/test_cli.py -k
"failed_session_with_checkpoint_resumes_same_head"`
- `python3 -m pytest
skills/cc-codex-debate-review/tests/test_orchestrator.py -k
"normalize_cross_verifications"`
- `python3 -m pytest
skills/cc-codex-debate-review/tests/test_progress.py -k "format_step2"`

---
🤖 Generated by github-actions[bot]

---------

Co-authored-by: JK <jk@chequer.io>
Co-authored-by: Atlas <atlas@jk.agent>
- isu_002 (confluence-mdx/tests/test_reverse_sync_cli.py:485): 새 옵션에 대한 테스트가 사용법 문자열 갱신만 확인하고 실제 동작은 검증하지 않습니다.
@jk-kim0
Copy link
Copy Markdown
Contributor Author

jk-kim0 commented Apr 5, 2026

[debate-review][sha:2ae745f197477cf4bef42f2bb904600610bdeb92] Consensus reached after 3 rounds.

Debate Summary

  • isu_001 [withdrawn] --no-normalize와 --lenient 상호 배제 검증
  • isu_002 [accepted] --no-normalize 실제 동작 테스트 추가
  • isu_003 [withdrawn] entry point docstring --no-normalize 누락

Applied Fixes

  • confluence-mdx/tests/test_reverse_sync_cli.py:485 - (reported by codex, applied by codex) 새 옵션에 대한 테스트가 사용법 문자열 갱신만 확인하고 실제 동작은 검증하지 않습니다.

Withdrawn Findings

  • confluence-mdx/bin/reverse_sync_cli.py:755 - --no-normalize를 추가했지만 --lenient와의 상호 배제 검증이 없습니다.
    Reason: rpt_001과 동일
  • confluence-mdx/bin/reverse-sync:6 - entry point 스크립트의 docstring Usage에 verify만 --no-normalize를 표기하고 push와 debug는 누락. _USAGE_SUMMARY와 불일치.
    Reason: 실질적 영향 없음, argparse는 올바르게 동작

@jk-kim0 jk-kim0 merged commit b5958fd into main Apr 6, 2026
7 checks passed
@jk-kim0 jk-kim0 deleted the jk/reverse-sync-verify-no-normalize branch April 6, 2026 15:20
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