feat(orb): golden gate corpus — production failure archetypes pinned as replayable verdicts - #8844
Merged
Merged
Conversation
…as replayable verdicts ORB's decision policy shipped without an evaluation gate, in a repo that enforces 99% patch coverage on everything else. This closes that asymmetry: a versioned corpus of decision-input snapshots drawn from the real failure archetypes (the inconclusive-AI incident class, the reversal classes, mode-flip hardening, the not-synced neutral contract), each replayed through the PURE evaluateGateCheck and pinned to its expected conclusion + blocker set. Closes #8832. Part of epic #8828 (Phase 2 -- regression gate). - knownBad entries carry a standing invariant: they may NEVER evaluate to success, under their own policy OR the permissive default -- the exact regression class that motivated the epic - append-only workflow: a production failure becomes a labeled corpus entry in the same PR that fixes it - runs in validate-tests on every PR (the issue's fast tier -- the corpus is pure and millisecond-cheap), so a dedicated path-filtered CI job would add machinery without adding protection; the full AI-inclusive tier lands with #8834/#8838's model-input capture, as noted on the issue - two corpus expectations were corrected against reality during construction (guardrail holds are policy-driven, the slop blocker code is slop_risk_above_threshold) -- exactly the drift-finding this corpus exists to do
❌ 2 Tests Failed:
View the top 2 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
A versioned golden corpus of decision-input snapshots, each drawn from a real production failure archetype and replayed through the pure
evaluateGateCheckwith its conclusion and blocker set pinned. Closes #8832 (epic #8828, Phase 2 — the regression gate).Why
The meta-point from the epic: ORB's decision policy shipped without an evaluation gate, in a repo that enforces 99% patch coverage on everything else. Every accuracy incident this week (
inconclusive-AIcloses, mode-flip hardening, verdict clobbering) would have been caught by exactly this suite had it existed. Now: a production failure becomes a labeled corpus entry in the same PR that fixes it — the online-failure → golden-set loop the research identified as converged practice.What's pinned (15 entries)
secret_leak(alone or alongside an inconclusive AI) may never evaluate to success — under its own policy or the permissive default. This double-check means a future "maintainer relaxes every optional mode" config can't resurrect the failure either.displayConclusion), slop floor both sides, guardrail holds, and the not-synced-is-neutral contract.Two of my own draft expectations were corrected against reality during construction (guardrail holds are policy-driven, not finding-driven; the slop blocker code is
slop_risk_above_threshold) — which is precisely the drift-detection this corpus exists to perform, working on its author first.Deliberate scope notes
validate-testson every PR — the corpus is pure and millisecond-cheap, so it is the fast tier the issue requires; a path-filtered job would add machinery without protection.Verification
TSC clean; 17 tests green (schema well-formedness, per-entry replay, the knownBad invariant sweep); branding drift clean. Pure test-side change — no src/** modified, no migration.