@duckcodeailabs/dql-agent 1.6.33 → 1.6.34

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 (144) hide show
  1. package/dist/agent-run-engine.d.ts +26 -8
  2. package/dist/agent-run-engine.d.ts.map +1 -1
  3. package/dist/agent-run-engine.js +46 -7
  4. package/dist/agent-run-engine.js.map +1 -1
  5. package/dist/agent-run-gates.d.ts.map +1 -1
  6. package/dist/agent-run-gates.js +15 -3
  7. package/dist/agent-run-gates.js.map +1 -1
  8. package/dist/agent-run-planner.d.ts.map +1 -1
  9. package/dist/agent-run-planner.js +14 -3
  10. package/dist/agent-run-planner.js.map +1 -1
  11. package/dist/agentic/answer-contract.d.ts +37 -0
  12. package/dist/agentic/answer-contract.d.ts.map +1 -0
  13. package/dist/agentic/answer-contract.js +47 -0
  14. package/dist/agentic/answer-contract.js.map +1 -0
  15. package/dist/agentic/tool-loop.d.ts +48 -0
  16. package/dist/agentic/tool-loop.d.ts.map +1 -0
  17. package/dist/agentic/tool-loop.js +181 -0
  18. package/dist/agentic/tool-loop.js.map +1 -0
  19. package/dist/agentic/toolset.d.ts +40 -0
  20. package/dist/agentic/toolset.d.ts.map +1 -0
  21. package/dist/agentic/toolset.js +265 -0
  22. package/dist/agentic/toolset.js.map +1 -0
  23. package/dist/answer-loop.d.ts +25 -2
  24. package/dist/answer-loop.d.ts.map +1 -1
  25. package/dist/answer-loop.js +368 -72
  26. package/dist/answer-loop.js.map +1 -1
  27. package/dist/cascade/budgets.d.ts +20 -2
  28. package/dist/cascade/budgets.d.ts.map +1 -1
  29. package/dist/cascade/budgets.js +76 -43
  30. package/dist/cascade/budgets.js.map +1 -1
  31. package/dist/cascade/route-policy.d.ts +1 -1
  32. package/dist/cascade/route-policy.d.ts.map +1 -1
  33. package/dist/cascade/route-policy.js +1 -0
  34. package/dist/cascade/route-policy.js.map +1 -1
  35. package/dist/embeddings/provider.d.ts +67 -4
  36. package/dist/embeddings/provider.d.ts.map +1 -1
  37. package/dist/embeddings/provider.js +167 -6
  38. package/dist/embeddings/provider.js.map +1 -1
  39. package/dist/hints/correction-eval.d.ts +30 -0
  40. package/dist/hints/correction-eval.d.ts.map +1 -0
  41. package/dist/hints/correction-eval.js +63 -0
  42. package/dist/hints/correction-eval.js.map +1 -0
  43. package/dist/hints/staleness.d.ts +30 -0
  44. package/dist/hints/staleness.d.ts.map +1 -0
  45. package/dist/hints/staleness.js +38 -0
  46. package/dist/hints/staleness.js.map +1 -0
  47. package/dist/hints/store.d.ts.map +1 -1
  48. package/dist/hints/store.js +3 -32
  49. package/dist/hints/store.js.map +1 -1
  50. package/dist/index.d.ts +39 -6
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +143 -7
  53. package/dist/index.js.map +1 -1
  54. package/dist/intent-controller.d.ts.map +1 -1
  55. package/dist/intent-controller.js +15 -3
  56. package/dist/intent-controller.js.map +1 -1
  57. package/dist/kg/sqlite-fts.d.ts +13 -0
  58. package/dist/kg/sqlite-fts.d.ts.map +1 -1
  59. package/dist/kg/sqlite-fts.js +75 -47
  60. package/dist/kg/sqlite-fts.js.map +1 -1
  61. package/dist/memory/fts-query.d.ts +37 -4
  62. package/dist/memory/fts-query.d.ts.map +1 -1
  63. package/dist/memory/fts-query.js +53 -12
  64. package/dist/memory/fts-query.js.map +1 -1
  65. package/dist/metadata/analysis-planner.js +45 -10
  66. package/dist/metadata/analysis-planner.js.map +1 -1
  67. package/dist/metadata/block-adapt.d.ts +37 -0
  68. package/dist/metadata/block-adapt.d.ts.map +1 -0
  69. package/dist/metadata/block-adapt.js +89 -0
  70. package/dist/metadata/block-adapt.js.map +1 -0
  71. package/dist/metadata/catalog.d.ts +39 -0
  72. package/dist/metadata/catalog.d.ts.map +1 -1
  73. package/dist/metadata/catalog.js +361 -41
  74. package/dist/metadata/catalog.js.map +1 -1
  75. package/dist/metadata/example-match.d.ts +30 -0
  76. package/dist/metadata/example-match.d.ts.map +1 -0
  77. package/dist/metadata/example-match.js +69 -0
  78. package/dist/metadata/example-match.js.map +1 -0
  79. package/dist/metadata/grain-ledger.d.ts +51 -0
  80. package/dist/metadata/grain-ledger.d.ts.map +1 -0
  81. package/dist/metadata/grain-ledger.js +174 -0
  82. package/dist/metadata/grain-ledger.js.map +1 -0
  83. package/dist/metadata/metric-match.d.ts +21 -1
  84. package/dist/metadata/metric-match.d.ts.map +1 -1
  85. package/dist/metadata/metric-match.js +157 -21
  86. package/dist/metadata/metric-match.js.map +1 -1
  87. package/dist/metadata/sql-grounding.d.ts +4 -2
  88. package/dist/metadata/sql-grounding.d.ts.map +1 -1
  89. package/dist/metadata/sql-grounding.js +4 -2
  90. package/dist/metadata/sql-grounding.js.map +1 -1
  91. package/dist/metadata/sql-retrieval.d.ts +3 -2
  92. package/dist/metadata/sql-retrieval.d.ts.map +1 -1
  93. package/dist/metadata/sql-retrieval.js +23 -5
  94. package/dist/metadata/sql-retrieval.js.map +1 -1
  95. package/dist/propose/build-from-prompt.d.ts.map +1 -1
  96. package/dist/propose/build-from-prompt.js +10 -4
  97. package/dist/propose/build-from-prompt.js.map +1 -1
  98. package/dist/propose/failure-analysis.d.ts +48 -0
  99. package/dist/propose/failure-analysis.d.ts.map +1 -0
  100. package/dist/propose/failure-analysis.js +71 -0
  101. package/dist/propose/failure-analysis.js.map +1 -0
  102. package/dist/propose/join-mining.d.ts +18 -0
  103. package/dist/propose/join-mining.d.ts.map +1 -0
  104. package/dist/propose/join-mining.js +74 -0
  105. package/dist/propose/join-mining.js.map +1 -0
  106. package/dist/providers/claude.d.ts.map +1 -1
  107. package/dist/providers/claude.js +36 -1
  108. package/dist/providers/claude.js.map +1 -1
  109. package/dist/providers/index.d.ts +2 -2
  110. package/dist/providers/index.d.ts.map +1 -1
  111. package/dist/providers/index.js +1 -1
  112. package/dist/providers/index.js.map +1 -1
  113. package/dist/providers/openai.d.ts.map +1 -1
  114. package/dist/providers/openai.js +34 -1
  115. package/dist/providers/openai.js.map +1 -1
  116. package/dist/providers/reasoning-effort.d.ts +27 -0
  117. package/dist/providers/reasoning-effort.d.ts.map +1 -1
  118. package/dist/providers/reasoning-effort.js +32 -0
  119. package/dist/providers/reasoning-effort.js.map +1 -1
  120. package/dist/providers/types.d.ts +2 -1
  121. package/dist/providers/types.d.ts.map +1 -1
  122. package/dist/research-loop.d.ts.map +1 -1
  123. package/dist/research-loop.js +9 -2
  124. package/dist/research-loop.js.map +1 -1
  125. package/dist/semantic-bridge/compose.d.ts.map +1 -1
  126. package/dist/semantic-bridge/compose.js +147 -20
  127. package/dist/semantic-bridge/compose.js.map +1 -1
  128. package/dist/skills/bootstrap.d.ts +57 -0
  129. package/dist/skills/bootstrap.d.ts.map +1 -0
  130. package/dist/skills/bootstrap.js +260 -0
  131. package/dist/skills/bootstrap.js.map +1 -0
  132. package/dist/skills/defaults.d.ts +2 -2
  133. package/dist/skills/defaults.js +2 -2
  134. package/dist/skills/domain-skills.d.ts +24 -0
  135. package/dist/skills/domain-skills.d.ts.map +1 -0
  136. package/dist/skills/domain-skills.js +76 -0
  137. package/dist/skills/domain-skills.js.map +1 -0
  138. package/dist/skills/loader.d.ts +46 -8
  139. package/dist/skills/loader.d.ts.map +1 -1
  140. package/dist/skills/loader.js +186 -41
  141. package/dist/skills/loader.js.map +1 -1
  142. package/dist/tools/registry.js +12 -12
  143. package/dist/tools/registry.js.map +1 -1
  144. package/package.json +4 -4
@@ -25,7 +25,7 @@
25
25
  * still fall through to generated SQL, and questions with no measure at all
26
26
  * still refuse honestly.
27
27
  */
28
- import { defaultEmbeddingProvider, hybridRank } from '../embeddings/provider.js';
28
+ import { envEmbeddingProvider, hybridRank } from '../embeddings/provider.js';
29
29
  const TOKEN_RE = /[\p{L}\p{N}_]+/gu;
30
30
  /** Stopwords that should never count toward a measure/metric match. */
31
31
  const STOPWORDS = new Set([
@@ -36,11 +36,20 @@ const STOPWORDS = new Set([
36
36
  'count', 'sum', 'average', 'avg', 'get', 'find', 'whole', 'entire',
37
37
  ]);
38
38
  /**
39
- * Measure synonym families. Each family maps a canonical measure to the set of
40
- * words that signal it. A question and a metric "share a family" when any word
39
+ * Seed measure synonym families. Each family maps a canonical measure to the set
40
+ * of words that signal it. A question and a metric "share a family" when any word
41
41
  * from the question and any word from the metric resolve to the same family.
42
+ *
43
+ * This hardcoded list only SEEDS common cross-vocabulary synonyms (revenue⇄sales,
44
+ * customer⇄user). The real family set is built PER PROJECT from the actual metric
45
+ * pool by {@link buildMeasureFamilies}, so a project's own measure vocabulary —
46
+ * `tax`, `discount`, `shipping`, `freight`, whatever this warehouse names its
47
+ * measures — self-registers as a family without ever touching this file. The old
48
+ * behavior (fixed 9-family list) silently dropped every measure not in the list:
49
+ * "region tax by product" scored `familyBoost = 0` and fell below threshold even
50
+ * though a `tax_amount` metric existed.
42
51
  */
43
- const MEASURE_FAMILIES = {
52
+ const SEED_MEASURE_FAMILIES = {
44
53
  revenue: ['revenue', 'revenues', 'sales', 'income', 'turnover', 'earnings', 'gmv', 'arr', 'mrr', 'bookings', 'topline'],
45
54
  spend: ['spend', 'spending', 'spent', 'cost', 'costs', 'expense', 'expenses', 'cogs'],
46
55
  profit: ['profit', 'profits', 'margin', 'margins', 'gross', 'net', 'ebitda'],
@@ -51,6 +60,47 @@ const MEASURE_FAMILIES = {
51
60
  quantity: ['quantity', 'units', 'volume', 'qty'],
52
61
  aov: ['aov', 'basket'],
53
62
  };
63
+ /**
64
+ * Backward-compatible alias: the seed families are the default family map used by
65
+ * helpers that don't have a project metric pool in scope (e.g. the fallback
66
+ * `buildGovernedMetricFirstSql` gate). Question↔metric matching in
67
+ * `matchSemanticMetric` uses a project-derived map instead.
68
+ */
69
+ const MEASURE_FAMILIES = SEED_MEASURE_FAMILIES;
70
+ /** A word that is too generic to be a distinctive per-project family on its own. */
71
+ const GENERIC_FAMILY_TOKENS = new Set([
72
+ 'amount', 'total', 'value', 'count', 'sum', 'avg', 'average', 'number', 'num',
73
+ 'rate', 'ratio', 'pct', 'percent', 'percentage', 'metric', 'measure', 'kpi',
74
+ 'daily', 'weekly', 'monthly', 'quarterly', 'yearly', 'annual', 'ytd', 'mtd',
75
+ ]);
76
+ /**
77
+ * Build the measure-family map for a specific project by merging the seed
78
+ * synonyms with a family for each distinctive token in the metric pool's names.
79
+ * A metric named `tax_amount` contributes the `tax` family; `avg_discount_rate`
80
+ * contributes `discount`. Generic tokens (`amount`, `rate`, `total`) never become
81
+ * families — they'd match everything. Seed families win when a token already
82
+ * belongs to one (so `sales` stays in `revenue`, not its own family).
83
+ */
84
+ export function buildMeasureFamilies(metrics) {
85
+ const families = {};
86
+ for (const [family, words] of Object.entries(SEED_MEASURE_FAMILIES))
87
+ families[family] = [...words];
88
+ const seeded = new Set(Object.values(SEED_MEASURE_FAMILIES).flat());
89
+ for (const metric of metrics) {
90
+ if (metric.kind !== 'metric')
91
+ continue;
92
+ // Only the metric NAME/label defines what it MEASURES — not its backing table
93
+ // (see metricFamilyText). Tokenize the same way so `avg_tax_rate` → tax.
94
+ for (const token of tokenize(metricFamilyText(metric))) {
95
+ if (token.length < 3)
96
+ continue;
97
+ if (seeded.has(token) || GENERIC_FAMILY_TOKENS.has(token) || STOPWORDS.has(token))
98
+ continue;
99
+ (families[token] ??= [token]);
100
+ }
101
+ }
102
+ return families;
103
+ }
54
104
  /**
55
105
  * Row/record-listing intent. A question asking to ENUMERATE rows or identifiers
56
106
  * ("list the 5 most recent orders with their ids") is not a metric question even
@@ -71,16 +121,35 @@ function tokenize(text) {
71
121
  function contentTokens(text) {
72
122
  return tokenize(text).filter((t) => !STOPWORDS.has(t));
73
123
  }
74
- /** The measure families a set of words resolves to. */
75
- function familiesFor(words) {
124
+ /** The measure families a set of words resolves to (against a given family map). */
125
+ function familiesFor(words, familyMap = MEASURE_FAMILIES) {
76
126
  const set = new Set(words);
77
127
  const families = new Set();
78
- for (const [family, members] of Object.entries(MEASURE_FAMILIES)) {
128
+ for (const [family, members] of Object.entries(familyMap)) {
79
129
  if (members.some((member) => set.has(member)))
80
130
  families.add(family);
81
131
  }
82
132
  return families;
83
133
  }
134
+ function buildFamilyLookup(familyMap) {
135
+ const lookup = new Map();
136
+ for (const [family, members] of Object.entries(familyMap)) {
137
+ for (const member of members) {
138
+ const current = lookup.get(member) ?? [];
139
+ if (!current.includes(family))
140
+ current.push(family);
141
+ lookup.set(member, current);
142
+ }
143
+ }
144
+ return lookup;
145
+ }
146
+ function familiesForWithLookup(words, lookup) {
147
+ const result = new Set();
148
+ for (const word of words)
149
+ for (const family of lookup.get(word) ?? [])
150
+ result.add(family);
151
+ return result;
152
+ }
84
153
  /** Searchable text for a metric KG node: name, synonyms, label, description, tags. */
85
154
  function metricSearchText(metric) {
86
155
  return [
@@ -94,14 +163,15 @@ function metricSearchText(metric) {
94
163
  .join(' ');
95
164
  }
96
165
  /**
97
- * Text used ONLY for measure-FAMILY detection: the metric's name + description +
98
- * tags, but NOT its `llmContext`. The llmContext carries `table:`/`sql:` lines, so
166
+ * Text used ONLY for measure-FAMILY detection: the metric's name + explicit
167
+ * tags, but NOT its free-form description or `llmContext`. Those fields carry
168
+ * business prose and `table:`/`sql:` lines, so
99
169
  * including it wrongly assigns a metric to the family of its backing TABLE (a
100
170
  * `tax_paid` measure on the `orders` table would falsely read as the "orders"
101
171
  * family). Family must reflect what the metric MEASURES, i.e. its name/label.
102
172
  */
103
173
  function metricFamilyText(metric) {
104
- return [metric.name, metric.name.replace(/[_.]+/g, ' '), metric.description ?? '', ...(metric.tags ?? [])]
174
+ return [metric.name, metric.name.replace(/[_.]+/g, ' '), ...(metric.tags ?? [])]
105
175
  .filter(Boolean)
106
176
  .join(' ');
107
177
  }
@@ -132,19 +202,38 @@ export async function matchSemanticMetric(question, metrics, options = {}) {
132
202
  // let it fall through to grounded generated SQL even if it names a measure.
133
203
  if (looksLikeRowRequest(question))
134
204
  return null;
135
- const threshold = options.threshold ?? 0.34;
136
- const qContent = new Set(contentTokens(question));
205
+ // Lowered from 0.34: a project-derived family match (buildMeasureFamilies) now
206
+ // lifts in-vocabulary measures like `tax`/`discount` that the old fixed list
207
+ // dropped, and the name/family guard below keeps precision (a bare
208
+ // description-only overlap with no name hit and no family never wins).
209
+ const threshold = options.threshold ?? 0.3;
210
+ // Build the family map from THIS project's metric pool so the warehouse's own
211
+ // measure vocabulary self-registers as families (see buildMeasureFamilies).
212
+ const familyMap = buildMeasureFamilies(candidates);
213
+ const familyLookup = buildFamilyLookup(familyMap);
214
+ // Score the measure signal against the planner's isolated measure terms when
215
+ // available; otherwise fall back to all content tokens (bare callers). This is
216
+ // what keeps "region tax by product" scoring `tax_amount`, not `product_count`.
217
+ const measureSignal = (options.measureTerms ?? [])
218
+ .flatMap((term) => contentTokens(term));
219
+ const qContent = new Set(measureSignal.length > 0 ? measureSignal : contentTokens(question));
137
220
  if (qContent.size === 0)
138
221
  return null;
139
- const qFamilies = familiesFor(qContent);
222
+ const qFamilies = familiesForWithLookup(qContent, familyLookup);
140
223
  // A measure question must carry at least one content word OR a measure family;
141
224
  // a bare "what is this" carries neither and should not match a metric.
142
225
  const items = candidates.map((metric) => {
143
226
  const text = metricSearchText(metric).toLowerCase();
144
- const nameTokens = new Set(tokenize(metric.name));
227
+ // Normalize underscores/dots the SAME way metricSearchText (:99) and
228
+ // metricFamilyText (:116) already do, so an underscored metric name — the
229
+ // standard dbt/MetricFlow convention, e.g. `avg_tax_rate` — tokenizes to
230
+ // {avg, tax, rate} and can actually earn the name-match boost below. Without
231
+ // this, `tokenize('avg_tax_rate')` stays one glued token and the boost never
232
+ // fires for the most common naming style (the docstring's own example).
233
+ const nameTokens = new Set(tokenize(metric.name.replace(/[_.]+/g, ' ')));
145
234
  // Family is derived from the metric's name/label only (not its `table:`), so a
146
235
  // measure is never mis-assigned to the family of the relation it sits on.
147
- const metricFams = familiesFor(contentTokens(metricFamilyText(metric)));
236
+ const metricFams = familiesForWithLookup(contentTokens(metricFamilyText(metric)), familyLookup);
148
237
  let overlap = 0;
149
238
  let nameHit = 0;
150
239
  for (const token of qContent) {
@@ -168,17 +257,64 @@ export async function matchSemanticMetric(question, metrics, options = {}) {
168
257
  // clamp and hides a more specific name match.
169
258
  const familyBoost = sharedFamily ? 0.45 : 0;
170
259
  const fts = clamp01(0.35 * lexical + familyBoost + 0.35 * nameFraction);
171
- return { metric, text: metricSearchText(metric), ftsScore: fts, family: sharedFamily };
260
+ // Precision guard: a candidate is only a genuine metric hit when the question
261
+ // touches the metric's NAME or shares a measure family — a pure description
262
+ // overlap (e.g. the word "monthly" appearing in a metric's prose) is not.
263
+ const descriptionTokens = new Set(contentTokens(metric.description ?? ''));
264
+ let descriptionHits = 0;
265
+ for (const token of qContent)
266
+ if (descriptionTokens.has(token))
267
+ descriptionHits += 1;
268
+ // Descriptions/examples are a recall source, not an automatic answer. Require
269
+ // at least two distinctive measure tokens before they can advance a metric to
270
+ // compiler validation; a single generic prose word remains insufficient.
271
+ const descriptionGrounded = qContent.size >= 2
272
+ && descriptionHits >= 2
273
+ && descriptionHits / qContent.size >= 0.6;
274
+ const grounded = nameHit > 0 || Boolean(sharedFamily) || descriptionGrounded;
275
+ const basis = nameHit > 0
276
+ ? 'name'
277
+ : sharedFamily
278
+ ? 'family'
279
+ : descriptionGrounded
280
+ ? 'description'
281
+ : undefined;
282
+ return { metric, text: metricSearchText(metric), ftsScore: fts, family: sharedFamily, grounded, basis };
172
283
  });
173
- const hasLexicalSignal = items.some((entry) => entry.ftsScore > 0);
174
- const ranked = await hybridRank(question, items.map((entry) => ({ item: entry, text: entry.text, ftsScore: entry.ftsScore })), {
284
+ // Never embed an entire enterprise metric catalog. The deterministic pass
285
+ // above examines every metric for correctness, then hands only the strongest
286
+ // grounded candidates to the expensive hybrid ranker. This removes the old
287
+ // 400-row correctness cap without replacing it with a 7,000-vector latency
288
+ // cliff.
289
+ const rankedCandidates = items
290
+ .filter((entry) => entry.grounded || entry.ftsScore > 0)
291
+ .sort((left, right) => right.ftsScore - left.ftsScore || left.metric.name.localeCompare(right.metric.name))
292
+ .slice(0, 96);
293
+ if (rankedCandidates.length === 0)
294
+ return null;
295
+ const hasLexicalSignal = rankedCandidates.some((entry) => entry.ftsScore > 0);
296
+ const provider = options.provider ?? envEmbeddingProvider();
297
+ const ranked = await hybridRank(question, rankedCandidates.map((entry) => ({ item: entry, text: entry.text, ftsScore: entry.ftsScore })), {
175
298
  alpha: hasLexicalSignal ? options.alpha ?? DEFAULT_METRIC_MATCH_EMBEDDING_ALPHA : 0,
176
- provider: options.provider ?? defaultEmbeddingProvider(),
299
+ provider,
177
300
  });
178
301
  const best = ranked[0];
179
- if (!best || best.score < threshold)
302
+ if (!best)
303
+ return null;
304
+ const second = ranked[1];
305
+ const realEmbeddingProvider = !provider.id.includes('hashed-token');
306
+ const embeddingGrounded = !best.item.grounded
307
+ && realEmbeddingProvider
308
+ && best.vectorScore >= 0.86
309
+ && best.vectorScore - (second?.vectorScore ?? 0) >= 0.06;
310
+ if ((!best.item.grounded || best.score < threshold) && !embeddingGrounded)
180
311
  return null;
181
- return { metric: best.item.metric, score: best.score, family: best.item.family };
312
+ return {
313
+ metric: best.item.metric,
314
+ score: embeddingGrounded ? best.vectorScore : best.score,
315
+ family: best.item.family,
316
+ basis: embeddingGrounded ? 'embedding' : best.item.basis,
317
+ };
182
318
  }
183
319
  function clamp01(value) {
184
320
  if (!Number.isFinite(value))
@@ -1 +1 @@
1
- {"version":3,"file":"metric-match.js","sourceRoot":"","sources":["../../src/metadata/metric-match.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metric-match.js","sourceRoot":"","sources":["../../src/metadata/metric-match.ts"],"names":[],"mappings":"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"}
@@ -90,8 +90,10 @@ export interface RuntimeRelationInput {
90
90
  * answer-loop receives these from the host as `schemaContext` /
91
91
  * `allowedSqlContext`, so the relations are already real warehouse relations).
92
92
  * This lets the governed answer-loop reuse the SAME resolver + validator as the
93
- * build path without re-reading dbt artifacts. No join-key inference here
94
- * the answer-loop already renders join paths from its context pack.
93
+ * build path without re-reading dbt artifacts. No join-key inference here for
94
+ * relations already in the context pack — the answer-loop renders join paths from
95
+ * that pack. (Since P3, a relation the model DISCOVERS mid-loop via get_table_schema
96
+ * gets its inferred join keys directly from that tool's own result, not from here.)
95
97
  */
96
98
  export declare function buildGroundingFromRuntimeRelations(relations: RuntimeRelationInput[]): SchemaGrounding;
97
99
  export interface RelationResolution {
@@ -1 +1 @@
1
- {"version":3,"file":"sql-grounding.d.ts","sourceRoot":"","sources":["../../src/metadata/sql-grounding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql-grounding.d.ts","sourceRoot":"","sources":["../../src/metadata/sql-grounding.ts"],"names":[],"mappings":"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"}
@@ -201,8 +201,10 @@ function inferJoinKeys(tables, artifacts) {
201
201
  * answer-loop receives these from the host as `schemaContext` /
202
202
  * `allowedSqlContext`, so the relations are already real warehouse relations).
203
203
  * This lets the governed answer-loop reuse the SAME resolver + validator as the
204
- * build path without re-reading dbt artifacts. No join-key inference here
205
- * the answer-loop already renders join paths from its context pack.
204
+ * build path without re-reading dbt artifacts. No join-key inference here for
205
+ * relations already in the context pack — the answer-loop renders join paths from
206
+ * that pack. (Since P3, a relation the model DISCOVERS mid-loop via get_table_schema
207
+ * gets its inferred join keys directly from that tool's own result, not from here.)
206
208
  */
207
209
  export function buildGroundingFromRuntimeRelations(relations) {
208
210
  const tables = relations.map((rel) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"sql-grounding.js","sourceRoot":"","sources":["../../src/metadata/sql-grounding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql-grounding.js","sourceRoot":"","sources":["../../src/metadata/sql-grounding.ts"],"names":[],"mappings":"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"}
@@ -23,8 +23,9 @@ export declare const DEFAULT_SQL_RETRIEVAL_EMBEDDING_ALPHA = 0.18;
23
23
  /**
24
24
  * Rank models by relevance to `request` and return the top-K model names
25
25
  * (logical `name`, suitable for `buildSchemaGrounding`'s `relevantModels`).
26
- * When no model has any lexical overlap, returns the first K models so the
27
- * grounding is never empty.
26
+ * When no model has any lexical or embedding overlap, falls back to the most
27
+ * frequently run models (dbt run_results), then alphabetical — so the grounding
28
+ * is never empty and never arbitrary insertion order.
28
29
  */
29
30
  export declare function selectRelevantModels(artifacts: DbtArtifacts | undefined, request: string, options?: SelectRelevantModelsOptions): Promise<string[]>;
30
31
  //# sourceMappingURL=sql-retrieval.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sql-retrieval.d.ts","sourceRoot":"","sources":["../../src/metadata/sql-retrieval.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAwC,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACzG,OAAO,KAAK,EAAE,YAAY,EAAgB,MAAM,6BAA6B,CAAC;AAE9E,MAAM,WAAW,2BAA2B;IAC1C,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,qCAAqC,OAAO,CAAC;AA4C1D;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,YAAY,GAAG,SAAS,EACnC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,MAAM,EAAE,CAAC,CAoBnB"}
1
+ {"version":3,"file":"sql-retrieval.d.ts","sourceRoot":"","sources":["../../src/metadata/sql-retrieval.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAA8D,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC/H,OAAO,KAAK,EAAE,YAAY,EAAgB,MAAM,6BAA6B,CAAC;AAE9E,MAAM,WAAW,2BAA2B;IAC1C,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,qCAAqC,OAAO,CAAC;AA4C1D;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,YAAY,GAAG,SAAS,EACnC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB"}
@@ -10,7 +10,7 @@
10
10
  * hashed-token vector. A small non-zero blend lets a pluggable provider refine
11
11
  * paraphrase matches while lexical recall remains the gate.
12
12
  */
13
- import { defaultEmbeddingProvider, hybridRank } from '../embeddings/provider.js';
13
+ import { envEmbeddingProvider, hybridRank } from '../embeddings/provider.js';
14
14
  export const DEFAULT_SQL_RETRIEVAL_EMBEDDING_ALPHA = 0.18;
15
15
  const TOKEN_RE = /[\p{L}\p{N}_]+/gu;
16
16
  function tokenize(text) {
@@ -56,8 +56,9 @@ function lexicalScore(queryTokens, model, artifacts) {
56
56
  /**
57
57
  * Rank models by relevance to `request` and return the top-K model names
58
58
  * (logical `name`, suitable for `buildSchemaGrounding`'s `relevantModels`).
59
- * When no model has any lexical overlap, returns the first K models so the
60
- * grounding is never empty.
59
+ * When no model has any lexical or embedding overlap, falls back to the most
60
+ * frequently run models (dbt run_results), then alphabetical — so the grounding
61
+ * is never empty and never arbitrary insertion order.
61
62
  */
62
63
  export async function selectRelevantModels(artifacts, request, options = {}) {
63
64
  if (!artifacts || artifacts.models.length === 0)
@@ -72,10 +73,27 @@ export async function selectRelevantModels(artifacts, request, options = {}) {
72
73
  const hasLexicalSignal = items.some((item) => item.ftsScore > 0);
73
74
  const ranked = await hybridRank(request, items, {
74
75
  alpha: hasLexicalSignal ? options.alpha ?? DEFAULT_SQL_RETRIEVAL_EMBEDDING_ALPHA : 0,
75
- provider: options.provider ?? defaultEmbeddingProvider(),
76
+ provider: options.provider ?? envEmbeddingProvider(),
76
77
  });
77
78
  const withSignal = ranked.filter((r) => r.ftsScore > 0 || (hasLexicalSignal && r.score > 0));
78
- const chosen = (withSignal.length > 0 ? withSignal : ranked).slice(0, topK);
79
+ let chosen;
80
+ if (withSignal.length > 0) {
81
+ chosen = withSignal.slice(0, topK);
82
+ }
83
+ else {
84
+ // No lexical or embedding signal at all. Rather than returning models in
85
+ // arbitrary insertion order, prefer the ones that actually matter: most
86
+ // frequently run (dbt run_results) first, then alphabetical for stability.
87
+ chosen = [...ranked]
88
+ .sort((a, b) => {
89
+ const runsA = artifacts.runCounts.get(a.item.uniqueId) ?? 0;
90
+ const runsB = artifacts.runCounts.get(b.item.uniqueId) ?? 0;
91
+ if (runsB !== runsA)
92
+ return runsB - runsA;
93
+ return a.item.name.localeCompare(b.item.name);
94
+ })
95
+ .slice(0, topK);
96
+ }
79
97
  return chosen.map((r) => r.item.name);
80
98
  }
81
99
  //# sourceMappingURL=sql-retrieval.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sql-retrieval.js","sourceRoot":"","sources":["../../src/metadata/sql-retrieval.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql-retrieval.js","sourceRoot":"","sources":["../../src/metadata/sql-retrieval.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-from-prompt.d.ts","sourceRoot":"","sources":["../../src/propose/build-from-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-from-prompt.d.ts","sourceRoot":"","sources":["../../src/propose/build-from-prompt.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ import { matchSemanticMetric, resolveGovernedMetricSql, parseMetricDefinition, }
35
35
  import { deriveBlockFilters } from './generate-sql.js';
36
36
  import { buildSchemaGrounding, renderGroundingForPrompt, resolveRelationsInSql, validateSqlAgainstGrounding, } from '../metadata/sql-grounding.js';
37
37
  import { selectRelevantModels } from '../metadata/sql-retrieval.js';
38
- import { buildSkillsPrompt, loadSkills, selectRelevantSkills } from '../skills/loader.js';
38
+ import { buildSkillsPrompt, expandQuestionWithSkillVocabulary, loadSkills, selectRelevantSkills } from '../skills/loader.js';
39
39
  import { pickProvider } from '../providers/index.js';
40
40
  import { loadDbtArtifacts } from './dbt-artifacts.js';
41
41
  import { blockSlug, upsertProposedDraft } from './write-draft.js';
@@ -133,7 +133,10 @@ export function loadSemanticMetrics(projectRoot) {
133
133
  const db = new Database(dbPath, { readonly: true, fileMustExist: true });
134
134
  try {
135
135
  const rows = db
136
- .prepare("SELECT node_id, name, domain, description, llm_context, tags_json FROM kg_nodes WHERE kind = 'metric' LIMIT 400")
136
+ // The old LIMIT 400 silently excluded governed metrics in enterprise
137
+ // catalogs. Matching must consider every indexed metric; the caller's
138
+ // deterministic scorer decides relevance rather than row order.
139
+ .prepare("SELECT node_id, name, domain, description, llm_context, tags_json FROM kg_nodes WHERE kind = 'metric'")
137
140
  .all();
138
141
  return rows.map((r) => ({
139
142
  nodeId: r.node_id,
@@ -793,7 +796,10 @@ export async function buildFromPrompt(options) {
793
796
  // Skills (spec 16): select the SELECTED skills (not all), inject as context,
794
797
  // and record which applied. Project (pinned) skills always kept.
795
798
  const allSkills = options.skills ?? loadSkills(options.projectRoot).skills;
796
- const selectedSkills = selectRelevantSkills(allSkills, options.prompt, { userId: options.userId ?? null });
799
+ const selectedSkills = selectRelevantSkills(allSkills, options.prompt, {
800
+ userId: options.userId ?? null,
801
+ domains: options.domain ? [options.domain] : [],
802
+ });
797
803
  const skillsPrompt = buildSkillsPrompt(selectedSkills, options.userId ?? null);
798
804
  const appliedSkills = selectedSkills.map((s) => ({ id: s.id, description: s.description }));
799
805
  // Semantic-metric routing (spec 17, part C) for the Build path: if a governed
@@ -801,7 +807,7 @@ export async function buildFromPrompt(options) {
801
807
  // of letting the model invent a formula. Skipped for edit mode (a different intent).
802
808
  const matchedMetric = options.mode === 'edit'
803
809
  ? undefined
804
- : await matchGovernedMetric(options.projectRoot, options.prompt);
810
+ : await matchGovernedMetric(options.projectRoot, expandQuestionWithSkillVocabulary(options.prompt, selectedSkills, options.userId ?? null));
805
811
  if (options.target === 'cell') {
806
812
  return buildCell(options, grounding, provider, skillsPrompt, appliedSkills, matchedMetric);
807
813
  }