docs: redefine phase 1 rebaseline steps

This commit is contained in:
NINI
2026-05-04 12:15:07 +09:00
parent a385235e14
commit 357b4bd893
20 changed files with 1013 additions and 18 deletions
+32 -16
View File
@@ -13,7 +13,7 @@ Every new agent session must read this file together with `PROGRESS.md` before p
- If an item becomes obsolete, move it to `PROGRESS.md` with a short reason instead of silently deleting it.
## Current Objective
Rebaseline Phase 1 before any more implementation: use the revised `docs/MITC4_FORMULATION.md` as the MITC4 gate, decide how `references/quad_02.inp` should be handled despite its `Part/Assembly/Instance` structure, and draft new sprint contracts before reworking the solver.
Execute the new Phase 1 rebaseline plan in `phases/1-linear-static-mitc4-rebaseline`. The old `phases/1-linear-static-mitc4` path is historical and superseded by the paper-based MITC4 formulation reset.
## Required Reading For New Agents
1. `AGENTS.md`
@@ -30,21 +30,23 @@ Rebaseline Phase 1 before any more implementation: use the revised `docs/MITC4_F
12. `docs/RESULTS_SCHEMA.md`
13. `docs/MITC4_FORMULATION.md`
14. `phases/index.json`
15. `phases/1-linear-static-mitc4/index.json`
15. `phases/1-linear-static-mitc4-rebaseline/index.json`
16. `phases/1-linear-static-mitc4/index.json` for historical context only
## Active Phase Files
- Phase directory: `phases/1-linear-static-mitc4`
- Execute with: `python scripts/execute.py 1-linear-static-mitc4`
- Step numbering is zero-based for the harness: `step0.md` corresponds to milestone P1-01, and `step15.md` corresponds to milestone P1-16.
- Every step file contains a sprint contract with objective, scope, allowed files, tests-first plan, reference-artifact policy, evaluator checklist, acceptance command, and handoff requirements.
- Current phase status: rebaseline required. Do not resume the old P1-15/P1-16 path until new contracts are drafted against the revised MITC4 formulation and the `quad_02` compatibility decision.
- Active phase directory: `phases/1-linear-static-mitc4-rebaseline`
- Execute with: `python scripts/execute.py 1-linear-static-mitc4-rebaseline`
- Step numbering is zero-based. `step0.md` starts with a rebaseline audit, and `step15.md` is the independent evaluator closeout.
- Every step file contains a sprint contract with objective, required reading, scope, allowed files, explicit non-goals, tests to write first, reference artifacts, acceptance command, evaluator checklist, and handoff requirements.
- Historical phase directory: `phases/1-linear-static-mitc4`
- Historical phase status: blocked/superseded. Do not resume the old P1-15/P1-16 path unless the user explicitly requests recovery of that exact phase.
## Phase 1 Readiness Tasks
| ID | Status | Owner | Task | Source |
|---|---|---|---|---|
| R-010 | pending | user + verification agent | Add or define reaction-force reference artifacts, preferably `*_reactions.csv`, or decide that Phase 1 `RF` is verified by equilibrium tests until Abaqus RF CSV is available. | `docs/VERIFICATION_PLAN.md`, `docs/RESULTS_SCHEMA.md` |
| R-011 | partial | user + Abaqus compatibility agent | Review `references/quad_02.inp` and `references/quad_02_displacements.csv`: `TYPE=S4` is now available, but the input includes `Part/Assembly/Instance`, so decide whether to normalize the file into the current flat keyword subset or add a dedicated parser sprint. | `docs/ABAQUS_INPUT_SUBSET.md`, `docs/VERIFICATION_PLAN.md`, `docs/MITC4_FORMULATION.md` |
| R-012 | pending | planner + evaluator | Draft a Phase 1 redo plan and step contracts that replace or supersede the old P1-01 through P1-16 implementation path where it conflicts with the revised MITC4 formulation. | `docs/HARNESS_ENGINEERING.md`, `docs/MITC4_FORMULATION.md` |
| R-011 | partial | generator + Abaqus compatibility evaluator | Resolve through rebaseline step 1: review `references/quad_02.inp` and `references/quad_02_displacements.csv`; either add a normalized Phase 1-compatible derivative input or create an explicit parser compatibility plan. | `phases/1-linear-static-mitc4-rebaseline/step1.md`, `docs/ABAQUS_INPUT_SUBSET.md`, `docs/VERIFICATION_PLAN.md` |
| R-013 | pending | user + verification agent | Add enough additional small Abaqus S4 reference cases for the PRD target of three stored Phase 1 references: one single-element case, one simple multi-element plate/shell case, and one curved shell benchmark. | `docs/PRD.md`, `docs/VERIFICATION_PLAN.md` |
## Phase 1 Definition Of Done
Phase 1 is complete only when FESA can run a documented linear static MITC4 workflow from input to verified results without requiring Abaqus execution.
@@ -73,18 +75,32 @@ Each gate should be satisfied before moving to the next implementation band unle
|---|---|---|---|
| G0 - Planning readiness | partial | Readiness tasks R-010 and R-011 remain open; earlier formulation/build/comparator blockers are resolved. | Updated docs, PLAN.md, PROGRESS.md |
| G1 - Build and validation | satisfied | Build system, test framework, and `scripts/validate_workspace.py` run real checks. | Validation command output |
| G2 - Parser and domain | satisfied | Phase 1 `.inp` subset parses into `Domain`; unsupported features fail clearly. | Parser tests and diagnostics tests |
| G3 - DOF/math/results infrastructure | satisfied | Core types, DofManager, sparse math adapters, minimal results writer, and CSV comparator are tested. | Unit tests and schema/comparator tests |
| G4 - MITC4 element readiness | reopened | MITC4 formulation was rewritten from local papers; the existing element tests must be reassessed and expanded before implementation is trusted. | Revised `docs/MITC4_FORMULATION.md`, future element tests |
| G5 - End-to-end solver | reopened | Linear static path must be revalidated after the MITC4 rebuild and after the `quad_02` compatibility path is decided. | Future integration/reference regression output |
| G2 - Parser and domain | pending rebaseline | Must be revalidated through steps 3 and 4 against the current parser subset and stored-reference compatibility policy. | Future parser and validation tests |
| G3 - DOF/math/results infrastructure | pending rebaseline | Must be revalidated through steps 2, 5, 6, and 12. | Future unit and integration tests |
| G4 - MITC4 element readiness | reopened | MITC4 formulation was rewritten from local papers; element implementation must be rebuilt or revalidated through steps 7 through 11. | Revised `docs/MITC4_FORMULATION.md`, future element tests |
| G5 - End-to-end solver | reopened | Linear static path must be revalidated through steps 13 and 14 after the MITC4 rebuild and `quad_02` compatibility path. | Future integration/reference regression output |
## Phase 1 Implementation Milestones
All milestones are intended to become one or more self-contained sprint contracts or `phases/{phase}/stepN.md` files. Each sprint must follow `docs/HARNESS_ENGINEERING.md` and be evaluated independently.
| ID | Status | Owner | Objective | Depends On | Acceptance Focus |
|---|---|---|---|---|---|
| P1-15 | blocked | verification generator | Add stored-reference regression suite using accepted Phase 1-compatible cases and `quad_01` compatibility notes. | P1-10, P1-14, R-011 | At least one displacement CSV comparison; unsupported `quad_01.inp` is not treated as Phase 1 support |
| P1-16 | blocked | evaluator | Run full Phase 1 evaluator pass and close documentation/handoff gaps. | P1-15 | Harness evaluator report, updated PROGRESS.md, remaining Phase 2 items recorded in PLAN.md |
| P1R-00 | pending | planner | Audit old Phase 1 implementation against the revised MITC4 formulation and map retain/rewrite/delete decisions. | none | Audit artifact or synchronized PLAN/PROGRESS |
| P1R-01 | pending | reference generator | Onboard `quad_02` as stored S4 reference and choose normalized-input or parser-compatibility path. | P1R-00 | Original artifacts preserved; compatibility explicit |
| P1R-02 | pending | core generator | Revalidate build/test harness, core aliases, DOF enum, and diagnostics. | P1R-00 | Validation command and core tests |
| P1R-03 | pending | parser generator | Revalidate Phase 1 parser and immutable Domain subset. | P1R-01, P1R-02 | Supported keywords accepted; unsupported features rejected |
| P1R-04 | pending | validation generator | Rebuild validation and singular diagnostic coverage. | P1R-03 | Missing-reference and singular-prone negative tests |
| P1R-05 | pending | DOF generator | Rebuild six-DOF DofManager, constrained/free mapping, equation numbering, and full-vector reconstruction. | P1R-02 | DOF mapping and reaction foundation tests |
| P1R-06 | pending | results generator | Rebuild minimum results model and displacement CSV comparator. | P1R-02, P1R-01 | U/RF schema tests and CSV comparator tests |
| P1R-07 | pending | MITC4 generator | Implement MITC4 geometry, node order, tying points, directors, and local bases. | P1R-02 | Shape/basis/diagnostic tests |
| P1R-08 | pending | MITC4 generator | Implement degenerated-continuum displacement, covariant strain rows, and MITC shear tying. | P1R-07 | Finite-difference and tying interpolation tests |
| P1R-09 | pending | MITC4 generator | Implement material matrix, transform, and `2 x 2 x 2` integration scaffolding. | P1R-08 | Material/integration tests |
| P1R-10 | pending | MITC4 generator | Assemble MITC4 stiffness/internal force with six-DOF transform and drilling stabilization. | P1R-09, P1R-05 | Symmetry, rigid body, drilling sensitivity tests |
| P1R-11 | pending | verification generator | Add MITC4 patch, locking-sensitivity, and benchmark tests. | P1R-10 | Membrane/bending/shear/twist/locking tests |
| P1R-12 | pending | assembly generator | Rebuild assembly, solver adapter boundary, constrained solve, and full-vector RF recovery. | P1R-05, P1R-10 | Assembly and full-vector reaction tests |
| P1R-13 | pending | analysis generator | Rebuild linear static workflow from input to U/RF result fields. | P1R-03, P1R-04, P1R-06, P1R-12 | End-to-end linear static tests |
| P1R-14 | pending | reference generator | Run stored reference displacement regression using accepted Phase 1-compatible S4 cases. | P1R-13, P1R-01 | At least one automated CSV displacement regression |
| P1R-15 | pending | evaluator | Independent Phase 1 evaluator closeout. | P1R-14 | Pass/fail report, synchronized PLAN/PROGRESS |
## Phase 1 Sprint Contract Rules
Every implementation milestone above must be decomposed into one or more contracts before code changes begin.
@@ -134,7 +150,7 @@ Required reference additions or decisions:
- Do not treat a passing build as Phase 1 validation without parser, DOF, reference, and singular negative tests.
## Current Non-Goals
- Do not implement solver code before readiness tasks are addressed.
- Do not implement solver code outside the matching rebaseline sprint contract.
- Do not require Abaqus execution locally or in CI.
- Do not add mesh quality diagnostics in Phase 1.
- Do not support Abaqus `S4R` in Phase 1.