fix(gatorwalk-factory): a downgraded regression no longer sets the Lab regression flag (swamp-club #2769) #387

Merged
seth merged 1 commit from cue/2769-gatorwalk-factory-downgraded into main 2026-09-30 18:37:22 +00:00
Owner

Fixes swamp-club #2769.

Problem

The swamp-club-swamp-extensions example factory recorded a regression claim as made. swamp-club sets or clears an issue's regression flag from the classified entry's payload.isRegression, so:

  • a downgraded regression, recorded as the prompt asked (isRegression: true, verdict downgraded), set the Lab flag;
  • a classification without isRegression never cleared a flag set earlier (after a reclassify);
  • a confirmed regression's summary never said "(regression)".

Fix (YAML only, no engine or tracker change)

The classification now records the effective flag, as issue-lifecycle's triage computes it:

  • isRegression is required on every classification;
  • it is true exactly when the verdict is confirmed; a downgraded verdict forces false;
  • regressionIntroducedIn only with a confirmed verdict; any verdict needs the argument fields and type bug.

regression-review keys on a recorded regressionVerdict, so a downgraded claim is still reviewed. classified is two entries matched on isRegression (the definition validator rejects a matched entry beside an unmatched fallback on one trigger), the regression one reading "Classified as {{type}} (regression) ({{confidence}})". The triage prompt, the companion .md (the classified row now reads "Same") and the regenerated starters.ts copy follow.

Tests

  • tracker/examples_test.ts: posts SWX classified entries to the Lab fake — confirmed sets the flag and says "(regression)"; downgraded leaves it clear or clears one set earlier; a plain bug after a confirmed regression clears it. Fails against the old YAML.
  • engine/factories_test.ts: six invalid shapes rejected, a valid downgraded sample, and regression-review required for both verdicts and not for a plain bug.
  • Existing SWX fixtures record isRegression: false.

Verified with verify-build and verify-reviews at 7179233; attestation ec6a6965-df3d-43bb-b7a4-efebb7be269f.

🤖 Generated with Claude Code

Fixes swamp-club #2769. ## Problem The `swamp-club-swamp-extensions` example factory recorded a regression claim as made. swamp-club sets or clears an issue's regression flag from the `classified` entry's `payload.isRegression`, so: - a downgraded regression, recorded as the prompt asked (`isRegression: true`, verdict `downgraded`), set the Lab flag; - a classification without `isRegression` never cleared a flag set earlier (after a reclassify); - a confirmed regression's summary never said "(regression)". ## Fix (YAML only, no engine or tracker change) The classification now records the effective flag, as issue-lifecycle's triage computes it: - `isRegression` is required on every classification; - it is `true` exactly when the verdict is `confirmed`; a `downgraded` verdict forces `false`; - `regressionIntroducedIn` only with a confirmed verdict; any verdict needs the argument fields and type `bug`. `regression-review` keys on a recorded `regressionVerdict`, so a downgraded claim is still reviewed. `classified` is two entries matched on `isRegression` (the definition validator rejects a matched entry beside an unmatched fallback on one trigger), the regression one reading "Classified as {{type}} (regression) ({{confidence}})". The triage prompt, the companion `.md` (the `classified` row now reads "Same") and the regenerated `starters.ts` copy follow. ## Tests - `tracker/examples_test.ts`: posts SWX `classified` entries to the Lab fake — confirmed sets the flag and says "(regression)"; downgraded leaves it clear or clears one set earlier; a plain bug after a confirmed regression clears it. Fails against the old YAML. - `engine/factories_test.ts`: six invalid shapes rejected, a valid downgraded sample, and `regression-review` required for both verdicts and not for a plain bug. - Existing SWX fixtures record `isRegression: false`. Verified with verify-build and verify-reviews at 7179233; attestation ec6a6965-df3d-43bb-b7a4-efebb7be269f. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
fix(gatorwalk-factory): a downgraded regression no longer sets the Lab regression flag (swamp-club #2769)
All checks were successful
CI / Review Integrity (pull_request) Successful in 49s
CI / Validate Attestation (pull_request) Successful in 51s
7179233052
The swamp-club-swamp-extensions example factory recorded the regression
claim as made, so a downgraded verdict posted isRegression true and set the
Lab's flag, a classification without isRegression never cleared one, and a
confirmed regression's classified entry never said "(regression)".

The classification now records the effective flag, as issue-lifecycle's
triage computes it: isRegression is required, true only with a confirmed
verdict, false with a downgraded one, and regressionIntroducedIn only with a
confirmed verdict. regression-review keys on a recorded verdict, so a
downgraded claim is still reviewed. classified has two entries matched on
isRegression, the regression one saying "(regression)".

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seth merged commit 6310b033de into main 2026-09-30 18:37:22 +00:00
seth deleted branch cue/2769-gatorwalk-factory-downgraded 2026-09-30 18:37:22 +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!387
No description provided.