@duckcodeailabs/dql-mcp 1.6.5 → 1.6.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAapE,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,oBAAoB,QAkBsD,CAAC;AAExF,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,mBAAwB,GAAG,SAAS,CAuF/E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAoBpE,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,oBAAoB,QAoBsD,CAAC;AAExF,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,mBAAwB,GAAG,SAAS,CAgG/E"}
package/dist/server.js CHANGED
@@ -9,7 +9,7 @@ import { certify, certifyInput } from './tools/certify.js';
9
9
  import { suggestBlock, suggestBlockInput } from './tools/suggest-block.js';
10
10
  import { queryViaMetadata, queryViaMetadataInput } from './tools/query-via-metadata.js';
11
11
  import { listProposals, listProposalsInput } from './tools/list-proposals.js';
12
- import { kgSearch, kgSearchInput, feedbackRecord, feedbackRecordInput } from './tools/kg.js';
12
+ import { feedbackRecord, feedbackRecordInput, inspectMetadataContext, inspectMetadataContextInput, kgSearch, kgSearchInput, } from './tools/kg.js';
13
13
  export const DQL_MCP_INSTRUCTIONS = 'DQL exposes governed analytics under graduated trust:\n' +
14
14
  ' Tier 1 — Use certified artifacts when the user asks for an exact saved block, ' +
15
15
  'direct KPI, or definition. Discover candidates with `kg_search`, `search_blocks`, ' +
@@ -18,9 +18,11 @@ export const DQL_MCP_INSTRUCTIONS = 'DQL exposes governed analytics under gradua
18
18
  'DataLex contract resolution when a DataLex manifest is loaded.\n' +
19
19
  ' Tier 2 — For named customer/user/account questions, custom filters, rankings, ' +
20
20
  'breakdowns, comparisons, drill-throughs, or any different grain, use certified ' +
21
- 'blocks/terms only as context and call `query_via_metadata` with read-only SQL ' +
22
- 'inferred from the manifest, semantic layer, dbt/source metadata, and runtime ' +
23
- 'schema. Surface `uncertified: true` and the draft review path verbatim.\n' +
21
+ 'blocks/terms only as context. Call `inspect_metadata_context` first, then call ' +
22
+ '`query_via_metadata`; omit SQL when you need the route plan/allowed SQL context, ' +
23
+ 'or provide read-only SQL inferred from the manifest, semantic layer, dbt/source ' +
24
+ 'metadata, and runtime schema. Surface `uncertified: true` and the draft review ' +
25
+ 'path verbatim.\n' +
24
26
  ' Tier 3 — If the available metadata does not identify a safe table, metric, ' +
25
27
  'dimension, or grain, refuse and ask for the missing business object or metric.\n' +
26
28
  'Other tools support the loop: `list_proposals` shows repeated Tier-2 drafts, ' +
@@ -39,7 +41,7 @@ export function createDQLMCPServer(options = {}) {
39
41
  inputSchema: queryViaBlockInput,
40
42
  }, async (args) => wrap(await queryViaBlock(ctx, args)));
41
43
  server.registerTool('query_via_metadata', {
42
- description: 'Tier-2 of graduated trust. Use when no certified block exactly answers the requested grain, including why-changed diagnostics, named customer/user/account filters, rankings, breakdowns, comparisons, anomalies, and drill-throughs. Provide one read-only SELECT/WITH query inferred from DQL metadata, semantic/dbt/source context, and runtime schema. The runtime executes a bounded preview, returns `uncertified: true` plus trustStatus/evidence, and saves a draft block under blocks/_drafts/. Surface the `uncertified` flag and review path verbatim.',
44
+ description: 'Tier-2 of graduated trust. Use when no certified block exactly answers the requested grain, including why-changed diagnostics, named customer/user/account filters, rankings, breakdowns, comparisons, anomalies, and drill-throughs. Call inspect_metadata_context first; pass its contextPackId when available. If proposedSql is omitted, this returns the catalog route plan, allowed SQL context, and missing context. If proposedSql is supplied, it must be one read-only SELECT/WITH query using only inspected relations/columns. The runtime executes a bounded preview, returns `uncertified: true` plus trustStatus/evidence, and saves a draft block under blocks/_drafts/. Surface the `uncertified` flag and review path verbatim.',
43
45
  inputSchema: queryViaMetadataInput,
44
46
  }, async (args) => wrap(await queryViaMetadata(ctx, args)));
45
47
  server.registerTool('list_proposals', {
@@ -54,7 +56,11 @@ export function createDQLMCPServer(options = {}) {
54
56
  description: 'Write a curated proposed block to blocks/_drafts/ with a hand-shaped name + structure, plus the governance gate result. Use when proposing a SHARED building block on top of multiple Tier-2 proposals. For one-shot ad-hoc Tier-2 captures, use `query_via_metadata` instead — it auto-saves the draft.',
55
57
  inputSchema: suggestBlockInput,
56
58
  }, async (args) => wrap(await suggestBlock(ctx, args)));
57
- server.registerTool('kg_search', { description: 'Search the agent knowledge graph (FTS5) over terms, business views, blocks, metrics, dimensions, dashboards, apps, notebooks, and dbt/source metadata.', inputSchema: kgSearchInput }, async (args) => wrap(kgSearch(ctx, args)));
59
+ server.registerTool('kg_search', { description: 'Search the agent knowledge graph (FTS5) over terms, business views, blocks, metrics, dimensions, dashboards, apps, notebooks, and dbt/source metadata.', inputSchema: kgSearchInput }, async (args) => wrap(await kgSearch(ctx, args)));
60
+ server.registerTool('inspect_metadata_context', {
61
+ description: 'Build the local SQLite metadata context pack for a question. Use before Tier-2 SQL generation to inspect certified blocks, semantic metrics, DQL terms/views, dbt/warehouse objects, lineage edges, diagnostics, selected evidence, rejected candidates, and trust labels.',
62
+ inputSchema: inspectMetadataContextInput,
63
+ }, async (args) => wrap(await inspectMetadataContext(ctx, args)));
58
64
  server.registerTool('feedback_record', { description: 'Record thumbs-up/down feedback on an answer; feeds self-learning + promotion suggestions.', inputSchema: feedbackRecordInput }, async (args) => wrap(feedbackRecord(ctx, args)));
59
65
  return server;
60
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ export declare function kgSearch(ctx: DQLContext, args: {
22
22
  kinds?: string[];
23
23
  domain?: string;
24
24
  limit?: number;
25
- }): {
25
+ }): Promise<{
26
26
  hits: never[];
27
27
  hint: string;
28
28
  } | {
@@ -45,7 +45,32 @@ export declare function kgSearch(ctx: DQLContext, args: {
45
45
  sourcePath: string | undefined;
46
46
  }[];
47
47
  hint?: undefined;
48
+ }>;
49
+ export declare const inspectMetadataContextInput: {
50
+ question: z.ZodString;
51
+ focusObjectKey: z.ZodOptional<z.ZodString>;
52
+ objectTypes: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
53
+ limit: z.ZodOptional<z.ZodNumber>;
48
54
  };
55
+ export declare function inspectMetadataContext(ctx: DQLContext, args: {
56
+ question: string;
57
+ focusObjectKey?: string;
58
+ objectTypes?: string[];
59
+ limit?: number;
60
+ }): Promise<{
61
+ catalog: {
62
+ path: string;
63
+ refreshed: boolean;
64
+ objectCount: number;
65
+ edgeCount: number;
66
+ diagnostics: {
67
+ kind: string;
68
+ severity: "error";
69
+ message: string;
70
+ }[] | import("@duckcodeailabs/dql-agent").MetadataDiagnostic[];
71
+ };
72
+ contextPack: import("@duckcodeailabs/dql-agent").LocalContextPack;
73
+ }>;
49
74
  export declare const feedbackRecordInput: {
50
75
  user: z.ZodString;
51
76
  question: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"kg.d.ts","sourceRoot":"","sources":["../../src/tools/kg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAA0B,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEpF,eAAO,MAAM,aAAa;;;;;CAczB,CAAC;AAEF,wBAAgB,QAAQ,CACtB,GAAG,EAAE,UAAU,EACf,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;EAwC3E;AAED,eAAO,MAAM,mBAAmB;;;;;;;CAO/B,CAAC;AAEF,wBAAgB,cAAc,CAC5B,GAAG,EAAE,UAAU,EACf,IAAI,EAAE;IACJ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,WAAW,GAAG,aAAa,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;;;;;;EAyBF"}
1
+ {"version":3,"file":"kg.d.ts","sourceRoot":"","sources":["../../src/tools/kg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAML,KAAK,UAAU,EAChB,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,aAAa;;;;;CAczB,CAAC;AAEF,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,UAAU,EACf,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;GA2C3E;AAED,eAAO,MAAM,2BAA2B;;;;;CAKvC,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,UAAU,EACf,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;;;;;;;;;;;;;GA+BF;AAED,eAAO,MAAM,mBAAmB;;;;;;;CAO/B,CAAC;AAEF,wBAAgB,cAAc,CAC5B,GAAG,EAAE,UAAU,EACf,IAAI,EAAE;IACJ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,WAAW,GAAG,aAAa,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;;;;;;EAyBF"}
package/dist/tools/kg.js CHANGED
@@ -10,7 +10,7 @@
10
10
  */
11
11
  import { z } from 'zod';
12
12
  import { existsSync } from 'node:fs';
13
- import { KGStore, defaultKgPath } from '@duckcodeailabs/dql-agent';
13
+ import { KGStore, buildLocalContextPack, defaultKgPath, ensureMetadataCatalogFresh, reindexProject, } from '@duckcodeailabs/dql-agent';
14
14
  export const kgSearchInput = {
15
15
  query: z.string().describe('Natural-language or keyword query.'),
16
16
  kinds: z
@@ -24,12 +24,15 @@ export const kgSearchInput = {
24
24
  domain: z.string().optional().describe('Filter to a single business domain.'),
25
25
  limit: z.number().int().min(1).max(50).optional().describe('Max hits (default 10).'),
26
26
  };
27
- export function kgSearch(ctx, args) {
27
+ export async function kgSearch(ctx, args) {
28
28
  const path = defaultKgPath(ctx.projectRoot);
29
- if (!existsSync(path)) {
29
+ const refreshError = await reindexProject(ctx.projectRoot, { kgPath: path })
30
+ .then(() => null)
31
+ .catch((err) => err instanceof Error ? err.message : String(err));
32
+ if (refreshError) {
30
33
  return {
31
34
  hits: [],
32
- hint: `KG not built. Run \`dql app reindex\` to build .dql/cache/agent-kg.sqlite.`,
35
+ hint: `KG refresh failed: ${refreshError}`,
33
36
  };
34
37
  }
35
38
  const kg = new KGStore(path);
@@ -65,6 +68,43 @@ export function kgSearch(ctx, args) {
65
68
  kg.close();
66
69
  }
67
70
  }
71
+ export const inspectMetadataContextInput = {
72
+ question: z.string().describe('User question to ground in the local SQLite metadata catalog.'),
73
+ focusObjectKey: z.string().optional().describe('Optional object key, such as dql:block:Revenue or semantic:metric:revenue.'),
74
+ objectTypes: z.array(z.string()).optional().describe('Optional metadata object type filter.'),
75
+ limit: z.number().int().min(1).max(160).optional().describe('Maximum selected objects in the context pack.'),
76
+ };
77
+ export async function inspectMetadataContext(ctx, args) {
78
+ const refresh = await ensureMetadataCatalogFresh(ctx.projectRoot)
79
+ .catch((err) => ({
80
+ path: '',
81
+ refreshed: false,
82
+ objectCount: 0,
83
+ edgeCount: 0,
84
+ diagnostics: [{
85
+ kind: 'metadata',
86
+ severity: 'error',
87
+ message: err instanceof Error ? err.message : String(err),
88
+ }],
89
+ fingerprint: '',
90
+ }));
91
+ const contextPack = await buildLocalContextPack(ctx.projectRoot, {
92
+ question: args.question,
93
+ focusObjectKey: args.focusObjectKey,
94
+ objectTypes: args.objectTypes,
95
+ limit: args.limit,
96
+ });
97
+ return {
98
+ catalog: {
99
+ path: refresh.path || '.dql/cache/metadata.sqlite',
100
+ refreshed: refresh.refreshed,
101
+ objectCount: refresh.objectCount,
102
+ edgeCount: refresh.edgeCount,
103
+ diagnostics: refresh.diagnostics,
104
+ },
105
+ contextPack,
106
+ };
107
+ }
68
108
  export const feedbackRecordInput = {
69
109
  user: z.string().describe('User who submitted the feedback.'),
70
110
  question: z.string().describe('Original question.'),
@@ -1 +1 @@
1
- {"version":3,"file":"kg.js","sourceRoot":"","sources":["../../src/tools/kg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kg.js","sourceRoot":"","sources":["../../src/tools/kg.ts"],"names":[],"mappings":"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"}
@@ -19,8 +19,8 @@ export interface ProposalSummary {
19
19
  }
20
20
  /**
21
21
  * The OSS-side review queue for the Tier-2 promotion loop. Reads
22
- * `blocks/_drafts/*.dql` from the project, parses the `_proposed { ... }`
23
- * provenance block out of each, and returns a list ranked by `askedTimes`
22
+ * `blocks/_drafts/*.dql` from the project, parses Tier-2 proposal metadata
23
+ * fields out of each, and returns a list ranked by `askedTimes`
24
24
  * descending — questions that get asked repeatedly are the strongest
25
25
  * candidates for certification.
26
26
  *
@@ -15,8 +15,8 @@ export const listProposalsInput = {
15
15
  };
16
16
  /**
17
17
  * The OSS-side review queue for the Tier-2 promotion loop. Reads
18
- * `blocks/_drafts/*.dql` from the project, parses the `_proposed { ... }`
19
- * provenance block out of each, and returns a list ranked by `askedTimes`
18
+ * `blocks/_drafts/*.dql` from the project, parses Tier-2 proposal metadata
19
+ * fields out of each, and returns a list ranked by `askedTimes`
20
20
  * descending — questions that get asked repeatedly are the strongest
21
21
  * candidates for certification.
22
22
  *
@@ -1,10 +1,34 @@
1
1
  import { z } from 'zod';
2
2
  import type { DQLContext } from '../context.js';
3
+ import { type LocalContextPack } from '@duckcodeailabs/dql-agent';
3
4
  export declare const queryViaMetadataInput: {
4
5
  question: z.ZodString;
5
- proposedSql: z.ZodString;
6
+ proposedSql: z.ZodOptional<z.ZodString>;
7
+ contextPackId: z.ZodOptional<z.ZodString>;
6
8
  intent: z.ZodOptional<z.ZodEnum<["diagnose_change", "driver_breakdown", "segment_compare", "entity_drilldown", "anomaly_investigation", "trust_gap_review"]>>;
7
9
  upstreamRefs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
10
+ followUp: z.ZodOptional<z.ZodObject<{
11
+ kind: z.ZodEnum<["generic", "drilldown"]>;
12
+ sourceBlockName: z.ZodOptional<z.ZodString>;
13
+ sourceQuestion: z.ZodOptional<z.ZodString>;
14
+ sourceAnswer: z.ZodOptional<z.ZodString>;
15
+ filters: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
16
+ dimensions: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
17
+ }, "strip", z.ZodTypeAny, {
18
+ kind: "generic" | "drilldown";
19
+ sourceBlockName?: string | undefined;
20
+ sourceQuestion?: string | undefined;
21
+ sourceAnswer?: string | undefined;
22
+ filters?: string[] | undefined;
23
+ dimensions?: string[] | undefined;
24
+ }, {
25
+ kind: "generic" | "drilldown";
26
+ sourceBlockName?: string | undefined;
27
+ sourceQuestion?: string | undefined;
28
+ sourceAnswer?: string | undefined;
29
+ filters?: string[] | undefined;
30
+ dimensions?: string[] | undefined;
31
+ }>>;
8
32
  proposedDomain: z.ZodOptional<z.ZodString>;
9
33
  proposedEntity: z.ZodOptional<z.ZodString>;
10
34
  saveDraft: z.ZodOptional<z.ZodBoolean>;
@@ -29,9 +53,11 @@ export declare const queryViaMetadataInput: {
29
53
  */
30
54
  export declare function queryViaMetadata(ctx: DQLContext, args: {
31
55
  question: string;
32
- proposedSql: string;
56
+ proposedSql?: string;
57
+ contextPackId?: string;
33
58
  intent?: MetadataResearchIntent;
34
59
  upstreamRefs?: string[];
60
+ followUp?: MetadataFollowUpContext;
35
61
  proposedDomain?: string;
36
62
  proposedEntity?: string;
37
63
  saveDraft?: boolean;
@@ -42,6 +68,68 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
42
68
  uncertified: boolean;
43
69
  intent: MetadataResearchIntent;
44
70
  reviewStatus: string;
71
+ planningOnly: boolean;
72
+ contextPack: LocalContextPack | undefined;
73
+ routeDecision: import("@duckcodeailabs/dql-agent").MetadataRouteDecision | undefined;
74
+ allowedSqlContext: import("@duckcodeailabs/dql-agent").MetadataAllowedSqlContext | undefined;
75
+ missingContext: import("@duckcodeailabs/dql-agent").MetadataMissingContext[];
76
+ evidence: {
77
+ planner: {
78
+ mode: string;
79
+ intent: MetadataResearchIntent;
80
+ steps: string[];
81
+ reviewRequired: boolean;
82
+ boundedPreviewLimit: number;
83
+ };
84
+ certifiedContext: {
85
+ upstreamRefs: string[];
86
+ proposedDomain: string | undefined;
87
+ proposedEntity: string | undefined;
88
+ draftBlock: {
89
+ path: string;
90
+ askedTimes: number;
91
+ proposedContractId: string;
92
+ } | undefined;
93
+ sourceCertifiedBlock: string | undefined;
94
+ contextPackId: string | undefined;
95
+ trustLabel: import("@duckcodeailabs/dql-agent").MetadataTrustLabel | undefined;
96
+ selectedEvidence: {
97
+ objectKey: string;
98
+ objectType: string;
99
+ name: string;
100
+ reason: string;
101
+ rank: number;
102
+ score: number;
103
+ priorityTier: string;
104
+ }[];
105
+ warnings: string[];
106
+ };
107
+ execution: {
108
+ status: string;
109
+ rowCount: number | undefined;
110
+ durationMs: number | null | undefined;
111
+ error: string | undefined;
112
+ };
113
+ assumptions: string[];
114
+ };
115
+ reason: string;
116
+ errorCode?: undefined;
117
+ trustStatus?: undefined;
118
+ error?: undefined;
119
+ validationWarnings?: undefined;
120
+ proposedSql?: undefined;
121
+ draftBlock?: undefined;
122
+ promote?: undefined;
123
+ question?: undefined;
124
+ rowCount?: undefined;
125
+ durationMs?: undefined;
126
+ columns?: undefined;
127
+ rows?: undefined;
128
+ } | {
129
+ uncertified: boolean;
130
+ intent: MetadataResearchIntent;
131
+ reviewStatus: string;
132
+ errorCode: import("@duckcodeailabs/dql-agent").SqlContextValidationCode;
45
133
  trustStatus: {
46
134
  label: string;
47
135
  uncertified: boolean;
@@ -69,6 +157,19 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
69
157
  askedTimes: number;
70
158
  proposedContractId: string;
71
159
  } | undefined;
160
+ sourceCertifiedBlock: string | undefined;
161
+ contextPackId: string | undefined;
162
+ trustLabel: import("@duckcodeailabs/dql-agent").MetadataTrustLabel | undefined;
163
+ selectedEvidence: {
164
+ objectKey: string;
165
+ objectType: string;
166
+ name: string;
167
+ reason: string;
168
+ rank: number;
169
+ score: number;
170
+ priorityTier: string;
171
+ }[];
172
+ warnings: string[];
72
173
  };
73
174
  execution: {
74
175
  status: string;
@@ -78,9 +179,15 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
78
179
  };
79
180
  assumptions: string[];
80
181
  };
182
+ contextPack: LocalContextPack | undefined;
81
183
  error: string;
184
+ validationWarnings: string[];
82
185
  proposedSql: string;
83
186
  draftBlock: undefined;
187
+ planningOnly?: undefined;
188
+ routeDecision?: undefined;
189
+ allowedSqlContext?: undefined;
190
+ missingContext?: undefined;
84
191
  reason?: undefined;
85
192
  promote?: undefined;
86
193
  question?: undefined;
@@ -119,6 +226,19 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
119
226
  askedTimes: number;
120
227
  proposedContractId: string;
121
228
  } | undefined;
229
+ sourceCertifiedBlock: string | undefined;
230
+ contextPackId: string | undefined;
231
+ trustLabel: import("@duckcodeailabs/dql-agent").MetadataTrustLabel | undefined;
232
+ selectedEvidence: {
233
+ objectKey: string;
234
+ objectType: string;
235
+ name: string;
236
+ reason: string;
237
+ rank: number;
238
+ score: number;
239
+ priorityTier: string;
240
+ }[];
241
+ warnings: string[];
122
242
  };
123
243
  execution: {
124
244
  status: string;
@@ -128,6 +248,7 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
128
248
  };
129
249
  assumptions: string[];
130
250
  };
251
+ contextPack: LocalContextPack | undefined;
131
252
  reason: string;
132
253
  proposedSql: string;
133
254
  draftBlock: {
@@ -135,7 +256,13 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
135
256
  askedTimes: number;
136
257
  proposedContractId: string;
137
258
  } | undefined;
259
+ validationWarnings: string[];
138
260
  promote: string | undefined;
261
+ planningOnly?: undefined;
262
+ routeDecision?: undefined;
263
+ allowedSqlContext?: undefined;
264
+ missingContext?: undefined;
265
+ errorCode?: undefined;
139
266
  error?: undefined;
140
267
  question?: undefined;
141
268
  rowCount?: undefined;
@@ -172,6 +299,19 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
172
299
  askedTimes: number;
173
300
  proposedContractId: string;
174
301
  } | undefined;
302
+ sourceCertifiedBlock: string | undefined;
303
+ contextPackId: string | undefined;
304
+ trustLabel: import("@duckcodeailabs/dql-agent").MetadataTrustLabel | undefined;
305
+ selectedEvidence: {
306
+ objectKey: string;
307
+ objectType: string;
308
+ name: string;
309
+ reason: string;
310
+ rank: number;
311
+ score: number;
312
+ priorityTier: string;
313
+ }[];
314
+ warnings: string[];
175
315
  };
176
316
  execution: {
177
317
  status: string;
@@ -181,15 +321,22 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
181
321
  };
182
322
  assumptions: string[];
183
323
  };
324
+ contextPack: LocalContextPack | undefined;
184
325
  error: string;
185
326
  draftBlock: {
186
327
  path: string;
187
328
  askedTimes: number;
188
329
  proposedContractId: string;
189
330
  } | undefined;
331
+ validationWarnings: string[];
190
332
  reviewStatus?: undefined;
191
- proposedSql?: undefined;
333
+ planningOnly?: undefined;
334
+ routeDecision?: undefined;
335
+ allowedSqlContext?: undefined;
336
+ missingContext?: undefined;
192
337
  reason?: undefined;
338
+ errorCode?: undefined;
339
+ proposedSql?: undefined;
193
340
  promote?: undefined;
194
341
  question?: undefined;
195
342
  rowCount?: undefined;
@@ -227,6 +374,19 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
227
374
  askedTimes: number;
228
375
  proposedContractId: string;
229
376
  } | undefined;
377
+ sourceCertifiedBlock: string | undefined;
378
+ contextPackId: string | undefined;
379
+ trustLabel: import("@duckcodeailabs/dql-agent").MetadataTrustLabel | undefined;
380
+ selectedEvidence: {
381
+ objectKey: string;
382
+ objectType: string;
383
+ name: string;
384
+ reason: string;
385
+ rank: number;
386
+ score: number;
387
+ priorityTier: string;
388
+ }[];
389
+ warnings: string[];
230
390
  };
231
391
  execution: {
232
392
  status: string;
@@ -236,6 +396,7 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
236
396
  };
237
397
  assumptions: string[];
238
398
  };
399
+ contextPack: LocalContextPack | undefined;
239
400
  reason: string;
240
401
  question: string;
241
402
  rowCount: number;
@@ -251,10 +412,24 @@ export declare function queryViaMetadata(ctx: DQLContext, args: {
251
412
  askedTimes: number;
252
413
  proposedContractId: string;
253
414
  } | undefined;
415
+ validationWarnings: string[];
254
416
  promote: string | undefined;
417
+ planningOnly?: undefined;
418
+ routeDecision?: undefined;
419
+ allowedSqlContext?: undefined;
420
+ missingContext?: undefined;
421
+ errorCode?: undefined;
255
422
  error?: undefined;
256
423
  }>;
257
424
  type MetadataResearchIntent = 'diagnose_change' | 'driver_breakdown' | 'segment_compare' | 'entity_drilldown' | 'anomaly_investigation' | 'trust_gap_review';
425
+ type MetadataFollowUpContext = {
426
+ kind: 'generic' | 'drilldown';
427
+ sourceBlockName?: string;
428
+ sourceQuestion?: string;
429
+ sourceAnswer?: string;
430
+ filters?: string[];
431
+ dimensions?: string[];
432
+ };
258
433
  /**
259
434
  * Derive a deterministic snake_case slug from a free-form question. Same
260
435
  * question -> same slug, so re-asking the question increments `asked_times`
@@ -1 +1 @@
1
- {"version":3,"file":"query-via-metadata.d.ts","sourceRoot":"","sources":["../../src/tools/query-via-metadata.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,eAAO,MAAM,qBAAqB;;;;;;;;;;;CAiEjC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,UAAU,EACf,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAqMsB,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAAtD,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;cAlLrD,MAAM;oBAAc,MAAM;4BAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAkLvD,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;cAlLrD,MAAM;oBAAc,MAAM;4BAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAkLvD,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;;;cA1GjD,MAAM;eAAS,MAAM;;;;;cAxEzB,MAAM;oBAAc,MAAM;4BAAsB,MAAM;;;;GAiH/E;AAID,KAAK,sBAAsB,GACvB,iBAAiB,GACjB,kBAAkB,GAClB,iBAAiB,GACjB,kBAAkB,GAClB,uBAAuB,GACvB,kBAAkB,CAAC;AA8GvB;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQnD"}
1
+ {"version":3,"file":"query-via-metadata.d.ts","sourceRoot":"","sources":["../../src/tools/query-via-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAML,KAAK,gBAAgB,EACtB,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiFjC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,UAAU,EACf,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;;;;;;;;;sBAmSsB,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAAtD,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAAtD,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA5NrD,MAAM;oBAAc,MAAM;4BAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA4NvD,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;cA5NrD,MAAM;oBAAc,MAAM;4BAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA4NvD,MAAM;4BAAc,MAAM;oCAAsB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cApIjD,MAAM;eAAS,MAAM;;;;;cAxFzB,MAAM;oBAAc,MAAM;4BAAsB,MAAM;;;;;;;;;;GA+I/E;AAID,KAAK,sBAAsB,GACvB,iBAAiB,GACjB,kBAAkB,GAClB,iBAAiB,GACjB,kBAAkB,GAClB,uBAAuB,GACvB,kBAAkB,CAAC;AAEvB,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,SAAS,GAAG,WAAW,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAqLF;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQnD"}
@@ -1,6 +1,5 @@
1
- import { mkdirSync, writeFileSync, existsSync, readFileSync } from 'node:fs';
2
- import { dirname, join } from 'node:path';
3
1
  import { z } from 'zod';
2
+ import { buildLocalContextPack, openMetadataCatalog, recordQueryRun, upsertGeneratedDraft, validateSqlAgainstLocalContext, } from '@duckcodeailabs/dql-agent';
4
3
  export const queryViaMetadataInput = {
5
4
  question: z
6
5
  .string()
@@ -9,7 +8,12 @@ export const queryViaMetadataInput = {
9
8
  proposedSql: z
10
9
  .string()
11
10
  .min(1)
12
- .describe('SQL the agent inferred from the available manifest + dbt schema. Will be executed through the local DQL runtime against the certified data plane.'),
11
+ .optional()
12
+ .describe('SQL the agent inferred from the inspected metadata context. Omit to return the catalog route plan and allowed SQL context before writing SQL.'),
13
+ contextPackId: z
14
+ .string()
15
+ .optional()
16
+ .describe('Context-pack id returned by inspect_metadata_context. When supplied, query_via_metadata validates SQL against that exact catalog context.'),
13
17
  intent: z
14
18
  .enum([
15
19
  'diagnose_change',
@@ -25,6 +29,17 @@ export const queryViaMetadataInput = {
25
29
  .array(z.string())
26
30
  .optional()
27
31
  .describe('Tables / blocks the agent thinks are involved.'),
32
+ followUp: z
33
+ .object({
34
+ kind: z.enum(['generic', 'drilldown']),
35
+ sourceBlockName: z.string().optional(),
36
+ sourceQuestion: z.string().optional(),
37
+ sourceAnswer: z.string().optional(),
38
+ filters: z.array(z.string()).optional(),
39
+ dimensions: z.array(z.string()).optional(),
40
+ })
41
+ .optional()
42
+ .describe('Structured prior-answer context for follow-up drilldowns. Generated SQL remains uncertified.'),
28
43
  proposedDomain: z
29
44
  .string()
30
45
  .optional()
@@ -72,29 +87,89 @@ export async function queryViaMetadata(ctx, args) {
72
87
  const slug = deriveSlug(args.question);
73
88
  const proposedContractId = suggestContractId(slug, args.proposedDomain, args.proposedEntity);
74
89
  const intent = normalizeMetadataResearchIntent(args.intent, args.question);
75
- const safety = buildMetadataPreviewSql(args.proposedSql, args.limit ?? 200);
90
+ const contextPack = await buildTier2ContextPack(ctx.projectRoot, args.question, args.contextPackId, args.followUp);
91
+ const hasInspectedContext = hasInspectedMetadataContext(contextPack);
92
+ const contextNeedsClarification = hasInspectedContext && contextPack?.routeDecision.route === 'clarify';
93
+ if (contextNeedsClarification || !args.proposedSql?.trim()) {
94
+ recordTier2QueryRun(ctx.projectRoot, {
95
+ slug,
96
+ question: args.question,
97
+ status: contextNeedsClarification ? 'clarify' : 'planning_only',
98
+ errorCode: contextNeedsClarification ? 'missing_context' : undefined,
99
+ contextPack,
100
+ });
101
+ return {
102
+ uncertified: true,
103
+ intent,
104
+ reviewStatus: 'none',
105
+ planningOnly: true,
106
+ contextPack,
107
+ routeDecision: contextPack?.routeDecision,
108
+ allowedSqlContext: contextPack?.allowedSqlContext,
109
+ missingContext: contextPack?.missingContext ?? [],
110
+ evidence: metadataEvidence(intent, args, { status: 'planning_only' }, contextPack),
111
+ reason: contextNeedsClarification
112
+ ? contextPack.routeDecision.reason
113
+ : 'No SQL was supplied. Inspect the context pack and provide one read-only SELECT/WITH query that uses only allowed relations and columns.',
114
+ };
115
+ }
116
+ const proposedSql = args.proposedSql.trim();
117
+ const contextValidation = validateSqlAgainstLocalContext(proposedSql, hasInspectedContext ? contextPack : undefined, {
118
+ question: args.question,
119
+ intent,
120
+ filterValues: args.followUp?.filters,
121
+ });
122
+ if (!contextValidation.ok) {
123
+ recordTier2QueryRun(ctx.projectRoot, { slug, question: args.question, status: 'rejected', errorCode: contextValidation.code, contextPack });
124
+ return {
125
+ uncertified: true,
126
+ intent,
127
+ reviewStatus: 'rejected',
128
+ errorCode: contextValidation.code,
129
+ trustStatus: metadataTrustStatus('rejected', intent, undefined, contextValidation.error, contextValidation.warnings),
130
+ evidence: metadataEvidence(intent, args, { status: 'rejected', error: contextValidation.error, validationWarnings: contextValidation.warnings }, contextPack),
131
+ contextPack,
132
+ error: contextValidation.error,
133
+ validationWarnings: contextValidation.warnings,
134
+ proposedSql,
135
+ draftBlock: undefined,
136
+ };
137
+ }
138
+ const safety = buildMetadataPreviewSql(proposedSql, args.limit ?? 200);
76
139
  if (!safety.ok) {
140
+ recordTier2QueryRun(ctx.projectRoot, { slug, question: args.question, status: 'rejected', errorCode: 'unsafe_sql', contextPack });
77
141
  return {
78
142
  uncertified: true,
79
143
  intent,
80
144
  reviewStatus: 'rejected',
81
- trustStatus: metadataTrustStatus('rejected', intent, undefined, safety.error),
82
- evidence: metadataEvidence(intent, args, { status: 'rejected', error: safety.error }),
145
+ errorCode: safety.code,
146
+ trustStatus: metadataTrustStatus('rejected', intent, undefined, safety.error, contextValidation.warnings),
147
+ evidence: metadataEvidence(intent, args, { status: 'rejected', error: safety.error, validationWarnings: contextValidation.warnings }, contextPack),
148
+ contextPack,
83
149
  error: safety.error,
84
- proposedSql: args.proposedSql,
150
+ validationWarnings: contextValidation.warnings,
151
+ proposedSql,
85
152
  draftBlock: undefined,
86
153
  };
87
154
  }
88
155
  let draftBlock;
89
156
  if (args.saveDraft !== false) {
90
- draftBlock = upsertDraft(ctx.projectRoot, {
157
+ draftBlock = upsertGeneratedDraft(ctx.projectRoot, {
91
158
  slug,
92
159
  question: args.question,
93
- proposedSql: args.proposedSql,
160
+ proposedSql,
94
161
  proposedContractId,
95
162
  proposedDomain: args.proposedDomain,
96
163
  proposedEntity: args.proposedEntity,
97
164
  upstreamRefs: args.upstreamRefs ?? [],
165
+ sourceQuestion: args.followUp?.sourceQuestion,
166
+ sourceBlock: args.followUp?.sourceBlockName,
167
+ followupKind: args.followUp?.kind,
168
+ requestedFilters: args.followUp?.filters,
169
+ requestedDimensions: args.followUp?.dimensions,
170
+ contextPackId: contextPack?.id,
171
+ routeIntent: contextPack?.routeDecision.intent ?? intent,
172
+ validationWarnings: contextValidation.warnings,
98
173
  });
99
174
  }
100
175
  if (args.dryRun) {
@@ -102,11 +177,13 @@ export async function queryViaMetadata(ctx, args) {
102
177
  uncertified: true,
103
178
  intent,
104
179
  reviewStatus: 'draft_ready',
105
- trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock),
106
- evidence: metadataEvidence(intent, args, { status: 'dry_run', draftBlock }),
180
+ trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, undefined, contextValidation.warnings),
181
+ evidence: metadataEvidence(intent, args, { status: 'dry_run', draftBlock, validationWarnings: contextValidation.warnings }, contextPack),
182
+ contextPack,
107
183
  reason: 'dryRun=true; SQL not executed. Returned proposal only.',
108
- proposedSql: args.proposedSql,
184
+ proposedSql,
109
185
  draftBlock,
186
+ validationWarnings: contextValidation.warnings,
110
187
  promote: draftBlock
111
188
  ? `if you want this question certified, run: dql certify --from-draft ${draftBlock.path}`
112
189
  : undefined,
@@ -122,7 +199,7 @@ export async function queryViaMetadata(ctx, args) {
122
199
  body: JSON.stringify({
123
200
  cell: {
124
201
  id: `mcp-tier2-${slug}`,
125
- type: 'dql',
202
+ type: 'sql',
126
203
  source: wrapSqlAsDqlCell(safety.sql),
127
204
  title: args.question,
128
205
  },
@@ -131,57 +208,77 @@ export async function queryViaMetadata(ctx, args) {
131
208
  }
132
209
  catch (err) {
133
210
  const error = `Could not reach DQL runtime at ${base}. Start it with \`dql serve\` in ${ctx.projectRoot}. (${err instanceof Error ? err.message : String(err)})`;
211
+ recordTier2QueryRun(ctx.projectRoot, { slug, question: args.question, status: 'runtime_unavailable', errorCode: 'runtime_unavailable', contextPack });
134
212
  return {
135
213
  uncertified: true,
136
214
  intent,
137
- trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, error),
138
- evidence: metadataEvidence(intent, args, { status: 'runtime_unavailable', draftBlock, error }),
215
+ trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, error, contextValidation.warnings),
216
+ evidence: metadataEvidence(intent, args, { status: 'runtime_unavailable', draftBlock, error, validationWarnings: contextValidation.warnings }, contextPack),
217
+ contextPack,
139
218
  error,
140
219
  draftBlock,
220
+ validationWarnings: contextValidation.warnings,
141
221
  };
142
222
  }
143
223
  if (!response.ok) {
144
224
  const error = `Runtime returned ${response.status}: ${await response.text()}`;
225
+ recordTier2QueryRun(ctx.projectRoot, { slug, question: args.question, status: 'runtime_error', errorCode: `http_${response.status}`, contextPack });
145
226
  return {
146
227
  uncertified: true,
147
228
  intent,
148
- trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, error),
149
- evidence: metadataEvidence(intent, args, { status: 'runtime_error', draftBlock, error }),
229
+ trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, error, contextValidation.warnings),
230
+ evidence: metadataEvidence(intent, args, { status: 'runtime_error', draftBlock, error, validationWarnings: contextValidation.warnings }, contextPack),
231
+ contextPack,
150
232
  error,
151
233
  draftBlock,
234
+ validationWarnings: contextValidation.warnings,
152
235
  };
153
236
  }
154
237
  const payload = (await response.json());
155
238
  if (payload.error) {
239
+ recordTier2QueryRun(ctx.projectRoot, { slug, question: args.question, status: 'execution_failed', errorCode: 'execution_failed', contextPack });
156
240
  return {
157
241
  uncertified: true,
158
242
  intent,
159
- trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, payload.error),
160
- evidence: metadataEvidence(intent, args, { status: 'execution_failed', draftBlock, error: payload.error }),
243
+ trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, payload.error, contextValidation.warnings),
244
+ evidence: metadataEvidence(intent, args, { status: 'execution_failed', draftBlock, error: payload.error, validationWarnings: contextValidation.warnings }, contextPack),
245
+ contextPack,
161
246
  error: payload.error,
162
247
  draftBlock,
248
+ validationWarnings: contextValidation.warnings,
163
249
  };
164
250
  }
165
251
  const rows = payload.result?.rows ?? [];
252
+ recordTier2QueryRun(ctx.projectRoot, {
253
+ slug,
254
+ question: args.question,
255
+ status: 'executed',
256
+ rowCount: rows.length,
257
+ durationMs: payload.result?.executionTime ?? undefined,
258
+ contextPack,
259
+ });
166
260
  return {
167
261
  uncertified: true,
168
262
  intent,
169
263
  reviewStatus: 'draft_ready',
170
- trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock),
264
+ trustStatus: metadataTrustStatus('draft_ready', intent, draftBlock, undefined, contextValidation.warnings),
171
265
  evidence: metadataEvidence(intent, args, {
172
266
  status: 'executed',
173
267
  draftBlock,
174
268
  rowCount: rows.length,
175
269
  durationMs: payload.result?.executionTime ?? null,
176
- }),
270
+ validationWarnings: contextValidation.warnings,
271
+ }, contextPack),
272
+ contextPack,
177
273
  reason: 'no certified block matched the question; result derived from manifest + dbt schema',
178
274
  question: args.question,
179
275
  rowCount: rows.length,
180
276
  durationMs: payload.result?.executionTime ?? null,
181
277
  columns: payload.result?.columns ?? [],
182
278
  rows: args.limit ? rows.slice(0, args.limit) : rows,
183
- proposedSql: args.proposedSql,
279
+ proposedSql,
184
280
  draftBlock,
281
+ validationWarnings: contextValidation.warnings,
185
282
  promote: draftBlock
186
283
  ? `if you want this question certified, run: dql certify --from-draft ${draftBlock.path}`
187
284
  : undefined,
@@ -210,7 +307,7 @@ function normalizeMetadataResearchIntent(value, question) {
210
307
  return 'driver_breakdown';
211
308
  return 'driver_breakdown';
212
309
  }
213
- function metadataTrustStatus(reviewStatus, intent, draftBlock, error) {
310
+ function metadataTrustStatus(reviewStatus, intent, draftBlock, error, validationWarnings = []) {
214
311
  return {
215
312
  label: 'AI-generated metadata research',
216
313
  uncertified: true,
@@ -222,11 +319,12 @@ function metadataTrustStatus(reviewStatus, intent, draftBlock, error) {
222
319
  caveats: [
223
320
  'No certified block exactly answered this grain.',
224
321
  'SQL was generated from metadata and must be reviewed before certification.',
322
+ ...validationWarnings,
225
323
  ...(error ? [`Execution caveat: ${error}`] : []),
226
324
  ],
227
325
  };
228
326
  }
229
- function metadataEvidence(intent, args, execution) {
327
+ function metadataEvidence(intent, args, execution, contextPack) {
230
328
  return {
231
329
  planner: {
232
330
  mode: 'metadata_text_to_sql',
@@ -240,6 +338,11 @@ function metadataEvidence(intent, args, execution) {
240
338
  proposedDomain: args.proposedDomain,
241
339
  proposedEntity: args.proposedEntity,
242
340
  draftBlock: execution.draftBlock,
341
+ sourceCertifiedBlock: args.followUp?.sourceBlockName,
342
+ contextPackId: contextPack?.id,
343
+ trustLabel: contextPack?.trustLabel,
344
+ selectedEvidence: contextPack?.retrievalDiagnostics.selectedEvidence.slice(0, 12) ?? [],
345
+ warnings: [...(contextPack?.warnings ?? []), ...(execution.validationWarnings ?? [])],
243
346
  },
244
347
  execution: {
245
348
  status: execution.status,
@@ -257,6 +360,49 @@ function metadataEvidence(intent, args, execution) {
257
360
  ],
258
361
  };
259
362
  }
363
+ async function buildTier2ContextPack(projectRoot, question, contextPackId, followUp) {
364
+ if (contextPackId) {
365
+ const catalog = openMetadataCatalog(projectRoot);
366
+ try {
367
+ const existing = catalog.getContextPack(contextPackId);
368
+ if (existing)
369
+ return existing;
370
+ }
371
+ finally {
372
+ catalog.close();
373
+ }
374
+ }
375
+ return buildLocalContextPack(projectRoot, {
376
+ question,
377
+ mode: 'question',
378
+ followUp,
379
+ }).catch(() => undefined);
380
+ }
381
+ function hasInspectedMetadataContext(contextPack) {
382
+ return Boolean(contextPack && (contextPack.allowedSqlContext.relations.length > 0
383
+ || contextPack.allowedSqlContext.sourceBlockSql.length > 0
384
+ || contextPack.objects.some((object) => object.objectType.startsWith('semantic_'))));
385
+ }
386
+ function recordTier2QueryRun(projectRoot, args) {
387
+ try {
388
+ recordQueryRun(projectRoot, {
389
+ objectKey: `dql:draft:${args.slug}`,
390
+ source: 'ai_draft',
391
+ status: args.status,
392
+ rowCount: args.rowCount,
393
+ durationMs: args.durationMs,
394
+ errorCode: args.errorCode,
395
+ payload: {
396
+ question: args.question,
397
+ contextPackId: args.contextPack?.id,
398
+ trustLabel: args.contextPack?.trustLabel,
399
+ },
400
+ });
401
+ }
402
+ catch {
403
+ // Query-run history is advisory and must not block the answer.
404
+ }
405
+ }
260
406
  function metadataInvestigationSteps(intent) {
261
407
  const common = ['trust check', 'draft review path'];
262
408
  if (intent === 'trust_gap_review')
@@ -334,19 +480,19 @@ const METADATA_PREVIEW_FORBIDDEN_SQL = [
334
480
  function buildMetadataPreviewSql(sql, limit) {
335
481
  const trimmed = sql.trim();
336
482
  if (!trimmed)
337
- return { ok: false, error: 'Tier-2 metadata SQL is empty.' };
483
+ return { ok: false, code: 'unsafe_sql', error: 'Tier-2 metadata SQL is empty.' };
338
484
  const withoutTrailingSemicolon = trimmed.replace(/;\s*$/, '').trim();
339
485
  const scanSql = stripSqlStringsAndComments(withoutTrailingSemicolon).trim();
340
486
  if (!/^(select|with)\b/i.test(scanSql)) {
341
- return { ok: false, error: 'Tier-2 metadata SQL only supports read-only SELECT or WITH queries.' };
487
+ return { ok: false, code: 'unsafe_sql', error: 'Tier-2 metadata SQL only supports read-only SELECT or WITH queries.' };
342
488
  }
343
489
  if (scanSql.includes(';')) {
344
- return { ok: false, error: 'Tier-2 metadata SQL only supports one statement.' };
490
+ return { ok: false, code: 'unsafe_sql', error: 'Tier-2 metadata SQL only supports one statement.' };
345
491
  }
346
492
  const forbiddenPattern = new RegExp(`\\b(${METADATA_PREVIEW_FORBIDDEN_SQL.join('|')})\\b`, 'i');
347
493
  const forbidden = scanSql.match(forbiddenPattern)?.[1];
348
494
  if (forbidden) {
349
- return { ok: false, error: `Tier-2 metadata SQL rejected unsupported statement keyword: ${forbidden.toUpperCase()}.` };
495
+ return { ok: false, code: 'unsafe_sql', error: `Tier-2 metadata SQL rejected unsupported statement keyword: ${forbidden.toUpperCase()}.` };
350
496
  }
351
497
  const boundedLimit = Math.min(Math.max(Math.trunc(limit), 1), 10000);
352
498
  return {
@@ -404,78 +550,4 @@ function stripSqlStringsAndComments(sql) {
404
550
  }
405
551
  return output;
406
552
  }
407
- function upsertDraft(projectRoot, rec) {
408
- const draftDir = join(projectRoot, 'blocks', '_drafts');
409
- const filePath = join(draftDir, `${rec.slug}.dql`);
410
- if (existsSync(filePath)) {
411
- const existing = readFileSync(filePath, 'utf-8');
412
- const m = existing.match(/asked_times\s*=\s*(\d+)/);
413
- const prev = m ? Number.parseInt(m[1], 10) : 1;
414
- const next = Number.isFinite(prev) ? prev + 1 : 2;
415
- const updated = m
416
- ? existing.replace(/asked_times\s*=\s*\d+/, `asked_times = ${next}`)
417
- : existing.replace(/_proposed\s*\{/, `_proposed {\n asked_times = ${next}`);
418
- const stamped = stampLastAsked(updated);
419
- writeFileSync(filePath, stamped);
420
- return {
421
- path: relativeToProject(projectRoot, filePath),
422
- askedTimes: next,
423
- proposedContractId: rec.proposedContractId,
424
- };
425
- }
426
- mkdirSync(dirname(filePath), { recursive: true });
427
- writeFileSync(filePath, renderDraft(rec));
428
- return {
429
- path: relativeToProject(projectRoot, filePath),
430
- askedTimes: 1,
431
- proposedContractId: rec.proposedContractId,
432
- };
433
- }
434
- function relativeToProject(root, abs) {
435
- const rootSlash = root.endsWith('/') ? root : root + '/';
436
- return abs.startsWith(rootSlash) ? abs.slice(rootSlash.length) : abs;
437
- }
438
- function renderDraft(rec) {
439
- const now = new Date().toISOString();
440
- const upstream = rec.upstreamRefs.length > 0
441
- ? `\n upstream_refs = [${rec.upstreamRefs.map((u) => `"${u}"`).join(', ')}]`
442
- : '';
443
- // Single quoted SQL inside triple-double-quotes; avoid breaking on `"""` in user SQL.
444
- const safeSql = rec.proposedSql.replace(/"""/g, '\\"\\"\\"');
445
- return `block "${rec.slug}" {
446
- domain = "${rec.proposedDomain ?? 'misc'}"
447
- type = "custom"
448
- status = "draft"
449
- description = """${rec.question}"""
450
-
451
- # Tier-2 proposal — auto-captured from query_via_metadata. Reviewer
452
- # fills in datalex_contract + owner, then runs:
453
- # dql certify --from-draft blocks/_drafts/${rec.slug}.dql \\
454
- # --domain ${rec.proposedDomain ?? 'misc'} \\
455
- # --contract ${rec.proposedContractId}@1 \\
456
- # --owner you@example.com
457
- datalex_contract = ""
458
-
459
- _proposed {
460
- asked_times = 1
461
- first_asked = "${now}"
462
- last_asked = "${now}"
463
- proposed_contract_id = "${rec.proposedContractId}"
464
- proposed_domain = "${rec.proposedDomain ?? ''}"
465
- proposed_entity = "${rec.proposedEntity ?? ''}"${upstream}
466
- }
467
-
468
- query = """
469
- ${safeSql.split('\n').join('\n ')}
470
- """
471
- }
472
- `;
473
- }
474
- function stampLastAsked(content) {
475
- const now = new Date().toISOString();
476
- if (/last_asked\s*=\s*"[^"]*"/.test(content)) {
477
- return content.replace(/last_asked\s*=\s*"[^"]*"/, `last_asked = "${now}"`);
478
- }
479
- return content;
480
- }
481
553
  //# sourceMappingURL=query-via-metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-via-metadata.js","sourceRoot":"","sources":["../../src/tools/query-via-metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-via-metadata.js","sourceRoot":"","sources":["../../src/tools/query-via-metadata.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duckcodeailabs/dql-mcp",
3
- "version": "1.6.5",
3
+ "version": "1.6.7",
4
4
  "description": "DQL MCP server: expose certified blocks, semantic layer, lineage, and governance to LLM agents via the Model Context Protocol",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -24,10 +24,10 @@
24
24
  "access": "public"
25
25
  },
26
26
  "dependencies": {
27
- "@duckcodeailabs/dql-agent": "^1.6.5",
28
- "@duckcodeailabs/dql-core": "^1.6.5",
29
- "@duckcodeailabs/dql-governance": "^1.6.5",
30
- "@duckcodeailabs/dql-project": "^1.6.5",
27
+ "@duckcodeailabs/dql-agent": "^1.6.7",
28
+ "@duckcodeailabs/dql-core": "^1.6.7",
29
+ "@duckcodeailabs/dql-governance": "^1.6.7",
30
+ "@duckcodeailabs/dql-project": "^1.6.7",
31
31
  "@modelcontextprotocol/sdk": "^1.0.4",
32
32
  "zod": "^3.25.0"
33
33
  },