Commit Graph
347 Commits
Author SHA1 Message Date
eomsangdon 40df9f4db4 Merge remote-tracking branches 'origin/sub_laptop_3' and 'origin/sub_laptop_6' into main_laptop_1 2026-10-25 14:45:33 +09:00
eomsangdonandClaude Opus 5.5 1dddb5185c fix(523-1): B07 설정 모달 좁은 폭 머리 한 줄 · 단추 줄 한 규격 · 밖에서 누르고 안에서 떼도 안 닫힘
- 공용 모달 바깥 닫기 = 뗌 자리도 배경일 때만(누름 바깥 · 뗌 안 = 안 닫힘)
- 360 px 모달 제목 · [원본에서 다시 그리기] · [닫기] 줄바꿈 없앰 · 단추 줄 [안내선 숨기기]도 같은 키(32 px)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:44:46 +09:00
eomsangdonandClaude Opus 5.5 a2c3c0fc1f fix(526-1): B07 횡단 장 인쇄 칸선 지움 · 칸마다 안내선 · 처음 맞춤 작도 영역까지
- 횡단 장 칸 격자선(도각 층 인쇄 개체) 지움 — 칸은 화면 안내선 겹판(guide.cells · 단면마다 점선)
  · 안내선 숨기기에 함께 꺼짐 · 넘친 칸 붉은 틀은 그대로
- 옛 확정 · 저장본 장은 열 때 칸선만 걷고 칸 안내선은 지금 배치로(refresh_saved_sheet)
- CAD 처음 맞춤 · 전체 맞춤 = 내용 + 작도 영역(가이드) — 표준 횡단도가 내용에만 확대돼
  도면 한 장 안 자리가 안 보이던 흠
- 낡은 시험 고침: test_169 칸선 단언 → 칸선 없음 + 칸 안내선 · test_212_3 「남는 검은 선 =
  인쇄 칸선 지우지 않음」(212-3 결정) → 요구 343-4 로 칸선 지움 · guide-area 시험 칸 그리기

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:39:18 +09:00
eomsangdonandClaude Opus 5.5 871174d214 feat(523-1): B07 설정 모달 공용 고침 — 끌기 닫힘 막음 · 폭 절반 · 그룹 상자 · 단추 줄 하나 · 자동 체크 없앰
- 공용 모달 바깥 누르기 = 누름 · 뗌 둘 다 배경일 때만 닫음(숫자 칸 끌기로 안 닫힘 · 평면도 ⚙ 포함 모든 openModal)
- ⚙ 설정 모달(종단 · 횡단 · 토적 · 구조물 · 전개도) 폭 720 → 360 px · 그룹 상자(legend) · 맨 아래 단추 줄 하나([안내선 숨기기] [기본값] [취소] [확인])
- [확인] = 바뀐 것만 저장(축척 → 배치) 뒤 다시 그림 · 붉은 칸이면 꺼짐 · 횡단 [이 장] [모든 장] [배율 적용] 단추 → 「적용」 고르기 + [확인]
- 축척 「자동」 체크 걷음 — 기본 = 지정값(종단 평면도 1/5,000 · 토적 X 1/2,000 · 전개도 X · Y 1/50) · 옛 null = 기본으로 읽음
- 낡은 시험 고침: 153-1(지운 buildCrossLayoutControls 대신 ⚙ 횡단 모달) · 212-3 · 180-3(안내선 단추 자리) · 280-5(자동 체크 · 단추 판정) · 485 축척 · 토적 · 종단 평면 칸(옛 자동 축척 값 → 지정 기본값)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:34:31 +09:00
eomsangdon 624a3e0aaa Merge remote-tracking branches 'origin/sub_laptop_2', 'origin/sub_laptop_4' and 'origin/sub_laptop_5' into sub_laptop_3 2026-10-25 14:29:05 +09:00
eomsangdonandClaude Sonnet 5.5 3b2cb65e1e feat(524-1 덧): B07 평면도 모달 「확정 / 확정 전」 배지 지움 — 도면 확정 없앰(527)에 따름
- 모달 머리 배지 · 배지 글꼴 규칙 지움
- 낡은 시험 수선: 배지만 보는 시험을 배지 없음 확인으로 바꿈

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 14:28:56 +09:00
eomsangdonandClaude Opus 5.5 5a1490ddaa fix(527-1): B07 확정 표시 걷음 — 정보칸 「확정/잠정」 배지 · CAD 보기 전용 알림 옛 「확정한 도면 · [수정]」 글 · 저장 실패 글 「확정」 → 「저장」
- [>] 「도면 저장」 단계는 요구 281 · 520-3 그대로(고친 도면만 서버 저장 → 단계 완료 → 이동)
- 서버 끝점 · manifest confirmed 키 = 안쪽 이름이라 그대로(브레인 정함)
- 평면도 설정 모달 배지는 sub5(524) 몫

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:28:28 +09:00
eomsangdonandClaude Opus 5.5 1398625d2d feat(B07): 종단도 장 = 일반측점 30 간격 600 m · Y축 여유 10 mm · 그림 자리 +50 mm (525-1 · 요구 343-3)
- 장 나눔 = 추가 · MC 측점 안 세고 일반측점 30 간격(20 m 면 600 m) · 경계 측점 나눠 가짐 · 넘치면 줄이는 규칙 그대로
- Y축 · 측점표 머리 = 첫 측점 왼쪽 10 mm
- 그림 = 작도 영역 좌하단에서 오른쪽 50 · 위 50 mm(도각 · 평면 칸 · 넘침 판정이 같은 장 bbox)
- 장 나눔 · 도각을 Engine_Cad_LongSheet.py 로 뗌(Engine_Cad_Long.py 700줄 한도)
- 옛 종단 확정본 풂 = 칸 층 찾기 → 매니페스트 long_sheet_rule(2) 비교 — 521-2 뒤 확정본도 자리가 바뀌어 한 번 더 풂 · 낡은 시험(칸 층 기준) 고침

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:25:57 +09:00
eomsangdonandClaude Sonnet 5.5 a96a60fb86 feat(524-1): B07 평면도 설정 모달 정리 — 기본 항목 지형도 하나 · 양식 칸 숨김 · 종류 척도 2열 · 항목 그룹 구분선 · 대피소 사토장 자리 지움
- 기본 종류 = 지형도 하나(옛 기본 이관 더하기 지움) · 대피소 조각 · 자리 폼 · plan-marks 끝점 지움
- 모달 양식 칸 = 평면도면 숨김 · 종류 척도 영역 2열 · 항목 3열 유지 + 그룹 구분선(PIECE_GROUPS 한 곳)
- 낡은 시험 수선: 기본 종류가 하나로 줄어 route · layout · landuse · watershed 기본 전제를 add_kind 로 세움 · 대피소 자리 시험 지움

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 14:23:59 +09:00
eomsangdon 80615cce2f Merge remote-tracking branches 'origin/main_laptop_1', 'origin/sub_laptop_4', 'origin/sub_laptop_5' and 'origin/sub_laptop_6' into sub_laptop_2 2026-10-25 08:04:17 +09:00
eomsangdonandClaude Opus 5.5 7e57a970f8 perf(522-2·522-3): B07 평면도 ⚙ 미리보기 첫 화면부터 캔버스만 · 받아 둔 도면 재사용
- cad_host bare 옵션 = iframe 주소 ?bare · openwebcad main.tsx 그리기 전 setBare(true) — 도면 오기 전에도 리본 · 패널 없음
- 평면도 관리 모달 · B06 표 위 CAD = bare
- 평면도 관리 = 페이지 목록(deps.drawings) 그대로 · 장 받기 = Prefetch.openDrawing · 같은 목록 다시 열기 = 요청 없음 · 고친 뒤만 목록 새로 + syncDrawings
- test_130 흉내 갱신(처음 = 목록 안 받음 · 고친 뒤 맞춤 · 다시 열기 요청 없음 · ?bare)
- 첫 열기 1.23~1.34 s → 0.31 s · 다시 열기 0.14~0.16 s · 요청 3 → 0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 08:03:55 +09:00
eomsangdonandClaude Opus 5.5 df0e64ffe2 feat(B07): 종단도 장마다 우측 상단 평면 위치도 · 종단 ⚙ 「평면도」 척도 칸 (521-2 · 요구 340-2)
- 새 Engine_Cad_LongPlan — 작도 영역 우상단 5 mm 안쪽 150×100 mm 칸 · 자동 = 전체 노선 맞춤(분모 500 올림) · 척도 정함 = 이 장 중심 확대 · 밖 노선 흐린 파선 · 칸 밖 잘림 · 이 장 굵게 · 시 · 종점 측점 · 방위표 · 「평면도 S=1/n」 · 「n/N 장」 · 좌표 없으면 안 그림
- 장 나눔 — 그래프가 칸을 덮으면 측점 줄여 장 더 나눔 · 장 목록에 number · total
- 축척 — longitudinal.plan 기본 자동 · 범위 1/500~1/50,000 · ⚙ 칸 = 서버 기본값 열쇠 그대로(셋째 칸 + 자동)
- 칸 앞 확정 종단 저장본 — 목록 받을 때 종단만 한 번 모두 풂(DRAWING_FORMAT 그대로)
- 시험 — 칸 자리 · 안 겹침 · 장마다 강조 · 척도 확대 · 좌표 없음 · 한 번 풂 · plan 범위 · ⚙ 평면 칸

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 08:01:02 +09:00
eomsangdonandClaude Opus 5.5 10894b5b34 feat(520-3): 페이지 넘김 공용 moveStage — 잠금 + 진행 원(n/N 단계 이름 · 지난 초) · B07 · B08 · B09 · 미리보기 [<] [>] · 단계 판 누름을 한 길로
- ui_template setLoadingOverlayProgress(ratio, label) — 잠금판 스피너 자리에 진행 원 · 참조가 모두 풀리면 함께 걷힘
- b_workflow_nav moveStage(projectId, 주소 또는 이동 함수, steps) — 단계 { 이름 · 실행 · 선택 서버 진행 묻기 } · 거짓 · 던짐 = 잠금 풀고 머묾(던짐은 까닭 토스트) · 넘기는 중 다시 누름 무시
- goToWorkflowStage 가 Promise 를 돌려줌 — 잠금이 이동 뒤에 풀림
- 낡은 시험 고침 — 298-2 · 481-2 가짜 의존에 moveStage · 290-1 · 280-5 글 약속을 새 길로 · 520-3 시험 새로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 07:59:58 +09:00
eomsangdonandClaude Opus 5.5 d3315da993 refactor(472-3 B06 벽 · 기슭막이 · 배치): 구조물 기하 logic 분리 · 그림 파일은 그리기만
- logic 새 파일 다섯 — Cross_Wall_Geom(벽 1매) · Cross_Wall_Hatch_Geom(무늬 띠 · 물빼기 · 도수로 띠 · 원지반선) · Cross_Excavation_Geom(벽 터파기) · Cross_Design_Surface_Geom(암선 · 포장층) · Cross_Revetment_Geom(독립 기슭막이 배치)
- logic 으로 옮김 — Body_Guard → Cross_Body_Guard · Structure_Layouts · Route_Carry_Patch(내용 그대로 · import 경로만)
- inferStationInterval → common_util_station(글자표 없는 자리 · common_util_svg 는 다시 내보냄) — Node 묶음 ui_template_locale 끌림 끊음
- 부르는 쪽 import 줄 · 등록부 ts 경로 · 시험 · 도우미 경로
- test_472_3 GEOMETRY_PULLS 다섯 줄 걷음 · Wall_Hatch · Excavation · Design_Surface 세 줄은 Culvert · Box · Ford 그림 파일(518-2)이 그리기 함수로 부르는 동안 남김

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 19:22:27 +09:00
eomsangdon 7a971494fc fix(B07 표준도): 노선 저장값 일치
B06 계산과 같은 횡단경사 하한을 사용하고, 그리는 노선의 저장값을
도면과 지문에 함께 적용.
2026-10-23 16:22:19 +09:00
eomsangdonandClaude Opus 5.5 c316dbb106 feat(514-3 B07 유역도 등고선 가볍게): 유역도 등고선 · 계류 = 폴리선 하나 + 꼭짓점 목록(자식 Line · 선분마다 UUID 없음) — 요구 328-4
- 엔진: Engine_Cad_Basin 배경선만 꼭짓점 목록 폴리선(id 는 옛 폴리선과 같음) · 노선 · 유역 · 표 · 도각은 옛 꼴 그대로 · B05 · B06 길 손대지 않음
- CAD 앱: PolyLineEntity.fromJson 이 자식 없고 꼭짓점 목록이면 선분으로 펼침(색 · 굵기 · 층 = 부모) · 다시 내보내면 옛 꼴
- DXF 내보내기 · B09 도면 인쇄 PDF: 꼭짓점 목록 폴리선 = 열린 선(해치만 닫음)
- 검증_sub2 유역도 5 m 23.17 → 3.22 MB · 10 m 11.91 → 1.77 MB · 좌표 · id · 색 해시 전후 같음 · B05 · B06 등고선 · 배수 응답 해시 같음
- 시험: test_514_3_b07_basin_light 새로 · vitest cad/polyline-points-514-3 새로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 21:10:01 +09:00
eomsangdon a8882dd96a Merge remote-tracking branch 'origin/sub_laptop_2' into main_laptop_1 2026-10-22 19:56:38 +09:00
eomsangdonandClaude Opus 5.5 c2ed0fad54 feat(512-1 B07 유역도 등고선 간격): 유역도 등고선 5 m 기본 · 평면도 관리 모달에서 10 m 고름(1 m 없음 · B05 · B06 전용) — 요구 326
- 원인 확인: 유역도 23 MB = 1 m 아님 · 도엽 N3L 5 m 주곡선 그대로(등고선 층이 응답 대부분)
- 유역도 종류 파일 contour_interval_m(5 · 10) · 배경선 = 간격 배수 높이만 · 10 m = 23.17 → 11.91 MB
- 지문: 종류 목록 지문에서 간격 뺌 → 간격 바꾸면 유역도만 다시 받음 · 기본 종류 조각 차례 맞춤(파일로 내려도 지문 그대로)
- 시험: test_512_1_b07_basin_contour 새로 · test_b07_plan_kinds · helper_130 새 칸 · test_cad_host_tabs 508-1f 뒤 ☰ 자리 단언 고침

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 19:56:06 +09:00
eomsangdonandClaude Sonnet 5.5 cbfc006834 refactor(512-4 700 줄 나눔 CSS): App.css · B01 · B06 횡단 · B03 스타일 각 둘로 나눔 — 규칙 차례 그대로 · 부르는 곳 이어 부름 · 시험은 두 파일 이어 읽음
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 19:49:43 +09:00
eomsangdon b9a7502d4a Merge remote-tracking branches 'origin/sub_laptop_2', 'origin/sub_laptop_3' and 'origin/sub_laptop_4' into main_laptop_1 2026-10-22 19:25:11 +09:00
eomsangdonandClaude Opus 5.5 9027903b5a feat(508-3b · c B07 도면 지문 · 미리받기 · 평면도 저장본): 도면마다 입력 지문(목록 API fingerprint · 횡단 장 측점마다 stations) · 미리받기 = 페이지 밖 모듈(가벼운 것 먼저 · 평면도 끝 · 연 도면 맨 앞 · 페이지 옮겨도 이어 감 · 돌아오면 지문 바뀐 도면만 · 실패 한 번 다시 → 「다시 받기」 · 담는 장 40) · 고른 도면 받는 동안 다른 탭 · 페이지로 옮김(받는 중 CAD 시계 없음 · 고침 안 묻힘) · 평면도 응답 = _derived/b07_plan_<도면>/<지문>.json 그대로(최근 2벌 · 확정 저장본 · 지문 못 셈 = 안 씀) · 평면도 등고선 · 계류 0.1 mm 솎음 + 배경 좌표 1 µm · 값 꼴 · 종단 경고 글은 지문에서 뺌 — 요구 325
검증_sub2: B06 측점 하나 [저장] 뒤 다시 받음 = 바뀐 6 장(횡단 그 장 · 측점 하나) · 평면도 지형 첫 열기 1.3~4.4 s → 저장본 0.2~0.4 s · 안 받은 유역도 = 받는 중 → 4.4 s 뒤 보임

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 17:50:59 +09:00
eomsangdonandClaude Sonnet 5.5 18fa773a2c feat(508-3a CAD 레이어 합치기 되돌리기): LAYMRG · LAYDEL 뒤 Ctrl+Z 한 번에 도형 레이어 · 레이어 목록 · 현재 층이 함께 돌아오고 Ctrl+Y 도 짝 · 되돌리기 단계에 도면층 전후 담음(state attachLayerChangeToUndo) · vitest layer-tools.test · 요구 325-1
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 17:08:49 +09:00
eomsangdonandClaude Sonnet 5.5 5c5c1203fb fix(508-1f): 폰 B07 ☰ 가 CAD 첫 도구 단추를 가림 — 리본 도구 줄도 ☰ 자리 비움(탭 줄과 같은 변수)
폰 390 너비에서 ☰(높이 44)가 탭 줄 아래 도구 줄 첫 단추(선)까지 걸침 · 데스크탑 배치 변화 0

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 06:39:57 +09:00
eomsangdonandClaude Sonnet 5.5 7312b095bd fix(507-3 덧 MC): B07 계획평면도 MC 큰 글 (MC) · B05 종단 아래 표 측점 행 (MC) · B07 횡단 장 단추 (MC) — 요구 311-4
- 평면도 측점 글 = 5 배수만 → 종단 kind curve 측점도 큰 글 + 원 + (MC)
- 종단 표 측점 행 · 고른 측점 값 열 = (MC) · 굵게 · 경고색 · 칸 폭 판정은 옛 글 그대로
- 횡단 장 단추 이름 뒤 (MC) · 긴 이름이라 두 열 가로지름
- test_507_3_mc_label 칸 넷 더함

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 16:23:33 +09:00
eomsangdonandClaude Opus 5.5 1a8a16a99b fix(507-3 MC 강조): B05 · B06 MC 측점 글 (MC) · 한 단계 크게 · 굵게 · 경고색 · B07 종단 표 · 횡단 제목 · B08 토적표 · B09 인쇄 토적표 (MC) — 요구 311-4
- 평면 눈금 굵은 13px · 종단 12px · 횡단 판 · B06 카드 · 상세 창 제목 = --color-warning(밝음 · 어두움)
- 측점 갈아끼움 이름 = 서버 꼴 STA… (MC)
- B08 토적표 줄 mc = 서버가 종단 파일 kind curve 로 실음
- test_507_3_mc_label

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 16:03:02 +09:00
eomsangdonandClaude Opus 5.5 17e6500cf6 fix(506-3 B07 · CAD 작은 흠): 저장 길 · 죽은 길 걷음 · CAD 되돌리기 · B09 인쇄 미리보기 · M02 도움말
- 1-A 도면 GET · 저장 PUT 한도 60 s · 저장 중 미리받기 쉼 · 끊긴 저장 = 목록 confirmed 로 판정
- 2 CAD 자동백업 열쇠 = b07:{프로젝트}:{도면} · 도각 편집 = b07-frame:{프로젝트} · [초기화] 같은 열쇠
- 3-1 [초기화] 물음 글 = 프로젝트 도각 그대로 · [도각 편집] → [기본 도각 복원] 안내
- 3-2 풀린 장 저장본 json · 수량표 찌꺼기 걷음(_write_manifest 한 곳)
- 5-1 확정 풀기 · 배치 · 축척 = mark_stage(save)
- 7-3 start_stage 가 DEV_UNLOCK 표식 남김
- 6-a navigateDrawing · onNavigate · hasPrev · hasNext 걷음 · 6-b cad-host-save 토글 걷음 · 4-2 B08 안 쓰는 글 11 걷음
- 6-f 특성 판 색 끌기 = 되돌리기 한 칸(paintNowCommitLater 한 벌) · 6-g LAYMRG 사본 길
- 4-1 B09 [인쇄 미리보기] = 저장 뒤 이동 · 단계 그대로 · 6-e M02 카드 도움말 DWG 한 줄
- 시험 test_506_3_* 둘 · cad/undo-506-3 · test_298_2_b07_buttons 열쇠 맞춤

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 12:48:36 +09:00
eomsangdonandClaude Sonnet 5.5 aaadbd295e test(506-2): 시험 정비 — 낡은 두 시험 글 맞춤 · vitest 실행 설정 · live 시험 켜는 표식
- test_b06_draft_pipe_replay · test_269_panel_form 단언 글을 현재 코드에 맞춤
- vitest.tmp.config.ts: include resources/tester/cad · xstate 별칭 · node 꼴 시험 제외 · dxf-clip 픽스처 경로 import.meta.url
- test_472_6_route_save · design_save: live 는 AISLO_LIVE_DB=1 일 때만

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 12:34:38 +09:00
eomsangdonandClaude Opus 5.5 878376e295 feat(497-1 B07 단추 줄): 좌측 아래 [?] [<] [>] [저장] [초기화] · [도각 편집] = 윗줄
- [저장] = 이동 없이 고친 탭(●) + 지금 탭 저장 · 고친 것 없으면 요청 0 · 저장 뒤 단계 색 다시 읽음
- [초기화] = danger-ghost · 맨 오른쪽 · 물음 → 오버레이 → POST design-drawings/reset → CAD 자동백업(도면마다) 지움 → 다시 읽음
- [>] = 지금 길 그대로(고친 것 없으면 저장 요청 없이 이동)
- 새 시험 test_298_2_b07_buttons · test_280_5_b07_settings 줄 자리 고쳐 씀

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 20:26:59 +09:00
eomsangdonandClaude Opus 5.5 ef06cd01dc feat(497-0 [초기화] 서버): B07 · B08 · B09 reset 창구 셋 — 그 페이지 사용자 값 · 설정 지움 · 올린 파일 남김 · 단계 = 저장
- B07 POST /design-drawings/reset — 저장본 확정 풂(번호 · json 남김) · B07 이 올린 측점 확정 → 잠정 · 축척 · 횡단 배치 · 평면도 종류 · 표식 파일 지움 · 새 _Router_Reset.py(main.py 물림)
- B08 POST /quantity/reset — quantity 설정 구획 기본 · hydro_inputs 지움 · milestone 기본(사용자 그림 붙은 거래처 경로 줄만 남김 · to = 시점) · 1본 길이 · 그림 남김
- B09 POST /estimation/reset — 사용자 값 · 단가 책 · estimation 설정 구획 지움 · 안 쓰는 서고 사본 정리 · 견적서 남김 · 답 = GET 꼴
- 공용 reset_section(구획 하나 기본으로) · 새 시험 test_298_2_page_reset

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 20:14:45 +09:00
eomsangdon 4256436db9 Merge remote-tracking branches 'origin/main_laptop_1', 'origin/sub_laptop_1', 'origin/sub_laptop_5', 'origin/sub_laptop_6' and 'origin/sub_laptop_7' into sub_laptop_4 2026-10-20 19:55:53 +09:00
eomsangdonandClaude Opus 5.5 dcb7c68685 feat(496-2 단계 상태): [저장] · [>] 가 바꾸는 진행 단계 한 곳 — 요구 298-2 · 300 B1
- 공용 mark_stage — save = 그 단계 진행 중 · 뒤 완료 · 진행 중 → 낡음 / next = 그 단계 완료 · 다음 미시작 · 낡음 → 진행 중
- B05 · B06 한 본문 [저장] = 단계 2 · 3 save(빈 본문 · [>] 확정 제외) · B06 [>] = 2 완료 · 3 next
- B07 장 [저장] = 4 save · B07 [>] = 4 next
- B08 [저장] 넷(옵션 · 자재 · 수문 · 이정) = 5 save · 새 POST quantity/complete = 5 next
- B09 [저장] = 6 save · 새 POST estimation/complete = 6 next
- 자동설계 체인(mark_stage_complete=False) 그대로
- 새 시험 test_298_2_stage_state · 이웃 시험 셋 기대값 맞춤

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 19:54:51 +09:00
eomsangdonandClaude Sonnet 5.5 161b0a9f78 fix(495-1 CAD): 손가락 단추 지움 · 리본 마우스 누름 초점 놓음 · 축척 칸 알림 한 줄 · 탭 구분선 진하게
- 오른쪽 손가락 단추(Esc · 엔터 · 삭제 · 뒤로 · 다시 · 스냅) 지움 — 끌기 · 집기 동작 그대로
- 리본 nav 마우스 누름 한 곳에서 단추 blur(키보드 초점 남김) · 단추별 blur 셋 걷음
- B07 축척 칸 = 칸 밑 오류 글 숨김 + 줄 아래 알림 한 줄(X · Y 높이 같음)
- CAD 탭 줄 밑 선 --color-smoke · 도면 탭 겹판 26 → 25
- 시험: test_cad_touch · test_280_5_b07_settings 고쳐 씀

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 19:51:25 +09:00
eomsangdon 77e31953ef Merge remote-tracking branches 'origin/sub_laptop_4' and 'origin/sub_laptop_8' into main_laptop_1 2026-10-19 22:54:54 +09:00
eomsangdonandClaude Opus 5.5 682be199fd feat(485-2 B07 축척): ⚙ 모달 X · Y 축척 칸 — 종단 · 횡단 · 토적 · 전개도 · 분모 정수 · 범위 밖 = 칸 붉음 + 저장 꺼짐 · 토적 X · 전개도 「자동」 · 저장본 n 장 물음 · 저장 뒤 화면 다시 세움 · [기본값] · 새 _UI_Settings_Scale.ts · 판정 logic/_Scale_Check.ts · 시험 test_280_5 축척 셋
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:53:40 +09:00
eomsangdon ca1c91e7db Merge remote-tracking branches 'origin/sub_laptop_4' and 'origin/sub_laptop_6' into main_laptop_1 2026-10-19 22:39:50 +09:00
eomsangdonandClaude Opus 5.5 08a8163bb8 fix(484 B07 설정): 횡단 ⚙ 모달 칸 · 단추 = 좌측 패널 공용 양식(ui-panel-form) — 단추가 납작하게 눌리던 것
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:38:58 +09:00
eomsangdon 1e71ef8085 Merge remote-tracking branches 'origin/sub_laptop_3' and 'origin/sub_laptop_7' into sub_laptop_2 2026-10-19 22:28:47 +09:00
eomsangdonandClaude Opus 5.5 4022a3529a fix(488-2 CAD 선 속성): 색 끌기 중 다시 칠할 때도 화면 갱신 알림 — 리본 견본 색이 첫 값에 멈추던 것
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:27:06 +09:00
eomsangdonandClaude Opus 5.5 cdfd2c6663 feat(487 CAD 글 테두리 · 리본 켜짐): 스침 테두리 = 더블클릭 입력 칸 한 벌(text-frame) · 잡는 범위 = 테두리 안 · 리본 켜짐 하나만
- 새 helpers/text-frame.ts — 정렬 · 가운데 맞춤 · 실제 글꼴 폭(굵게 · 기울임) · 회전 · 여러 줄 묶음 · 도각 칸 = 테두리 한 셈
- TextEntity 스침 · 고름 테두리 = 그 네 귀(여러 줄은 묶음 하나) · distanceTo = 테두리 안 0 · getBoundingBox 그대로
- 입력 칸 자리 · 폭 · 높이 = 같은 셈(여유 = 안쪽 여백) · 더블클릭 범위 = 테두리 + 집기 반경
- measureTextScreen 글꼴 받음 · 디버그 창구 textFrame(화면 네 귀)
- 리본 스침 = 바탕만(hover 기기만) · 켜짐 = 테두리 + 밑줄 · 누른 뒤 blur(초점 테두리 남음 막음)
- 시험 text-frame.test.ts 새로 · text-inplace-edit.test.ts 칸 폭 · 여백 · test_cad_host_tabs 줄바꿈 무관

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:25:55 +09:00
eomsangdon be519af601 Merge remote-tracking branches 'origin/sub_laptop_1', 'origin/sub_laptop_3', 'origin/sub_laptop_5', 'origin/sub_laptop_6', 'origin/sub_laptop_7' and 'origin/sub_laptop_8' into main_laptop_1 2026-10-19 22:25:12 +09:00
eomsangdonandClaude Opus 5.5 8c53124348 feat(485-1 B07 축척): 도면 X · Y 축척 서버 — 프로젝트마다 drawing_scales.json · GET/PUT /api/projects/{id}/drawing-scales · 엔진 drawing_scale(kind) 문맥 변수 · 종단 · 횡단(X ≠ Y) · 토적 · 전개도 · 바뀐 종류 저장본 풂 · 덧그림 mm_per_m_x · _y · 범위 밖 400 · 시험 test_280_5
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:23:02 +09:00
eomsangdonandClaude Opus 5.5 6695dfaee9 feat(488-3 DWG 불러오기): 삽입 탭 [DWG 불러오기](IMPORT) — 끌어다 놓기와 같은 서버 변환 · 원좌표 · 골라진 채 · 화면 맞춤 · 되돌리기 한 번 · 파일 입력 문서에 숨겨 붙임 · ByLayer 도형 = 레이어 색(B07 붙이기 · M02 불러오기 같은 _color) · 시험 catalog · test_b07_dxf_clip 한 건씩
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:17:13 +09:00
eomsangdonandClaude Opus 5.5 99df7c2512 feat(488-2 CAD 선 속성): 색 · 선 두께 · 선종류 = 고른 것의 값(다르면 빈 칸 · 색 = 점선 빈 견본) · 고른 것만 바꿈 · 폴리선 자식까지 · 사본 갈아 끼움으로 Ctrl+Z 한 번 = 옛 값 — 새 helpers/selection-style.ts 를 리본 · 특성 판 · COLOR · LINETYPE · LWEIGHT · TRANSPARENCY · MATCHPROP · SETBYLAYER · LAYMCH · LAYCUR 가 같이 씀 · 시험 selection-style.test.ts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:13:08 +09:00
eomsangdonandClaude Opus 5.5 659baa7751 feat(484 B07 설정): 좌측 ⚙ 설정 모달 · [현재 도면 확정] · [수정] 지움 · 저장 후 이동(481-3) · 탭 줄 겹판 자리
- 공용 createPanelCard 곁값 onSettings — 캐럿 왼쪽 ⚙ · 누름이 접힘 안 일으킴(B08 · B09 그대로)
- 평면도 ⚙ = 평면도 관리 모달([평면도 관리] 단추 지움) · 횡단도 ⚙ = 배치 칸 · 표 배율 · 안내선(카드 밑 칸 지움) · 구조물 ⚙ = 「M02 그림 — 축척 없음」 · 종단 1장 · 토적 = 단추 안 ⚙ · 표지 없음
- ⚙ 머리 [원본에서 다시 그리기] — 그 묶음 도면을 연 때만 · 저장본이면 invalidate
- 잠금 없음(요구 281) — 읽기 전용 안 묶음 · 자동 B08 이동 · 「모든 횡단 확정」 잠금 지움
- onStepClick 한 길 = 고친 탭(●) + 지금 탭 저장 → B08 · B09 면 단계 4 완료(새 POST design-drawings-complete) → 이동 · 실패 = 머묾
- 저장 · 원본 묶음 = 새 B07_DesignDetail_UI_Save.ts · 모달 = 새 B07_DesignDetail_UI_Settings.ts(UI_Page 633 → 543줄)
- 탭 줄 = .cad-host 의 --cad-tab-slot-left/right(px · CSS left · right 꼴) 있으면 리본 빈 자리에 겹침 · 없으면 지금 자리
- 시험: 새 test_280_5_b07_settings · 130 · 153-1 · 180-3 · 212-3 · 269 · 311 고쳐 씀

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:13:04 +09:00
eomsangdonandClaude Opus 5.5 dce63ccc21 feat(486 B07 CAD 화면): 제목줄 · 램프 · 하단 도면 칸 지움 · ↶ ↷ = 리본 탭 줄 오른쪽 · 손가락 단추 = 자판 없는 기기만 · 탭 줄 빈 자리 변수
- 제목줄(Aislo CAD · 부제 · 「현재 도면」 램프) 지움 · --cad-title-height 0 · 💾 · JSON 내보내기 = DOM 두고 숨김(QUICK_ACCESS_HIDDEN)
- 빠른 실행 = 리본 탭 줄 빈 자리 뒤 · 접기 단추 앞(줄 높이 26 그대로 · M02 hostSave 면 안 그림)
- 빈 자리([출력] 오른쪽 ~ ↶ 왼쪽) → .cad-host 에 --cad-tab-slot-left/right(iframe 끝 기준 px) — 부모 탭 줄 겹침 자리
- ☰ 비키기 패딩 = 리본 탭 줄로 · 손가락 단추 = (hover: none) and (pointer: coarse) 만
- 하단 도면 이름 · ‹ › · 확정 칸(QuantityPanel) · 이동 요청 지움
- 시험 test_cad_touch(미디어 조건) · test_cad_host_tabs(머리줄 · 빈 자리 변수) 고쳐 씀

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:07:35 +09:00
eomsangdonandClaude Opus 5.5 add2887c30 feat(488-1 CAD 이름 · 안내 글): 도면층 → 레이어 · 선가중치 → 선 두께(CAD 안 글 · 툴팁 · 명령 목록 · 토씨 손봄 · 저장 열쇠 그대로) · 우측 위 안내 한 줄 「DWG · DXF 파일을 끌어다 놓거나 [삽입 → DWG 불러오기]」 · 시험 한 줄
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:07:07 +09:00
eomsangdonandClaude Opus 5.5 fa41db8b4f fix(472 덧 관 자리): 관 파일 누가거리를 그대로 읽던 남은 서버 자리 = 지금 노선에 얹은 관 자리(route_pipe_points 한 벌)
- 옛 노선 지문 관 파일(옛 누가거리 394 · 좌표 351) — 측점 계획 · 관 지점 GET · 화면 · 상세 얹기는 351 인데
  세월교 노면 하강(ford_surface_drops) · 물넘이포장 구간(ford_pavement_ranges · tilt_ranges) · 카드 이름
  (relabel_pipe_stations) · B07 관 글 재료(load_note_sources) · 옛 비정규 측점 이관 심는 자리만 394 로 읽음
  → [저장] 재계산 · [확정] · 상세 값이 화면과 갈림
- B05_Profile_Engine_Sections.route_pipe_points — 관 지점 정본을 지금 노선에 얹어 읽음(_load_pipe_points 이월)
  · 노선 경로 안 줌 = 노선 파일 하나(ROUTE_DATA_FILE · 노선 풀기도 같은 이름을 씀) · 노선 못 읽으면 저장분 그대로
- load_culvert_sets · attach_saved_shapes(saved_pipes 걷음) · relabel_pipe_stations(상세 GET 은 노선 경로 넘김)
  · B07 load_note_sources · Structures_Router 이관 심는 자리 = 이 한 벌
- 시험 test_472_d_route_pipe_readers(옛 코드 빨강 2) · test_472_d_pipe_route_attach 「노선 모름 = 파일 누가거리」
  단언은 옛 동작이라 「노선 파일 하나 = 351」로 고침 · 위키 rules · calculations 줄

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:22:09 +09:00
eomsangdonandClaude Opus 5.5 89e04280d0 fix(472-2 덧 횡단 차례): 횡단 파일 = 측점(누가거리) 차례로 읽음 — 이름 차례면 cross_01080.16m 이 cross_01080m 앞
- cross_files_in_order 한 벌(Engine_Sections) — B06 상세 GET(_read_section_detail) · B07 측점 파일(_cross_files) 둘 다 이것으로
- B07 측점 도면 장 나눔의 이름 차례 sorted 걷음
- 시험 test_472_2_cross_order(옛 코드 빨강 셋 → 초록)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 08:54:48 +09:00
eomsangdonandClaude Sonnet 5.5 5b3d1530ac fix(좌측 카드): 모든 좌측 카드 기본 닫힘 — 공용 카드 · 칸 틀 · 구조물 배치 · B07 묶음 · M02 구조물 집계 양식 (389-3)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QfHKQs7J3hQELKMWQMUJEy
2026-10-17 17:24:51 +09:00
eomsangdonandClaude Opus 5.5 5b993ddded fix(380-4): 글만 있는 상세 표 위 CAD 과확대 — 맞춤 최소 높이 곁값
- CAD 맞춤(fitView) = 범위를 위 끝에서 아래로 최소 높이까지 늘림 · 부모가 실을 때 fitMinHeight 로 보냄(안 보내면 종전 그대로)
- B06 상세 표 위 CAD = 16(원 마크 아래 끝 ~ 첫 줄 위) — 사토장 등 글만 있는 측점도 배관 측점과 같은 글 크기 · 둘째 줄 안 잘림
- 시험 resources/tester/cad/fit-min-height(종전 3배 넘는 확대 · 같은 배율 · 위 끝 같음 · 큰 범위 그대로)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VmC34fsxxbweEG3RUjs3Mn
2026-10-17 16:07:12 +09:00