@duckcodeailabs/dql-agent 1.13.4 → 1.13.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/agent-run-engine.d.ts +66 -3
  2. package/dist/agent-run-engine.d.ts.map +1 -1
  3. package/dist/agent-run-engine.js +441 -28
  4. package/dist/agent-run-engine.js.map +1 -1
  5. package/dist/agentic/tool-loop.d.ts.map +1 -1
  6. package/dist/agentic/tool-loop.js +100 -32
  7. package/dist/agentic/tool-loop.js.map +1 -1
  8. package/dist/aggregation-safety-proof.d.ts +41 -0
  9. package/dist/aggregation-safety-proof.d.ts.map +1 -0
  10. package/dist/aggregation-safety-proof.js +511 -0
  11. package/dist/aggregation-safety-proof.js.map +1 -0
  12. package/dist/analytical-compatibility.d.ts.map +1 -1
  13. package/dist/analytical-compatibility.js +42 -25
  14. package/dist/analytical-compatibility.js.map +1 -1
  15. package/dist/analytical-execution-graph.d.ts +4 -21
  16. package/dist/analytical-execution-graph.d.ts.map +1 -1
  17. package/dist/analytical-execution-graph.js +27 -0
  18. package/dist/analytical-execution-graph.js.map +1 -1
  19. package/dist/analytical-frame.d.ts +12 -1
  20. package/dist/analytical-frame.d.ts.map +1 -1
  21. package/dist/analytical-frame.js +102 -2
  22. package/dist/analytical-frame.js.map +1 -1
  23. package/dist/analytical-result-facts.d.ts +53 -0
  24. package/dist/analytical-result-facts.d.ts.map +1 -1
  25. package/dist/analytical-result-facts.js +144 -0
  26. package/dist/analytical-result-facts.js.map +1 -1
  27. package/dist/answer-loop.d.ts +40 -3
  28. package/dist/answer-loop.d.ts.map +1 -1
  29. package/dist/answer-loop.js +681 -37
  30. package/dist/answer-loop.js.map +1 -1
  31. package/dist/cascade/budgets.js +1 -1
  32. package/dist/cascade/route-policy.d.ts +1 -1
  33. package/dist/cascade/route-policy.d.ts.map +1 -1
  34. package/dist/cascade/route-policy.js +2 -0
  35. package/dist/cascade/route-policy.js.map +1 -1
  36. package/dist/generated-analytical-proposal.d.ts +37 -0
  37. package/dist/generated-analytical-proposal.d.ts.map +1 -0
  38. package/dist/generated-analytical-proposal.js +219 -0
  39. package/dist/generated-analytical-proposal.js.map +1 -0
  40. package/dist/index.d.ts +9 -5
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +6 -3
  43. package/dist/index.js.map +1 -1
  44. package/dist/intent-controller.d.ts +8 -1
  45. package/dist/intent-controller.d.ts.map +1 -1
  46. package/dist/intent-controller.js.map +1 -1
  47. package/dist/kg/build.js +102 -6
  48. package/dist/kg/build.js.map +1 -1
  49. package/dist/meaning-resolution.d.ts +23 -0
  50. package/dist/meaning-resolution.d.ts.map +1 -1
  51. package/dist/meaning-resolution.js +61 -8
  52. package/dist/meaning-resolution.js.map +1 -1
  53. package/dist/metadata/analysis-planner.d.ts.map +1 -1
  54. package/dist/metadata/analysis-planner.js +46 -2
  55. package/dist/metadata/analysis-planner.js.map +1 -1
  56. package/dist/metadata/block-fit.d.ts.map +1 -1
  57. package/dist/metadata/block-fit.js +55 -2
  58. package/dist/metadata/block-fit.js.map +1 -1
  59. package/dist/metadata/meaning-evidence.d.ts.map +1 -1
  60. package/dist/metadata/meaning-evidence.js +323 -36
  61. package/dist/metadata/meaning-evidence.js.map +1 -1
  62. package/dist/metadata/sql-context-validation.d.ts +3 -0
  63. package/dist/metadata/sql-context-validation.d.ts.map +1 -1
  64. package/dist/metadata/sql-context-validation.js +16 -5
  65. package/dist/metadata/sql-context-validation.js.map +1 -1
  66. package/dist/plan-execution-adapter.d.ts +9 -1
  67. package/dist/plan-execution-adapter.d.ts.map +1 -1
  68. package/dist/plan-execution-adapter.js +81 -32
  69. package/dist/plan-execution-adapter.js.map +1 -1
  70. package/dist/provider-egress.d.ts +122 -0
  71. package/dist/provider-egress.d.ts.map +1 -0
  72. package/dist/provider-egress.js +504 -0
  73. package/dist/provider-egress.js.map +1 -0
  74. package/dist/providers/claude.d.ts.map +1 -1
  75. package/dist/providers/claude.js +76 -33
  76. package/dist/providers/claude.js.map +1 -1
  77. package/dist/providers/dispatch.d.ts +15 -0
  78. package/dist/providers/dispatch.d.ts.map +1 -0
  79. package/dist/providers/dispatch.js +25 -0
  80. package/dist/providers/dispatch.js.map +1 -0
  81. package/dist/providers/gemini.d.ts.map +1 -1
  82. package/dist/providers/gemini.js +16 -8
  83. package/dist/providers/gemini.js.map +1 -1
  84. package/dist/providers/index.d.ts +2 -1
  85. package/dist/providers/index.d.ts.map +1 -1
  86. package/dist/providers/index.js +1 -0
  87. package/dist/providers/index.js.map +1 -1
  88. package/dist/providers/ollama.d.ts.map +1 -1
  89. package/dist/providers/ollama.js +29 -10
  90. package/dist/providers/ollama.js.map +1 -1
  91. package/dist/providers/openai.d.ts.map +1 -1
  92. package/dist/providers/openai.js +92 -36
  93. package/dist/providers/openai.js.map +1 -1
  94. package/dist/providers/types.d.ts +43 -0
  95. package/dist/providers/types.d.ts.map +1 -1
  96. package/dist/providers/types.js.map +1 -1
  97. package/dist/relationship-proof.d.ts +19 -0
  98. package/dist/relationship-proof.d.ts.map +1 -0
  99. package/dist/relationship-proof.js +75 -0
  100. package/dist/relationship-proof.js.map +1 -0
  101. package/dist/research-loop.d.ts.map +1 -1
  102. package/dist/research-loop.js +17 -11
  103. package/dist/research-loop.js.map +1 -1
  104. package/dist/resolved-analytical-plan.d.ts +25 -3
  105. package/dist/resolved-analytical-plan.d.ts.map +1 -1
  106. package/dist/resolved-analytical-plan.js +369 -27
  107. package/dist/resolved-analytical-plan.js.map +1 -1
  108. package/dist/router.d.ts +30 -1
  109. package/dist/router.d.ts.map +1 -1
  110. package/dist/router.js +705 -44
  111. package/dist/router.js.map +1 -1
  112. package/dist/semantic-identities.d.ts +18 -0
  113. package/dist/semantic-identities.d.ts.map +1 -0
  114. package/dist/semantic-identities.js +60 -0
  115. package/dist/semantic-identities.js.map +1 -0
  116. package/dist/semantic-proof-authority.d.ts +29 -0
  117. package/dist/semantic-proof-authority.d.ts.map +1 -0
  118. package/dist/semantic-proof-authority.js +34 -0
  119. package/dist/semantic-proof-authority.js.map +1 -0
  120. package/package.json +4 -4
@@ -1,6 +1,7 @@
1
1
  import { consumeSse } from './claude.js';
2
2
  import { supportsReasoningEffort } from './reasoning-effort.js';
3
3
  import { compactToolOutput } from './tool-output.js';
4
+ import { DEFAULT_PROVIDER_DISPATCH_LIMIT, prepareProviderHttpDispatch } from './dispatch.js';
4
5
  /**
5
6
  * Translate reasoning effort into the Chat Completions `reasoning_effort` param.
6
7
  * Only o-series / gpt-5 models accept it; everything else (e.g. gpt-4.1-mini)
@@ -48,6 +49,7 @@ export class OpenAIProvider {
48
49
  let includeTemperature = true;
49
50
  let lastStatus = 0;
50
51
  let lastBody = '';
52
+ let dispatches = 0;
51
53
  for (let attempt = 0; attempt < 4; attempt += 1) {
52
54
  const body = {
53
55
  ...bodyBase,
@@ -55,10 +57,18 @@ export class OpenAIProvider {
55
57
  };
56
58
  if (includeTemperature)
57
59
  body.temperature = options.temperature ?? 0.2;
60
+ dispatches += 1;
61
+ const dispatchedBody = prepareProviderHttpDispatch({
62
+ provider: this.name,
63
+ operation: 'generate',
64
+ attemptIndex: dispatches,
65
+ envelope: body,
66
+ options,
67
+ });
58
68
  const res = await fetch(`${this.baseUrl}/chat/completions`, {
59
69
  method: 'POST',
60
70
  headers,
61
- body: JSON.stringify(body),
71
+ body: JSON.stringify(dispatchedBody),
62
72
  signal: options.signal,
63
73
  });
64
74
  if (res.ok)
@@ -103,11 +113,46 @@ export class OpenAIProvider {
103
113
  parameters: tool.inputSchema,
104
114
  },
105
115
  }));
106
- const maxToolCalls = Math.max(0, Math.min(30, options.maxToolCalls ?? 8));
116
+ const dispatchLimit = Math.max(1, Math.min(30, options.maxProviderDispatches ?? DEFAULT_PROVIDER_DISPATCH_LIMIT));
117
+ const maxToolCalls = Math.max(0, Math.min(dispatchLimit <= 2 ? 4 : 30, options.maxToolCalls ?? 8));
107
118
  let toolCallsUsed = 0;
108
119
  let lastText = '';
109
120
  let useMaxCompletionTokens = false;
110
121
  let includeTemperature = true;
122
+ let dispatches = 0;
123
+ const send = (body) => {
124
+ dispatches += 1;
125
+ const dispatchedBody = prepareProviderHttpDispatch({
126
+ provider: this.name,
127
+ operation: 'generate_with_tools',
128
+ attemptIndex: dispatches,
129
+ envelope: body,
130
+ options,
131
+ });
132
+ return fetch(`${this.baseUrl}/chat/completions`, {
133
+ method: 'POST',
134
+ headers,
135
+ body: JSON.stringify(dispatchedBody),
136
+ signal: options.signal,
137
+ });
138
+ };
139
+ const forcedFinal = async () => {
140
+ const finalBody = {
141
+ model,
142
+ messages: chatMessages,
143
+ ...openaiReasoning(model, options),
144
+ [useMaxCompletionTokens ? 'max_completion_tokens' : 'max_tokens']: completionTokenBudget,
145
+ };
146
+ if (includeTemperature)
147
+ finalBody.temperature = options.temperature ?? 0.2;
148
+ const finalRes = await send(finalBody);
149
+ if (!finalRes.ok)
150
+ return '';
151
+ const finalMessage = extractOpenAIChatMessage(await finalRes.json());
152
+ // Tools were physically disabled. A provider that still returns a tool
153
+ // request cannot trigger another round.
154
+ return finalMessage.toolCalls.length === 0 ? finalMessage.content?.trim() ?? '' : '';
155
+ };
111
156
  for (;;) {
112
157
  const bodyBase = {
113
158
  model,
@@ -122,12 +167,7 @@ export class OpenAIProvider {
122
167
  };
123
168
  if (includeTemperature)
124
169
  body.temperature = options.temperature ?? 0.2;
125
- const res = await fetch(`${this.baseUrl}/chat/completions`, {
126
- method: 'POST',
127
- headers,
128
- body: JSON.stringify(body),
129
- signal: options.signal,
130
- });
170
+ const res = await send(body);
131
171
  if (!res.ok) {
132
172
  const errorBody = await res.text().catch(() => res.statusText);
133
173
  if (!useMaxCompletionTokens && shouldRetryWithMaxCompletionTokens(errorBody)) {
@@ -164,26 +204,9 @@ export class OpenAIProvider {
164
204
  content: 'Tool budget reached — do not call any more tools. Answer now using only the information the tool calls above already returned, following the required output format.',
165
205
  });
166
206
  try {
167
- const finalBody = {
168
- model,
169
- messages: chatMessages,
170
- ...openaiReasoning(model, options),
171
- [useMaxCompletionTokens ? 'max_completion_tokens' : 'max_tokens']: completionTokenBudget,
172
- // tools + tool_choice intentionally omitted — forces a final answer.
173
- };
174
- if (includeTemperature)
175
- finalBody.temperature = options.temperature ?? 0.2;
176
- const finalRes = await fetch(`${this.baseUrl}/chat/completions`, {
177
- method: 'POST',
178
- headers,
179
- body: JSON.stringify(finalBody),
180
- signal: options.signal,
181
- });
182
- if (finalRes.ok) {
183
- const finalMessage = extractOpenAIChatMessage(await finalRes.json());
184
- if (finalMessage.content?.trim())
185
- return finalMessage.content;
186
- }
207
+ const finalText = await forcedFinal();
208
+ if (finalText)
209
+ return finalText;
187
210
  }
188
211
  catch {
189
212
  // Fall through to the legacy behavior on any final-turn failure.
@@ -214,6 +237,7 @@ export class OpenAIProvider {
214
237
  }
215
238
  else {
216
239
  try {
240
+ assertMayStartToolCall(options);
217
241
  output = await tool.run(args);
218
242
  }
219
243
  catch (err) {
@@ -228,6 +252,23 @@ export class OpenAIProvider {
228
252
  content: compactToolOutput(output),
229
253
  });
230
254
  }
255
+ if (dispatchLimit <= 2) {
256
+ try {
257
+ const finalText = await forcedFinal();
258
+ return finalText || lastText || JSON.stringify({
259
+ summary: 'The provider did not return a final answer within the bounded tool round.',
260
+ });
261
+ }
262
+ catch (error) {
263
+ if (error && typeof error === 'object'
264
+ && error.code === 'PROVIDER_DISPATCH_BUDGET_EXHAUSTED') {
265
+ throw error;
266
+ }
267
+ return lastText || JSON.stringify({
268
+ summary: 'The provider dispatch budget was exhausted before a final answer.',
269
+ });
270
+ }
271
+ }
231
272
  }
232
273
  }
233
274
  async generateStream(messages, options, onDelta) {
@@ -237,17 +278,25 @@ export class OpenAIProvider {
237
278
  const headers = { 'content-type': 'application/json' };
238
279
  if (this.apiKey)
239
280
  headers.Authorization = `Bearer ${this.apiKey}`;
281
+ const body = {
282
+ model: options.model ?? this.defaultModel,
283
+ messages: messages.map((m) => ({ role: m.role, content: m.content })),
284
+ max_tokens: options.maxTokens ?? 1024,
285
+ temperature: options.temperature ?? 0.2,
286
+ stream: true,
287
+ ...openaiReasoning(options.model ?? this.defaultModel, options),
288
+ };
289
+ const dispatchedBody = prepareProviderHttpDispatch({
290
+ provider: this.name,
291
+ operation: 'generate_stream',
292
+ attemptIndex: 1,
293
+ envelope: body,
294
+ options,
295
+ });
240
296
  const res = await fetch(`${this.baseUrl}/chat/completions`, {
241
297
  method: 'POST',
242
298
  headers,
243
- body: JSON.stringify({
244
- model: options.model ?? this.defaultModel,
245
- messages: messages.map((m) => ({ role: m.role, content: m.content })),
246
- max_tokens: options.maxTokens ?? 1024,
247
- temperature: options.temperature ?? 0.2,
248
- stream: true,
249
- ...openaiReasoning(options.model ?? this.defaultModel, options),
250
- }),
299
+ body: JSON.stringify(dispatchedBody),
251
300
  signal: options.signal,
252
301
  });
253
302
  if (!res.ok || !res.body) {
@@ -273,6 +322,13 @@ export class OpenAIProvider {
273
322
  return full;
274
323
  }
275
324
  }
325
+ function assertMayStartToolCall(options) {
326
+ if (options.mayStartToolCall?.() === false) {
327
+ throw Object.assign(new Error('The run soft target elapsed before this tool branch could start.'), {
328
+ code: 'RUN_SOFT_TARGET_EXCEEDED',
329
+ });
330
+ }
331
+ }
276
332
  function shouldRetryWithMaxCompletionTokens(body) {
277
333
  return /max_tokens/i.test(body) && /max_completion_tokens/i.test(body);
278
334
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,27 @@ export interface AgentMessage {
16
16
  role: 'system' | 'user' | 'assistant';
17
17
  content: string;
18
18
  }
19
+ export type ProviderDispatchOperation = 'generate' | 'generate_with_tools' | 'generate_stream';
20
+ /** Exact provider-native envelope observed immediately before one HTTP send. */
21
+ export interface ProviderDispatchEvent {
22
+ provider: ProviderName;
23
+ operation: ProviderDispatchOperation;
24
+ /** One-based attempt number within this provider method invocation. */
25
+ attemptIndex: number;
26
+ model?: string;
27
+ options?: {
28
+ maxTokens?: number;
29
+ temperature?: number;
30
+ reasoningEffort?: import('./reasoning-effort.js').ReasoningEffort;
31
+ };
32
+ envelope: Record<string, unknown>;
33
+ }
34
+ /**
35
+ * The observer returns the normalized envelope that must be sent. This makes
36
+ * guarding/accounting part of the transport boundary instead of an outer-call
37
+ * approximation.
38
+ */
39
+ export type ProviderDispatchObserver = (event: ProviderDispatchEvent) => Record<string, unknown>;
19
40
  export interface ProviderRunOptions {
20
41
  /** Optional model override; otherwise the provider picks a sane default. */
21
42
  model?: string;
@@ -31,6 +52,10 @@ export interface ProviderRunOptions {
31
52
  reasoningEffort?: import('./reasoning-effort.js').ReasoningEffort;
32
53
  /** Caller-supplied AbortSignal — providers honor it. */
33
54
  signal?: AbortSignal;
55
+ /** Hard cap covering compatibility retries and native tool follow-ups. */
56
+ maxProviderDispatches?: number;
57
+ /** Server-owned hook invoked immediately before every provider HTTP body send. */
58
+ onProviderDispatch?: ProviderDispatchObserver;
34
59
  }
35
60
  export interface AgentToolDefinition {
36
61
  name: string;
@@ -49,6 +74,24 @@ export interface ProviderToolLoopOptions extends ProviderRunOptions {
49
74
  isError?: boolean;
50
75
  durationMs?: number;
51
76
  }) => void;
77
+ /** Run-budget guard checked immediately before each physical tool branch. */
78
+ mayStartToolCall?: () => boolean;
79
+ /** Server-owned result-row egress policy applied recursively to every tool output. */
80
+ providerPayloadGuard?: {
81
+ purpose: import('@duckcodeailabs/dql-core').ProviderEgressPurpose;
82
+ allowedResultRowTools?: Record<string, number>;
83
+ resultRowBudgetGroupByTool?: Record<string, string>;
84
+ cumulativeResultRowBudgets?: Record<string, number>;
85
+ onPayload?: (event: {
86
+ toolName: string;
87
+ output: unknown;
88
+ resultRowCount: number;
89
+ columnCount: number;
90
+ cumulativeResultRowCount: number;
91
+ budgetGroup: string;
92
+ budgetExhausted: boolean;
93
+ }) => void;
94
+ };
52
95
  }
53
96
  export interface AgentProvider {
54
97
  readonly name: ProviderName;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sBAAsB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,uBAAuB,EAAE,eAAe,CAAC;IAClE,wDAAwD;IACxD,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,GAAG,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,uBAAwB,SAAQ,kBAAkB;IACjE,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oGAAoG;IACpG,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAC1H;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClF;;;;OAIG;IACH,iBAAiB,CAAC,CAChB,QAAQ,EAAE,YAAY,EAAE,EACxB,KAAK,EAAE,mBAAmB,EAAE,EAC5B,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,CACb,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,uEAAuE;IACvE,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/B;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,CAOjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAuEH;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAuB,EACvB,QAAwB,EACxB,OAA2B,EAC3B,OAAgC;IAEhC,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACxD,IAAI,IAAI;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAqHH;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAuB,EACvB,QAAwB,EACxB,OAA2B,EAC3B,OAAgC;IAEhC,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACxD,IAAI,IAAI;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { MetricCapabilityContract, ResolvedRelationshipProofV1 } from '@duckcodeailabs/dql-core';
2
+ /** Build the sole normalized relationship authority for already selected dimensions. */
3
+ export declare function buildResolvedRelationshipProofsV1(input: {
4
+ capability: MetricCapabilityContract;
5
+ dimensionIds: string[];
6
+ route: MetricCapabilityContract['executionCapabilities'][number]['route'];
7
+ adapterId?: string;
8
+ executionId: string;
9
+ snapshotId: string;
10
+ }): ResolvedRelationshipProofV1[];
11
+ export declare function resolvedRelationshipProofMatches(input: {
12
+ proof: ResolvedRelationshipProofV1;
13
+ capability: MetricCapabilityContract;
14
+ route: MetricCapabilityContract['executionCapabilities'][number]['route'];
15
+ adapterId?: string;
16
+ executionId: string;
17
+ snapshotId: string;
18
+ }): boolean;
19
+ //# sourceMappingURL=relationship-proof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-proof.d.ts","sourceRoot":"","sources":["../src/relationship-proof.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAElC,wFAAwF;AACxF,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,UAAU,EAAE,wBAAwB,CAAC;IACrC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,EAAE,wBAAwB,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,2BAA2B,EAAE,CAwChC;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE;IACtD,KAAK,EAAE,2BAA2B,CAAC;IACnC,UAAU,EAAE,wBAAwB,CAAC;IACrC,KAAK,EAAE,wBAAwB,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAYV"}
@@ -0,0 +1,75 @@
1
+ import { createHash } from 'node:crypto';
2
+ /** Build the sole normalized relationship authority for already selected dimensions. */
3
+ export function buildResolvedRelationshipProofsV1(input) {
4
+ const route = input.capability.executionCapabilities.find((candidate) => candidate.route === input.route && candidate.adapterId === input.adapterId);
5
+ if (!route)
6
+ return [];
7
+ const dimensionIds = new Set(input.dimensionIds);
8
+ return input.capability.dimensions
9
+ .filter((dimension) => dimensionIds.has(dimension.dimensionId))
10
+ .filter((dimension) => dimension.entityId !== input.capability.primaryEntityId)
11
+ .flatMap((dimension) => {
12
+ const relationshipPathIds = uniqueSorted(dimension.relationshipPathIds ?? []);
13
+ const nativeGroupingReference = dimension.nativeGroupingReference?.trim();
14
+ const nativeGroupingPath = dimension.nativeGroupingPath === undefined
15
+ ? undefined
16
+ : [...dimension.nativeGroupingPath];
17
+ const kind = relationshipPathIds.length > 0
18
+ ? 'dql_relationship_path'
19
+ : input.route === 'semantic' && Boolean(input.adapterId)
20
+ && Boolean(nativeGroupingReference) && nativeGroupingPath !== undefined
21
+ ? 'semantic_native_grouping'
22
+ : undefined;
23
+ if (!kind)
24
+ return [];
25
+ const body = {
26
+ version: 1,
27
+ kind,
28
+ metricId: input.capability.metricId,
29
+ dimensionId: dimension.dimensionId,
30
+ sourceEntityId: input.capability.primaryEntityId,
31
+ targetEntityId: dimension.entityId,
32
+ route: input.route,
33
+ ...(input.adapterId ? { adapterId: input.adapterId } : {}),
34
+ executionId: input.executionId,
35
+ snapshotId: input.snapshotId,
36
+ capabilityFingerprint: input.capability.sourceFingerprint,
37
+ relationshipPathIds,
38
+ ...(nativeGroupingReference ? { nativeGroupingReference } : {}),
39
+ ...(nativeGroupingPath !== undefined ? { nativeGroupingPath } : {}),
40
+ };
41
+ return [{ ...body, authorityFingerprint: fingerprint(body) }];
42
+ })
43
+ .sort((left, right) => left.dimensionId.localeCompare(right.dimensionId));
44
+ }
45
+ export function resolvedRelationshipProofMatches(input) {
46
+ const expected = buildResolvedRelationshipProofsV1({
47
+ capability: input.capability,
48
+ dimensionIds: [input.proof.dimensionId],
49
+ route: input.route,
50
+ ...(input.adapterId ? { adapterId: input.adapterId } : {}),
51
+ executionId: input.executionId,
52
+ snapshotId: input.snapshotId,
53
+ });
54
+ return expected.length === 1
55
+ && expected[0].authorityFingerprint === input.proof.authorityFingerprint
56
+ && stableStringify(expected[0]) === stableStringify(input.proof);
57
+ }
58
+ function fingerprint(value) {
59
+ return createHash('sha256').update(stableStringify(value)).digest('hex');
60
+ }
61
+ function stableStringify(value) {
62
+ if (Array.isArray(value))
63
+ return `[${value.map(stableStringify).join(',')}]`;
64
+ if (value && typeof value === 'object') {
65
+ return `{${Object.entries(value)
66
+ .sort(([left], [right]) => left.localeCompare(right))
67
+ .map(([key, item]) => `${JSON.stringify(key)}:${stableStringify(item)}`)
68
+ .join(',')}}`;
69
+ }
70
+ return JSON.stringify(value);
71
+ }
72
+ function uniqueSorted(values) {
73
+ return [...new Set(values)].sort();
74
+ }
75
+ //# sourceMappingURL=relationship-proof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-proof.js","sourceRoot":"","sources":["../src/relationship-proof.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"research-loop.d.ts","sourceRoot":"","sources":["../src/research-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,yFAAyF;AACzF,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QACN,IAAI,EAAE,eAAe,GAAG,cAAc,GAAG,WAAW,GAAG,cAAc,GAAG,eAAe,GAAG,aAAa,CAAC;QACxG,uEAAuE;QACvE,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,mEAAmE;IACnE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,+EAA+E;AAC/E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,kDAAkD;IAClD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,uFAAuF;IACvF,IAAI,EAAE,OAAO,CAAC;IACd,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,CAAC,CAAC;IAChB,aAAa,EAAE,CAAC,CAAC;IACjB,OAAO,EAAE,CAAC,CAAC;IACX,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,eAAe,EAAE,cAM7B,CAAC;AA8CF;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,iGAAiG;IACjG,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC,GAAG,OAAO,CAAC,YAAY,CAAC,CAiLxB"}
1
+ {"version":3,"file":"research-loop.d.ts","sourceRoot":"","sources":["../src/research-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,yFAAyF;AACzF,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QACN,IAAI,EAAE,eAAe,GAAG,cAAc,GAAG,WAAW,GAAG,cAAc,GAAG,eAAe,GAAG,aAAa,CAAC;QACxG,uEAAuE;QACvE,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,mEAAmE;IACnE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,+EAA+E;AAC/E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,kDAAkD;IAClD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,uFAAuF;IACvF,IAAI,EAAE,OAAO,CAAC;IACd,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,CAAC,CAAC;IAChB,aAAa,EAAE,CAAC,CAAC;IACjB,OAAO,EAAE,CAAC,CAAC;IACX,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,eAAe,EAAE,cAM7B,CAAC;AA8CF;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,iGAAiG;IACjG,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC,GAAG,OAAO,CAAC,YAAY,CAAC,CAgMxB"}
@@ -12,6 +12,7 @@
12
12
  */
13
13
  import { decideAgentAction } from './intent-controller.js';
14
14
  import { matchSemanticMetric } from './metadata/metric-match.js';
15
+ import { authorityIdentitiesForKGNode } from './semantic-identities.js';
15
16
  export const RESEARCH_BUDGET = {
16
17
  plannerCalls: 1,
17
18
  sqlExecutions: 6,
@@ -75,7 +76,7 @@ export async function planResearch(input) {
75
76
  .flatMap((ref) => [ref, ref.split('.').pop() ?? ref]));
76
77
  const backedMetrics = input.metrics.filter((m) => backedNames.has(m.name.toLowerCase()) || backedNames.has(m.name.toLowerCase().split('.').pop() ?? ''));
77
78
  const rootMetric = input.rootPlan?.executionId
78
- ? input.metrics.find((metric) => nodeIdentities(metric).includes(input.rootPlan.executionId))
79
+ ? input.metrics.find((metric) => authorityIdentitiesForKGNode(metric).includes(input.rootPlan.executionId))
79
80
  : undefined;
80
81
  const match = input.rootPlan
81
82
  ? null
@@ -86,7 +87,9 @@ export async function planResearch(input) {
86
87
  const decision = input.rootPlan
87
88
  ? {
88
89
  action: input.rootPlan.capability === 'blocked'
89
- ? 'clarify'
90
+ ? input.rootPlan.resolutionFailure?.outcome === 'clarify'
91
+ ? 'clarify'
92
+ : 'block'
90
93
  : (input.forceInvestigate || input.rootPlan.questionType === 'diagnosis' || input.rootPlan.questionType === 'research')
91
94
  ? 'investigate'
92
95
  : 'answer',
@@ -129,6 +132,18 @@ export async function planResearch(input) {
129
132
  sources.add(metricName);
130
133
  for (const b of metricBlocks)
131
134
  sources.add(b.name);
135
+ if (action === 'block') {
136
+ return {
137
+ decision: 'block',
138
+ confidence: decision.confidence,
139
+ rationale: decision.reason,
140
+ steps: [],
141
+ sources: Array.from(sources),
142
+ done: false,
143
+ rootPlanId: input.rootPlan?.rootPlanId ?? input.rootPlan?.planId,
144
+ budget: RESEARCH_BUDGET,
145
+ };
146
+ }
132
147
  // ── compose_app: hand off to the app planner (P1). ───────────────────────────
133
148
  if (action === 'compose_app') {
134
149
  return {
@@ -238,15 +253,6 @@ export async function planResearch(input) {
238
253
  budget: RESEARCH_BUDGET,
239
254
  };
240
255
  }
241
- function nodeIdentities(node) {
242
- const payload = node.payload ?? {};
243
- return [
244
- node.nodeId,
245
- typeof payload.qualifiedId === 'string' ? payload.qualifiedId : undefined,
246
- typeof payload.sourceNativeId === 'string' ? payload.sourceNativeId : undefined,
247
- ...(Array.isArray(payload.aliases) ? payload.aliases.filter((value) => typeof value === 'string') : []),
248
- ].filter((value) => Boolean(value));
249
- }
250
256
  /**
251
257
  * Build a follow-up that offers REAL options: nearby metrics to disambiguate, or the
252
258
  * certified breakdown dimensions to pick from — never an open-ended "tell me more".
@@ -1 +1 @@
1
- {"version":3,"file":"research-loop.js","sourceRoot":"","sources":["../src/research-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"research-loop.js","sourceRoot":"","sources":["../src/research-loop.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  /**
2
2
  * Immutable, snapshot-bound analytical plan shared by every downstream route.
3
- * The router emits it authoritatively by default. Shadow mode remains the
4
- * bounded route-level rollback switch while integration verification closes.
3
+ * The router emits it authoritatively by default. The `shadow` discriminator
4
+ * remains only for explicit dev/test comparison fixtures; production has no
5
+ * environment flag or request field that can select it.
5
6
  *
6
7
  * Acceptance: AGT-013, API-006.
7
8
  */
8
- import type { AnalyticalQuestionFrameV2 } from "@duckcodeailabs/dql-core";
9
+ import { type AnalyticalQuestionFrameV2, type MetricCapabilityContract, type ResolvedRelationshipProofV1 } from "@duckcodeailabs/dql-core";
9
10
  import type { KnowledgeLens } from "./domain-context.js";
10
11
  import type { AgentEvidenceCandidate, AgentRetrievalEvidence, MeaningExecutionRoute, MeaningQuestionType, MeaningResolution } from './meaning-resolution.js';
11
12
  export type ResolvedPlanCapability = 'certified_execution' | 'semantic_execution' | 'governed_relational' | 'bounded_exploration' | 'blocked';
@@ -37,6 +38,10 @@ export interface ResolvedAnalyticalPlan {
37
38
  confidence: MeaningResolution['confidence'];
38
39
  selectedConceptIds: string[];
39
40
  executionId?: string;
41
+ /** Exact normalized execution authority selected before the plan was frozen. */
42
+ selectedCapability?: MetricCapabilityContract;
43
+ /** Stable authority identity retained separately for receipt comparison. */
44
+ selectedCapabilityFingerprint?: string;
40
45
  recommendedRoute: MeaningExecutionRoute;
41
46
  capability: ResolvedPlanCapability;
42
47
  query: {
@@ -61,6 +66,8 @@ export interface ResolvedAnalyticalPlan {
61
66
  entityGrain?: string;
62
67
  sourceRelationIds: string[];
63
68
  relationshipPathIds: string[];
69
+ /** Exact selected relationship authority; native semantic paths are never DQL relationship IDs. */
70
+ relationshipProofs?: ResolvedRelationshipProofV1[];
64
71
  compatibilityProof: ResolvedPlanCompatibilityProof[];
65
72
  outputContract: {
66
73
  measures: string[];
@@ -76,6 +83,21 @@ export interface ResolvedAnalyticalPlan {
76
83
  }>;
77
84
  missingInformation: string[];
78
85
  clarification?: string;
86
+ /** Typed deterministic failure retained without changing the selected plan. */
87
+ resolutionFailure?: {
88
+ outcome: 'clarify' | 'modeling_gap' | 'policy_blocked';
89
+ codes: string[];
90
+ candidateIds: string[];
91
+ selectedCapabilityId?: string;
92
+ selectedExecutionId?: string;
93
+ finalCapability: ResolvedPlanCapability;
94
+ bindings: Array<{
95
+ kind: 'measure' | 'dimension' | 'filter';
96
+ requested: string;
97
+ status: ResolvedPlanMemberBinding['status'];
98
+ candidateIds: string[];
99
+ }>;
100
+ };
79
101
  knowledgeLens?: KnowledgeLens;
80
102
  /** Exact selected policy identities and source hashes used for defaults. */
81
103
  analyticalPolicies?: Array<{