Fix Goose residual close-trailer repair #1298

Merged
coilyco-ops merged 3 commits from issue-993 into main 2026-07-15 05:43:51 +00:00
Member

Fix Goose residual close-trailer repair for committed residual work and empty-repo establish-main.

This keeps committed residual Goose runs on the repair-and-push path instead of salvaging them, and it repairs close trailers before empty-repo establish-main lands. I also tightened the regression coverage so the residual-only and empty-repo cases match the new contract.

  • Added a committed-residual Goose regression and updated the empty-repo repair test.
  • Kept dirty-only repair behavior and the salvage fallback for genuine repair failures.
  • Validation: go test ./cmd/ward -run 'TestReapTargetTreeResidualOnlyRunWithoutCloseRefRepairs|TestReapTargetTreeCommittedResidualWithoutCloseRefRepairsAndLands|TestReapTargetTreeEmptyRepoMissingCloseRefRepairs|TestReapTargetTreeRepairsResidualCommitCloseRef|TestResidualCommitStateDistinguishesDirtyOnlyAndCommittedResidual|TestRepairClosingReferenceCreatesEmptyCommitForMultiCommitShape' passed. go test ./cmd/ward still hits pre-existing config-source and capability baseline failures.

closes #1298
ward.workflow: pull-request-and-merge

Fix Goose residual close-trailer repair for committed residual work and empty-repo establish-main. This keeps committed residual Goose runs on the repair-and-push path instead of salvaging them, and it repairs close trailers before empty-repo establish-main lands. I also tightened the regression coverage so the residual-only and empty-repo cases match the new contract. - Added a committed-residual Goose regression and updated the empty-repo repair test. - Kept dirty-only repair behavior and the salvage fallback for genuine repair failures. - Validation: `go test ./cmd/ward -run 'TestReapTargetTreeResidualOnlyRunWithoutCloseRefRepairs|TestReapTargetTreeCommittedResidualWithoutCloseRefRepairsAndLands|TestReapTargetTreeEmptyRepoMissingCloseRefRepairs|TestReapTargetTreeRepairsResidualCommitCloseRef|TestResidualCommitStateDistinguishesDirtyOnlyAndCommittedResidual|TestRepairClosingReferenceCreatesEmptyCommitForMultiCommitShape'` passed. `go test ./cmd/ward` still hits pre-existing config-source and capability baseline failures. closes #1298 ward.workflow: pull-request-and-merge
fix: distinguish Goose residual commit states
Some checks failed
test / test (pull_request) Failing after 22s
f802b5ef92
closes #993
Fix Goose residual close-trailer repair
Some checks failed
test / test (pull_request) Failing after 22s
899c953052
closes #993
Author
Member

WARDED_WORKFLOW: failed

details

workflow: pull-request-and-merge; review summary: skipped (temporary ward default pending brokered QA)

The Goose residual close-trailer path is fixed and the focused cmd/ward tests pass, but the repo-wide ward exec test gate still fails in this container on the pre-existing config-source and capability baseline: TestCapabilityGuardfilesExist, TestEngineerContainerLimitBelowAndAtLimit, TestBacklogRefreshReservationStates, TestSweepStaleContainerAssets, TestSweepStaleLaunchEnvFiles, TestOverrideForgejoCreateIssueAddsQuietFlag, TestForgejoGraftInventory, TestOverrideForgejoViewIssueSwapsLeaf, TestRunSetupWithUnsetRef, TestSmartDefaultsBaked, TestMountWardKdlExecMountsNewSurfaces.

Retrospective: the Goose fix felt straightforward once the wrong salvage gates were isolated. The blocker is external to this patch. Confidence: medium. Follow-up: fix the bundle/config-source baseline so ward exec test can turn green.

WARDED_WORKFLOW: failed ❌ <details><summary>details</summary> workflow: pull-request-and-merge; review summary: skipped (temporary ward default pending brokered QA) The Goose residual close-trailer path is fixed and the focused `cmd/ward` tests pass, but the repo-wide `ward exec test` gate still fails in this container on the pre-existing config-source and capability baseline: `TestCapabilityGuardfilesExist`, `TestEngineerContainerLimitBelowAndAtLimit`, `TestBacklogRefreshReservationStates`, `TestSweepStaleContainerAssets`, `TestSweepStaleLaunchEnvFiles`, `TestOverrideForgejoCreateIssueAddsQuietFlag`, `TestForgejoGraftInventory`, `TestOverrideForgejoViewIssueSwapsLeaf`, `TestRunSetupWithUnsetRef`, `TestSmartDefaultsBaked`, `TestMountWardKdlExecMountsNewSurfaces`. Retrospective: the Goose fix felt straightforward once the wrong salvage gates were isolated. The blocker is external to this patch. Confidence: medium. Follow-up: fix the bundle/config-source baseline so `ward exec test` can turn green. </details>
Author
Member

WARDED_WORKFLOW: reservation-held

reservation details

Holder: launch intent for container engineer-codex-ward-1298 on host kais-macbook-pro-2.local.

Accepted by ward agent --harness codex (reserved 2026-07-15T05:16:31Z). Concurrent ward agent runs are blocked until this intent becomes visible or the intent is released. The stale-intent fallback is still TTL-bounded (3h TTL). --override-reservation overrides.

Do not comment on or edit this issue to steer the run while it is reserved. The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a new issue, dispatched fresh. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494).

run seed context — what this run is carrying (ward#609)
  • Resolved: coilyco-flight-deck/ward#1298 · branch issue-1298 · harness codex · workflow pull-request-and-merge
  • Run: engineer-codex-ward-1298 · ward v0.697.0 · dispatched 2026-07-15T05:16:14Z
  • Comment thread: 1 included in the pre-flight read, 0 stripped (ward's own automated comments).

Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.697.0).

— Codex, via ward agent

<!-- ward-agent-reservation --> WARDED_WORKFLOW: reservation-held <details><summary>reservation details</summary> Holder: launch intent for container `engineer-codex-ward-1298` on host `kais-macbook-pro-2.local`. Accepted by `ward agent --harness codex` (reserved 2026-07-15T05:16:31Z). Concurrent `ward agent` runs are blocked until this intent becomes visible or the intent is released. The stale-intent fallback is still TTL-bounded (3h TTL). `--override-reservation` overrides. **Do not comment on or edit this issue to steer the run while it is reserved.** The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a **new issue, dispatched fresh**. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494). <details><summary>run seed context — what this run is carrying (ward#609)</summary> - **Resolved:** `coilyco-flight-deck/ward#1298` · branch `issue-1298` · harness `codex` · workflow `pull-request-and-merge` - **Run:** `engineer-codex-ward-1298` · ward `v0.697.0` · dispatched `2026-07-15T05:16:14Z` - **Comment thread:** 1 included in the pre-flight read, 0 stripped (ward's own automated comments). - included: @coilyco-ops (2026-07-15T01:31:01Z) Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.697.0). </details> </details> <!-- ward-agent-signature --> — Codex, via `ward agent`
merge: update issue-993 against main
All checks were successful
test / test (pull_request) Successful in 1m34s
812a101cb6
Author
Member

WARDED_WORKFLOW: #1298

details

workflow: pull-request-and-merge; review summary: skipped (temporary ward default pending brokered QA)

Goose residual close-trailer repair now routes committed residual work through repair-and-push, and empty-repo establish-main repairs the trailer before landing.
Confidence: medium-high.
Surprise: the live PR head was the stale issue-993 branch, so I updated that branch and merged current main into it.
Follow-up: merge PR 1298.

WARDED_WORKFLOW: https://forgejo.coilysiren.me/coilyco-flight-deck/ward/pulls/1298 <details><summary>details</summary> workflow: pull-request-and-merge; review summary: skipped (temporary ward default pending brokered QA) Goose residual close-trailer repair now routes committed residual work through repair-and-push, and empty-repo establish-main repairs the trailer before landing. Confidence: medium-high. Surprise: the live PR head was the stale `issue-993` branch, so I updated that branch and merged current `main` into it. Follow-up: merge PR 1298. </details>
Sign in to join this conversation.
No description provided.