1.7 KiB
1.7 KiB
Project: FESA Harness
기술 스택
- C++17 이상
- MSVC on Windows
- CMake + CTest
- Harness scripts in Python 3
아키텍처 규칙
- CRITICAL: 기본 검증 경로는
python scripts/validate_workspace.py이다. - CRITICAL: C++ 빌드는 CMake/MSVC/x64/Debug 기준으로 검증한다.
- CRITICAL: 새 기능 또는 동작 변경은 테스트를 먼저 작성하고 실패를 확인한 뒤 구현한다.
- CRITICAL: Abaqus reference artifact나 solver 코드 복원은 명시적으로 요청된 phase에서만 수행한다.
- Harness runner는
scripts/execute.py에 둔다. - Codex hook 정책은
.codex/hooks/에 둔다. - Harness planning/review instructions are stored in
.codex/skills/. - Generated phase execution outputs remain ignored under
phases/**/step*-output.json.
개발 프로세스
- TDD를 기본으로 한다. C++ production file을 바꿀 때는 관련 C++ test file이 있어야 한다.
- 커밋 전 hook은 Harness Python self-test와 workspace validation을 실행해야 한다.
- 커밋 메시지는 conventional commits 형식을 따른다:
feat:,fix:,docs:,refactor:,test:. - 계획이 필요한 장기 작업은 Harness phase로 나누고, 각 step은 독립 실행 가능해야 한다.
명령어
python -m unittest discover -s scripts -p "test_*.py"
python scripts/validate_workspace.py
python scripts/execute.py <phase-dir>
python scripts/execute.py <phase-dir> --push
MSVC 검증 기본값
- Generator:
Visual Studio 17 2022 - Platform:
x64 - Config:
Debug - Build directory:
build/msvc-debug
Override variables:
HARNESS_VALIDATION_COMMANDSHARNESS_CMAKE_GENERATORHARNESS_CMAKE_PLATFORMHARNESS_CMAKE_CONFIGHARNESS_BUILD_DIR