fix(gatorwalk-factory): small driving fixes from the #2711 dogfood (swamp-club #2875) #417

Merged
seth merged 3 commits from cue/2875-gatorwalk-factory-small into main 2026-10-01 17:31:47 +00:00
Owner

Small driving fixes from the gatorwalk dogfood run on swamp-club #2711 (swamp-club #2875).

Changes

  • post_attestation names the attestation id. The swamp-club adapter now logs "posted the attestation for <commit> as <id>", and on an exact repeat "already posted for <commit> as <id>; posted nothing". Before, the id was only in the stored record. swamp-club model 2026.10.01.3.
  • Each gate failure is listed once. Two gates that read the same missing evidence (for example two evidence-recorded gates on classification) used to print the same failure twice. gates.ts now drops exact repeats in evaluateTransitions and makeGateEvaluator, so status, advance's refusal, saved scenarios and the studio show the line once. An exit still keeps one check per gate. Work-item model 2026.10.01.1; studio bundle rebuilt.
  • Decisions name the person. The engine has accepted onBehalfOf on approve, decline, grant_override, advance, reset and retarget since #2793, but the skill only showed it for evidence a person records. SKILL.md rule 4, driving.md and the build-swamp-extension worked example now pass it on every decision made on a person's word. An advance the driver takes on its own names no one.
  • A DESIGN.md decision-log entry covers what was left out and why.

Left out (agreed in triage)

  • The triage-prompt pointer was in a local dogfood factory, which has been discarded.
  • The empty report banner on status is fixed in swamp itself (swamp #2764), which shipped after the swamp build used for the dogfood run.
  • Lab tracker docs: #2842 decided against them.
  • init copying scenarios: there is no init since #2884.

Testing

  • Unit tests: gates_test (one failure from two identical gates, on both paths) and swamp_club_test (the id appears in both messages).
  • Integration: tracker_test checks the id in the CLI output, and skill_test checks the new onBehalfOf flags against the method schemas.
  • verify-build and verify-reviews pass on the head commit, and the attestation is posted.

🤖 Generated with Claude Code

Small driving fixes from the gatorwalk dogfood run on swamp-club #2711 (swamp-club #2875). ## Changes - **`post_attestation` names the attestation id.** The swamp-club adapter now logs "posted the attestation for `<commit>` as `<id>`", and on an exact repeat "already posted for `<commit>` as `<id>`; posted nothing". Before, the id was only in the stored record. swamp-club model `2026.10.01.3`. - **Each gate failure is listed once.** Two gates that read the same missing evidence (for example two `evidence-recorded` gates on `classification`) used to print the same failure twice. `gates.ts` now drops exact repeats in `evaluateTransitions` and `makeGateEvaluator`, so `status`, `advance`'s refusal, saved scenarios and the studio show the line once. An exit still keeps one check per gate. Work-item model `2026.10.01.1`; studio bundle rebuilt. - **Decisions name the person.** The engine has accepted `onBehalfOf` on `approve`, `decline`, `grant_override`, `advance`, `reset` and `retarget` since #2793, but the skill only showed it for evidence a person records. SKILL.md rule 4, driving.md and the build-swamp-extension worked example now pass it on every decision made on a person's word. An advance the driver takes on its own names no one. - A DESIGN.md decision-log entry covers what was left out and why. ## Left out (agreed in triage) - The triage-prompt pointer was in a local dogfood factory, which has been discarded. - The empty report banner on `status` is fixed in swamp itself (swamp #2764), which shipped after the swamp build used for the dogfood run. - Lab tracker docs: #2842 decided against them. - `init` copying scenarios: there is no `init` since #2884. ## Testing - Unit tests: `gates_test` (one failure from two identical gates, on both paths) and `swamp_club_test` (the id appears in both messages). - Integration: `tracker_test` checks the id in the CLI output, and `skill_test` checks the new `onBehalfOf` flags against the method schemas. - verify-build and verify-reviews pass on the head commit, and the attestation is posted. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
- swamp-club post_attestation says the attestation id in its message, on a
  post and on a repeat that posted nothing.
- An exit's gate failures are listed once: two gates failing with the same
  words (two evidence-recorded gates on one missing evidence) no longer
  repeat in status, advance's refusal, saved scenarios or the studio.
- The skill tells the driver to pass onBehalfOf on every decision it runs
  on a person's word; its own advances name no one.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Resolve the studio bundle by rebuilding it, keep both decision-log entries,
and move the swamp-club model to 2026.10.01.3 after #2872's 2026.10.01.2.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Merge origin/main into cue/2875-gatorwalk-factory-small
All checks were successful
CI / Review Integrity (pull_request) Successful in 51s
CI / Validate Attestation (pull_request) Successful in 52s
3a23ad05b5
Pick up #2874: rebuild the studio bundle and keep both decision-log entries.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seth merged commit 7f9e4fa89e into main 2026-10-01 17:31:47 +00:00
seth deleted branch cue/2875-gatorwalk-factory-small 2026-10-01 17:31:50 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
swamp-club/swamp-extensions!417
No description provided.