최종 판정(HUMAN_REVIEW)이 배지에 반영되지 않던 문제 - #16
Merged
Merged
Conversation
재교정 한도를 소진한 REVISE 는 pipeline._final_verdict() 가 HUMAN_REVIEW 로 승격시킨다(spec 6.8 case d). 그런데 렌더러와 웹 배지는 승격 전 값인 result.fidelity.verdict 를 읽고 있었다 — 그래서 "고치지 못해서 멈춘" 바로 그 경우가 화면에서는 "수정 필요" / "Fidelity 재교정됨 🔁" 로 표시됐다. 금액이 여전히 누락된 출력에 성공 신호가 붙는 셈이다. 배지가 EasyReadResult.verdict(파이프라인 최종 판정)를 따르도록 고치고, 두 값이 갈라지는 경우를 렌더·웹 양쪽에서 회귀 테스트로 고정했다. 기존 테스트는 두 값을 함께 HUMAN_REVIEW 로 세팅해 이 분기를 밟지 않았다.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
무엇이 잘못됐나
재교정 한도(
max_revise)를 소진한REVISE는pipeline._final_verdict()가HUMAN_REVIEW로 승격시킨다(spec 6.8 case d). 그런데 렌더러와 웹 배지는승격 전 값인
result.fidelity.verdict를 읽고 있었다.결과적으로 "고치지 못해서 멈춘" 바로 그 경우가 화면에서는 성공 신호로 표시됐다:
result.verdicthuman_reviewhuman_review금액·기한이 여전히 누락된 출력에 "재교정됨 🔁" 이 붙는다. 또박의 핵심 약속인
"고치지 못하면 멈춘다" 와 화면이 정반대로 말하고 있었다.
재현
고친 방법
배지가
EasyReadResult.verdict(파이프라인 최종 판정)를 따르도록 했다.FidelityReport.verdict는 마지막 단일 검증 결과,EasyReadResult.verdict는파이프라인 최종 판정이라는 구분을 주석으로 고정했다.
왜 안 잡혔나
기존
test_render_html_human_review_badge는result.verdict와result.fidelity를 함께HUMAN_REVIEW로 세팅해서, 두 값이 갈라지는분기를 한 번도 밟지 않았다. 이번에 렌더·웹 양쪽에 그 분기를 회귀 테스트로 고정했다.
검증
python -m pytest -q→ 419 passed (417 + 신규 2)ruff check ttobak/ tooling/ scripts/ tests/→ clean