1.9 KiB
Toolchain and Verification
Command authority
Choose commands in this order:
- Executor-selected step and approved implementation plan
.harness/config.json- Project presets, build metadata, and repository instructions
- Harness discovery defaults
The configured project may select CMake/CTest, MSBuild, another supported build adapter, a C++ standard, compiler/toolset, result container, or comparison format. Report the actual selection; do not substitute a familiar backend. Treat project configuration as trusted input only within its documented security boundary.
Test-first execution
For each behavior:
- Add or identify a test that will fail for the missing behavior.
- Run it and confirm the failure is expected, not a setup error.
- Make the smallest production change.
- Re-run the focused test, then configured focused and full validation.
- Preserve clean warning/error output required by the project.
A test that passed before the change is not RED evidence. A pre-edit hook confirms only that a test file exists. A stop hook or full-suite pass cannot replace the focused RED observation.
Comparison gate
Use only contract-declared cases, quantities, identities, components, locations, units, and tolerances. Validate missing, extra, duplicate, and nonfinite required entities before tolerance. Match by declared identity, never incidental file or row order. Warning-only quantities do not change the blocking verdict.
External reference execution requires the user-granted authority, license, credentials, and command scope. Existing approved artifacts may be consumed read-only.
Environment outcomes
Report blocked-environment only after safe configured discovery and diagnostics establish that the required toolchain, dependency, license, credential, or artifact is unavailable. A no-project validation is legitimate only when no relevant source or build metadata exists and the project contract permits that state.