3.3 KiB
3.3 KiB
Step 25: Build and Test Verification
과거 개발 계획이다. 아래 작업·상태·예시는 현재 실행 지시가 아니다. 현재 구현과 검증 한계는 기능 요약을 따른다.
읽어야 할 파일
/AGENTS.md../../docs/solver-core/README.md../../docs/solver-core/README.md../../docs/linear-static-3d-euler-beam/README.md../../docs/linear-static-3d-euler-beam/README.md../../docs/linear-static-3d-euler-beam/README.md../../docs/linear-static-3d-euler-beam/README.md../../docs/linear-static-3d-euler-beam/README.md../../docs/linear-static-3d-euler-beam/README.md/CMakeLists.txt와 모든 CMake/test registration/phases/linear-static-3d-euler-beam/index.json의 Step 7–24 summary
작업
fresh MSVC x64 Debug configure/build/test evidence를 수집해
../../docs/linear-static-3d-euler-beam/README.md를 생성하라.
- Metadata status는 모든 gate 통과 시
pass-for-reference-verification이다. - Environment/dependency revision과 config-resolved command를 기록한다.
- Configure, build, targeted feature tests, CTest discovery, full CTest 각각에 command, start/end 또는 duration, exit code, stdout/stderr tail, verdict를 기록한다.
- CTest discovery가 하나 이상의 test를 포함하고 compiler metadata가 MSVC인지 확인한다.
/W4 /WX로 새 product warning이 없는지 build output/CMake setting으로 확인한다.- implementation report의 Step 7–24 RED/GREEN/VERIFY evidence가 모두 present인지 감사한다.
- 실패는
configure | compile | link | test | reference-comparison | harness | environment | upstream-contract중 하나로 분류하고 correction handoff를 기록한다.
Acceptance Criteria
아래 명령을 fresh evidence로 실행한다.
과거 도구 실행·출력 지시는 정리했으며, 현재 검증 방법은 기능 요약을 따른다.
Report structural check:
$path = 'docs/linear-static-3d-euler-beam/build-test.md'
if (-not (Test-Path $path)) { throw "Missing $path" }
$required = @('status: `pass-for-reference-verification`', 'MSVC', 'x64', 'Debug',
'configure', 'build', 'show-only=json-v1', 'output-on-failure', 'exit code', 'duration')
foreach ($text in $required) {
if (-not (Select-String -LiteralPath $path -SimpleMatch $text -Quiet)) {
throw "Missing build/test evidence: $text"
}
}
git diff --check -- $path
검증 절차
- 모든 command를 새로 실행하고 실제 exit code/duration/output tail을 기록한다.
- implementation evidence와 CTest discovered tests를 대조한다.
- 모두 성공한 경우에만 report와 Step 25를 pass/completed로 갱신한다.
- 실패 시 report에 정확한 classification과 correction handoff를 기록하고 Step 25를
error로 둔다. 환경/사용자 조치가 필수인 경우만blocked로 둔다.
금지사항
- source, tests, CMake를 수정하지 마라. 이유: independent build/test gate다.
- 실패 test를 disable/filter-out하지 마라. 이유: 회귀를 숨긴다.
- reference artifact나 tolerance를 수정하지 마라. 이유: 이 gate의 책임 밖이다.
- command 결과를 추정하거나 이전 summary를 fresh evidence로 대체하지 마라. 이유: gate 신뢰성을 잃는다.
- 직접 commit하지 마라. 이유: Harness executor가 담당한다.