59 lines
2.0 KiB
Markdown
59 lines
2.0 KiB
Markdown
# Sprint Contract: Parser Domain Subset
|
|
|
|
## Objective
|
|
Revalidate and repair the Phase 1 Abaqus parser and `Domain` model against the documented subset while preserving strict rejection of unsupported reference features.
|
|
|
|
## Required Reading
|
|
- /AGENTS.md
|
|
- /docs/ARCHITECTURE.md
|
|
- /docs/ADR.md
|
|
- /docs/ABAQUS_INPUT_SUBSET.md
|
|
- /docs/VERIFICATION_PLAN.md
|
|
- /docs/MITC4_FORMULATION.md
|
|
|
|
## Scope
|
|
- Parse Phase 1 keywords into immutable `Domain` objects.
|
|
- Preserve node, element, set, material, shell section, boundary, load, and step definitions.
|
|
- Reject `S4R`, `Part/Assembly/Instance`, `*Include`, `NLGEOM=YES`, nonzero prescribed displacement, and unsupported material/section modes.
|
|
|
|
## Allowed Files
|
|
- `include/`
|
|
- `src/`
|
|
- `tests/`
|
|
- `docs/ABAQUS_INPUT_SUBSET.md` only for clarifying parser contract
|
|
- `PLAN.md`
|
|
- `PROGRESS.md`
|
|
|
|
## Explicit Non-Goals
|
|
- Do not implement analysis or assembly.
|
|
- Do not add `Part/Assembly/Instance` support because `quad_02` contains it.
|
|
- Do not normalize reference files in parser code.
|
|
|
|
## Tests To Write First
|
|
- Parser acceptance tests for every Phase 1 keyword.
|
|
- Generated and explicit `*Nset` and `*Elset` tests.
|
|
- Unsupported feature rejection tests for `S4R`, `Part`, `Assembly`, `Instance`, `*Density`, and `NLGEOM=YES`.
|
|
- Line-numbered diagnostic tests for malformed numeric and DOF fields.
|
|
|
|
## Reference Artifacts
|
|
- `references/quad_01.inp` as unsupported provenance.
|
|
- `references/quad_02.inp` as unsupported original provenance until normalized or parser scope changes.
|
|
|
|
## Acceptance Commands
|
|
```bash
|
|
python scripts/validate_workspace.py
|
|
```
|
|
|
|
## Evaluator Checklist
|
|
- Parser behavior matches `docs/ABAQUS_INPUT_SUBSET.md`.
|
|
- `TYPE=S4` maps to internal MITC4.
|
|
- Unsupported stored references are not silently accepted.
|
|
- Domain objects do not own equation numbers.
|
|
|
|
## Handoff Requirements
|
|
- Update `PROGRESS.md` with parser status.
|
|
- Update `PLAN.md` for unresolved reference compatibility work.
|
|
|
|
## Do Not
|
|
- Do not broaden the parser subset without ADR and doc updates.
|