72 lines
3.2 KiB
Markdown
72 lines
3.2 KiB
Markdown
---
|
|
name: fesa-io-contract
|
|
description: Use when defining FESA solver I/O contracts, Abaqus .inp keyword subsets, internal model mapping, validation rules, HDF5 result schemas, and reference CSV comparison row schemas.
|
|
---
|
|
|
|
# FESA I/O Contract
|
|
|
|
Use this skill to define exactly what input and output data the solver feature accepts and produces.
|
|
|
|
## Inputs
|
|
|
|
Read these first:
|
|
|
|
- `AGENTS.md`
|
|
- `docs/SOLVER_AGENT_DESIGN.md`
|
|
- `docs/<feature-id>/requirements.md`
|
|
- `docs/<feature-id>/research.md`
|
|
- `docs/<feature-id>/formulation.md`
|
|
- `docs/<feature-id>/numerical-review.md`
|
|
- `docs/<feature-id>/reference-model.md`
|
|
|
|
## Workflow
|
|
|
|
1. Define Abaqus Input Scope for the feature-specific `.inp` subset.
|
|
2. Define Syntax Policy for keyword lines, data lines, comments, unsupported keywords, and diagnostics.
|
|
3. Separate Model Data Mapping from History Data Mapping.
|
|
4. Define supported keywords such as `*NODE`, `*ELEMENT`, `*MATERIAL`, `*ELASTIC`, `*BOUNDARY`, `*CLOAD`, `*STEP`, `*OUTPUT`, `*NODE OUTPUT`, and `*ELEMENT OUTPUT` only when required.
|
|
5. Define Internal Model Contract at a semantic level without C++ APIs.
|
|
6. Define Output HDF5 Schema for authoritative solver output `results.h5`.
|
|
7. Define only the FESA HDF5 projection and minimum source-ID/component mapping needed for
|
|
feature-declared blocking or warning-only CSV quantities.
|
|
8. Define solver HDF5 units, coordinates, component names, locations, and step/frame identity.
|
|
Do not require duplicated CSV metadata or a CSV schema version for a single-step final-frame case.
|
|
9. Define validation rules and open issues.
|
|
|
|
## Output Contract
|
|
|
|
Produce or revise `docs/<feature-id>/io.md` with:
|
|
|
|
- Abaqus Input Scope
|
|
- Syntax Policy
|
|
- Model Data Mapping
|
|
- History Data Mapping
|
|
- Internal Model Contract
|
|
- Output HDF5 Schema
|
|
- FESA HDF5 to Reference CSV Comparison Mapping
|
|
- Validation Rules
|
|
- Downstream Handoff
|
|
|
|
## Boundaries
|
|
|
|
- Do not implement parsers.
|
|
- Do not design C++ APIs.
|
|
- Do not claim full Abaqus compatibility.
|
|
- Do not run Abaqus, Nastran, or any reference solver.
|
|
- Do not generate or modify Abaqus reference CSV files.
|
|
- Do not approve release readiness.
|
|
|
|
## Quality Gate
|
|
|
|
- Every supported keyword has a documented purpose, required data, and unsupported-case behavior.
|
|
- HDF5 schema is the authoritative solver output contract and must carry schema version, step/frame identity, units, coordinate system, output location, and component naming.
|
|
- Reference comparison must define exact existing CSV paths, source-ID and component columns,
|
|
deterministic matching, and missing/extra/duplicate/nonfinite prechecks. Never match by row order alone.
|
|
- Unsupported Abaqus input is explicit: unsupported, ignored-with-warning, or requires user decision.
|
|
- The I/O contract is compatible with requirements, formulation, and reference comparison needs.
|
|
- The final HDF5 projection maps every approved logical quantity and source identity from `docs/<feature-id>/reference-model.md` to deterministic dataset and CSV component identities.
|
|
|
|
## Handoff
|
|
|
|
Return `docs/<feature-id>/io.md`, status, evidence summary, and blockers to Coordinator Agent. Route the final HDF5 projection, parser/schema contracts, exact CSV paths, source-ID/component matching, row prechecks, and tolerance-source constraints to Implementation Planning Agent through Coordinator Agent.
|