Files
Aislo/docs/raw/verification/2026-07-25_verify_b06_2nd_improvements.md
T
eomsangdonandClaude Opus 5 eb30b774f8 chore(docs): docs 폴더 git 추적 전환 · PLAN·OWNERS 최상위 이관
- `docs/` 를 .gitignore 에서 빼 git 추적 대상으로 전환 (위키·완료 이력·검증 기록)
- `docs/raw/PLAN.md` · `docs/raw/OWNERS.md` 를 저장소 최상위로 이동 후 .gitignore 에 등록
  — 창끼리 공유하되 저장소에는 안 올리는 장부
- 살아 있는 경로 참조 7개 파일 정정 (아카이브 107건은 그때 사실이라 그대로 둠)
- graphify 날짜별 산출물(`docs/wiki/graphify-out/20*/`) 제외 — `graphify update` 가 다시 만듦

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-09 18:19:07 +09:00

4.2 KiB

코드 검증 보고서 — B06 2차 개선 및 후속 작업 (2026-07-25)

1. 검증 개요

  • 검증 일시: 2026-07-25
  • 검증 대상 항목:
    • N-1 후속: 측구 미생성 시 측구형식 비활성화 및 툴팁 분리
    • N-2. B06 2차 개선 (N-2-1 ~ N-2-6): 표준단면 패널 [전체 반영] 버튼, 카드 옵션 행 오버플로 우측 드롭다운, 도로 경사 방향(좌/우) 재정의, 지반선 1회 교차 후 사면 연장 중단, 단면유형 pill 라벨 3종화, 카드 반응형 열 수 불일치 버그 수정
    • N-3. B05·B06 소규모 후속: B05 구간 평행이동 원복(↺) 버튼, B06 모식도 폰트 확대(14/12px), 좌/우 라벨 축약
    • N-4. 사이드패널 접기 템플릿 & 노견 경계 틱: B06 사이드패널 B05 접기 템플릿(ui-collapsible & details/summary) 적용, 차도·노견 경계 짧은 수직 틱(±6px) 오버레이
    • N-5. N-5-1 ~ N-5-3: 구간 그룹 패딩 모식도 정합, B06 종단도 구조물(irregular) 측점 세로선 자수정색 파선 스타일 추가, 면적 오버레이 headroom(28px) 확보

2. 세부 검증 결과

2.1. N-1 후속 & N-2-1 ~ N-2-6 (B06 2차 개선)

  • 측구형식 비활성화 (N-1 후속): _UI_Cross_Design.ts에서 !rockCut || !ditchOn 비활성화 조건과 툴팁 분리가 정상 적용됨.
  • 패널 [전체 반영] (N-2-1): _UI_Standard_Panel.ts에 [전체 반영] 버튼 및 onApplyAll 콜백 추가, _UI_Page.ts에서 applyPanelToAll()을 통한 순차 일괄 재계산 구현 확인.
  • 옵션 행 오버플로 (N-2-2): _UI_Cross_Design.ts 및 _UI_Style_Cross.css에서 ResizeObserver 및 details 우측 맞춤 세로 드롭다운("⋯") 오버플로 처리 확인.
  • 경사 방향 재정의 (N-2-3): needsDitch() 조건에 both_fill을 포함시키고, 라벨을 SlopeDir_Left/Right("좌/우")로 교체 및 툴팁 개선.
  • 지반선 1회 교차 사면 연장 중단 (N-2-4): B06_wf3_ProfileCross_Engine_Design.py에 _SectionGeometry.cut_cross_dist()/_cut_slope_z()를 신설하여 최초 지반 교차점 이후 연장 및 무릎 전환을 차단하도록 처리.
  • 단면유형 pill 라벨 3종화 (N-2-5): ui_template_locale.ts에서 편측 성토 / 양측 절토 / 양측 성토 3종 라벨 적용.
  • 반응형 열 수 불일치 버그 (N-2-6): _UI_Section_View.ts에서 grid.style.gridTemplateColumns = repeat(columnCount, minmax(0,1fr))를 지정해 JS-CSS 간 열 수 일치를 통해 카드 어긋남 수정.

2.2. N-3 ~ N-5 (후속 개선 작업)

  • B05 구간 원복 ↺ (N-3-1): _UI_Profile_Edit.ts 및 _UI_Profile_Panel.ts에서 구간 양 끝 편집 시 ↺ 버튼 노출 및 초기화 연동 확인.
  • 모식도 폰트 (N-3-2): _UI_Style.css에서 .b06-diag__label 14px, .b06-diag__label-sm 12px 적용 확인.
  • 접기 템플릿 & 차도 틱 (N-4-1, N-4-2):
    • _UI_Page.ts 상위 그룹 ui-collapsible + attachCollapsible, _UI_Standard_Panel.ts 하위 구간 details/summary 기본 접힘 구조 적용.
    • _UI_Cross_Design.ts 및 _UI_Style_Cross.css에서 carriageway_edges 차도 양 끝 ±6px 수직 틱(.b06-chart__carriageway-tick) 추가.
  • 패딩 정합 & 종단 파선 & headroom (N-5-1 ~ N-5-3):
    • _UI_Style.css 모식도 패딩 정합(8px).
    • _UI_Style_Cross.css Line 309 .b06-chart__station-line--irregular 자수정색 파선(5 3) 스타일 추가 확인.
    • _UI_Cross_View.ts AREA_OVERLAY_HEADROOM_PX = 28 적용으로 Y 세로 여유 확보.

3. 코드 품질 및 파일 제약 준수

  • 파일 700줄 제한:
    • B06_wf3_ProfileCross_Engine_Design.py: 625줄
    • B06_wf3_ProfileCross_UI_Style_Cross.css: 558줄
    • B06_wf3_ProfileCross_UI_Cross_Design.ts: 468줄
    • B06_wf3_ProfileCross_UI_Cross_View.ts: 463줄
    • 모든 파일이 700줄 이하 규칙을 준수함.

4. 종합 결론 및 조치

  • 검증 결과: PASS
  • 조치 사항:
    1. PLAN.md에서 검증 완료된 N-1 후속~N-5 세부 항목을 Cut하여 docs/raw/plans/2026-07-25_plan_b06_2nd_improvements.md로 이관.
    2. PLAN.md 최신화 (사용자 지시에 따라 B08 재구축 작업 계획 이하 부분은 그대로 보존).