fix: stop fabricating auto-chain hook evidence

This commit is contained in:
Eve
2026-04-24 06:53:24 +08:00
parent 13bc748a83
commit c7a7b4098d
3 changed files with 126 additions and 6 deletions

View File

@@ -245,9 +245,9 @@ function buildAutoChainPlannerInput(gateLockResult: GateLockResult | null, wrapp
plannerInput.actorStage = "spec_review";
plannerInput.requiredNextAction = "request_code_quality_review";
plannerInput.reviewOutcome = "pass";
plannerInput.reviewEvidence = wrapperResult?.reviewEvidence && typeof wrapperResult.reviewEvidence === "object" && !Array.isArray(wrapperResult.reviewEvidence)
? wrapperResult.reviewEvidence
: { source: "hook_preflight", verdict: "pass" };
if (wrapperResult?.reviewEvidence && typeof wrapperResult.reviewEvidence === "object" && !Array.isArray(wrapperResult.reviewEvidence)) {
plannerInput.reviewEvidence = wrapperResult.reviewEvidence;
}
return plannerInput;
}
@@ -257,9 +257,18 @@ function buildAutoChainPlannerInput(gateLockResult: GateLockResult | null, wrapp
plannerInput.blocker = typeof wrapperResult?.silentLaunchReason === "string" && wrapperResult.silentLaunchReason.trim()
? wrapperResult.silentLaunchReason.trim()
: "hook_preflight_blocker";
plannerInput.blockerEvidence = wrapperResult?.blockerEvidence && typeof wrapperResult.blockerEvidence === "object" && !Array.isArray(wrapperResult.blockerEvidence)
? wrapperResult.blockerEvidence
: { source: "hook_preflight", blocker: plannerInput.blocker };
if (wrapperResult?.blockerEvidence && typeof wrapperResult.blockerEvidence === "object" && !Array.isArray(wrapperResult.blockerEvidence)) {
plannerInput.blockerEvidence = wrapperResult.blockerEvidence;
}
return plannerInput;
}
if (requiredNextAction === "dispatch_spec_review") {
plannerInput.actorStage = "implementer_result";
plannerInput.requiredNextAction = "request_spec_review";
if (wrapperResult?.implementationEvidence && typeof wrapperResult.implementationEvidence === "object" && !Array.isArray(wrapperResult.implementationEvidence)) {
plannerInput.executionEvidence = wrapperResult.implementationEvidence;
}
return plannerInput;
}