fix: reselect after reasoning pattern filtering
This commit is contained in:
@@ -71,6 +71,7 @@ function buildDiagnostics({
|
||||
compatibilityFailures,
|
||||
replacementActions,
|
||||
graphReasoningIntegrity,
|
||||
noQuestionReason,
|
||||
}) {
|
||||
return {
|
||||
promptVersion: analysis?.promptVersion ?? null,
|
||||
@@ -112,6 +113,28 @@ function buildDiagnostics({
|
||||
compatibilityFailures: compatibilityFailures ?? [],
|
||||
replacementActions: replacementActions ?? [],
|
||||
graphReasoningIntegrity: graphReasoningIntegrity ?? null,
|
||||
noQuestionReason: noQuestionReason ?? null,
|
||||
};
|
||||
}
|
||||
|
||||
function fallbackStartCaseReasoningPatternValidation(
|
||||
selectedQuestion,
|
||||
existingValidation,
|
||||
) {
|
||||
if (existingValidation) {
|
||||
return existingValidation;
|
||||
}
|
||||
|
||||
if (!selectedQuestion?.reasoningPattern) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return {
|
||||
activePattern: selectedQuestion.reasoningPattern,
|
||||
valid: Boolean(selectedQuestion.question),
|
||||
reason: selectedQuestion.question
|
||||
? "Initial graph-backed selection produced a reasoning-pattern-compatible question."
|
||||
: "Initial graph-backed selection did not produce a valid question for the inferred reasoning pattern.",
|
||||
};
|
||||
}
|
||||
|
||||
@@ -443,8 +466,10 @@ export async function startCase(body) {
|
||||
reasoningPatternReason:
|
||||
initialQuestionResult.selectedQuestion?.reasoningPatternReason ??
|
||||
null,
|
||||
reasoningPatternValidation:
|
||||
initialQuestionResult.reasoningPatternValidation ?? null,
|
||||
reasoningPatternValidation: fallbackStartCaseReasoningPatternValidation(
|
||||
initialQuestionResult.selectedQuestion,
|
||||
initialQuestionResult.reasoningPatternValidation,
|
||||
),
|
||||
patternCompatibleNodeCount:
|
||||
initialQuestionResult.patternCompatibleNodeCount ?? 0,
|
||||
incompatibleNodeIds: initialQuestionResult.incompatibleNodeIds ?? [],
|
||||
@@ -453,6 +478,7 @@ export async function startCase(body) {
|
||||
replacementActions: initialQuestionResult.replacementActions ?? [],
|
||||
graphReasoningIntegrity:
|
||||
initialQuestionResult.graphReasoningIntegrity ?? null,
|
||||
noQuestionReason: initialQuestionResult.noQuestionReason ?? null,
|
||||
}),
|
||||
validationErrors: graphReferenceValidation.errors,
|
||||
statusCode: 500,
|
||||
@@ -509,8 +535,10 @@ export async function startCase(body) {
|
||||
null,
|
||||
reasoningPatternReason:
|
||||
initialQuestionResult.selectedQuestion?.reasoningPatternReason ?? null,
|
||||
reasoningPatternValidation:
|
||||
initialQuestionResult.reasoningPatternValidation ?? null,
|
||||
reasoningPatternValidation: fallbackStartCaseReasoningPatternValidation(
|
||||
initialQuestionResult.selectedQuestion,
|
||||
initialQuestionResult.reasoningPatternValidation,
|
||||
),
|
||||
patternCompatibleNodeCount:
|
||||
initialQuestionResult.patternCompatibleNodeCount ?? 0,
|
||||
incompatibleNodeIds: initialQuestionResult.incompatibleNodeIds ?? [],
|
||||
@@ -518,6 +546,7 @@ export async function startCase(body) {
|
||||
replacementActions: initialQuestionResult.replacementActions ?? [],
|
||||
graphReasoningIntegrity:
|
||||
initialQuestionResult.graphReasoningIntegrity ?? null,
|
||||
noQuestionReason: initialQuestionResult.noQuestionReason ?? null,
|
||||
}),
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user