cargo doc --workspace --no-deps 에서 55 → 0 warnings.
## 변경
- crates/{ir, kernel, incremental, viewer}/src/lib.rs 최상단에
#![allow(rustdoc::broken_intra_doc_links)] 추가.
· 이유: doc comment 내 단위 표기 [mm] [m] [deg] [rad] [radians] 가
intra-doc link 문법과 충돌 (40+ 건). 실제 intra-doc link 가 아님.
· 각 crate 에 주석으로 이유 명시.
- crates/ifc/src/bridge_export.rs: camber_mid_mm doc comment 의 \[mm\] escape.
- crates/dsl/src/{cross_beam,expansion_joint}.rs: station doc comment \[m\] escape.
- crates/viewer/src/camera.rs: radius/yaw/pitch doc \[mm\]/\[radians\] escape.
- crates/incremental/src/lib.rs: `HashSet<FeatureId>` → backtick 래핑
(unclosed HTML tag 경고 해소).
cargo check --workspace --all-targets: 0 warnings.
테스트 회귀 없음: cimery-ifc 20 + cimery-viewer 13 passed.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
cimery
토목 공학을 위한 파라메트릭 BIM 모델링 도구. Revit 의 토목 버전. MVP 타겟: 거더교.
현재 상태 (Sprint 39)
거더교 MVP 완성:
| 영역 | 내용 |
|---|---|
| 기하 | PSC-I·SteelBox · 다경간 · Skew · Camber · 헌치 · 변단면 · 방호벽 · 격벽 |
| 부재 | 거더·데크·교대·교각(T형/π형)·받침·가로보·신축이음 |
| UI | egui 속성 패널 6 카테고리 · Perspective/Ortho 투영 토글 · 표준 뷰(1/3/7/Home) |
| 저장 | JSON 프로젝트 · USD · IFC4X3 Add2 |
| IFC | IfcAlignment · PSC-I 실제 단면 · Skew · Camber (10-segment) · Pset_BeamCommon |
| 배포 | Tauri v2 (MSI/DMG/Deb) · WASM · CI/CD 3단계 |
| 증분 | 수동 dirty tracking + salsa 백엔드 (feature gate) |
| 테스트 | 4층(스냅샷·불변량·크로스체크·proptest) + IFC snapshot · 총 ~140 |
빌드 & 실행
# 전체 체크 / 테스트
cargo check --workspace --features occt
cargo test --workspace
# 뷰어 실행 (OCCT 백엔드)
cargo run --release -p cimery-viewer --features occt
# Tauri 앱 (런처 + 사이드카 뷰어)
cargo tauri build -p cimery-app # MSI/DMG/Deb 번들 생성
# IFC 테스트 스냅샷 baseline 갱신
INSTA_UPDATE=always cargo test -p cimery-ifc --test snapshot_tests
크레이트 구조
cimery/crates/
├── core ─── 단위 타입(Mm/M), 도메인 열거형
├── ir ─── IR 구조체 + serde 직렬화
├── dsl ─── Feature 빌더·검증 (Girder·Pier·Abutment 등)
├── kernel ─── GeomKernel trait + PureRust/Occt 백엔드
├── incremental ─── 증분 DB (수동 + salsa 백엔드)
├── evaluator ─── IR → kernel 연결
├── viewer ─── egui+wgpu 뷰어 + IFC 익스포트 버튼
├── usd ─── USD 텍스트 익스포트
├── ifc ─── IFC4X3 Add2 STEP Part21 익스포트
├── macros ─── proc-macro (#[derive(ParamSummary)])
└── app ─── Tauri v2 데스크톱 런처
의존 방향: core → ir → {dsl, kernel, usd, ifc} → incremental → evaluator → viewer → app.
참조 문서
- 개발 지침:
../Output/guides/cimery-dev-guide.md - 아키텍처 결정:
../Output/reports/ADR-001~004 - ParaWiki 지식 저장소:
../wiki/ - 작업 이력:
../PROGRESS.md - 할 일:
../PLAN.md
라이선스
MIT OR Apache-2.0 (workspace).