diff --git a/CLAUDE.md b/CLAUDE.md index 9e28133..4f53d5c 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -342,6 +342,17 @@ python3 scripts/verify-pipeline.py # 위 셋을 모든 프로 python3 -m unittest discover -s scripts/tests # 파서·검사기·생성기 ``` +**검사기는 「볼 것이 없어서 통과」를 「문제 없음」이라고 쓰지 않는다.** 셋을 가른다. + +| 상태 | 종료 코드 | 문구 | +|---|---|---| +| 봤고 괜찮다 | 0 | `문제 없음` · `error 0` | +| 대상이 성립하지 않는다 (프로젝트 없음 · 계약 없음) | **2** | `대상이 성립하지 않는다 — <이유>` | +| 볼 것이 아직 없다 (계약은 있고 기록이 0건) | 0 | `기록 0건 — 계약의 글감 N개가 아직 안 쓰였다` | + +가운데는 error 로 센다. 아래는 error 가 아니다 — **아직 안 쓴 것은 결함이 아니다.** 다만 +초록으로 보이면 안 된다. 오타 한 번에 관문이 조용히 무효가 되는 것을 이 구분이 막는다. + 게시 전에는 아래 둘을 돌린다. 하나는 파서를, 하나는 문장을 본다. **본문이 Studio 파서를 통과하는지.** Studio가 쓰는 파서를 그대로 부르므로 통과하면 저장도 통과한다. @@ -378,6 +389,18 @@ python3 scripts/check-figure-overlap.py <프로젝트> # 상자와 라벨이 라벨이 상자에 먹혀도 통과한다. 겹침 검사는 렌더러가 남긴 배경 사각형의 좌표를 그대로 읽으므로 글자 폭을 어림하지 않는다. `verify-project-layout.py` 가 이 검사를 함께 돈다. +**그 방법이 성립하는 범위가 따로 있다.** 「글자 폭을 어림하지 않는다」는 **방법**이고, +아래는 그 방법의 **적용 범위**다. 둘은 다른 문장이다. + +`check-figure-overlap.py` 가 겹침을 판정할 때 보는 것은 `` 뿐이다. `` 는 겹친 +자리에 무엇이 있었는지 이름을 대는 데만 쓰고 판정에는 안 쓴다. 그래서 배경 사각형이 그 글자가 +실제로 차지하는 자리와 같을 때만 겹침이 겹침으로 나타난다. + +**이 검사기는 techviz 가 만든 SVG 에서만 유효하다.** 손으로 고친 SVG, 다른 도구가 만든 SVG, +렌더한 뒤 글자만 바꾼 SVG 는 **겹침이 있어도 없다고 답한다** — 배경 사각형이 안 따라 바뀌기 +때문이다. 실측 예: 글자를 60자로 늘렸는데 배경은 131.9px 그대로였고 `check-figure-overlap` +은 통과시켰다. 그런 SVG 는 눈으로 본다. + **그래도 마지막에는 눈으로 본다.** 글자가 상자 밖으로 조금 나가거나 화살표가 라벨을 지나는 것은 좌표로 안 잡힌다. diff --git a/scripts/terminal-evidence/tests/__pycache__/test_render_terminal.cpython-312.pyc b/scripts/terminal-evidence/tests/__pycache__/test_render_terminal.cpython-312.pyc deleted file mode 100644 index 84b2461..0000000 Binary files a/scripts/terminal-evidence/tests/__pycache__/test_render_terminal.cpython-312.pyc and /dev/null differ