KIT: F13 도면 커밋 기준을 정리본 3개 허용으로 (SPEC 34장 보완)
첫 공개 커밋 9068b6c 뒤 F13 의 「도면 파일 커밋 금지」 항목이 FAIL 이던 기준 누락(코치 결함)을
리허설에서 발견해 보완. 커밋된 도면은 정리본 3개(drawing.dxf, drawing.svg, drawing_gen.svg)만 허용하도록
check.sh 와 SPEC 34장을 함께 고쳤다.
check.sh 결과: PASS 151 / FAIL 0 / SKIP 3 (검사 범위 F01~F46)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9068b6c7f2
commit
f33e00bce4
2 files changed
+4
-3
No files matched your search
@@ -612,4 +612,4 @@
|
||||
- 이 저장소는 1차 제출본(커밋 81개, 로컬 보존)을 **공개용으로 정리해 새 이력으로 시작**한 것이다. 옛 이력에는 도면 실제 좌표가 들어 있어 그대로 올리지 않았다. 옛 커밋 기록(메시지)은 `evidence/gitlog_v1.txt`.
|
||||
- 도면 정리(코치, 저장소 밖 도구): 우리가 쓰는 그림 객체와 거기 딸린 블록·레이어·선종류만 남기고, 과업명·지명·외부 참조 이름·저장자·XDATA·OBJECTS 를 지웠다. **모든 좌표를 같은 양만큼 평행이동**해 실제 위치를 알 수 없게 했다(옮긴 양은 기록하지 않는다).
|
||||
- 같은 양을 `tools/views.json`(그림 상자·배치)과 `check.sh`(채점기만 아는 기준점·변조 시험 좌표)에도 적용했다. 추출 결과(3D 데이터 95부재)·도면 연결 11개·생성 SVG 는 옮기기 전과 같다(SVG 바이트 동일, 부재는 1e-9 mm 잡음 하나).
|
||||
- `private/` 에 올리는 것: `drawing.dxf`(정리본), `drawing.svg`(정답지 화면용 그림), `drawing_gen.svg`(첫 화면 그림). 원본 DWG 는 올리지 않으므로 F42 의 DWG 재변환 검사 3건은 SKIP(32장). `.gitignore` 는 `private/` 전체 대신 `private/*.dwg`·`private/full.dxf` 등을 뺀다 — F13 의 「.gitignore 에 private/」 기준을 이것으로 바꾼다.
|
||||
- `private/` 에 올리는 것: `drawing.dxf`(정리본), `drawing.svg`(정답지 화면용 그림), `drawing_gen.svg`(첫 화면 그림). 원본 DWG 는 올리지 않으므로 F42 의 DWG 재변환 검사 3건은 SKIP(32장). `.gitignore` 는 `private/` 전체 대신 `private/*.dwg`·`private/full.dxf` 등을 뺀다 — F13 의 「.gitignore 에 private/」 기준을 이것으로 바꾼다. F13 의 「도면 파일 커밋 금지」 항목도 「커밋된 도면은 정리본 3개뿐」으로 바꾼다(처음 바꿀 때 빠뜨림 — 첫 커밋 뒤 이 항목이 FAIL 이었다).
|
||||
@@ -210,8 +210,9 @@ try:
|
||||
tracked = subprocess.run(["git", "ls-files"], capture_output=True, text=True).stdout.split("\n")
|
||||
except OSError:
|
||||
tracked = ["?"]
|
||||
leak = [t for t in tracked if t.startswith("private/") or t.lower().endswith((".svg", ".pdf", ".dwg"))]
|
||||
report("F13", tracked != ["?"] and not leak, "도면 파일이 커밋되지 않음 (private/, .svg, .pdf, .dwg)" + (f" — 있음: {leak}" if leak else ""))
|
||||
PUB13 = {"private/drawing.dxf", "private/drawing.svg", "private/drawing_gen.svg"}
|
||||
leak = [t for t in tracked if t and t not in PUB13 and (t.startswith("private/") or t.lower().endswith((".svg", ".pdf", ".dwg")))]
|
||||
report("F13", tracked != ["?"] and not leak, "커밋된 도면은 공개용 정리본 3개뿐 (SPEC 34장: private/drawing.dxf·drawing.svg·drawing_gen.svg, DWG·그 밖의 private 파일 없음)" + (f" — 있음: {leak}" if leak else ""))
|
||||
report("F14", all(has_id(i) for i in ("drawStage", "drawing", "hotspots")) and "private/drawing.svg" in ((html or "") + (viewer or "") + (model_txt or "")),
|
||||
"#drawStage, img#drawing, svg#hotspots, private/drawing.svg 참조")
|
||||
d = MODEL.get("drawing", {}) if isinstance(MODEL, dict) else {}
|
||||
|
||||
Reference in new issue
Block a user