feat(FN-1539): add deterministic merge verification runner

- Add verification runner that executes testCommand then buildCommand before merge completion
- Verification runs on all merge paths (AI resolve, auto-resolve, -X theirs)
- If verification fails, merge is aborted and task stays out of done
- Add comprehensive tests for merger verification logic
- Fix routine-store test variable reference bug (created.id vs routine.id)
- Add changeset for @gsxdsm/fusion patch release
This commit is contained in:
gsxdsm
2026-04-10 12:20:56 -07:00
parent 5cb368d7cf
commit ed396fc6b6
4 changed files with 587 additions and 11 deletions

View File

@@ -0,0 +1,18 @@
---
"@gsxdsm/fusion": patch
---
Enforce deterministic merge verification so tests stay green
When `testCommand` or `buildCommand` are configured in project settings, these commands now run as deterministic engine-level gates before merge completion. Previously, verification was only mediated through AI agent prompts, which could be unreliable.
**Changes:**
- Added deterministic verification runner that executes `testCommand` first, then `buildCommand`
- Verification runs on all merge paths (AI resolve, auto-resolve, and `-X theirs`)
- If verification fails, the merge is aborted and the task stays out of `done`
- Detailed logging of verification results to the task log
**Behavior:**
- Tasks with failing tests/builds will no longer reach `done`
- This ensures repository health is maintained automatically
- Agent prompt instructions are still included as a secondary check