Skip to content

[Chore] Sprint 1 시연용 평면 자산 큐레이션#171

Merged
SilverSupplier merged 2 commits into
mainfrom
chore/demo-layout-assets-168
May 3, 2026
Merged

[Chore] Sprint 1 시연용 평면 자산 큐레이션#171
SilverSupplier merged 2 commits into
mainfrom
chore/demo-layout-assets-168

Conversation

@SilverSupplier
Copy link
Copy Markdown
Collaborator

@SilverSupplier SilverSupplier commented May 3, 2026

Summary

  • Sprint 1 시연 흐름(임포트 → 리뷰 → 시뮬레이션 → 결과)에서 결과 지표가 서로 다르게 나오도록 설계된 시연 평면 3종을 assets/demo-layouts/ 에 추가
  • 시연 평면별 강조 지표를 문서화 (docs/demo/시연 평면 가이드.md)
  • 새 시연 평면 3종에 대한 임포트 회귀 가드를 tests/DxfImportServiceTests.cpp 에 추가
  • tests/dxf/README.mdassets/demo-layouts/ 분리 안내와 기존에 누락되어 있던 blocking_review_demo.dxf 행을 보강
  • tests/ImportContractsTests.cpp 의 정상 임포트 경로 픽스처를 home_plan.dxfoffice_suite.dxf 로 정돈

기존 tests/dxf/ 픽스처(apartment_floor_plan.dxf, LICENSE.cad-portfolio.txt, home_plan.dxf, evacuation_complex_large.dxf, generator 함수)는 다른 팀원의 기여라 그대로 보존합니다. 본 PR은 기여 보존을 전제로 시연 자산을 추가하는 데에만 책임을 둡니다.

Related Issue

Area

  • Engine
  • Domain
  • Application
  • Docs
  • Build
  • Analysis
  • Chore

Architecture Check

  • I kept the dependency direction `application -> domain -> engine`.
  • I did not add Qt UI code to `src/domain`.
  • I did not add `domain` or `application` dependencies to `src/engine`.
  • I used `src/` as the include root.

Verification

  • `cmake --preset windows-debug`
  • `cmake --build --preset build-debug`
  • `ctest --preset test-debug`
  • Not run (reason below)

풀 앱 빌드까지 확인. `safecrowd_app.exe` (5MB) 및 `safecrowd_tests.exe` 모두 클린 빌드, `ctest` 1/1 passed.

PR CI 와 동일한 no-app 경로도 추가 확인:

  • `cmake --preset windows-debug-no-app` ✅
  • `cmake --build --preset build-no-app-debug` ✅
  • `ctest --preset test-no-app-debug` ✅ (신규 회귀 가드 3건 포함 모두 통과)

Risks / Follow-up

  • DXF 재생성 시 timestamp/GUID 차이로 바이너리 diff 가 발생할 수 있음. 기능적 차이 없음.
  • 시연 시 동일 군중·동일 시나리오로 ① bottleneck_hall ↔ ② multi_exit_concourse 를 비교하면 결과 차이가 가장 명확함.
  • application 영역에 빌트인 시연 프로젝트 카탈로그 다중화 같은 후속 작업은 본 PR 범위 밖. 필요 시 별 이슈로 분리.

- assets/demo-layouts/ 신설: bottleneck_hall, multi_exit_concourse,
  branched_corridor_office DXF 3종과 결정적 재생성 스크립트 추가.
  세 평면은 결과 지표(피크 밀도, t90/t95, ExitUsage, ZoneCompletion)가
  서로 다르게 나오도록 의도적으로 토폴로지를 구성.
- docs/demo/시연 평면 가이드.md 추가: 평면별 시연 메시지와 강조 지표 정리.
- tests/dxf/ 정리: 미활용 home_plan / apartment_floor_plan /
  evacuation_complex_large 와 cad-portfolio 라이선스 파일 제거.
  generate_building_samples.py 는 office_suite 만 생성하도록 트림.
- tests/DxfImportServiceTests.cpp 에 신규 시연 DXF 3종의 임포트 회귀 가드 추가.
- tests/ImportContractsTests.cpp 의 문자열 경로를 office_suite.dxf 로 교체.

Refs: #168
@SilverSupplier SilverSupplier requested a review from learncold as a code owner May 3, 2026 06:25
Curating the demo layouts under assets/demo-layouts/ does not require
removing the existing test fixtures contributed by another teammate.
Keep the four DXF files and the LICENSE under tests/dxf/ so the
provenance of the downloaded MIT sample is retained and the local
generator can still reproduce the residential and evacuation samples.

- Restore apartment_floor_plan.dxf, LICENSE.cad-portfolio.txt,
  home_plan.dxf, and evacuation_complex_large.dxf so existing
  attribution and regeneration paths stay intact.
- Restore the build_home_plan and build_evacuation_complex_large
  helpers in generate_building_samples.py for the same reason.
- Keep the new framing in tests/dxf/README.md (cross-reference to
  assets/demo-layouts/, and the row for blocking_review_demo.dxf
  that was previously undocumented) and combine it with the original
  provenance section that describes the kept files.
@SilverSupplier SilverSupplier merged commit f329750 into main May 3, 2026
3 checks passed
@SilverSupplier SilverSupplier deleted the chore/demo-layout-assets-168 branch May 3, 2026 17:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Task-시연용 평면 자산 큐레이션 (병목/다출구/복도)

1 participant