2.0 KiB
2.0 KiB
C++ 제품 개발 프로젝트
이 저장소의 제품은 MSVC 기반 C++ 제품이다. Harness와 scripts/의 Python 코드는
제품 개발을 지원하는 도구이며 제품의 목표나 기능이 아니다.
현재 확정 상태
- 제품명·사용자·업무 기능: 미정
- MSVC toolset·C++ 표준·테스트 프레임워크: 미정
- 빌드 형식: CMake 또는 Visual Studio solution/project 중 실제 metadata와
.harness/config.json으로 확인 - 배치: 제품 구현은
src/, public header는include/, 테스트는tests/
미정 값을 예시로 채우거나 검증된 사실처럼 표현하지 않는다.
필수 규칙
- CRITICAL: public header가 implementation에 의존하도록 방향을 역전하지 않는다.
- CRITICAL: 새 기능과 버그 수정은 실패하는 테스트를 먼저 확인한 뒤 구현한다.
- CRITICAL: 새 빌드 경고를 추가하지 않는다.
- 변경 범위와 관련된 문서·코드·테스트만 읽고 수정한다. step의
context_files가 있으면 그 목록을 우선한다. - 실행 상태는
phases/{phase}/index.json을 기준으로 판단한다. 인계 문서는 상태를 대신하지 않는다. - phase 작업 시
docs/phase/{phase}/handoff.md를 확인하고, 종료 전에 최신 인계와 해당stepN.md기록을 갱신한다. 상세 양식은docs/phase/README.md를 따른다. - 커밋 메시지는 conventional commits 형식을 따른다.
검증
실제 명령은 .harness/config.json, CMake preset, solution 설정과 프로젝트 문서를
우선한다. 설정이 확인되지 않았을 때 아래 명령을 성공한 검증으로 주장하지 않는다.
# 일반 CMake 예시
cmake -S . -B .harness/build -A x64
cmake --build .harness/build --config Debug
ctest --test-dir .harness/build -C Debug --output-on-failure
# 직접 MSBuild 예시: 실제 solution과 test command로 교체
MSBuild.exe <solution.sln> /m /p:Configuration=Debug /p:Platform=x64
<test-command>