@duckcodeailabs/dql-cli 1.7.2 → 1.8.0
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.
- package/README.md +6 -1
- package/dist/apps-api.d.ts.map +1 -1
- package/dist/apps-api.js +69 -4
- package/dist/apps-api.js.map +1 -1
- package/dist/assets/dql-notebook/assets/{index-BgD9b9Om.js → index-siDRLswd.js} +380 -369
- package/dist/assets/dql-notebook/index.html +1 -1
- package/dist/llm/answer-loop-tools.js +17 -4
- package/dist/llm/answer-loop-tools.js.map +1 -1
- package/dist/llm/providers/dql-agent-provider.d.ts +1 -0
- package/dist/llm/providers/dql-agent-provider.d.ts.map +1 -1
- package/dist/llm/providers/dql-agent-provider.js +143 -26
- package/dist/llm/providers/dql-agent-provider.js.map +1 -1
- package/dist/llm/types.d.ts +13 -0
- package/dist/llm/types.d.ts.map +1 -1
- package/dist/local-runtime.d.ts +26 -0
- package/dist/local-runtime.d.ts.map +1 -1
- package/dist/local-runtime.js +679 -139
- package/dist/local-runtime.js.map +1 -1
- package/dist/package.json +10 -10
- package/dist/providers/subscription-cli.d.ts +1 -0
- package/dist/providers/subscription-cli.d.ts.map +1 -1
- package/dist/providers/subscription-cli.js +40 -8
- package/dist/providers/subscription-cli.js.map +1 -1
- package/package.json +11 -11
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
8
8
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
9
9
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&family=Kalam:wght@400;700&family=Caveat:wght@400;600;700&display=swap" rel="stylesheet" />
|
|
10
|
-
<script type="module" crossorigin src="/assets/index-
|
|
10
|
+
<script type="module" crossorigin src="/assets/index-siDRLswd.js"></script>
|
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/react-BRY8hXab.js">
|
|
12
12
|
<link rel="modulepreload" crossorigin href="/assets/codemirror-Co0dCEDr.js">
|
|
13
13
|
<link rel="stylesheet" crossorigin href="/assets/index-dSyhu_eU.css">
|
|
@@ -275,7 +275,12 @@ async function runRipgrep(projectRoot, pattern, limit) {
|
|
|
275
275
|
'--line-number', '--no-heading', '--color', 'never', '--ignore-case', '--max-count', '5',
|
|
276
276
|
'--glob', '*.{dql,sql,yml,yaml,json,md}',
|
|
277
277
|
'--glob', '!.git/**', '--glob', '!node_modules/**', '--glob', '!dist/**', '--glob', '!target/**',
|
|
278
|
-
|
|
278
|
+
// `.dql` contains provider/connection settings and other runtime-local state.
|
|
279
|
+
// Source repair must never make those files available to a model, even when
|
|
280
|
+
// a user question happens to contain a word such as "api" or "token".
|
|
281
|
+
'--glob', '!.dql/**',
|
|
282
|
+
'--glob', '!**/.env*', '--glob', '!**/profiles.yml', '--glob', '!**/profiles.yaml',
|
|
283
|
+
'--glob', '!**/*credential*.json', '--glob', '!**/*secret*.json', '--glob', '!**/*provider-settings*.json',
|
|
279
284
|
pattern, '.',
|
|
280
285
|
];
|
|
281
286
|
return new Promise((resolveSearch) => {
|
|
@@ -309,7 +314,7 @@ async function runRipgrep(projectRoot, pattern, limit) {
|
|
|
309
314
|
child.on('close', () => {
|
|
310
315
|
const matches = output.split(/\r?\n/).flatMap((raw) => {
|
|
311
316
|
const match = raw.match(/^(.*?):(\d+):(.*)$/);
|
|
312
|
-
return match ? [{ path: match[1], line: Number(match[2]), text: match[3]
|
|
317
|
+
return match ? [{ path: match[1], line: Number(match[2]), text: redactSourceSearchLine(match[3]) }] : [];
|
|
313
318
|
}).slice(0, limit);
|
|
314
319
|
finish(matches);
|
|
315
320
|
});
|
|
@@ -317,6 +322,13 @@ async function runRipgrep(projectRoot, pattern, limit) {
|
|
|
317
322
|
}
|
|
318
323
|
const SOURCE_FILE_PATTERN = /\.(dql|sql|yml|yaml|json|md)$/i;
|
|
319
324
|
const SOURCE_SEARCH_IGNORED_DIRECTORIES = new Set(['.git', 'node_modules', 'dist', 'target', '.dql']);
|
|
325
|
+
const SOURCE_SEARCH_DENIED_FILE = /(?:^|\/)(?:\.env(?:\..*)?|profiles\.ya?ml|[^/]*(?:credential|secret|provider-settings)[^/]*\.(?:json|ya?ml))$/i;
|
|
326
|
+
function redactSourceSearchLine(value) {
|
|
327
|
+
return value
|
|
328
|
+
.trim()
|
|
329
|
+
.slice(0, 500)
|
|
330
|
+
.replace(/((?:api[_-]?key|access[_-]?token|password|secret|private[_-]?key|client[_-]?secret)\s*[=:]\s*)([^\s,}\]]+)/gi, '$1[REDACTED]');
|
|
331
|
+
}
|
|
320
332
|
function runNativeSourceSearch(projectRoot, pattern, limit) {
|
|
321
333
|
const matcher = new RegExp(pattern, 'i');
|
|
322
334
|
const matches = [];
|
|
@@ -342,7 +354,8 @@ function runNativeSourceSearch(projectRoot, pattern, limit) {
|
|
|
342
354
|
directories.push(filePath);
|
|
343
355
|
continue;
|
|
344
356
|
}
|
|
345
|
-
|
|
357
|
+
const relativePath = relative(projectRoot, filePath).replaceAll('\\', '/');
|
|
358
|
+
if (!entry.isFile() || !SOURCE_FILE_PATTERN.test(entry.name) || SOURCE_SEARCH_DENIED_FILE.test(relativePath))
|
|
346
359
|
continue;
|
|
347
360
|
scannedFiles += 1;
|
|
348
361
|
if (scannedFiles > 5_000)
|
|
@@ -357,7 +370,7 @@ function runNativeSourceSearch(projectRoot, pattern, limit) {
|
|
|
357
370
|
for (const [index, line] of source.split(/\r?\n/).entries()) {
|
|
358
371
|
if (!matcher.test(line))
|
|
359
372
|
continue;
|
|
360
|
-
matches.push({ path: filePath, line: index + 1, text: line
|
|
373
|
+
matches.push({ path: filePath, line: index + 1, text: redactSourceSearchLine(line) });
|
|
361
374
|
if (matches.length >= limit)
|
|
362
375
|
break;
|
|
363
376
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answer-loop-tools.js","sourceRoot":"","sources":["../../src/llm/answer-loop-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"answer-loop-tools.js","sourceRoot":"","sources":["../../src/llm/answer-loop-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,6 +40,7 @@ declare function inferFollowUpContext(req: AgentRunRequest, question: string): A
|
|
|
40
40
|
* genuinely new topic). Question-derived filters are kept; carried ones drop.
|
|
41
41
|
*/
|
|
42
42
|
declare function applyTopicShiftGuard(followUp: AgentFollowUpContext | undefined, snapshot: ConversationSnapshot | undefined): AgentFollowUpContext | undefined;
|
|
43
|
+
export declare function resolveAgentFollowUpContext(rawContext: Record<string, unknown> | undefined, question: string): AgentFollowUpContext | undefined;
|
|
43
44
|
declare function followUpFromConversationContext(req: AgentRunRequest, question: string): AgentFollowUpContext | undefined;
|
|
44
45
|
export declare const __test__: {
|
|
45
46
|
applyTopicShiftGuard: typeof applyTopicShiftGuard;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dql-agent-provider.d.ts","sourceRoot":"","sources":["../../../src/llm/providers/dql-agent-provider.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"dql-agent-provider.d.ts","sourceRoot":"","sources":["../../../src/llm/providers/dql-agent-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAeL,KAAK,WAAW,EAEhB,KAAK,wBAAwB,EAE7B,KAAK,oBAAoB,EAEzB,KAAK,aAAa,EAElB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EAEtB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAA4B,UAAU,EAAE,MAAM,aAAa,CAAC;AACtG,OAAO,EAAE,oBAAoB,EAAkC,MAAM,yBAAyB,CAAC;AAO/F;;;;GAIG;AACH,KAAK,gBAAgB,GACjB,OAAO,CAAC,UAAU,EAAE,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,eAAe,CAAC,GACnF,aAAa,GACb,OAAO,CAAC;AAwEZ,iBAAS,8BAA8B,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,wBAAwB,CAmC/G;AAED;;;;;GAKG;AACH,iBAAS,uBAAuB,CAC9B,WAAW,EAAE,gBAAgB,GAAG,SAAS,EACzC,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAeT;AAED,iBAAS,wBAAwB,CAAC,WAAW,EAAE,gBAAgB,GAAG,SAAS,GAAG,OAAO,CAYpF;AAED,iBAAS,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAarE;AAqBD,iBAAS,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAkBhI;AAqDD,wBAAgB,4BAA4B,CAAC,EAAE,EAAE,gBAAgB,GAAG,WAAW,CAmO9E;AAmBD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAkBrE;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,oBAAoB,GAAG,MAAM,CAGjG;AA6KD,iBAAS,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAkBtG;AAuBD;;;;;GAKG;AACH,iBAAS,oBAAoB,CAC3B,QAAQ,EAAE,oBAAoB,GAAG,SAAS,EAC1C,QAAQ,EAAE,oBAAoB,GAAG,SAAS,GACzC,oBAAoB,GAAG,SAAS,CAYlC;AAED,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC/C,QAAQ,EAAE,MAAM,GACf,oBAAoB,GAAG,SAAS,CAoFlC;AAED,iBAAS,+BAA+B,CAAC,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAEjH;AA2fD,eAAO,MAAM,QAAQ;;;;;;;;;;;;CAYpB,CAAC;AAkFF,iBAAS,oBAAoB,CAAC,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAKjF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ClaudeProvider, KGStore, MemoryStore, defaultKgPath, defaultMemoryPath, GeminiProvider, loadAgentSemanticLayer, OllamaProvider, OpenAIProvider, answer, buildAnalysisQuestionPlan, buildLocalContextPack, contextRetrievalBudgetForQuestion, ensureAgentProjectReady,
|
|
1
|
+
import { ClaudeProvider, KGStore, MemoryStore, defaultKgPath, defaultMemoryPath, GeminiProvider, loadAgentSemanticLayer, OllamaProvider, OpenAIProvider, answer, buildAnalysisQuestionPlan, buildLocalContextPack, contextRetrievalBudgetForQuestion, ensureAgentProjectReady, } from '@duckcodeailabs/dql-agent';
|
|
2
2
|
import { buildManifest, normalizeDqlArtifactReference, resolveDbtManifestPath } from '@duckcodeailabs/dql-core';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { buildAnswerLoopTools, createGroundingContextExpander } from '../answer-loop-tools.js';
|
|
@@ -297,7 +297,6 @@ export function createDqlAgentProviderRunner(id) {
|
|
|
297
297
|
scopeId: req.upstream?.cellId,
|
|
298
298
|
limit: 6,
|
|
299
299
|
});
|
|
300
|
-
const skills = loadSkills(req.projectRoot).skills;
|
|
301
300
|
const semanticLayer = loadAgentSemanticLayer(req.projectRoot);
|
|
302
301
|
const questionPlan = buildAnalysisQuestionPlan(question, followUp);
|
|
303
302
|
const contextBudget = contextRetrievalBudgetForQuestion({
|
|
@@ -308,7 +307,7 @@ export function createDqlAgentProviderRunner(id) {
|
|
|
308
307
|
const selectedContext = selectedContextForMetadata(req, question);
|
|
309
308
|
emit({ kind: 'thinking', text: 'Searching certified blocks, semantic metrics, relevant domains, and skills.' });
|
|
310
309
|
const contextStartedAt = Date.now();
|
|
311
|
-
const contextPack = await buildLocalContextPack(req.projectRoot, {
|
|
310
|
+
const contextPack = req.preparedContextPack ?? await buildLocalContextPack(req.projectRoot, {
|
|
312
311
|
question,
|
|
313
312
|
surface: 'notebook',
|
|
314
313
|
followUp,
|
|
@@ -324,6 +323,34 @@ export function createDqlAgentProviderRunner(id) {
|
|
|
324
323
|
preparedMetadataFingerprint: projectState.metadataFingerprint,
|
|
325
324
|
})
|
|
326
325
|
.catch(() => undefined);
|
|
326
|
+
// CTX-002/SKILL-003: the immutable context pack is the single skill
|
|
327
|
+
// selection for this turn. Never re-read mutable skill files after
|
|
328
|
+
// the project snapshot has been acquired.
|
|
329
|
+
const skills = (contextPack?.skills ?? []).map((skill) => ({
|
|
330
|
+
id: skill.id,
|
|
331
|
+
localId: skill.id,
|
|
332
|
+
qualifiedId: skill.qualifiedId,
|
|
333
|
+
scope: 'project',
|
|
334
|
+
domain: skill.domain,
|
|
335
|
+
domains: skill.domains,
|
|
336
|
+
modelAreaRefs: skill.modelAreaRefs,
|
|
337
|
+
kind: skill.kind,
|
|
338
|
+
status: skill.status,
|
|
339
|
+
owner: skill.owner,
|
|
340
|
+
triggers: skill.triggers,
|
|
341
|
+
exclusions: skill.exclusions,
|
|
342
|
+
description: skill.description,
|
|
343
|
+
preferredMetrics: skill.preferredMetrics,
|
|
344
|
+
preferredBlocks: skill.preferredBlocks,
|
|
345
|
+
preferredDimensions: skill.preferredDimensions,
|
|
346
|
+
requiredFilters: skill.requiredFilters,
|
|
347
|
+
clarifyWhen: skill.clarifyWhen,
|
|
348
|
+
examples: [],
|
|
349
|
+
sourceRefs: skill.sourceRefs,
|
|
350
|
+
vocabulary: skill.vocabulary,
|
|
351
|
+
body: skill.guidance,
|
|
352
|
+
sourcePath: skill.sourcePath ?? '',
|
|
353
|
+
}));
|
|
327
354
|
const contextDurationMs = Date.now() - contextStartedAt;
|
|
328
355
|
const answerLoopTools = buildAnswerLoopTools(req.projectRoot);
|
|
329
356
|
const sourceSearchTool = answerLoopTools.find((tool) => tool.name === 'search_project_files');
|
|
@@ -390,6 +417,8 @@ export function createDqlAgentProviderRunner(id) {
|
|
|
390
417
|
analysisDepth: contextBudget.analysisDepth,
|
|
391
418
|
...(req.semanticDriver ? { semanticDriver: req.semanticDriver } : {}),
|
|
392
419
|
...(req.semanticTableMapping ? { semanticTableMapping: req.semanticTableMapping } : {}),
|
|
420
|
+
...(req.preferredEvidenceIds?.length ? { preferredEvidenceIds: req.preferredEvidenceIds } : {}),
|
|
421
|
+
...(req.preferredExecutionId ? { preferredExecutionId: req.preferredExecutionId } : {}),
|
|
393
422
|
executeCertifiedBlock: req.executeCertifiedBlock
|
|
394
423
|
? async (...args) => { guardSnapshot(); return req.executeCertifiedBlock(...args); }
|
|
395
424
|
: undefined,
|
|
@@ -728,8 +757,8 @@ function applyTopicShiftGuard(followUp, snapshot) {
|
|
|
728
757
|
priorLimit: undefined,
|
|
729
758
|
};
|
|
730
759
|
}
|
|
731
|
-
function
|
|
732
|
-
const context =
|
|
760
|
+
export function resolveAgentFollowUpContext(rawContext, question) {
|
|
761
|
+
const context = rawContext;
|
|
733
762
|
if (!context)
|
|
734
763
|
return undefined;
|
|
735
764
|
const turns = conversationTurnsFromContext(context);
|
|
@@ -743,7 +772,10 @@ function followUpFromConversationContext(req, question) {
|
|
|
743
772
|
const priorResultRef = priorResultRefFromTurn(activeTurn, activeResult, priorResultColumns);
|
|
744
773
|
const priorDqlArtifact = cleanDqlArtifactReference(activeTurn?.dqlArtifact) ?? cleanDqlArtifactReference(context.dqlArtifact);
|
|
745
774
|
const resolvedReferences = resolveConversationReferences(question, turns, priorResultValues);
|
|
746
|
-
const
|
|
775
|
+
const focusedPriorResultValues = resolvedReferences.valuesByDimension ?? priorResultValues;
|
|
776
|
+
const hasFocusedReference = Boolean(resolvedReferences.valuesByDimension);
|
|
777
|
+
const relativeComparison = isEntityRelativeComparisonQuestion(question);
|
|
778
|
+
const hasUsefulContext = Boolean(sourceBlockName || priorResultColumns?.length || focusedPriorResultValues || priorDqlArtifact);
|
|
747
779
|
if (!hasUsefulContext)
|
|
748
780
|
return undefined;
|
|
749
781
|
const inferredKind = isGenericFollowUp(question)
|
|
@@ -761,25 +793,40 @@ function followUpFromConversationContext(req, question) {
|
|
|
761
793
|
return {
|
|
762
794
|
kind,
|
|
763
795
|
sourceTurnId: cleanOptionalString(activeTurn?.id) ?? cleanOptionalString(context.sourceAnswerId),
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
796
|
+
// A relative comparison needs the named member from history, not the prior
|
|
797
|
+
// block's result contract. Carrying a beverage-ranking block into "less tax
|
|
798
|
+
// than Melissa" biases retrieval toward the same technical artifact and is
|
|
799
|
+
// exactly how the old loop produced a global tax KPI or all customer rows.
|
|
800
|
+
sourceBlockName: relativeComparison ? undefined : sourceBlockName,
|
|
801
|
+
sourceQuestion: relativeComparison
|
|
802
|
+
? undefined
|
|
803
|
+
: cleanOptionalString(activeTurn?.question) ?? cleanOptionalString(context.sourceQuestion),
|
|
804
|
+
sourceAnswer: relativeComparison
|
|
805
|
+
? undefined
|
|
806
|
+
: cleanOptionalString(activeTurn?.answerSummary) ?? cleanOptionalString(context.sourceAnswerSummary),
|
|
767
807
|
filters: kind === 'drilldown'
|
|
768
|
-
? mergeStrings(activeTurnStringArray(activeTurn, 'requestedFilters'), context.requestedFilters, extractDrilldownFilters(question), resolvedReferences.filters)
|
|
808
|
+
? mergeStrings(hasFocusedReference ? undefined : activeTurnStringArray(activeTurn, 'requestedFilters'), hasFocusedReference ? undefined : context.requestedFilters, extractDrilldownFilters(question), resolvedReferences.filters)
|
|
769
809
|
: undefined,
|
|
770
810
|
dimensions: kind === 'drilldown'
|
|
771
|
-
? mergeStrings(activeTurnStringArray(activeTurn, 'requestedDimensions'), context.requestedDimensions, extractDrilldownDimensions(question), resolvedReferences.dimensions)
|
|
811
|
+
? mergeStrings(hasFocusedReference ? undefined : activeTurnStringArray(activeTurn, 'requestedDimensions'), hasFocusedReference ? undefined : context.requestedDimensions, extractDrilldownDimensions(question), resolvedReferences.dimensions)
|
|
772
812
|
: undefined,
|
|
773
|
-
priorResultColumns,
|
|
774
|
-
priorResultValues,
|
|
775
|
-
priorResultRef,
|
|
776
|
-
priorDqlArtifact,
|
|
777
|
-
priorLimit:
|
|
778
|
-
|
|
813
|
+
priorResultColumns: relativeComparison ? undefined : priorResultColumns,
|
|
814
|
+
priorResultValues: focusedPriorResultValues,
|
|
815
|
+
priorResultRef: relativeComparison ? undefined : priorResultRef,
|
|
816
|
+
priorDqlArtifact: relativeComparison ? undefined : priorDqlArtifact,
|
|
817
|
+
priorLimit: relativeComparison
|
|
818
|
+
? undefined
|
|
819
|
+
: activeTurnNumber(activeTurn, 'topN') ?? (typeof context.priorLimit === 'number' ? context.priorLimit : undefined),
|
|
820
|
+
priorMeasures: relativeComparison
|
|
821
|
+
? undefined
|
|
822
|
+
: mergeStrings(activeTurnStringArray(activeTurn, 'requestedMeasures'), arrayValue(activeResult?.measureColumns), context.priorMeasures, inferredMeasuresFromAnswerContract(context.answerContract), inferredMeasureColumns(priorResultColumns)),
|
|
779
823
|
resolvedReferences: resolvedReferences.labels,
|
|
780
824
|
unresolvedReferences: resolvedReferences.unresolved,
|
|
781
825
|
};
|
|
782
826
|
}
|
|
827
|
+
function followUpFromConversationContext(req, question) {
|
|
828
|
+
return resolveAgentFollowUpContext(req.conversationContext, question);
|
|
829
|
+
}
|
|
783
830
|
function conversationTurnsFromContext(context) {
|
|
784
831
|
const explicit = Array.isArray(context?.turns)
|
|
785
832
|
? context.turns.map(cleanRecord).filter((turn) => Boolean(turn))
|
|
@@ -942,10 +989,14 @@ function priorResultRefFromTurn(activeTurn, activeResult, priorResultColumns) {
|
|
|
942
989
|
};
|
|
943
990
|
}
|
|
944
991
|
function resolveConversationReferences(question, turns, activeValues) {
|
|
945
|
-
const
|
|
992
|
+
const namedValues = resolveNamedConversationValues(question, turns, activeValues);
|
|
993
|
+
const dimensions = [
|
|
994
|
+
...(resolveDeicticDimensions(question, activeValues) ?? []),
|
|
995
|
+
...Object.keys(namedValues ?? {}).map(normalizePriorValueDimension),
|
|
996
|
+
];
|
|
946
997
|
let filters = resolveDeicticFilters(question, activeValues) ?? [];
|
|
947
998
|
const labels = [];
|
|
948
|
-
if (dimensions.length > 0 && filters.length === 0) {
|
|
999
|
+
if (!namedValues && dimensions.length > 0 && filters.length === 0) {
|
|
949
1000
|
for (const turn of [...turns].reverse()) {
|
|
950
1001
|
const values = cleanStringRecordArray(cleanRecord(turn.result)?.dimensionValues);
|
|
951
1002
|
if (!values)
|
|
@@ -956,19 +1007,77 @@ function resolveConversationReferences(question, turns, activeValues) {
|
|
|
956
1007
|
}
|
|
957
1008
|
}
|
|
958
1009
|
for (const dimension of dimensions) {
|
|
959
|
-
const values = (
|
|
1010
|
+
const values = (namedValues
|
|
1011
|
+
? valuesForPriorDimension(namedValues, dimension)
|
|
1012
|
+
: activeValues
|
|
1013
|
+
? valuesForPriorDimension(activeValues, dimension)
|
|
1014
|
+
: []).slice(0, 5);
|
|
960
1015
|
labels.push(values.length ? `${dimension}: ${values.join(', ')}` : `${dimension}: unresolved`);
|
|
961
1016
|
}
|
|
1017
|
+
if (namedValues)
|
|
1018
|
+
filters.push(...Object.values(namedValues).flat());
|
|
962
1019
|
const unresolved = referencesNeedValues(question) && filters.length === 0
|
|
963
1020
|
? ['Could not resolve the referenced prior result values from conversation state.']
|
|
964
1021
|
: undefined;
|
|
965
1022
|
return {
|
|
966
1023
|
filters: filters.length > 0 ? Array.from(new Set(filters)).slice(0, 24) : undefined,
|
|
967
|
-
dimensions: dimensions.length > 0 ? dimensions : undefined,
|
|
968
|
-
labels: labels.length > 0 ? labels : undefined,
|
|
1024
|
+
dimensions: dimensions.length > 0 ? Array.from(new Set(dimensions)) : undefined,
|
|
1025
|
+
labels: labels.length > 0 ? Array.from(new Set(labels)) : undefined,
|
|
969
1026
|
unresolved,
|
|
1027
|
+
valuesByDimension: namedValues,
|
|
970
1028
|
};
|
|
971
1029
|
}
|
|
1030
|
+
/**
|
|
1031
|
+
* Resolve explicit mentions against bounded values from recent result sets. Full
|
|
1032
|
+
* phrases win; otherwise a unique member token may resolve a shortened name
|
|
1033
|
+
* ("Melissa" → "Melissa Lopez"). Ambiguous partials are deliberately left for
|
|
1034
|
+
* clarification instead of guessing between two real warehouse members.
|
|
1035
|
+
*/
|
|
1036
|
+
function resolveNamedConversationValues(question, turns, activeValues) {
|
|
1037
|
+
const questionText = normalizeConversationValueText(question);
|
|
1038
|
+
const questionTokens = new Set(questionText.split(' ').filter((token) => token.length >= 3 && !GENERIC_FOLLOW_UP_WORDS.has(token)));
|
|
1039
|
+
if (!questionText || questionTokens.size === 0)
|
|
1040
|
+
return undefined;
|
|
1041
|
+
const candidates = new Map();
|
|
1042
|
+
const addValues = (values) => {
|
|
1043
|
+
for (const [dimension, members] of Object.entries(values ?? {})) {
|
|
1044
|
+
for (const value of members) {
|
|
1045
|
+
const normalized = normalizeConversationValueText(value);
|
|
1046
|
+
if (!normalized)
|
|
1047
|
+
continue;
|
|
1048
|
+
const exact = (` ${questionText} `).includes(` ${normalized} `);
|
|
1049
|
+
const memberTokens = normalized.split(' ').filter((token) => token.length >= 3 && !GENERIC_FOLLOW_UP_WORDS.has(token));
|
|
1050
|
+
const partial = memberTokens.some((token) => questionTokens.has(token));
|
|
1051
|
+
if (!exact && !partial)
|
|
1052
|
+
continue;
|
|
1053
|
+
candidates.set(`${dimension}\u0000${normalized}`, { dimension, value, exact });
|
|
1054
|
+
}
|
|
1055
|
+
}
|
|
1056
|
+
};
|
|
1057
|
+
addValues(activeValues);
|
|
1058
|
+
for (const turn of [...turns].reverse()) {
|
|
1059
|
+
addValues(cleanStringRecordArray(cleanRecord(turn.result)?.dimensionValues));
|
|
1060
|
+
}
|
|
1061
|
+
const all = [...candidates.values()];
|
|
1062
|
+
const exact = all.filter((candidate) => candidate.exact);
|
|
1063
|
+
const selected = exact.length > 0 ? exact : all;
|
|
1064
|
+
const distinctValues = new Set(selected.map((candidate) => normalizeConversationValueText(candidate.value)));
|
|
1065
|
+
if (distinctValues.size !== 1)
|
|
1066
|
+
return undefined;
|
|
1067
|
+
const out = {};
|
|
1068
|
+
for (const candidate of selected) {
|
|
1069
|
+
out[candidate.dimension] = Array.from(new Set([...(out[candidate.dimension] ?? []), candidate.value])).slice(0, 4);
|
|
1070
|
+
}
|
|
1071
|
+
return Object.keys(out).length > 0 ? out : undefined;
|
|
1072
|
+
}
|
|
1073
|
+
function normalizeConversationValueText(value) {
|
|
1074
|
+
return value.toLowerCase().replace(/[^a-z0-9@._'-]+/g, ' ').replace(/\s+/g, ' ').trim();
|
|
1075
|
+
}
|
|
1076
|
+
function isEntityRelativeComparisonQuestion(question) {
|
|
1077
|
+
return /\b(?:less|lower|fewer|more|higher|greater)\b[^?.!]{0,80}\bthan\b\s+[a-z0-9@._'-]+/i.test(question)
|
|
1078
|
+
|| /\b(?:below|under|above|over)\b\s+that\s+of\s+[a-z0-9@._'-]+/i.test(question)
|
|
1079
|
+
|| /\b(?:below|under|above|over)\b\s+[A-Z][A-Za-z0-9@._'-]+/.test(question);
|
|
1080
|
+
}
|
|
972
1081
|
function cleanRecord(value) {
|
|
973
1082
|
return value && typeof value === 'object' && !Array.isArray(value)
|
|
974
1083
|
? value
|
|
@@ -1008,7 +1117,7 @@ function activeTurnNumber(turn, key) {
|
|
|
1008
1117
|
return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
|
|
1009
1118
|
}
|
|
1010
1119
|
function referencesNeedValues(question) {
|
|
1011
|
-
return /\b(?:this|that|these|those|same|above|previous|prior)\b/i.test(question);
|
|
1120
|
+
return /\b(?:it|its|they|their|them|this|that|these|those|same|above|previous|prior)\b/i.test(question);
|
|
1012
1121
|
}
|
|
1013
1122
|
function extractCertifiedBlockName(content) {
|
|
1014
1123
|
const fromAnswer = content.match(/Answered by certified block \*\*([^*]+)\*\*/i)?.[1];
|
|
@@ -1096,7 +1205,14 @@ function resolveDeicticDimensions(question, priorValues) {
|
|
|
1096
1205
|
if (valuesForPriorDimension(priorValues, dim).length)
|
|
1097
1206
|
dims.push(dim);
|
|
1098
1207
|
}
|
|
1099
|
-
|
|
1208
|
+
// Subject/object pronouns usually refer to people/accounts when paired with
|
|
1209
|
+
// purchasing verbs. Resolve that entity before broad object retrieval so a
|
|
1210
|
+
// prior customer row does not become a fresh catalog search for "they".
|
|
1211
|
+
if (dims.length === 0
|
|
1212
|
+
&& /\b(?:they|their|them)\b[^.?!]{0,48}\b(?:buy|bought|purchase|purchased|order|ordered|spend|spent|use|used)\b/.test(lower)
|
|
1213
|
+
&& valuesForPriorDimension(priorValues, 'customer').length > 0)
|
|
1214
|
+
dims.push('customer');
|
|
1215
|
+
if (dims.length === 0 && /\b(?:it|its|they|their|them|this|these|those|that|same|above|previous|prior)\b/.test(lower)) {
|
|
1100
1216
|
const single = singlePriorValueDimension(priorValues);
|
|
1101
1217
|
if (single)
|
|
1102
1218
|
dims.push(single);
|
|
@@ -1213,8 +1329,9 @@ function isGenericFollowUp(question) {
|
|
|
1213
1329
|
}
|
|
1214
1330
|
function isDrilldownFollowUp(question) {
|
|
1215
1331
|
const lower = question.toLowerCase();
|
|
1216
|
-
const deicticDrilldown = /\b(?:this|that|these|those|same|above|previous|prior)\s+(?:orders?|results?|rows?|customers?|products?|cat(?:egor|agor|ogor)(?:y|ies)|segments?|regions?)\b/.test(lower)
|
|
1217
|
-
|
|
1332
|
+
const deicticDrilldown = /\b(?:this|that|these|those|same|above|previous|prior)\s+(?:amount|value|orders?|results?|rows?|customers?|products?|cat(?:egor|agor|ogor)(?:y|ies)|segments?|regions?)\b/.test(lower)
|
|
1333
|
+
|| /\b(?:they|their|them)\b/.test(lower);
|
|
1334
|
+
return /\b(drill|break\s*down|slice|segment|filter|compare|split|why|changed?|change|driver|root cause|increase|decrease|drop|spike|variance|by|for|only|where|last week|this week|last month|this month|enterprise|regions?|customers?|channels?|products?|category|categories|catagor(?:y|ies)|catogor(?:y|ies))\b/.test(lower)
|
|
1218
1335
|
&& (deicticDrilldown || !/\b(what is|what are|define|definition|meaning of)\b/.test(lower));
|
|
1219
1336
|
}
|
|
1220
1337
|
function extractDrilldownFilters(question) {
|