Files
FESADev/phases/cpp-object-oriented-modular-refactoring/step9.md
T

2.8 KiB

Step 9: Result and I/O Vector3 Migration

과거 개발 계획이다. 아래 작업·상태·예시는 현재 실행 지시가 아니다. 현재 구현과 검증 한계는 기능 요약을 따른다.

읽어야 할 파일

  • /AGENTS.md
  • ../../docs/solver-core/README.md
  • ../../docs/solver-core/README.md
  • ../../docs/linear-static-3d-euler-beam/README.md
  • ../../docs/linear-static-mitc4-shell/README.md
  • ../../docs/cpp-object-oriented-modular-refactoring/README.md
  • /include/fesa/math/vector3.h
  • Step 8에서 migration한 element/model files
  • /include/fesa/results/result_recovery.h, /src/fesa/results/result_recovery.cpp
  • /include/fesa/io/abaqus/domain_mapper.h, /src/fesa/io/abaqus/domain_mapper.cpp
  • /include/fesa/io/hdf5/hdf5_results_writer.h, /src/fesa/io/hdf5/hdf5_results_writer.cpp
  • matching result/I/O tests
  • /phases/cpp-object-oriented-modular-refactoring/index.json
  • /phases/cpp-object-oriented-modular-refactoring/step9.md

작업

Requirement R-DUP-001의 remaining production consumers를 구현한다.

  1. ResultRecovery, DomainMapper, Hdf5ResultsWriter tests에 C-DUP-002 characterization을 먼저 추가한다: global moment origin, shell frame/director serialization, finite rejection, stable row/dataset identity and atomic replacement.
  2. Tests가 new shared Vector3 seam을 참조하도록 해 old local helper state에서 RED를 확인한다.
  3. 세 production files의 repeated fixed-size add/subtract/scale/dot/cross/norm/finite helpers를 Vector3 calls로 바꾸고 helper definitions를 제거한다.
  4. HDF5 storage remains three scalar components in the exact existing dataset/schema; Vector3 must not become an HDF5 public or compound datatype.
  5. Result location/sign, global-origin moment balance, source identity, mapper diagnostics와 floating-point accumulation order를 유지한다.

Acceptance Criteria

과거 도구 실행·출력 지시는 정리했으며, 현재 검증 방법은 기능 요약을 따른다.

The duplicate scan must return no local primitive definitions. Existing HDF5 and reference tests must pass without tolerance/schema edits.

검증 및 상태 갱신

  • RED, focused suites, duplicate scan, full CTest를 summary에 기록한다.
  • Schema, identity or numeric regression이면 error로 기록하고 artifacts를 수정하지 않는다.
  • 성공 시 현재 Step만 completed로 갱신한다.
  • timestamp, retry, commit, advancement는 Executor 소유다.

금지사항

  • HDF5 schema 또는 stored component representation을 변경하지 마라.
  • Result identity/location을 공통 Vector3 record로 합치지 마라.
  • Mapper/recovery/writer file split을 수행하지 마라. 이유: Step 21–23 소유다.
  • 직접 commit하거나 hook script를 수동 실행하지 마라.