docs: bind implementation agents to Harness steps
This commit is contained in:
@@ -15,6 +15,11 @@ Mission:
|
|||||||
Skill references:
|
Skill references:
|
||||||
- Use $fesa-cpp-msvc-tdd when writing C++17/MSVC tests first, verifying RED failures, implementing minimal solver code, registering CMake/CTest targets, running validation, or preparing implementation reports.
|
- Use $fesa-cpp-msvc-tdd when writing C++17/MSVC tests first, verifying RED failures, implementing minimal solver code, registering CMake/CTest targets, running validation, or preparing implementation reports.
|
||||||
|
|
||||||
|
Mandatory Harness reading:
|
||||||
|
- Read .agents/skills/harness/SKILL.md, docs/HARNESS.md, docs/HARNESS_WORKFLOW.md, and
|
||||||
|
.codex/hooks.json before executing a Harness Step; inspect the relevant phase indexes and
|
||||||
|
supplied Step file as well.
|
||||||
|
|
||||||
Hard boundaries:
|
Hard boundaries:
|
||||||
- Do not change requirements, formulations, I/O contracts, numerical review reports, reference artifacts, or tolerance policies unless the user explicitly asks.
|
- Do not change requirements, formulations, I/O contracts, numerical review reports, reference artifacts, or tolerance policies unless the user explicitly asks.
|
||||||
- Do not change formulations directly to make implementation easier.
|
- Do not change formulations directly to make implementation easier.
|
||||||
@@ -39,6 +44,13 @@ Input priorities:
|
|||||||
9. Existing source, tests, CMake files, harness scripts, and stored reference artifacts when present.
|
9. Existing source, tests, CMake files, harness scripts, and stored reference artifacts when present.
|
||||||
|
|
||||||
Execution contract:
|
Execution contract:
|
||||||
|
- Require an approved implementation plan, materialized phase files, and the Executor-selected
|
||||||
|
current Step (`Executor-selected current Step`). Do not fall back to the broad plan or start a
|
||||||
|
later pending Step.
|
||||||
|
- Execute this recipe within the current Step: approved plan + materialized phase files +
|
||||||
|
Executor-selected current `stepN.md` -> read prerequisites and previous summaries -> RED ->
|
||||||
|
observe expected failure -> minimal GREEN -> focused/full VERIFY -> update only current Step
|
||||||
|
status plus `summary`/`error_message`/`blocked_reason` -> stop without starting the next Step.
|
||||||
- Always work in RED -> GREEN -> VERIFY order.
|
- Always work in RED -> GREEN -> VERIFY order.
|
||||||
- RED: write the planned C++ unit, integration, parser/I/O, or reference-comparison test first.
|
- RED: write the planned C++ unit, integration, parser/I/O, or reference-comparison test first.
|
||||||
- RED: run the targeted test and verify failure before production implementation.
|
- RED: run the targeted test and verify failure before production implementation.
|
||||||
@@ -46,6 +58,12 @@ Execution contract:
|
|||||||
- VERIFY: run the targeted CTest command, then the full MSVC build/test commands resolved from `.harness/config.json` or the Harness defaults.
|
- VERIFY: run the targeted CTest command, then the full MSVC build/test commands resolved from `.harness/config.json` or the Harness defaults.
|
||||||
- VERIFY: record RED and GREEN evidence explicitly; PreToolUse only checks that a related test file exists.
|
- VERIFY: record RED and GREEN evidence explicitly; PreToolUse only checks that a related test file exists.
|
||||||
- VERIFY: allow Stop to rerun whole-project MSVC build/test before the Step ends.
|
- VERIFY: allow Stop to rerun whole-project MSVC build/test before the Step ends.
|
||||||
|
- `.codex/hooks.json` is authoritative: PreToolUse runs `scripts/hooks/pre_tool_use.py` and Stop
|
||||||
|
runs `scripts/hooks/stop_validation.py` automatically. Hooks do not prove RED, and their Python
|
||||||
|
entry points must not be manually invoked as substitutes for registered hooks.
|
||||||
|
- The Executor owns timestamps, retry control, commits, and next-Step selection. Do not write
|
||||||
|
`started_at`, `completed_at`, `failed_at`, `blocked_at`, task timestamps, or top-level phase
|
||||||
|
status from the Implementation Agent.
|
||||||
- If a C++ production file changes, a related C++ test file must be present in the same patch or already exist.
|
- If a C++ production file changes, a related C++ test file must be present in the same patch or already exist.
|
||||||
- CMake/CTest changes must stay compatible with MSVC x64 Debug validation.
|
- CMake/CTest changes must stay compatible with MSVC x64 Debug validation.
|
||||||
- Abaqus reference CSV files are read-only verification inputs.
|
- Abaqus reference CSV files are read-only verification inputs.
|
||||||
|
|||||||
@@ -19,6 +19,10 @@ Skill references:
|
|||||||
- Use $fesa-cpp-msvc-tdd when creating TDD-first C++/MSVC implementation plans, test order, CMake/CTest plans, validation commands, or implementation handoffs.
|
- Use $fesa-cpp-msvc-tdd when creating TDD-first C++/MSVC implementation plans, test order, CMake/CTest plans, validation commands, or implementation handoffs.
|
||||||
- Use $fem-theory-query when implementation planning needs wiki-grounded formulation, solver architecture, verification design, benchmark, or numerical-risk context without changing upstream contracts.
|
- Use $fem-theory-query when implementation planning needs wiki-grounded formulation, solver architecture, verification design, benchmark, or numerical-risk context without changing upstream contracts.
|
||||||
|
|
||||||
|
Mandatory Harness reading:
|
||||||
|
- Read .agents/skills/harness/SKILL.md, docs/HARNESS.md, docs/HARNESS_WORKFLOW.md, and
|
||||||
|
.codex/hooks.json before planning or materializing any Harness phase files.
|
||||||
|
|
||||||
Hard boundaries:
|
Hard boundaries:
|
||||||
- Do not implement code.
|
- Do not implement code.
|
||||||
- Do not write tests.
|
- Do not write tests.
|
||||||
@@ -51,6 +55,9 @@ Planning rules:
|
|||||||
`phases/<task-name>/index.json`, and self-contained `stepN.md` files.
|
`phases/<task-name>/index.json`, and self-contained `stepN.md` files.
|
||||||
- Keep one layer or module per Step. Include prerequisite file paths, TDD RED/GREEN/VERIFY work,
|
- Keep one layer or module per Step. Include prerequisite file paths, TDD RED/GREEN/VERIFY work,
|
||||||
exact MSVC/CMake/CTest acceptance commands, and specific prohibitions in every Step.
|
exact MSVC/CMake/CTest acceptance commands, and specific prohibitions in every Step.
|
||||||
|
- Preserve this sequence: multi-Step draft -> explicit user approval -> phases planning files;
|
||||||
|
a separate explicit Harness execution request is required before `scripts/execute.py`.
|
||||||
|
- The planning agent never selects or executes a Step and never writes Executor-owned timestamps.
|
||||||
- Plan C++17/MSVC/CMake/CTest work in TDD order: failing unit tests first, then minimal implementation, focused verification, and full regression verification.
|
- Plan C++17/MSVC/CMake/CTest work in TDD order: failing unit tests first, then minimal implementation, focused verification, and full regression verification.
|
||||||
- Every C++ production change must have a related test file or a planned test addition before implementation.
|
- Every C++ production change must have a related test file or a planned test addition before implementation.
|
||||||
- Preserve existing architecture and ownership boundaries.
|
- Preserve existing architecture and ownership boundaries.
|
||||||
|
|||||||
Reference in New Issue
Block a user