Grilling
Issue 204 Portable Commit Gates Grill Status
Source issue: harness-intelligence#204
- Topic: portable commit-gate owner resolution and actionable launch failures.
- Scope boundary: issue #204 on a branch stacked directly on issue #203.
- Shared understanding: confirmed by the user on 2026-09-15; requirements are ready for spec compilation.
| Branch | Completion | Locked direction | Still-open items |
|---|
| Checkout and worktree portability | 100% | Resolve owner paths from the active Git worktree root; ignore legacy absolute root authority. | None. |
| Failure diagnostics | 100% | Preserve owner, command kind, cwd, launch code/message, stdout, and stderr. | None. |
| Compatibility boundary | 100% | Preserve scoped staged-file behavior and aggregate execution; add moved-checkout/worktree regressions without widening the generated schema. | None. |
- Round: R1
- Current frontier: empty
- Shared-understanding confirmation: confirmed
| Question id | Prerequisites | Question | State |
|---|
| Q1 | none | Which checkout owns execution when a legacy contract names another machine path? | answered |
| Q2 | Q1 | What launch failure context must the runner preserve? | answered |
| Q3 | Q1, Q2 | Which behavior must remain stable while portability is repaired? | answered |
| Branch | Evidence anchors | Applicable dimensions | Open technical decisions | Grounding |
|---|
| Checkout and worktree portability | output.ts:planCommitGateOutput; context-plan.ts:QualityCommandContract; commit-gate-runner.mjs:root | authority, path semantics, compatibility | none | grounded |
| Failure diagnostics | commit-gate-runner.mjs:run; failure rendering | observable failure contract | none | grounded |
| Compatibility boundary | runner and generated-gate tests | invariants, regression surface | none | grounded |
- Explicit
hi check semantic rejection of legacy root fields is parked; normal desired-byte drift/update remains the migration path.
- General confinement rules for arbitrary hand-authored absolute or traversing
path values are parked outside issue #204.
- Active Git worktree root: the current worktree top level returned by
git rev-parse --show-toplevel, whose index supplies staged paths.
- Owner path: a generated repository-relative contract
path locating one quality-command owner beneath the active worktree root.
- Legacy root: the obsolete machine-specific absolute
root field emitted by older CLI versions.
- An Owner path is resolved beneath exactly one Active Git worktree root.
- A Legacy root never overrides the Active Git worktree root.
- Generated commit-gate contracts are portable repository data and contain no machine-specific checkout root.
- Linked worktrees use their own top level and staged index, not the shared Git common directory.
- Launch failures are actionable without rerunning commands outside the gate.
- “Current Git root” means active worktree top level, not Git common directory or the checkout that originally generated the contract.