@duckcodeailabs/dql-cli 1.8.13 → 1.9.1

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.
@@ -39,6 +39,30 @@ export interface MetricFlowCompileResult {
39
39
  stdout: string;
40
40
  stderr: string;
41
41
  }
42
+ export interface MetricFlowDimension {
43
+ /** Entity-qualified group-by name exactly as MetricFlow addresses it. */
44
+ qualifiedName: string;
45
+ /** Queryable grains, when MetricFlow reports them (time dimensions). */
46
+ granularities?: string[];
47
+ }
48
+ interface MetricFlowDimensionListRequest {
49
+ projectRoot: string;
50
+ dbtProjectPath?: string;
51
+ profilesDir?: string;
52
+ metrics: string[];
53
+ }
54
+ /**
55
+ * Ask MetricFlow itself which dimensions a metric set can be grouped by, via
56
+ * `mf list dimensions --metrics X,Y`. This is the EXACT truth for the executing
57
+ * engine — entity-qualified names and real queryable grains — which the native
58
+ * reachable-table heuristic can only approximate. Tolerant to output-format
59
+ * drift across MetricFlow versions: unrecognized lines are ignored and a parse
60
+ * that yields nothing returns [] so the caller falls back to native.
61
+ */
62
+ export declare function listMetricFlowDimensions(request: MetricFlowDimensionListRequest): MetricFlowDimension[];
63
+ /** Parse `mf list dimensions` stdout into qualified names + grains. Kept
64
+ * separate + exported so its format tolerance is unit-testable without mf. */
65
+ export declare function parseMetricFlowDimensionList(stdout: string): MetricFlowDimension[];
42
66
  export type MetricFlowCompileMode = 'legacy-compile' | 'explain';
43
67
  /** dbt-metricflow 0.13 removed `mf query --compile`. Its quiet explain mode
44
68
  * emits only the compiled SQL and does not print the result table. Keep the
@@ -60,4 +84,5 @@ export declare function compileMetricFlowQuery(request: MetricFlowQueryRequest):
60
84
  * entity hops; ties on hop count → null (genuinely ambiguous, do not guess).
61
85
  */
62
86
  export declare function repairMetricFlowGroupBy(request: MetricFlowQueryRequest, output: string): MetricFlowQueryRequest | null;
87
+ export {};
63
88
  //# sourceMappingURL=metricflow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"metricflow.d.ts","sourceRoot":"","sources":["../src/metricflow.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnG,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAIhE;AAeD,wBAAgB,oBAAoB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI,CA2BzF;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,qBAAqB,GAAG,gBAAgB,GAAG,SAAS,CAAC;AAEjE;;qEAEqE;AACrE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAM5E;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAE1F;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAE5F;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,sBAAsB,GAAG,uBAAuB,CAwE/F;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,sBAAsB,EAC/B,MAAM,EAAE,MAAM,GACb,sBAAsB,GAAG,IAAI,CAkD/B"}
1
+ {"version":3,"file":"metricflow.d.ts","sourceRoot":"","sources":["../src/metricflow.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { existsSync } from 'node:fs';
1
+ import { existsSync, statSync } from 'node:fs';
2
2
  import { join, resolve } from 'node:path';
3
3
  import { spawnSync } from 'node:child_process';
4
4
  export class MetricFlowUnavailableError extends Error {
@@ -57,6 +57,80 @@ export function resolveMetricFlowCli(projectRoot) {
57
57
  }
58
58
  return null;
59
59
  }
60
+ // Cache `mf list dimensions` by (binary + metrics-set + semantic_manifest mtime).
61
+ // The UI calls this on every metric toggle and mf cold-start is seconds.
62
+ const metricFlowDimensionCache = new Map();
63
+ /**
64
+ * Ask MetricFlow itself which dimensions a metric set can be grouped by, via
65
+ * `mf list dimensions --metrics X,Y`. This is the EXACT truth for the executing
66
+ * engine — entity-qualified names and real queryable grains — which the native
67
+ * reachable-table heuristic can only approximate. Tolerant to output-format
68
+ * drift across MetricFlow versions: unrecognized lines are ignored and a parse
69
+ * that yields nothing returns [] so the caller falls back to native.
70
+ */
71
+ export function listMetricFlowDimensions(request) {
72
+ const dbtRoot = resolveDbtProjectRoot(request.projectRoot, request.dbtProjectPath);
73
+ const manifestPath = join(dbtRoot, 'target', 'semantic_manifest.json');
74
+ if (!existsSync(manifestPath) || request.metrics.length === 0)
75
+ return [];
76
+ const resolvedCli = resolveMetricFlowCli(request.projectRoot);
77
+ const bin = resolvedCli?.bin ?? process.env.DQL_METRICFLOW_BIN ?? process.env.METRICFLOW_BIN ?? 'mf';
78
+ let mtime = '';
79
+ try {
80
+ mtime = String(statSync(manifestPath).mtimeMs);
81
+ }
82
+ catch { /* ignore */ }
83
+ const cacheKey = `${bin}::${mtime}::${[...request.metrics].sort().join(',')}`;
84
+ const cached = metricFlowDimensionCache.get(cacheKey);
85
+ if (cached)
86
+ return cached;
87
+ const args = ['list', 'dimensions', '--metrics', request.metrics.join(',')];
88
+ const result = spawnSync(bin, args, {
89
+ cwd: dbtRoot,
90
+ encoding: 'utf-8',
91
+ timeout: 30_000,
92
+ env: {
93
+ ...process.env,
94
+ ...(request.profilesDir ? { DBT_PROFILES_DIR: resolve(request.projectRoot, request.profilesDir) } : {}),
95
+ },
96
+ });
97
+ if (result.error || result.status !== 0)
98
+ return [];
99
+ const parsed = parseMetricFlowDimensionList(result.stdout ?? '');
100
+ if (parsed.length > 0)
101
+ metricFlowDimensionCache.set(cacheKey, parsed);
102
+ return parsed;
103
+ }
104
+ /** Parse `mf list dimensions` stdout into qualified names + grains. Kept
105
+ * separate + exported so its format tolerance is unit-testable without mf. */
106
+ export function parseMetricFlowDimensionList(stdout) {
107
+ const dimensions = [];
108
+ let current;
109
+ for (const rawLine of stdout.split('\n')) {
110
+ const line = rawLine.trim();
111
+ if (!line)
112
+ continue;
113
+ // A dimension entry: a bullet or bare token that is a valid identifier,
114
+ // optionally entity-qualified with `__`. Skip headers/counts/emoji lines.
115
+ const nameMatch = /^(?:[•*-]\s*)?([A-Za-z_][A-Za-z0-9_]*(?:__[A-Za-z0-9_]+)*)$/.exec(line);
116
+ if (nameMatch) {
117
+ current = { qualifiedName: nameMatch[1] };
118
+ dimensions.push(current);
119
+ continue;
120
+ }
121
+ // A grain hint attaches to the dimension it follows.
122
+ const grainMatch = /queryable\s+granularities?\s*[:=]?\s*\[?([^\]]+)\]?/i.exec(line);
123
+ if (grainMatch && current) {
124
+ const grains = grainMatch[1]
125
+ .split(/[,\s]+/)
126
+ .map((g) => g.replace(/['"]/g, '').trim().toLowerCase())
127
+ .filter(Boolean);
128
+ if (grains.length > 0)
129
+ current.granularities = grains;
130
+ }
131
+ }
132
+ return dimensions;
133
+ }
60
134
  /** dbt-metricflow 0.13 removed `mf query --compile`. Its quiet explain mode
61
135
  * emits only the compiled SQL and does not print the result table. Keep the
62
136
  * legacy flag for existing user-managed MetricFlow installations. */
@@ -1 +1 @@
1
- {"version":3,"file":"metricflow.js","sourceRoot":"","sources":["../src/metricflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metricflow.js","sourceRoot":"","sources":["../src/metricflow.ts"],"names":[],"mappings":"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"}
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duckcodeailabs/dql-cli",
3
- "version": "1.8.13",
3
+ "version": "1.9.1",
4
4
  "description": "Public CLI for parsing, formatting, testing, and certifying DQL blocks",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -25,15 +25,15 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@anthropic-ai/sdk": "^0.104.2",
28
- "@duckcodeailabs/dql-agent": "^1.8.13",
29
- "@duckcodeailabs/dql-compiler": "^1.8.13",
30
- "@duckcodeailabs/dql-connectors": "^1.8.13",
31
- "@duckcodeailabs/dql-core": "^1.8.13",
32
- "@duckcodeailabs/dql-governance": "^1.8.13",
33
- "@duckcodeailabs/dql-mcp": "^1.8.13",
34
- "@duckcodeailabs/dql-notebook": "^1.8.13",
35
- "@duckcodeailabs/dql-project": "^1.8.13",
36
- "@duckcodeailabs/dql-slack": "^1.8.13",
28
+ "@duckcodeailabs/dql-agent": "^1.9.1",
29
+ "@duckcodeailabs/dql-compiler": "^1.9.1",
30
+ "@duckcodeailabs/dql-connectors": "^1.9.1",
31
+ "@duckcodeailabs/dql-core": "^1.9.1",
32
+ "@duckcodeailabs/dql-governance": "^1.9.1",
33
+ "@duckcodeailabs/dql-mcp": "^1.9.1",
34
+ "@duckcodeailabs/dql-notebook": "^1.9.1",
35
+ "@duckcodeailabs/dql-project": "^1.9.1",
36
+ "@duckcodeailabs/dql-slack": "^1.9.1",
37
37
  "isomorphic-git": "^1.27.0",
38
38
  "js-yaml": "^4.1.0",
39
39
  "node-cron": "^3.0.3",
@@ -49,6 +49,13 @@ export declare function saveTestedSemanticRuntimeSettings(projectRoot: string, i
49
49
  dialect?: string;
50
50
  metricCount?: number;
51
51
  }): RedactedSemanticRuntimeSettings;
52
+ /**
53
+ * Persist ONLY the runtime preference (auto / native / metricflow-cli /
54
+ * dbt-cloud). Unlike saveTestedSemanticRuntimeSettings this requires no dbt
55
+ * Cloud test, so a user can prefer Native or Local MetricFlow without any
56
+ * cloud credentials configured.
57
+ */
58
+ export declare function saveSemanticRuntimePreference(projectRoot: string, preference: SemanticRuntimePreference): RedactedSemanticRuntimeSettings;
52
59
  export declare function semanticRuntimeDraft(projectRoot: string, input: SemanticRuntimeSettingsInput): EffectiveDbtCloudSemanticSettings;
53
60
  export declare function semanticLayerGraphqlEndpoint(host: string): string;
54
61
  export declare function normalizeDbtCloudHost(value: string | undefined): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-runtime-settings.d.ts","sourceRoot":"","sources":["../src/semantic-runtime-settings.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,QAAQ,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAC3F,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtF,MAAM,WAAW,6BAA6B;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,QAAQ,CAAC,EAAE,6BAA6B,CAAC;CAC1C;AAoBD,MAAM,WAAW,iCAAiC;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,wBAAwB,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,+BAA+B;IAC9C,UAAU,EAAE,yBAAyB,CAAC;IACtC,QAAQ,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,OAAO,CAAC;QACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;QACjC,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,wBAAwB,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;CACH;AAMD,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,+BAA+B,CAyB/F;AAED,wBAAgB,oCAAoC,CAAC,WAAW,EAAE,MAAM,GAAG,iCAAiC,CAiC3G;AAED,wBAAgB,iCAAiC,CAC/C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,4BAA4B,EACnC,IAAI,EAAE;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7E,+BAA+B,CAoCjC;AAED,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,4BAA4B,GAClC,iCAAiC,CAoBnC;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAKnF"}
1
+ {"version":3,"file":"semantic-runtime-settings.d.ts","sourceRoot":"","sources":["../src/semantic-runtime-settings.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,QAAQ,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAC3F,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtF,MAAM,WAAW,6BAA6B;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,QAAQ,CAAC,EAAE,6BAA6B,CAAC;CAC1C;AAoBD,MAAM,WAAW,iCAAiC;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,wBAAwB,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,+BAA+B;IAC9C,UAAU,EAAE,yBAAyB,CAAC;IACtC,QAAQ,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,OAAO,CAAC;QACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;QACjC,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,wBAAwB,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;CACH;AAMD,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,+BAA+B,CAyB/F;AAED,wBAAgB,oCAAoC,CAAC,WAAW,EAAE,MAAM,GAAG,iCAAiC,CAiC3G;AAED,wBAAgB,iCAAiC,CAC/C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,4BAA4B,EACnC,IAAI,EAAE;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7E,+BAA+B,CAoCjC;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,yBAAyB,GACpC,+BAA+B,CAKjC;AAED,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,4BAA4B,GAClC,iCAAiC,CAoBnC;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAKnF"}
@@ -105,6 +105,18 @@ export function saveTestedSemanticRuntimeSettings(projectRoot, input, test) {
105
105
  writeStored(projectRoot, stored);
106
106
  return getSemanticRuntimeSettings(projectRoot);
107
107
  }
108
+ /**
109
+ * Persist ONLY the runtime preference (auto / native / metricflow-cli /
110
+ * dbt-cloud). Unlike saveTestedSemanticRuntimeSettings this requires no dbt
111
+ * Cloud test, so a user can prefer Native or Local MetricFlow without any
112
+ * cloud credentials configured.
113
+ */
114
+ export function saveSemanticRuntimePreference(projectRoot, preference) {
115
+ const stored = readStored(projectRoot);
116
+ stored.preference = preference;
117
+ writeStored(projectRoot, stored);
118
+ return getSemanticRuntimeSettings(projectRoot);
119
+ }
108
120
  export function semanticRuntimeDraft(projectRoot, input) {
109
121
  const current = getEffectiveDbtCloudSemanticSettings(projectRoot);
110
122
  const host = normalizeDbtCloudHost(input.dbtCloud?.host === undefined ? current.host : input.dbtCloud.host);
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-runtime-settings.js","sourceRoot":"","sources":["../src/semantic-runtime-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-runtime-settings.js","sourceRoot":"","sources":["../src/semantic-runtime-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAmE1C,MAAM,aAAa,GAAG,CAAC,+BAA+B,EAAE,yBAAyB,CAAU,CAAC;AAC5F,MAAM,oBAAoB,GAAG,CAAC,0BAA0B,EAAE,mCAAmC,CAAU,CAAC;AACxG,MAAM,cAAc,GAAG,CAAC,yBAAyB,EAAE,0BAA0B,CAAU,CAAC;AAExF,MAAM,UAAU,2BAA2B,CAAC,WAAmB;IAC7D,OAAO,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,gCAAgC,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,WAAmB;IAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,oCAAoC,CAAC,WAAW,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACzD,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,MAAM;QACvC,QAAQ,EAAE;YACR,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,aAAa,EAAE,SAAS,CAAC,aAAa;YACtC,eAAe,EAAE,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC;YAChD,mBAAmB,EAAE,UAAU;gBAC7B,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC;gBAC3B,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,KAAK;oBAC1B,CAAC,CAAC,GAAG,mBAAmB,CAAC,cAAc,CAAC,IAAI,yBAAyB,MAAM;oBAC3E,CAAC,CAAC,SAAS;YACf,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,OAAO,EAAE,CAAC,GAAG,aAAa,EAAE,GAAG,oBAAoB,EAAE,GAAG,cAAc,CAAC;SACxE;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC,CAAC,WAAmB;IACtE,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC9B,MAAM,OAAO,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,gBAAgB,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,EAAE,IAAI,IAAI,OAAO,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,gBAAgB,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAC5F,MAAM,YAAY,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAClF,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,IAAI,aAAa,IAAI,YAAY,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,IAAI,IAAI,aAAa,IAAI,YAAY;QACvD,CAAC,CAAC,0BAA0B,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;QACnE,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,IAAI,KAAK,EAAE,iBAAiB,KAAK,WAAW,CAAC,CAAC;IACvF,MAAM,SAAS,GAA6B,CAAC,UAAU;QACrD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,aAAa,IAAI,KAAK,EAAE,SAAS;YACjC,CAAC,CAAC,KAAK,CAAC,SAAS;YACjB,CAAC,CAAC,YAAY,CAAC;IACnB,OAAO;QACL,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;QAC/D,aAAa;QACb,YAAY;QACZ,MAAM,EAAE,KAAK,EAAE,IAAI,IAAI,KAAK,EAAE,aAAa,IAAI,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,IAAI,gBAAgB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;QACvI,UAAU;QACV,WAAW;QACX,SAAS;QACT,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS;QACrD,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS;QAC3D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS;QACnD,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS;KAC5D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,WAAmB,EACnB,KAAmC,EACnC,IAA8E;IAE9E,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,uCAAuC,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC9G,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,EAAE,aAAa,KAAK,SAAS;QAC/D,CAAC,CAAC,QAAQ,EAAE,aAAa;QACzB,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;IACrD,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,EAAE,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE;QAC1G,CAAC,CAAC,QAAQ,EAAE,YAAY;QACxB,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IACvC,MAAM,aAAa,GAAG,IAAI,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC;IAC7D,MAAM,sBAAsB,GAAG,aAAa,IAAI,eAAe,CAAC,oBAAoB,CAAC,CAAC;IACtF,MAAM,cAAc,GAAG,YAAY,IAAI,eAAe,CAAC,cAAc,CAAC,CAAC;IACvE,IAAI,CAAC,aAAa,IAAI,CAAC,sBAAsB,IAAI,CAAC,cAAc,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;IACD,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;QACnD,IAAI,EAAE,aAAa;QACnB,aAAa,EAAE,sBAAsB;QACrC,YAAY,EAAE,cAAc;KAC7B,CAAC,CAAC;IACH,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC;IACpE,MAAM,CAAC,QAAQ,GAAG;QAChB,IAAI;QACJ,aAAa;QACb,YAAY;QACZ,iBAAiB;QACjB,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAClC,WAAW,EAAE,IAAI,CAAC,OAAO;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC;IACF,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,0BAA0B,CAAC,WAAW,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAC3C,WAAmB,EACnB,UAAqC;IAErC,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,0BAA0B,CAAC,WAAW,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,WAAmB,EACnB,KAAmC;IAEnC,MAAM,OAAO,GAAG,oCAAoC,CAAC,WAAW,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5G,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,EAAE,aAAa,KAAK,SAAS;QAC/D,CAAC,CAAC,OAAO,CAAC,aAAa;QACvB,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;IACrD,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,EAAE,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE;QAC1G,CAAC,CAAC,OAAO,CAAC,YAAY;QACtB,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,IAAI,aAAa,IAAI,YAAY,CAAC,CAAC;IAClE,OAAO;QACL,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;QAC/D,aAAa;QACb,YAAY;QACZ,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU;QACV,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE,IAAI,EAAE,IAAK,EAAE,aAAa,EAAE,aAAc,EAAE,YAAY,EAAE,YAAa,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7I,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,IAAY;IACvD,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAE,CAAC;IAChD,OAAO,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,cAAc,CAAC;AACxF,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAyB;IAC7D,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,OAAO,EAAE,CAAC;IAClF,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAoE;IACtG,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,GAAG,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;SAC3G,MAAM,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,WAAmB;IACrC,MAAM,IAAI,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;IACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAkC,CAAC;QACxF,OAAO;YACL,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,2BAA2B,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC1F,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SAC/F,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB,EAAE,QAAuC;IAC/E,MAAM,IAAI,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;IACtD,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvE,IAAI,CAAC;QACH,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,8DAA8D;IAChE,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAc;IACjD,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,gBAAgB,IAAI,KAAK,KAAK,WAAW,CAAC;AACvG,CAAC;AAED,SAAS,eAAe,CAAC,KAAwB;IAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,KAAK,EAAE,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAwB;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACnC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,UAAU,CAAC;IAC1C,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC"}
@@ -65,8 +65,21 @@ export interface SemanticRuntimeCompileContext {
65
65
  }
66
66
  export interface SemanticRuntimeCompileResult extends ComposeQueryResult {
67
67
  engine: SemanticRuntimeAdapterId;
68
- /** The governed request actually compiled after deterministic normalization. */
68
+ /**
69
+ * The governed request as the USER expressed it (bare dimension names), after
70
+ * deterministic normalization. Echoed to callers and back into `.dql` sources
71
+ * — it must never carry MetricFlow-qualified names, or saved blocks would
72
+ * silently rewrite to `entity__dim` spellings.
73
+ */
69
74
  effectiveRequest: SemanticRuntimeQueryRequest;
75
+ /**
76
+ * The request actually SENT to a full runtime (MetricFlow / dbt Cloud), with
77
+ * dimensions/filters/order-by/time qualified to entity-qualified names. Absent
78
+ * for native compilation (which speaks bare names). Diagnostic only.
79
+ */
80
+ runtimeRequest?: SemanticRuntimeQueryRequest;
81
+ /** Non-fatal advisories (e.g. a time grain clamped up to the column's base). */
82
+ warnings?: string[];
70
83
  }
71
84
  export declare class SemanticRuntimeRequiredError extends Error {
72
85
  readonly code = "SEMANTIC_RUNTIME_REQUIRED";
@@ -83,8 +96,47 @@ export declare function getSemanticRuntimeStatus(projectRoot: string, options?:
83
96
  probeConfiguredCloud?: boolean;
84
97
  }): Promise<SemanticRuntimeStatus>;
85
98
  export declare function testSemanticRuntimeDraft(projectRoot: string, input: SemanticRuntimeSettingsInput): Promise<DbtCloudSemanticTestResult>;
99
+ /**
100
+ * Rewrite a semantic request's dimension references (dimensions, filter
101
+ * dimensions, order-by names, time dimension) from bare names to the
102
+ * MetricFlow entity-qualified names the runtime expects, using the
103
+ * compatibility service as the source of truth. Names it can't resolve pass
104
+ * through unchanged (the 1.8.13 group-by suggestion-retry is the safety net).
105
+ * `metric_time` is never rewritten. Also clamps a requested time grain up to
106
+ * the column's base grain, collecting a warning. Pure — returns a new request.
107
+ */
108
+ export declare function qualifyForMetricFlow(request: SemanticRuntimeQueryRequest, semanticLayer: SemanticLayer): {
109
+ request: SemanticRuntimeQueryRequest;
110
+ warnings: string[];
111
+ };
86
112
  export declare function compileSemanticRuntimeQuery(request: SemanticRuntimeQueryRequest, context: SemanticRuntimeCompileContext): Promise<SemanticRuntimeCompileResult | null>;
87
- export declare function listRuntimeCompatibleDimensions(projectRoot: string, semanticLayer: SemanticLayer, metrics: string[]): Promise<Array<ReturnType<SemanticLayer['listDimensions']>[number]>>;
113
+ /** A compatible dimension enriched with its MetricFlow-qualified name and, for
114
+ * time dimensions, real queryable grains. */
115
+ export type RuntimeCompatibleDimension = ReturnType<SemanticLayer['listDimensions']>[number] & {
116
+ qualifiedName?: string;
117
+ granularities?: string[];
118
+ };
119
+ export interface RuntimeCompatibilityResult {
120
+ /** The engine that produced this compatibility answer. */
121
+ engine: SemanticRuntimeAdapterId;
122
+ dimensions: RuntimeCompatibleDimension[];
123
+ incompatible: Array<{
124
+ name: string;
125
+ qualifiedName?: string;
126
+ reason: string;
127
+ }>;
128
+ /** Set when a preferred runtime failed and we fell back (e.g. mf → native). */
129
+ degraded?: string;
130
+ }
131
+ /**
132
+ * The authoritative per-metric dimension-compatibility answer, resolved through
133
+ * the SAME cascade that executes the query, so the builder can never offer a
134
+ * dimension the runtime would reject:
135
+ * dbt Cloud (already qualified + real grains) → `mf list dimensions` → native.
136
+ * mf failures fall through to native with a `degraded` note (never throw).
137
+ */
138
+ export declare function describeRuntimeCompatibility(projectRoot: string, semanticLayer: SemanticLayer, metrics: string[], projectConfig?: SemanticRuntimeProjectConfig): Promise<RuntimeCompatibilityResult>;
139
+ export declare function listRuntimeCompatibleDimensions(projectRoot: string, semanticLayer: SemanticLayer, metrics: string[], projectConfig?: SemanticRuntimeProjectConfig): Promise<Array<ReturnType<SemanticLayer['listDimensions']>[number]>>;
88
140
  export declare function semanticMetricExecutionCapability(metricName: string, semanticLayer: SemanticLayer, provider: string, runtime: SemanticRuntimeStatus): SemanticMetricExecutionCapability;
89
141
  export declare function isSemanticRuntimeError(error: unknown): boolean;
90
142
  //# sourceMappingURL=semantic-runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-runtime.d.ts","sourceRoot":"","sources":["../src/semantic-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-runtime.d.ts","sourceRoot":"","sources":["../src/semantic-runtime.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { compileDbtCloudSemanticQuery, listDbtCloudCompatibleDimensions, testDbtCloudSemanticConnection, } from './dbt-cloud-semantic.js';
2
- import { compileMetricFlowQuery, hasMetricFlowCli, MetricFlowUnavailableError, resolveMetricFlowCli } from './metricflow.js';
2
+ import { compileMetricFlowQuery, hasMetricFlowCli, listMetricFlowDimensions, MetricFlowUnavailableError, resolveMetricFlowCli } from './metricflow.js';
3
3
  import { getEffectiveDbtCloudSemanticSettings, getSemanticRuntimeSettings, semanticRuntimeDraft, } from './semantic-runtime-settings.js';
4
4
  export class SemanticRuntimeRequiredError extends Error {
5
5
  code = 'SEMANTIC_RUNTIME_REQUIRED';
@@ -244,6 +244,54 @@ export async function testSemanticRuntimeDraft(projectRoot, input) {
244
244
  const draft = semanticRuntimeDraft(projectRoot, input);
245
245
  return testDbtCloudSemanticConnection(draft);
246
246
  }
247
+ /**
248
+ * Rewrite a semantic request's dimension references (dimensions, filter
249
+ * dimensions, order-by names, time dimension) from bare names to the
250
+ * MetricFlow entity-qualified names the runtime expects, using the
251
+ * compatibility service as the source of truth. Names it can't resolve pass
252
+ * through unchanged (the 1.8.13 group-by suggestion-retry is the safety net).
253
+ * `metric_time` is never rewritten. Also clamps a requested time grain up to
254
+ * the column's base grain, collecting a warning. Pure — returns a new request.
255
+ */
256
+ export function qualifyForMetricFlow(request, semanticLayer) {
257
+ const warnings = [];
258
+ const { compatible } = semanticLayer.explainCompatibleDimensions(request.metrics);
259
+ const qualifiedByName = new Map();
260
+ for (const dim of compatible) {
261
+ if (dim.qualifiedName)
262
+ qualifiedByName.set(dim.name.toLowerCase(), dim.qualifiedName);
263
+ }
264
+ const qualify = (name) => {
265
+ if (!name)
266
+ return name;
267
+ if (name === 'metric_time' || name.includes('__'))
268
+ return name; // already qualified / reserved
269
+ return qualifiedByName.get(name.toLowerCase()) ?? name;
270
+ };
271
+ const timeDimension = request.timeDimension
272
+ ? (() => {
273
+ const name = qualify(request.timeDimension.name);
274
+ let granularity = request.timeDimension.granularity;
275
+ const td = semanticLayer.getTimeDimension(request.timeDimension.name);
276
+ if (td?.granularities?.length && !td.granularities.includes(granularity)) {
277
+ const clamped = td.granularities[0];
278
+ warnings.push(`Time grain "${granularity}" is finer than ${request.timeDimension.name}'s base grain; using "${clamped}".`);
279
+ granularity = clamped;
280
+ }
281
+ return { name: name, granularity };
282
+ })()
283
+ : undefined;
284
+ return {
285
+ warnings,
286
+ request: {
287
+ ...request,
288
+ dimensions: request.dimensions.map((d) => qualify(d) ?? d),
289
+ ...(request.filters ? { filters: request.filters.map((f) => f.dimension ? { ...f, dimension: qualify(f.dimension) } : f) } : {}),
290
+ ...(request.orderBy ? { orderBy: request.orderBy.map((o) => ({ ...o, name: qualify(o.name) ?? o.name })) } : {}),
291
+ ...(timeDimension ? { timeDimension } : {}),
292
+ },
293
+ };
294
+ }
247
295
  export async function compileSemanticRuntimeQuery(request, context) {
248
296
  const effectiveRequest = normalizeSemanticRuntimeQueryRequest(request, context.semanticLayer);
249
297
  const status = await getSemanticRuntimeStatus(context.projectRoot, { probeConfiguredCloud: true });
@@ -260,6 +308,9 @@ export async function compileSemanticRuntimeQuery(request, context) {
260
308
  : status.active === 'metricflow-cli'
261
309
  ? ['metricflow-cli', 'dbt-cloud', 'native']
262
310
  : ['native'];
311
+ // Qualify dimension references to MetricFlow entity-qualified names ONCE, at
312
+ // this boundary, for the full-runtime engines. Native keeps the bare request.
313
+ const { request: runtimeRequest, warnings: qualifyWarnings } = qualifyForMetricFlow(effectiveRequest, context.semanticLayer);
263
314
  let lastRuntimeError;
264
315
  for (const adapter of candidates) {
265
316
  if (adapter === 'dbt-cloud') {
@@ -267,8 +318,8 @@ export async function compileSemanticRuntimeQuery(request, context) {
267
318
  if (!adapterStatus?.ready)
268
319
  continue;
269
320
  try {
270
- const result = await compileDbtCloudSemanticQuery(getEffectiveDbtCloudSemanticSettings(context.projectRoot), effectiveRequest);
271
- return { sql: result.sql, joins: [], tables: [], engine: 'dbt-cloud', effectiveRequest };
321
+ const result = await compileDbtCloudSemanticQuery(getEffectiveDbtCloudSemanticSettings(context.projectRoot), runtimeRequest);
322
+ return { sql: result.sql, joins: [], tables: [], engine: 'dbt-cloud', effectiveRequest, runtimeRequest, warnings: qualifyWarnings };
272
323
  }
273
324
  catch (error) {
274
325
  lastRuntimeError = error instanceof Error ? error : new Error(String(error));
@@ -288,15 +339,15 @@ export async function compileSemanticRuntimeQuery(request, context) {
288
339
  projectRoot: context.projectRoot,
289
340
  dbtProjectPath,
290
341
  profilesDir: context.projectConfig.dbt?.profilesDir,
291
- metrics: effectiveRequest.metrics,
292
- dimensions: effectiveRequest.dimensions,
293
- filters: effectiveRequest.filters,
294
- timeDimension: effectiveRequest.timeDimension,
295
- orderBy: effectiveRequest.orderBy,
296
- limit: effectiveRequest.limit,
297
- savedQuery: effectiveRequest.savedQuery,
342
+ metrics: runtimeRequest.metrics,
343
+ dimensions: runtimeRequest.dimensions,
344
+ filters: runtimeRequest.filters,
345
+ timeDimension: runtimeRequest.timeDimension,
346
+ orderBy: runtimeRequest.orderBy,
347
+ limit: runtimeRequest.limit,
348
+ savedQuery: runtimeRequest.savedQuery,
298
349
  });
299
- return { sql: compiled.sql, joins: [], tables: [], engine: 'metricflow-cli', effectiveRequest };
350
+ return { sql: compiled.sql, joins: [], tables: [], engine: 'metricflow-cli', effectiveRequest, runtimeRequest, warnings: qualifyWarnings };
300
351
  }
301
352
  catch (error) {
302
353
  lastRuntimeError = error instanceof Error ? error : new Error(String(error));
@@ -326,27 +377,95 @@ export async function compileSemanticRuntimeQuery(request, context) {
326
377
  }
327
378
  return null;
328
379
  }
329
- export async function listRuntimeCompatibleDimensions(projectRoot, semanticLayer, metrics) {
380
+ /**
381
+ * The authoritative per-metric dimension-compatibility answer, resolved through
382
+ * the SAME cascade that executes the query, so the builder can never offer a
383
+ * dimension the runtime would reject:
384
+ * dbt Cloud (already qualified + real grains) → `mf list dimensions` → native.
385
+ * mf failures fall through to native with a `degraded` note (never throw).
386
+ */
387
+ export async function describeRuntimeCompatibility(projectRoot, semanticLayer, metrics, projectConfig) {
330
388
  if (metrics.length === 0)
331
- return [];
389
+ return { engine: 'native', dimensions: [], incompatible: [] };
332
390
  const status = await getSemanticRuntimeStatus(projectRoot, { probeConfiguredCloud: true });
391
+ const nativeExplain = () => {
392
+ const { compatible, incompatible } = semanticLayer.explainCompatibleDimensions(metrics);
393
+ return {
394
+ engine: 'native',
395
+ dimensions: compatible.map((d) => ({ ...d, qualifiedName: d.qualifiedName })),
396
+ incompatible: incompatible.map((d) => ({ name: d.name, qualifiedName: d.qualifiedName, reason: d.reason })),
397
+ };
398
+ };
399
+ // dbt Cloud is truth when active: it returns entity-qualified names and real
400
+ // queryable grains straight from the semantic layer.
333
401
  if (status.active === 'dbt-cloud') {
334
- const cloud = await listDbtCloudCompatibleDimensions(getEffectiveDbtCloudSemanticSettings(projectRoot), metrics);
335
- const localByName = new Map(semanticLayer.listDimensions().map((dimension) => [dimension.name.toLowerCase(), dimension]));
336
- return cloud.map((dimension) => localByName.get(dimension.name.toLowerCase()) ?? {
337
- name: dimension.name,
338
- label: dimension.name.replace(/[_-]+/g, ' '),
339
- description: dimension.description ?? '',
340
- domain: '',
341
- sql: dimension.name,
342
- type: dimension.type?.toLowerCase() === 'time' ? 'date' : 'string',
343
- table: '',
344
- isTimeDimension: dimension.type?.toLowerCase() === 'time',
345
- granularities: dimension.granularities.map((value) => value.toLowerCase()),
346
- source: { provider: 'dbt', objectType: 'dimension', objectId: dimension.name, objectName: dimension.name },
347
- });
402
+ try {
403
+ const cloud = await listDbtCloudCompatibleDimensions(getEffectiveDbtCloudSemanticSettings(projectRoot), metrics);
404
+ const localByName = new Map(semanticLayer.listDimensions().map((d) => [d.name.toLowerCase(), d]));
405
+ const dimensions = cloud.map((dimension) => {
406
+ const local = localByName.get(dimension.name.toLowerCase());
407
+ const isTime = dimension.type?.toLowerCase() === 'time';
408
+ return {
409
+ ...(local ?? {
410
+ name: dimension.name,
411
+ label: dimension.name.replace(/[_-]+/g, ' '),
412
+ description: dimension.description ?? '',
413
+ domain: '',
414
+ sql: dimension.name,
415
+ type: isTime ? 'date' : 'string',
416
+ table: '',
417
+ isTimeDimension: isTime,
418
+ source: { provider: 'dbt', objectType: 'dimension', objectId: dimension.name, objectName: dimension.name },
419
+ }),
420
+ qualifiedName: dimension.name,
421
+ granularities: dimension.granularities.map((v) => v.toLowerCase()),
422
+ };
423
+ });
424
+ return { engine: 'dbt-cloud', dimensions, incompatible: [] };
425
+ }
426
+ catch (error) {
427
+ const native = nativeExplain();
428
+ return { ...native, degraded: `dbt Cloud dimension listing failed (${error instanceof Error ? error.message : String(error)}); showing native compatibility.` };
429
+ }
348
430
  }
349
- return semanticLayer.listCompatibleDimensions(metrics);
431
+ // Local MetricFlow: ask mf itself, then hydrate labels/types from the local
432
+ // catalog by matching each qualified name's tail (same trick as the cloud path).
433
+ if (status.active === 'metricflow-cli') {
434
+ const dbtProjectPath = projectConfig?.semanticLayer?.provider === 'dbt'
435
+ ? projectConfig.semanticLayer.projectPath
436
+ : projectConfig?.dbt?.projectDir;
437
+ const mfDims = listMetricFlowDimensions({ projectRoot, dbtProjectPath, profilesDir: projectConfig?.dbt?.profilesDir, metrics });
438
+ if (mfDims.length > 0) {
439
+ const localByTail = new Map(semanticLayer.listDimensions().map((d) => [d.name.toLowerCase(), d]));
440
+ const dimensions = mfDims.map((mf) => {
441
+ const tail = mf.qualifiedName.split('__').pop().toLowerCase();
442
+ const local = localByTail.get(tail);
443
+ const isTime = Boolean(mf.granularities?.length) || Boolean(local?.isTimeDimension);
444
+ return {
445
+ ...(local ?? {
446
+ name: tail,
447
+ label: tail.replace(/[_-]+/g, ' '),
448
+ description: '',
449
+ domain: '',
450
+ sql: tail,
451
+ type: isTime ? 'date' : 'string',
452
+ table: '',
453
+ isTimeDimension: isTime,
454
+ source: { provider: 'dbt', objectType: 'dimension', objectId: tail, objectName: tail },
455
+ }),
456
+ qualifiedName: mf.qualifiedName,
457
+ granularities: mf.granularities,
458
+ };
459
+ });
460
+ return { engine: 'metricflow-cli', dimensions, incompatible: [] };
461
+ }
462
+ return { ...nativeExplain(), degraded: '`mf list dimensions` returned nothing; showing native compatibility.' };
463
+ }
464
+ return nativeExplain();
465
+ }
466
+ export async function listRuntimeCompatibleDimensions(projectRoot, semanticLayer, metrics, projectConfig) {
467
+ const result = await describeRuntimeCompatibility(projectRoot, semanticLayer, metrics, projectConfig);
468
+ return result.dimensions;
350
469
  }
351
470
  export function semanticMetricExecutionCapability(metricName, semanticLayer, provider, runtime) {
352
471
  const fullRuntime = runtime.active === 'dbt-cloud' || runtime.active === 'metricflow-cli'