표지는 DRAWING_GROUPS에 kind 없이 라벨만 있어 화면에서 열 수 없었다. 실무 설계도면
원본(울진 소광리, A3) 1쪽의 잉크 bbox를 pymupdf로 mm 실측해 A1로 2배 환산했다.
원본에 도각이 없다 — 좌우 테두리 없이 상·하 굵은 가로선 두 줄뿐이라, 사용자가 고른
"도각 없는 전면 디자인"이 실무 그대로였다.
- resources/template_2dDrawing/00_template_cover.json 신설. 엔티티 14개(재단 표식
Point 4·띠 Hatch 3·글자 Text 7), bbox가 정확히 A1(840x594). 좌표계는 00_template_A1
과 같아 도각 도면과 나란히 놓인다.
- 굵은 띠는 solid Hatch로 냈다. lineWidth는 캔버스 화면 픽셀이라(screenCanvas
.drawController.ts:261) 확대해도 두꺼워지지 않아 실치수를 못 낸다.
- 글자 크기는 잉크 높이가 아니라 폭으로 잡았다. 원본은 장평이 좁은 CAD 글꼴이라
높이를 그대로 옮기면 위치값이 종이 밖으로 44mm 넘치고 라벨과 겹친다.
- B07_DesignDetail_Engine_Cad_Cover.py 신설. frame_entities()를 쓰지 않는다 —
_transform_entity()가 Hatch의 points 배열을 못 옮기고, 표지는 A1 실치수 고정이라
애초에 변환이 필요 없다. 공용 함수는 건드리지 않았다.
- kind "cover" 배선: Schema Literal, Api_Fetch, UI_Page DRAWING_GROUPS,
Router_Support 목록·빌드 분기·확정 캐시 매핑.
값(공사명·위치·사업량·시행청)은 아직 빈칸이다 — 메타 배선은 다음 판.
검증: tmp/tests/test_cover_template.py 6건 통과(A1 치수·Hatch 두께·잠금 레이어·
치환·lru_cache 오염 없음). 공용 브라우저에서 표지를 열어 엔티티 14개 전부
b08-frame, Ctrl+A 선택 0 확인.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
도면층 17종을 프로젝트가 이미 쓰는 용어로 맞춘다 — 원지반·계획선·구조물·
암 경계선·수량 산출표·도각·등고선·계류·노선·배수유역·유역 제원·표제·
그래프 격자·측점표·유토곡선·그래프 축·운반 구간. CAD 앱의 'Default'와
'New layer'도 기본·새 도면층으로 바꾼다. layerId는 그대로다.
방위표 템플릿(00_template_compass.json)에 원본 DXF의 표제란 글자 4개가
도면 반대편에 남아 있었다. 이 때문에 템플릿 bbox가 183x262mm로 부풀어,
긴 변을 14mm에 맞추는 compass_entities()가 방위표를 1.1x1.8mm로 줄여
놓고 있었다. 글자를 지우니 bbox 20.5x32.9mm, 방위표가 8.7x14mm로 나온다.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
납품 도면 2장을 B07 도면 목록에 새로 붙였다. 계산은 하지 않는다 —
유토곡선은 B06 확정 시 저장한 산출물(longitudinal_sections.data.mass_haul)을,
유역도는 B04 세부유역 GeoJSON과 도엽 등고선·세류선을 읽어 좌표만 종이 mm로 옮긴다.
- 도면 종류 확장: kind에 mass_haul·watershed 추가(Schema·Api_Fetch·openwebcad
App.types), 12분류 라벨에 연결, 목록에 단장 도면 2건 상시 노출
- 엔진 신규: _Engine_Cad_MassHaul.py(축·곡선·평형선·띠 현·balloon·측점 테이블),
_Engine_Cad_Basin.py(등고선·세류선 배경·노선·유역·구역별 정보표·방위표)
- 척도 상수: 유토곡선 H 1/2,000 · 세로 1mm=50㎥, 유역도 1/6,000 (A1 고정)
- 유토곡선 저장 payload에 띠·잔여의 기하 필드 추가 — 파이썬에 곡선 보간·토량 배분
로직을 복제하지 않기 위해 값을 낳는 쪽(TS 엔진)에서 함께 남긴다
- 유역도 배경은 여러 도엽을 합쳐 받은 뒤 도곽 크기로 절취(clip_line_to_box)
- 배수규격은 소요 관경이 아니라 규격관(recommended_diameter_mm)으로 표기
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
저장소 사고로 잃은 4개 커밋(38eb7cd4·b8a11756·281528bf·f60b488d)의 작업물을
하나로 다시 담았다. 내용은 동일하다.
■ 구조
- commands/: 명령 정의(id·AutoCAD 별칭·글리프·도구/즉시실행)를 단일 소스로 두고
리본·명령행·단축키가 모두 이 레지스트리를 읽는다. tools/tool.consts.ts 폐지.
- ribbon/: 탭→패널→명령 데이터(ribbon.config.ts)와 범용 렌더러 분리.
AutoCAD 배치(홈·삽입·주석·뷰·출력)와 패널 확장(▾)을 따른다.
- tools/factories/sequence-tool.ts: 점·숫자·문자·객체·선택 단계를 선언하면
xstate 머신을 만들어 주는 공장. 명령당 170줄 보일러플레이트 제거.
- helpers/geometry/: 3점 호·정다각형·타원·스플라인·구름형·평행이동·해치 스캔선·
점렬 샘플링 등 상태 없는 순수 함수.
- Toolbar 483줄을 QuickAccessBar/Ribbon/InspectorPanel/StatusBar/CommandLine/
ViewControls/PropertiesEditor/QuickProperties로 분해.
■ 명령 (조사표 기준)
- 1절 그리기 21건, 2절 수정 27건, 3절 도면층·특성·그룹·유틸리티 39건 전부 반영.
- 5절 주석 34건 중 26건 반영(문자·치수 16종·지시선·표·구름형·주석 축척).
- HatchEntity 추가(solid·pattern·cross·gradient) + JSON 왕복, Layer에 색·선가중치·
선종류·동결·투명도 필드 추가, 그리기 루프가 동결·숨김·투명도를 반영.
■ 화면 실측에서 고친 결함
- 명령행 포커스 상태에서 ENTER가 도구로 가지 않던 문제
- 명령행 문자 입력이 접두사가 같은 명령으로 실행되던 문제
- 명령이 끝나도 입력을 계속 먹던 문제(점 입력 명령만 반복, 나머지는 선택 도구 복귀)
- 시퀀스 단계 인덱스 오사용 9건 + 단계 값 종류 검사 추가
- 해치 내부를 클릭해도 선택되지 않던 문제
미반영 8건(맞춤법 검사·꺾기 치수·치수 끊기/재연관/검사 치수·기하공차·지시선 수집·
축척 리스트 편집)은 조사표 `반영` 열과 PLAN.md에 사유를 적었다.
B07 CAD 화면 개선 참조용. AutoCAD 2024 Windows 기본 2D 제도 기능 기준,
Autodesk 공식 명령 참조·2024 신규/변경 명령·상태막대와 재대조한 조사 결과.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- resources/knowledge/knowledge/ 아래 남아 있던 .obsidian 설정과 기본 노트 삭제
- .gitignore에 **/.obsidian/ 추가 — 볼트 설정은 추적하지 않는다
- 03_미결_및_확인사항.md BOM 제거
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- _scripts/xor_probe.py 신설: 키스트림 후보 유도 가정·계산 범위·한계 명시,
파일 간 일치율·공백 복원 데모 출력. STC_난독화_상태 §2에 실행 명령·출력 기록
(SYSINFO 7파일 100%·BDQTY 83~100%·공백 복원 82~91% — 재현 가능해짐)
- 단수처리_규칙: "설계연도 무관 규칙" → "2024~25 STmate 산출물 5건 관측 구현
후보 규칙"으로 완화, 일반화 전 미확정 5요소(타 버전·발주기관·법령 의무·
CUTNM·예외값) 명시, "5건 전부 일치" → "항목 존재 파일 전부 동일"
- 입출력변수사전(verified): 조달수수료·D9-1·D10 신규 행에 검증 범위 밖
⚠ 각주 (evidence=observed, 미결 No.20 연동) — 문서 상태는 유지
- 표현 완화 2곳: "포맷 고유 특성 확정" → "강한 증거 (알고리즘 미확정)"
(교차비교·_STC포맷분석), extract_rounding.py 주석 6개→5개 정정
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- 00_운영지침 §4: 구 draft|confirmed 를 4단계로 대체 — verified(원문 검증)·
approved(사용자 승인)·exported(JSON 반영). 승격 조건·강등 규칙(원문 개정 시
draft 강등 = 검증 자동 무효화)·건너뛰기 금지 명시
- 기존 65문서는 draft 유지 — 검증 세션 통과분부터 개별 승격 (일괄 변경 금지)
- §7 프로그램 연계: 기준값 배포 = approved 이상, 데이터 연동 = exported 만 신뢰
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- 05_원가정보/내역서_구성항목_총람.md: A 문서구성 17종(별표2+미결17 대상표),
B 공종 79항목(산림품셈 절번호·단위·빈도, 준비~부대공 8그룹), C 기초단가
(직종 15·자재 3경로·중기 10작업군·값층 5), D 원가 14항목, E 현행 공백 6건.
채택 칸 공란 = 사용자 결정용. 링크 검사 0깨짐
- p.260 항타 그래프 등이 가로 조각 8개로 분할 추출된 문제(사용자 발견)
- 조각 삭제 후 원본 PDF 그림 영역을 2.5배 렌더 캡처로 교체 (품셈 p260·건협 p6·중기중앙회 p45)
- md 참조를 병합본 1건으로 치환, 챕터 하위폴더의 ../pic 상대경로 깊이 오류 10건 수정
- 해시 중복(5회 이상) 그룹 시각 확인 후 삭제: 페이지 배경 띠(90)·헤더 바(34)·
KBIZ 로고(18)·간지 배너 조각(54)·말풍선/빈 이미지(15)
- md 48건에서 해당 이미지 참조 라인 제거 (깨진 링크 방지)
- 유지 59건 = 실제 내용 그림 (조사 입력화면·품셈 삽도 등)
- ESTX_값사전 및 견적내역·물량도면·옵션메타·인쇄옵션·자재노무기계 등 값사전 세부 5건
- ESTX_검증근거, 데이터관계, 분석, 테이블사전, 파일구조 신규
- PLAN_2026-07-main_ESTX_정밀분석.md 갱신 (타 AI 작업분 커밋)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>