Files
Aislo/docs/raw/plans/2026-07-19_plan_b07_independent_cad.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

3.6 KiB

PLAN: B07 독립형 2D CAD 전환 (2026-07-19 승인) - 완료 아카이브

B07 독립형 2D CAD 전환 (2026-07-19 승인)

확정 목표

  • 작업 대상은 B07_wf4_DesignDetail 페이지로 한정한다. 다른 업무 페이지는 변경하지 않는다.
  • B07의 기존 CAD 뷰어/PoC 화면을 제거하고, B07_wf4_DesignDetail/openwebcad를 기반으로 한 독립적인 2D Drawing 작업 화면으로 교체한다.
  • OpenWebCAD는 더 이상 외부 저장소에서 갱신하는 클론으로 취급하지 않고 이 프로젝트가 직접 소유·관리하는 소스로 전환한다.
  • 내부 업무 데이터는 서버에서 JSON 도면 모델로 전달한다. 브라우저가 DXF/DWG를 직접 파싱하는 구조는 사용하지 않는다.

라이선스 및 파일 포맷 원칙

  • OpenWebCAD의 MIT 코드는 수정·상용 배포할 수 있으며, 원 저작권과 MIT 허가문을 배포물에 보존한다.
  • B07 화면에 OpenWebCAD 기반 / MIT License 고지와 라이선스 전문 접근 경로를 제공하고, 소스 트리의 원본 LICENSE도 보존한다.
  • 자체 작성 코드와 업무 로직은 프로젝트 정책으로 관리한다. OpenWebCAD 원본에서 유래한 부분의 MIT 고지는 제거하지 않는다.
  • DXF 입력·출력과 PDF 출력은 B07 편집 코어와 분리된 백엔드/내보내기 모듈로 설계한다. 실제 라이브러리를 채택할 때 각 라이선스를 다시 검증한다.
  • DWG는 포맷 SDK·변환기의 라이선스/EULA와 서버 자동화 허용 범위가 확정될 때까지 구현하지 않고 백로그로 둔다.
  • GPL/AGPL 또는 상용 SDK를 추가할 때는 단순 화면 고지만으로 해결된다고 간주하지 않으며, 배포·서비스 구조별 의무를 별도로 검토한다.

구현 체크리스트

  • 현재 B07 진입 경로, 정적 CAD 앱 마운트, iframe/JSON 연동 지점만 확인한다.
  • 실행 중인 외부 CAD 비교 서버를 안전하게 종료한다.
  • B07_wf4_DesignDetail/openwebcad에서 중첩 .git을 제거하여 프로젝트 소유 소스로 전환하고 MIT LICENSE를 보존한다.
  • external_program/에서 OpenWebCAD 이외의 CAD 후보 프로젝트(cad-viewer, cad-viewer-example, elhakimz-webcad, makerjs)를 삭제한다.
  • 비교 실행 전용 스크립트와 안내 문서(start-cad-demos.ps1, stop-cad-demos.ps1, README_CAD_DEMOS.md)를 삭제한다.
  • OpenWebCAD의 제품명·화면 구성을 B07 전용 독립 2D CAD로 정리하고, 내부 JSON을 받을 수 있는 명확한 연동 경계를 둔다.
  • B07의 기존 뷰어/PoC 본문을 제거하고 새 CAD 앱을 표시하도록 정적 마운트와 페이지 구성을 교체한다.
  • B07 화면에서 MIT 고지와 라이선스 전문을 확인할 수 있게 한다.
  • 기존 B07 PoC 전용 의존성·스텁·API 중 더 이상 사용되지 않는 항목만 정밀 제거한다.
  • 변경 파일 포맷팅, 빌드, 관련 테스트, 정적 URL과 B07 진입 동작, 라이선스 파일 보존 여부를 검증한다.
  • 검증 보고서를 작성하고 완료된 본 계획을 아카이빙한 뒤 B07 위키와 지식 그래프를 갱신한다.

완료 조건

  • external_program/은 제거되고 독립화된 CAD 소스는 B07_wf4_DesignDetail/openwebcad에만 남는다.
  • B07에는 기존 뷰어가 아닌 편집 가능한 독립 2D CAD 화면이 표시된다.
  • 다른 업무 페이지의 동작과 화면은 변경되지 않는다.
  • OpenWebCAD MIT 고지와 LICENSE가 배포물 및 B07 화면에서 확인된다.
  • DXF·PDF·DWG는 이번 작업에서 무리하게 구현하지 않고, 분리된 후속 계획으로 남는다.