2.4 KiB
2.4 KiB
Step 8: results-writer-minimal
Sprint Contract
Objective
Implement the minimal result model and writer boundary for Phase 1 U and RF step/frame/field outputs.
Required Reading
- /AGENTS.md
- /PROGRESS.md
- /PLAN.md
- /docs/README.md
- /docs/HARNESS_ENGINEERING.md
- /docs/ARCHITECTURE.md
- /docs/ADR.md
- /docs/NUMERICAL_CONVENTIONS.md
- /docs/RESULTS_SCHEMA.md
- /phases/1-linear-static-mitc4/step6.md
- /phases/1-linear-static-mitc4/step7.md
Scope
- Add result data structures for model ids/connectivity plus step/frame/field outputs.
- Support mandatory Phase 1 fields
UandRFwith componentsUX,UY,UZ,RX,RY,RZ. - Add an in-memory or file-backed writer boundary as appropriate for the current build system.
- If HDF5 is implemented now, keep HDF5 APIs behind an adapter/wrapper.
Allowed Files
include/**src/**tests/**docs/RESULTS_SCHEMA.mdonly for clarification of agreed schema detailsPLAN.mdPROGRESS.mdphases/1-linear-static-mitc4/index.json
Explicit Non-Goals
- Do not add stress, strain, shell force, history, nonlinear frame, thermal, or composite outputs unless R-007 is resolved and docs are updated first.
- Do not write RF from reduced vectors only.
- Do not expose HDF5 APIs in solver core headers.
Tests To Write First
- Schema tests for step/frame layout and mandatory field names.
- Component-label and ordering tests for
UandRF. - Model id/connectivity storage tests using int64 ids.
- Adapter-boundary tests if HDF5 is introduced.
Reference Artifacts
- None for solver regression. This step only prepares output data consumed by later comparison.
Acceptance Commands
python scripts/validate_workspace.py
Evaluator Checklist
- Result layout follows
docs/RESULTS_SCHEMA.md. UandRFhave six components in the documented order.- HDF5, if present, is isolated behind an adapter.
- No extra Phase 1 outputs were added without resolving R-007.
Handoff Requirements
- Record result writer scope and validation in
PROGRESS.md. - Update
PLAN.mdif R-007 changes or output scope remains blocked. - Update the matching phase index entry: use
completedwith a one-linesummary, orblockedwithblocked_reason, orerrorwitherror_message.
Verification
- Run the acceptance command.
- Inspect tests for schema and component ordering.
Do Not
- Do not treat a file being created as proof that its schema matches the contract.