fix(rectification): keep choice stems visible and align overlay adopt with the engine
Independent Staging Quality Gate / validate (push) Successful in 7m44s
Independent Staging Quality Gate / publish (push) Successful in 1m48s

Walkthrough polish: fail-closed empty D9 prompts, stop asserting the next question is on screen, vary same-domain collect copy, switch to reverse-verify after adopt, and let coverage route interview without blocking can_adopt.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Jesse_Chen
2026-09-02 13:11:22 +08:00
co-authored by Cursor
parent bd79689f66
commit aab3ad4b84
22 changed files with 1019 additions and 82 deletions
@@ -205,10 +205,10 @@ function deliveryCapability(input: {
holdout: HoldoutValidationStatus;
engineCeiling: EngineCapabilityCeiling;
confirmationAllowed: boolean;
coverageComplete: boolean;
trainingGateOpen: boolean;
}): DeliveryCapability {
const locallySelectable = input.separation.ranked.length > 0
&& input.coverageComplete
&& input.trainingGateOpen
&& input.stopClass?.kind !== "keep_collecting";
return {
canAdopt: locallySelectable && input.engineCeiling.acceptanceAllowed,
@@ -246,7 +246,7 @@ export function decideRectification(input: DecideRectificationInput): Rectificat
holdout,
engineCeiling: input.engineCeiling,
confirmationAllowed,
coverageComplete: input.methodCoverageAll && input.trainingGateOpen !== false,
trainingGateOpen: input.trainingGateOpen !== false,
});
if (input.snapshotCurrent === false) {