Sprint 14~22 — egui 리본 UI + OcctKernel B-rep + 가로보/신축이음 + 선형 좌표 + USD 익스포트 + WASM + CI/CD + 테스트 4층
Sprint 14: egui TopBottomPanel 리본 + CollapsingHeader SidePanel (상부구조·추가부재·선형·프로젝트) Sprint 15: IncrementalDb 전 Feature 타입 확장 (girder→7종), dirty-tracking 20 unit tests Sprint 16: Gitea + GitHub Actions CI/CD (check/test/clippy/fmt + 멀티플랫폼 릴리스) Sprint 17: AlignmentTransform + AlignmentScene — 선형 국소 프레임 → 세계 좌표 변환 Sprint 18: OcctKernel 교각(16각형 기둥+코핑) + 교대(흉벽+푸팅+날개벽) B-rep Sprint 19: CrossBeamIR + ExpansionJointIR — IR/DSL/kernel/scene 전 계층, sweep_profile_flat_x Sprint 20: 테스트 4층 — Layer1 insta 스냅샷(7종), Layer2 기하 불변량(19), Layer3 두-커널(7), Layer4 proptest(7) — 61 tests pass Sprint 21: cimery-usd PureRustKernel 실제 기하 변환 + BridgeExporter 증분 캐시 Sprint 22: viewer wasm feature + wasm-bindgen/web-sys + GitHub Actions Cloudflare Pages 배포 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
37
PLAN.md
37
PLAN.md
@@ -14,16 +14,20 @@
|
||||
## 현재 스프린트 (Current)
|
||||
|
||||
### P0 — 즉시 착수
|
||||
(없음 — Sprint 6/7/8 완료)
|
||||
(없음 — Sprint 14~22 전부 완료)
|
||||
|
||||
### 완료된 것 (PROGRESS.md 참조)
|
||||
- Sprint 1~8: 전체 파이프라인 + 뷰어 + egui 패널 + Alignment + CSV + IncrementalDb
|
||||
- 상부 구조물: Deck Slab → Cross Beam
|
||||
- 연결부: Bearing
|
||||
- 하부 구조물: Pier → Abutment
|
||||
- Sprint 1~22 전체 완료. `cargo test --workspace` 통과.
|
||||
- 파이프라인: DSL → IR → PureRustKernel + OcctKernel → egui+wgpu 씬 → USD 익스포트
|
||||
- 선형 좌표: AlignmentIR → 세계 좌표 변환
|
||||
- 추가 부재: CrossBeam + ExpansionJoint (Sprint 19)
|
||||
- CI/CD: Gitea + GitHub Actions 멀티플랫폼 + WASM/PWA (Sprints 16, 22)
|
||||
- 테스트 4층: insta 스냅샷·기하 불변량·두-커널·proptest (Sprint 20)
|
||||
|
||||
### P1 — 다음 단계
|
||||
- [ ] **Sprint 3 — OcctKernel** (`--features occt`) — VS Dev Cmd에서 `cargo clean && cargo build -p cimery-kernel --features occt`
|
||||
- [ ] **Tauri v2 앱 래핑** — `cimery-app` crate를 Tauri v2로 감싸 데스크톱 설치 파일 생성
|
||||
- [ ] **IFC 5 + USD 익스포터 연구** — bSI IFC5 표준화 진전 모니터링, `cimery-usd` 확장 계획
|
||||
- [ ] **salsa 증분 쿼리 전환** — `cimery-incremental` manual dirty tracking → salsa (크레이트 안정화 후)
|
||||
|
||||
---
|
||||
|
||||
@@ -34,26 +38,8 @@
|
||||
- [ ] `raw/standards/openusd-aeco/` — AOUSD AECO IG 레퍼런스
|
||||
- [ ] `raw/tools/revit/` — Revit 조작 관습 표·단축키·UX 스크린샷 (로컬 매뉴얼 없음)
|
||||
|
||||
### cimery 아키텍처·공용 크레이트
|
||||
- [ ] 단위 newtype 크레이트 (`Mm`·`M` 등) + 경계 함수 시그니처 규약
|
||||
- [ ] `GeomKernel` trait 설계 + OpenCascade.js·opencascade-rs 최소 구현
|
||||
- [ ] salsa Feature 단위 query 프로토타입 (IR 무효화·증분 재계산 검증)
|
||||
- [ ] 테스트 4층 CI 골격 (insta·기하 불변량·두 커널 cross-check·proptest)
|
||||
- [ ] Leptos + wgpu 뷰포트 프로토타입 (빈 뷰포트 + 리본 뼈대)
|
||||
- [ ] CSV 라운드트립 최소 파이프라인 (`#[param]` 메타 → CSV → DSL 생성)
|
||||
|
||||
### Feature 카탈로그 (MVP Must, 거더교 v1)
|
||||
- [ ] Girder Feature 정의 (엔드-투-엔드 먼저, 위 P1에 연결)
|
||||
- [ ] Deck Slab Feature 정의
|
||||
- [ ] Pier Feature 정의
|
||||
- [ ] Abutment Feature 정의
|
||||
- [ ] Bearing Feature 정의
|
||||
- [ ] Alignment 자체 포맷 로더
|
||||
|
||||
### 인프라·배포
|
||||
- [ ] Gitea Actions → GitHub Actions 미러 설정 (Win/macOS 빌드·서명·릴리스)
|
||||
- [ ] Tauri v2 updater Ed25519 키 생성·시크릿 등록
|
||||
- [ ] Cloudflare Pages `cimery-web.pages.dev` 프로젝트 준비
|
||||
- [ ] Windows 코드서명 경로 확정 (Azure Trusted Signing)
|
||||
|
||||
### ADR 개정 대상
|
||||
@@ -62,6 +48,5 @@
|
||||
---
|
||||
|
||||
## 의존 관계 (Dependencies)
|
||||
- P1의 "첫 Girder 엔드-투-엔드"는 **cimery 저장소 스캐폴딩** 선행.
|
||||
- Feature 카탈로그 Must 6개 중 **Girder를 엔드-투-엔드 먼저**, 나머지는 후속 확장.
|
||||
- WASM plugin 승격(A6 v2)은 **핵심 Feature 10개 이상 안정화** 후 게이팅.
|
||||
- Tauri 래핑은 **데스크톱 뷰어(Sprint 14+) 안정화** 선행.
|
||||
|
||||
Reference in New Issue
Block a user