From 59e94985302b93b5180360122b2d98bd58e2f615 Mon Sep 17 00:00:00 2001 From: "KOKO\\Mimi" Date: Tue, 29 Sep 2026 22:24:48 +0900 Subject: [PATCH] test: register thermal CLI coverage and evidence --- docs/shell-transient-heat-transfer/PRD.md | 2 +- .../implementation-verification.md | 23 +++++++++++++++++++ tests/CMakeLists.txt | 3 +++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/docs/shell-transient-heat-transfer/PRD.md b/docs/shell-transient-heat-transfer/PRD.md index a13b4f7..b0b4117 100644 --- a/docs/shell-transient-heat-transfer/PRD.md +++ b/docs/shell-transient-heat-transfer/PRD.md @@ -435,7 +435,7 @@ Missing/extra/duplicate/nonfinite/identity 오류는 tolerance 전에 실패다. - [x] Production 변경 전 전체 baseline과 reference hash evidence 기록 - [x] Thermal semantic model·DOF·geometry·K/C·flux 구현 및 [독립·통합 검증](implementation-verification.md#요소-kernel과-형상-검증) - [x] Thermal 입력 subset·진단·결정적 조립·시간 적분 구현 및 [범위별 검증](implementation-verification.md#backward-euler-procedure와-candidate-검증) -- [ ] HDF5·CLI·candidate와 기존 결과 보존 검증 +- [x] HDF5·CLI·candidate와 기존 결과 보존 [검증](implementation-verification.md#application과-실제-cli) - [ ] 해석해·수지·수렴성과 필수 NT11 외부 비교 통과 - [ ] 전체 MSVC Debug build/CTest 및 기존 실패 대비 확인 - [ ] 독립 physics 검토와 완료 evidence 기록 diff --git a/docs/shell-transient-heat-transfer/implementation-verification.md b/docs/shell-transient-heat-transfer/implementation-verification.md index bf8a792..4b624eb 100644 --- a/docs/shell-transient-heat-transfer/implementation-verification.md +++ b/docs/shell-transient-heat-transfer/implementation-verification.md @@ -340,4 +340,27 @@ reference 검증을 대신하지 않는다. `.dryforge/evidence/thermal-procedure-output-integrated-{configure,build,inventory,test}.log` 및 exit JSON에 보존했다. 이는 관련 통합 검사이며 전체 회귀는 아니다. +### Application과 실제 CLI + +`7cccfcd`의 독립 검토에서 application 연결 범위의 차단 항목이 없었다. Thermal step을 +구조 step 개수 검사보다 먼저 선택하며, typed outcome과 thermal writer를 연결했다. +기존 호출의 optional adapter, output lease·log close 순서와 오류 분류를 보존한다. +실제 executable을 사용하는 통합 테스트의 CMake 의존성도 명시했다. + +작업 checkout의 `t9-verified-{build,test}.log`, `t9-complete-inventory.log`와 exit JSON은 +native exit 0이다. Inventory **592개**, application 관련 **28/28 PASS**이며 새 thermal +검사 9개와 기존 static/nonlinear/eigen, 실제 HHT 경로를 포함한다. 최초 정상 thermal +입력이 `invalid-analysis-step-count`로 거부된 실패(native test exit 8)를 기록한 후 수정했다. +실행 시점 HEAD는 `14160dd`이고 `t9-tested-source-sha256.json`의 4개 파일은 최종 commit과 +일치한다. Lease 경합, solver overflow와 실제 Windows final-file 교체 거부에서도 기존 +결과가 보존되고 candidate가 정리됐다. + +메인의 독립 probe는 실제 `fesa.exe`와 별도 `h5dump`를 subprocess로 실행했다. +**29개 명령**에서 기대 exit가 일치했고, raw 초기 온도·양면 지정 온도·모든 frame의 +시간/실제 delta·source step·반력/flux shape·finite 값·초기 recovery 부재를 확인했다. +미지원 source DOF12와 usage 오류 이후에도 기존 최종 파일 SHA256이 유지됐다. +`.dryforge/review/t9_cli/t9-7cccfcd/`에 stdout/stderr, `execution.json`, `result.json`과 +script/binary hash를 포함한 `review-execution.json`을 보존했다. Probe 자체도 native exit 0이다. +이는 실행 경로와 저장 계약 검증이며 실제 열해의 정확도 판단은 다음 물리 검증에 속한다. + 전체 thermal 검사, NT11 외부 수치 비교와 실제 결과의 독립 physics 평가는 아직 수행하지 않았다. diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index db465f3..46d743e 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -107,8 +107,11 @@ add_executable( integration/app/fesa_application_test.cpp integration/app/eigen_application_test.cpp integration/app/shell_surface_pressure_application_test.cpp + integration/app/thermal_application_test.cpp ) +add_dependencies(fesa_integration_tests fesa_cli) + target_link_libraries( fesa_integration_tests PRIVATE