@duckcodeailabs/dql-core 1.6.21 → 1.6.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/contracts/index.d.ts +1 -1
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/registry.d.ts +25 -1
- package/dist/contracts/registry.d.ts.map +1 -1
- package/dist/contracts/registry.js +104 -12
- package/dist/contracts/registry.js.map +1 -1
- package/dist/contracts/types.d.ts +55 -0
- package/dist/contracts/types.d.ts.map +1 -1
- package/dist/contracts/types.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lineage/builder.d.ts.map +1 -1
- package/dist/lineage/builder.js +12 -0
- package/dist/lineage/builder.js.map +1 -1
- package/dist/lineage/column-lineage.d.ts +27 -0
- package/dist/lineage/column-lineage.d.ts.map +1 -1
- package/dist/lineage/column-lineage.js +147 -0
- package/dist/lineage/column-lineage.js.map +1 -1
- package/dist/lineage/derivation.d.ts +111 -0
- package/dist/lineage/derivation.d.ts.map +1 -0
- package/dist/lineage/derivation.js +177 -0
- package/dist/lineage/derivation.js.map +1 -0
- package/dist/lineage/impact.d.ts +127 -0
- package/dist/lineage/impact.d.ts.map +1 -0
- package/dist/lineage/impact.js +305 -0
- package/dist/lineage/impact.js.map +1 -0
- package/dist/lineage/index.d.ts +3 -1
- package/dist/lineage/index.d.ts.map +1 -1
- package/dist/lineage/index.js +3 -1
- package/dist/lineage/index.js.map +1 -1
- package/dist/manifest/builder.d.ts +16 -0
- package/dist/manifest/builder.d.ts.map +1 -1
- package/dist/manifest/builder.js +117 -10
- package/dist/manifest/builder.js.map +1 -1
- package/dist/manifest/dbt-freshness.d.ts +65 -0
- package/dist/manifest/dbt-freshness.d.ts.map +1 -0
- package/dist/manifest/dbt-freshness.js +264 -0
- package/dist/manifest/dbt-freshness.js.map +1 -0
- package/dist/manifest/domain-writer.d.ts +66 -0
- package/dist/manifest/domain-writer.d.ts.map +1 -0
- package/dist/manifest/domain-writer.js +114 -0
- package/dist/manifest/domain-writer.js.map +1 -0
- package/dist/manifest/index.d.ts +4 -1
- package/dist/manifest/index.d.ts.map +1 -1
- package/dist/manifest/index.js +3 -0
- package/dist/manifest/index.js.map +1 -1
- package/dist/manifest/output-drift.d.ts +31 -0
- package/dist/manifest/output-drift.d.ts.map +1 -0
- package/dist/manifest/output-drift.js +97 -0
- package/dist/manifest/output-drift.js.map +1 -0
- package/dist/manifest/types.d.ts +156 -1
- package/dist/manifest/types.d.ts.map +1 -1
- package/dist/parser/parser.d.ts.map +1 -1
- package/dist/parser/parser.js +8 -0
- package/dist/parser/parser.js.map +1 -1
- package/dist/semantic/analyzer.d.ts +8 -0
- package/dist/semantic/analyzer.d.ts.map +1 -1
- package/dist/semantic/analyzer.js +8 -0
- package/dist/semantic/analyzer.js.map +1 -1
- package/dist/semantic/conflicts.d.ts +33 -0
- package/dist/semantic/conflicts.d.ts.map +1 -0
- package/dist/semantic/conflicts.js +270 -0
- package/dist/semantic/conflicts.js.map +1 -0
- package/dist/semantic/index.d.ts +1 -1
- package/dist/semantic/index.d.ts.map +1 -1
- package/dist/semantic/index.js +1 -1
- package/dist/semantic/index.js.map +1 -1
- package/dist/trust/index.d.ts +3 -0
- package/dist/trust/index.d.ts.map +1 -0
- package/dist/trust/index.js +2 -0
- package/dist/trust/index.js.map +1 -0
- package/dist/trust/labels.d.ts +122 -0
- package/dist/trust/labels.d.ts.map +1 -0
- package/dist/trust/labels.js +185 -0
- package/dist/trust/labels.js.map +1 -0
- package/package.json +5 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/trust/labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,uCAAuC;AACvC,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,UAAU,GACV,cAAc,GACd,sBAAsB,GACtB,UAAU,CAAC;AAEf,8EAA8E;AAC9E,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC;AAE3E,mDAAmD;AACnD,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,EAAE,EAAE,YAAY,CAAC;IACjB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,+DAA+D;IAC/D,KAAK,EAAE,eAAe,CAAC;IACvB,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,YAAY,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,KAAK,EAAE,eAAe,CAAC;IACvB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uFAAuF;AACvF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAoCnE,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAM3C,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,kCAAkC,uBAAuB,CAAC;AAEvE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B,eAAe,CAAC;AACvD,eAAO,MAAM,+BAA+B,oBAAoB,CAAC;AAEjE,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAS/E;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,kBAAkB,CAIrB;AAED,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB,EAAE,YAAqC,CAAC;AAI3E;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,SAAS,CAAC,EAAE,MAAM,GACjB,kBAAkB,CAWpB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CAe5E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CA0B9E"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical trust-label vocabulary.
|
|
3
|
+
*
|
|
4
|
+
* DQL's three-tier trust routing implies labels everywhere — the MCP server's
|
|
5
|
+
* answer contract, the agent answer-loop source tiers, and the UI badge. This
|
|
6
|
+
* module defines that vocabulary **once** so every surface speaks the same
|
|
7
|
+
* language. It is intentionally a pure, dependency-free module (no node-only
|
|
8
|
+
* imports) so it can be mirrored into the browser-only `dql-ui` package without
|
|
9
|
+
* pulling the rest of `dql-core` into a UI bundle.
|
|
10
|
+
*
|
|
11
|
+
* Each label is structured as a **base label + optional qualifier** so that
|
|
12
|
+
* downgrade/composition states stay representable. For example, a sibling
|
|
13
|
+
* change elsewhere may emit a "Certified · invariant violated" downgrade: that
|
|
14
|
+
* is base `Certified` plus the qualifier `invariant violated`. Consumers can
|
|
15
|
+
* render the base alone, or `base · qualifier` when a qualifier is present,
|
|
16
|
+
* without inventing new top-level labels.
|
|
17
|
+
*
|
|
18
|
+
* The vocabulary is **additive and backward compatible**: existing manifests,
|
|
19
|
+
* route values, and `status` strings keep working, and any unrecognized label
|
|
20
|
+
* id degrades to a safe default (`Insufficient-Context`) rather than throwing.
|
|
21
|
+
*/
|
|
22
|
+
/** Canonical vocabulary, defined once. Order is the trust hierarchy (best → worst). */
|
|
23
|
+
export const TRUST_LABELS = {
|
|
24
|
+
certified: {
|
|
25
|
+
id: 'certified',
|
|
26
|
+
base: 'Certified',
|
|
27
|
+
severity: 'ok',
|
|
28
|
+
color: 'green',
|
|
29
|
+
description: 'Governed, human-certified artifact answering at the requested grain.',
|
|
30
|
+
},
|
|
31
|
+
reviewed: {
|
|
32
|
+
id: 'reviewed',
|
|
33
|
+
base: 'Reviewed',
|
|
34
|
+
severity: 'info',
|
|
35
|
+
color: 'blue',
|
|
36
|
+
description: 'Human-reviewed but not certified; safe as trusted context.',
|
|
37
|
+
},
|
|
38
|
+
ai_generated: {
|
|
39
|
+
id: 'ai_generated',
|
|
40
|
+
base: 'AI-Generated',
|
|
41
|
+
severity: 'caution',
|
|
42
|
+
color: 'amber',
|
|
43
|
+
description: 'AI-drafted answer that requires human review before stakeholder use.',
|
|
44
|
+
},
|
|
45
|
+
insufficient_context: {
|
|
46
|
+
id: 'insufficient_context',
|
|
47
|
+
base: 'Insufficient-Context',
|
|
48
|
+
severity: 'caution',
|
|
49
|
+
color: 'slate',
|
|
50
|
+
description: 'Not enough governed metadata to answer safely; clarification needed.',
|
|
51
|
+
},
|
|
52
|
+
conflict: {
|
|
53
|
+
id: 'conflict',
|
|
54
|
+
base: 'Conflict',
|
|
55
|
+
severity: 'blocked',
|
|
56
|
+
color: 'red',
|
|
57
|
+
description: 'Two governed definitions claim the same concept but disagree; a human must pick the winner.',
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
/** Ordered list of canonical labels (best → worst). */
|
|
61
|
+
export const TRUST_LABEL_ORDER = [
|
|
62
|
+
'certified',
|
|
63
|
+
'reviewed',
|
|
64
|
+
'ai_generated',
|
|
65
|
+
'insufficient_context',
|
|
66
|
+
'conflict',
|
|
67
|
+
];
|
|
68
|
+
/** Convenience display qualifier shown when a certified artifact is downgraded. */
|
|
69
|
+
export const TRUST_QUALIFIER_INVARIANT_VIOLATED = 'invariant violated';
|
|
70
|
+
/**
|
|
71
|
+
* Freshness-aware-trust qualifiers. These compose with a base label exactly
|
|
72
|
+
* like {@link TRUST_QUALIFIER_INVARIANT_VIOLATED}: a certified block whose
|
|
73
|
+
* upstream data is stale renders "Certified · stale data"; one whose upstream
|
|
74
|
+
* dbt run failed renders "Certified · upstream failed".
|
|
75
|
+
*
|
|
76
|
+
* `data freshness unknown` is intentionally NOT surfaced as a downgrade — a
|
|
77
|
+
* missing `run_results.json` should degrade silently to the plain base label
|
|
78
|
+
* (see {@link dataStateQualifier}), so projects that have not wired dbt run
|
|
79
|
+
* artifacts keep showing "Certified".
|
|
80
|
+
*/
|
|
81
|
+
export const TRUST_QUALIFIER_STALE_DATA = 'stale data';
|
|
82
|
+
export const TRUST_QUALIFIER_UPSTREAM_FAILED = 'upstream failed';
|
|
83
|
+
/**
|
|
84
|
+
* Map a data-health state to its trust qualifier, or `undefined` when the data
|
|
85
|
+
* axis should not downgrade the label. `fresh` and `unknown` both return
|
|
86
|
+
* `undefined` so a healthy (or un-instrumented) block shows the plain base
|
|
87
|
+
* label; only `stale` and `failed` produce a visible "· …" qualifier.
|
|
88
|
+
*/
|
|
89
|
+
export function dataStateQualifier(dataState) {
|
|
90
|
+
switch (dataState) {
|
|
91
|
+
case 'failed':
|
|
92
|
+
return TRUST_QUALIFIER_UPSTREAM_FAILED;
|
|
93
|
+
case 'stale':
|
|
94
|
+
return TRUST_QUALIFIER_STALE_DATA;
|
|
95
|
+
default:
|
|
96
|
+
return undefined;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Compose the effective trust label for an artifact, folding the data-freshness
|
|
101
|
+
* axis into a base trust label. When `dataState` is `stale`/`failed` the
|
|
102
|
+
* returned label is `<base> · <freshness qualifier>`; otherwise it is the base
|
|
103
|
+
* label unchanged. An explicit `existingQualifier` (e.g. "invariant violated")
|
|
104
|
+
* takes precedence so the two downgrade features never fight over the one
|
|
105
|
+
* qualifier slot — invariant violations are a stronger signal than staleness.
|
|
106
|
+
*
|
|
107
|
+
* Pure and dependency-free; safe to call from any surface (MCP, agent, UI).
|
|
108
|
+
*/
|
|
109
|
+
export function composeEffectiveTrust(input) {
|
|
110
|
+
const qualifier = input.existingQualifier?.trim() || dataStateQualifier(input.dataState);
|
|
111
|
+
return resolveTrustLabel(input.id, qualifier);
|
|
112
|
+
}
|
|
113
|
+
/** The safe default for any unknown/unmapped label id. */
|
|
114
|
+
export const DEFAULT_TRUST_LABEL_ID = 'insufficient_context';
|
|
115
|
+
const QUALIFIER_SEPARATOR = ' · ';
|
|
116
|
+
/**
|
|
117
|
+
* Resolve a canonical label by id, composing an optional qualifier into a ready
|
|
118
|
+
* display string. An unknown id degrades to the safe default rather than
|
|
119
|
+
* throwing, so older/forward manifests never break a consumer.
|
|
120
|
+
*/
|
|
121
|
+
export function resolveTrustLabel(id, qualifier) {
|
|
122
|
+
const def = (id && TRUST_LABELS[id]) || TRUST_LABELS[DEFAULT_TRUST_LABEL_ID];
|
|
123
|
+
const trimmedQualifier = qualifier?.trim() || undefined;
|
|
124
|
+
return {
|
|
125
|
+
id: def.id,
|
|
126
|
+
base: def.base,
|
|
127
|
+
qualifier: trimmedQualifier,
|
|
128
|
+
severity: def.severity,
|
|
129
|
+
color: def.color,
|
|
130
|
+
display: trimmedQualifier ? `${def.base}${QUALIFIER_SEPARATOR}${trimmedQualifier}` : def.base,
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Map an agent/MCP answer route to its canonical trust label id. Additive: an
|
|
135
|
+
* unrecognized route degrades to the safe default.
|
|
136
|
+
*/
|
|
137
|
+
export function trustLabelIdForRoute(route) {
|
|
138
|
+
switch (route) {
|
|
139
|
+
case 'certified':
|
|
140
|
+
return 'certified';
|
|
141
|
+
case 'conflict':
|
|
142
|
+
return 'conflict';
|
|
143
|
+
case 'generated_sql':
|
|
144
|
+
return 'ai_generated';
|
|
145
|
+
case 'research':
|
|
146
|
+
return 'reviewed';
|
|
147
|
+
case 'clarify':
|
|
148
|
+
return 'insufficient_context';
|
|
149
|
+
default:
|
|
150
|
+
return DEFAULT_TRUST_LABEL_ID;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Map a legacy artifact `status` / trust-tier string (as found on manifests and
|
|
155
|
+
* catalog objects) to a canonical label id. Additive and lenient: unknown
|
|
156
|
+
* statuses degrade to the safe default.
|
|
157
|
+
*/
|
|
158
|
+
export function trustLabelIdForStatus(status) {
|
|
159
|
+
switch (status) {
|
|
160
|
+
case 'certified':
|
|
161
|
+
case 'approved':
|
|
162
|
+
return 'certified';
|
|
163
|
+
case 'reviewed':
|
|
164
|
+
case 'review':
|
|
165
|
+
case 'research':
|
|
166
|
+
return 'reviewed';
|
|
167
|
+
case 'ai_generated':
|
|
168
|
+
case 'generated':
|
|
169
|
+
case 'draft':
|
|
170
|
+
case 'draft_ready':
|
|
171
|
+
case 'pending':
|
|
172
|
+
case 'analyst_review_required':
|
|
173
|
+
return 'ai_generated';
|
|
174
|
+
case 'conflict':
|
|
175
|
+
return 'conflict';
|
|
176
|
+
case 'mixed':
|
|
177
|
+
case 'unknown':
|
|
178
|
+
case 'uncertified':
|
|
179
|
+
case 'none':
|
|
180
|
+
return 'insufficient_context';
|
|
181
|
+
default:
|
|
182
|
+
return DEFAULT_TRUST_LABEL_ID;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=labels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labels.js","sourceRoot":"","sources":["../../src/trust/labels.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@duckcodeailabs/dql-core",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.22",
|
|
4
4
|
"description": "DQL language core: lexer, parser, AST, semantic analysis",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -14,6 +14,10 @@
|
|
|
14
14
|
"./format": {
|
|
15
15
|
"types": "./dist/format/index.d.ts",
|
|
16
16
|
"import": "./dist/format/index.js"
|
|
17
|
+
},
|
|
18
|
+
"./lineage": {
|
|
19
|
+
"types": "./dist/lineage/index.d.ts",
|
|
20
|
+
"import": "./dist/lineage/index.js"
|
|
17
21
|
}
|
|
18
22
|
},
|
|
19
23
|
"files": [
|