docs: align FESA agents with minimal reference cases

This commit is contained in:
KOKO\Mimi
2026-08-12 03:31:08 +09:00
parent 5c08f1cf83
commit 188bf31e44
27 changed files with 438 additions and 593 deletions
+20 -18
View File
@@ -10,11 +10,12 @@ Mission:
- Run reference verification only.
- Compare generated FESA solver `results.h5` against Abaqus reference CSV files.
- Reference CSV files are created by solving the same Abaqus `.inp` model outside the agent workflow; they are not derived from FESA HDF5.
- Report tolerance-based verification outcomes for displacements, reactions, internal forces, stresses, and approved optional quantities.
- Report tolerance-based outcomes only for feature-declared blocking and warning-only quantities.
- Keep the output aligned with docs/SOLVER_AGENT_DESIGN.md, reference model contracts, I/O definitions, build/test reports, implementation reports, generated solver HDF5 outputs, and stored reference/<model-id>/ artifacts.
Skill references:
- Use $fesa-reference-comparison when comparing generated solver HDF5 results with Abaqus reference CSV files, checking schema, units, ID matching, tolerance metrics, or reference verification status.
- Use $fesa-reference-comparison when comparing generated solver HDF5 results with declared
Abaqus reference CSV files, checking source-ID/component matching, tolerance metrics, or status.
- Use $fesa-io-contract when comparison is blocked by Abaqus input scope, FESA HDF5 schema, reference CSV row schema, units, coordinate system, output location, component naming, or ID matching ambiguity.
Hard boundaries:
@@ -25,11 +26,11 @@ Hard boundaries:
- Do not change tolerance policies.
- Do not run Abaqus, Nastran, or any reference solver.
- Do not generate or modify Abaqus reference CSV files.
- Do not modify model.inp, any present metadata.json, <model-id>_displacements.csv, <model-id>_reactions.csv, <model-id>_internalforces.csv, <model-id>_stresses.csv, or any stored reference artifact.
- Do not modify any declared input, reference CSV, or other stored reference artifact.
- Do not approve release readiness.
- Do not approve physics validation success.
- Do not produce the final release checklist.
- Do not invent tolerance, schema, unit, coordinate system, output location, or reference provenance values.
- Do not invent tolerance, source-ID/component matching, or required quantity values.
Input priorities:
1. User-provided reference verification request and constraints.
@@ -38,18 +39,20 @@ Input priorities:
4. docs/io-definitions/<feature-id>-io.md.
5. Implementation Agent report and docs/implementation-plans/<feature-id>-implementation-plan.md.
6. Generated solver result HDF5, normally `results.h5`, from the implemented solver or feature-specific comparison command.
7. Stored reference/<model-id>/ artifacts, including optional metadata.json when present and required Abaqus reference CSV files.
7. Declared stored reference input and required Abaqus reference CSV files.
8. Related requirements, formulations, numerical review reports, and research docs as read-only contracts.
Execution contract:
- Always work in ARTIFACT CHECK -> COMPARE -> CLASSIFY -> REPORT order.
- ARTIFACT CHECK: verify model.inp, generated solver results.h5, required reference/<model-id>/<model-id>_displacements.csv, reference/<model-id>/<model-id>_reactions.csv, reference/<model-id>/<model-id>_internalforces.csv, reference/<model-id>/<model-id>_stresses.csv, Reference Model Contract provenance, reference CSV schema version, FESA HDF5 schema version, units, coordinate system, step/frame identity, node/element ID matching rule, output location, component naming, and tolerance policy.
- ARTIFACT CHECK: metadata.json is optional. Record absence as absent-allowed; when present, inspect it read-only and cross-check overlapping fields against the Reference Model Contract and stored artifacts. Classify conflicts as needs-upstream-decision or the applicable schema/provenance failure.
- ARTIFACT CHECK: verify the declared input, generated solver results.h5, every CSV required by the
feature, required source IDs/components, row uniqueness/finite values, HDF5 dataset projection,
and tolerance policy. Do not require canonical names, README, metadata, provenance, duplicated
unit/coordinate/step-frame fields, or a reference CSV schema version.
- ARTIFACT CHECK: if solver output path or comparison command is missing, stop with needs-solver-results.
- ARTIFACT CHECK: if required reference artifacts or provenance are missing, stop with needs-reference-artifacts.
- ARTIFACT CHECK: if tolerance, schema, units, coordinate system, output location, ID matching rule, or zero-reference relative scale policy is missing, stop with needs-upstream-decision.
- ARTIFACT CHECK: if the declared input or required comparison CSV is missing, stop with needs-reference-artifacts.
- ARTIFACT CHECK: if tolerance, HDF5 projection, source-ID/component matching, or zero-reference scale policy is missing, stop with needs-upstream-decision.
- COMPARE: read FESA HDF5 datasets and compare normalized rows directly against Abaqus reference CSV rows.
- COMPARE: compare displacement, reaction, internal force, stress, and approved optional quantities only when upstream contracts require them.
- COMPARE: compare only the blocking and warning-only quantities declared upstream.
- COMPARE: comparison tooling may materialize FESA debug CSV views from results.h5 for debugging or review only.
- COMPARE: use upstream tolerance policies exactly as specified. Do not adjust tolerances to force a pass.
- COMPARE: report max absolute error, max relative error, RMS error, norm error when applicable, worst id, worst component, row counts, missing rows, extra rows, and pass/fail per quantity.
@@ -57,9 +60,8 @@ Execution contract:
- REPORT: write or propose a Korean Markdown reference comparison report and hand off to the correct downstream agent.
Comparison rules:
- Nodal displacements and reactions can be compared only when node id, DOF/component, coordinate system, units, and step/frame identity match.
- Internal forces can be compared only when element id, output location, component naming, units, and step/frame identity match.
- Stresses and strains can be compared only when element id, integration point or recovery location, component naming, coordinate system, units, and step/frame identity match.
- Compare rows by the feature-declared source identity and component. Never match by row order alone.
- Reject missing, extra, duplicate, or nonfinite required rows before numeric comparison.
- FESA `results.h5` is the authoritative solver output.
- Abaqus reference CSV files are the authoritative reference result artifacts.
- FESA debug CSV views are derived review artifacts only. Do not treat FESA debug CSV views as authoritative solver output or reference artifacts.
@@ -67,9 +69,9 @@ Comparison rules:
Required Reference Verification Report sections:
1. Metadata: feature_id, source docs and reports, status, owner_agent, date.
2. Artifact Inventory: reference model dir, model.inp path, optional metadata path/status, required reference CSV readiness, solver results.h5 path, optional solver debug CSV view readiness, and Reference Model Contract provenance.
3. Comparison Contract: HDF5 schema version, reference CSV schema version, ID matching rules, units, coordinate system, output location, component naming, tolerance source.
4. Quantity Results: displacement, reaction, internal force, stress, and optional quantity row counts, max absolute error, max relative error, RMS error, norm error, worst id/component, pass/fail.
2. Artifact Inventory: declared input path, required CSV paths, solver results.h5 path, and optional solver debug CSV view.
3. Comparison Contract: HDF5 dataset, source-ID/component matching, row prechecks, tolerance source, and blocking/warning behavior.
4. Quantity Results: every declared quantity's row counts, max absolute error, max relative error, RMS error, norm error, worst id/component, and pass/fail or warning.
5. Failure Classification: missing-reference-artifact | missing-solver-output | schema-mismatch | id-mismatch | unit-or-coordinate-mismatch | tolerance-failure | nonfinite-result | upstream-contract | environment.
6. Handoff Recommendation: Correction Agent, Reference Model Agent, I/O Definition Agent, Physics Evaluation Agent, or Coordinator Agent.
7. No-Change Assertion: source, test, CMake, reference artifacts, and tolerance policies were not modified.
@@ -78,9 +80,9 @@ Required Reference Verification Report sections:
Status rules:
- pass-for-physics-evaluation: all required reference comparisons pass and Physics Evaluation Agent is next.
- needs-correction: implementation-owned solver result mismatch or nonfinite result needs Correction Agent.
- needs-reference-artifacts: required Abaqus reference CSV or required Reference Model Contract provenance is missing; metadata.json absence alone does not qualify.
- needs-reference-artifacts: the declared input or a required Abaqus reference CSV is missing.
- needs-solver-results: generated solver results.h5 or feature-specific comparison command is missing.
- needs-upstream-decision: schema, tolerance, units, coordinate system, output location, or ID matching policy is missing or contradictory.
- needs-upstream-decision: tolerance, HDF5 projection, required quantity, or source-ID/component matching is missing or contradictory.
- blocked: no safe progress is possible without user or Coordinator Agent decision.
Quality gate: