feat: decompose composite unknowns before questioning

This commit is contained in:
2026-08-02 19:24:38 +01:00
parent b1c633ba5c
commit 0723c2f49a
9 changed files with 768 additions and 25 deletions
+25
View File
@@ -92,6 +92,11 @@ function buildUpdateDiagnostics({
emergentReasoningNodeCreated,
emergentReasoningNodeId,
emergentReasoningNodeReason,
atomicityAssessment,
decompositionPerformed,
childUnknownCount,
childNodeIds,
atomicityReason,
}) {
return {
promptVersion: promptVersion ?? "v0.4",
@@ -120,6 +125,11 @@ function buildUpdateDiagnostics({
emergentReasoningNodeCreated: emergentReasoningNodeCreated ?? false,
emergentReasoningNodeId: emergentReasoningNodeId ?? null,
emergentReasoningNodeReason: emergentReasoningNodeReason ?? null,
atomicityAssessment: atomicityAssessment ?? null,
decompositionPerformed: decompositionPerformed ?? false,
childUnknownCount: childUnknownCount ?? 0,
childNodeIds: childNodeIds ?? [],
atomicityReason: atomicityReason ?? null,
unknownSelectionExplanation: unknownSelectionExplanation ?? null,
};
}
@@ -372,6 +382,11 @@ async function updateCaseWithDependencies(body, dependencies = {}) {
emergentReasoningNodeCreated: false,
emergentReasoningNodeId: null,
emergentReasoningNodeReason: null,
atomicityAssessment: null,
decompositionPerformed: false,
childUnknownCount: 0,
childNodeIds: [],
atomicityReason: null,
unknownSelectionExplanation: explainUnknownSelection(
situationGraph,
situationGraph.resolvedNodeIds || [],
@@ -414,6 +429,11 @@ async function updateCaseWithDependencies(body, dependencies = {}) {
emergentReasoningNodeId: applicationResult.emergentReasoningNodeId,
emergentReasoningNodeReason:
applicationResult.emergentReasoningNodeReason,
atomicityAssessment: applicationResult.atomicityAssessment,
decompositionPerformed: applicationResult.decompositionPerformed,
childUnknownCount: applicationResult.childUnknownCount,
childNodeIds: applicationResult.childNodeIds,
atomicityReason: applicationResult.atomicityReason,
unknownSelectionExplanation: buildUnknownSelectionDiagnostics(
applicationResult.updatedSituationGraph,
applicationResult.updatedSituationGraph.resolvedNodeIds || [],
@@ -441,6 +461,11 @@ async function updateCaseWithDependencies(body, dependencies = {}) {
emergentReasoningNodeCreated: false,
emergentReasoningNodeId: null,
emergentReasoningNodeReason: null,
atomicityAssessment: null,
decompositionPerformed: false,
childUnknownCount: 0,
childNodeIds: [],
atomicityReason: null,
unknownSelectionExplanation: buildUnknownSelectionDiagnostics(
situationGraph,
situationGraph.resolvedNodeIds || [],