type, status, page_id, related_pages, last_updated, source
type
status
page_id
related_pages
last_updated
source
page-feature
stable
B08_DesignDetail
2026-09-02
docs/raw/plans/2026-09-01_plan_B07_usability_verification_hold.md
docs/raw/verification/2026-09-01_verify_remaining_checked_items.md
docs/raw/plans/2026-09-02_plan_user_verified_completed_items.md
B08 CAD 사용자 편의성 정리
PLAN의 역사적 명칭은 B07 상세설계지만 현재 페이지 책임은 B08 DesignDetail이다. 사용자가 검증 완료를 선언해 완료 상태로 반영했다.
상세 구현·사용자 실측 원문은 검증 보류 계획 아카이브로 옮겼고, 상시 계획서에는 CAD 회귀 6건 재검증 항목만 유지한다.
구현 기록
항목
위치
역할
drawingDirty
B08_DesignDetail/openwebcad/src/state.ts
편집·undo·redo의 미저장 상태 추적
mayDiscardEdits()
B08_DesignDetail/B08_DesignDetail_UI_Page.ts
도면 전환 전 미저장 편집 폐기 확인
setHighlightedEntityIds()
B08_DesignDetail/openwebcad/src/state.ts
잠금 도면층 근접 하이라이트 제외
BLANK_DRAWINGS·build_blank_drawing()
B08_DesignDetail/B08_DesignDetail_Router_Support.py
준비 중 도면 7종에 도각과 자유 작도층 제공
isDrawingReadOnly()
B08_DesignDetail/openwebcad/src/state.ts
확정 도면의 편집 명령 차단
paintNowCommitLater()
B08_DesignDetail/openwebcad/src/state.ts
색상 드래그 중 화면 갱신과 undo 기록 분리
recovery drawing key
B08_DesignDetail/openwebcad/
자동 백업을 도면 ID별로 격리
cross_s{start_m}
B08_DesignDetail/
횡단 장 ID를 시작 측점에 고정
frame-template DELETE
B08_DesignDetail/
잘못 저장한 회사 도각을 기본값으로 복원
사용자 흐름
도면 전환 시 미저장 편집이 있으면 확인하고, 중복 로드 응답은 늦게 화면을 덮지 못한다.
확정 도면은 읽기 전용이며 [수정]으로 명시적으로 해제한다.
준비 중 도면도 빈 도각과 자유 작도층을 열지만 확정 대상은 아니다.
잠금 도각·등고선·계류는 선택·스냅·근접 하이라이트 대상에서 제외한다.
백업은 도면별로 저장하며 서버 도면 적재 중에는 recovery 기록을 만들지 않는다.
횡단 장 계획 실패가 다른 도면 목록 조회까지 막지 않는다.
검증 상태
검사
결과
루트 TypeScript 타입검사
통과
openwebcad state.test.ts
8 passed
openwebcad 전체 Vitest
87 passed / 0 failed
TypeScript 타입검사·빌드
통과
Node 환경의 window 접근, 최근접 엔티티 목 데이터, 기본 선색 기대값, 제거된 좌표 상수와 각도 표기 차이를 정리했다. 명령행은 기본 숨김이며 토글 동작은 유지한다.