@descryy/core 0.6.1 → 0.6.3
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/governance/demotion-ledger.d.ts +76 -0
- package/dist/governance/demotion-ledger.d.ts.map +1 -0
- package/dist/governance/demotion-ledger.js +108 -0
- package/dist/governance/demotion-ledger.js.map +1 -0
- package/dist/governance/finding-funnel.d.ts +20 -1
- package/dist/governance/finding-funnel.d.ts.map +1 -1
- package/dist/governance/finding-funnel.js +28 -10
- package/dist/governance/finding-funnel.js.map +1 -1
- package/dist/governance/index.d.ts +2 -0
- package/dist/governance/index.d.ts.map +1 -1
- package/dist/governance/index.js +1 -0
- package/dist/governance/index.js.map +1 -1
- package/dist/graph/index.d.ts +1 -1
- package/dist/graph/index.d.ts.map +1 -1
- package/dist/graph/index.js.map +1 -1
- package/dist/graph/runtime-confirmation.d.ts +19 -0
- package/dist/graph/runtime-confirmation.d.ts.map +1 -1
- package/dist/graph/runtime-confirmation.js +35 -3
- package/dist/graph/runtime-confirmation.js.map +1 -1
- package/dist/query/index.d.ts +1 -0
- package/dist/query/index.d.ts.map +1 -1
- package/dist/query/index.js +1 -0
- package/dist/query/index.js.map +1 -1
- package/dist/query/model-table.d.ts +35 -0
- package/dist/query/model-table.d.ts.map +1 -0
- package/dist/query/model-table.js +48 -0
- package/dist/query/model-table.js.map +1 -0
- package/dist/query/queries.d.ts +1 -1
- package/dist/query/queries.d.ts.map +1 -1
- package/dist/query/queries.js +1 -1
- package/dist/query/queries.js.map +1 -1
- package/dist/scoping/weights.js +1 -1
- package/dist/scoping/weights.js.map +1 -1
- package/dist/tiers/ladder.js +1 -1
- package/dist/tiers/ladder.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The demotion ledger — `documents/plans/gate_loosening.md` §3.4.
|
|
3
|
+
*
|
|
4
|
+
* The question *"what did this run throw away, and which gate did it"* has had no answer.
|
|
5
|
+
* Each gate is individually defensible and the chain is conjunctive, so the cost of the
|
|
6
|
+
* composition is invisible from any one of them — §2 property 1, which nothing in the
|
|
7
|
+
* codebase computes or bounds.
|
|
8
|
+
*
|
|
9
|
+
* This computes it, and needs no new instrumentation to do so: every finding is already
|
|
10
|
+
* stored with the `G4Inputs` that graded it (`FindingRecord`), so the attribution is
|
|
11
|
+
* derivable over findings that already exist, retroactively.
|
|
12
|
+
*
|
|
13
|
+
* ## An instrument, not a second report surface
|
|
14
|
+
*
|
|
15
|
+
* §6 risk 3 is that this becomes a second uncapped list next to the first one. It is for
|
|
16
|
+
* tuning a threshold and should be judged on whether it changed one. Nothing here renders,
|
|
17
|
+
* and nothing here decides — `reportCategory` remains the only function that assigns a
|
|
18
|
+
* category, and this module only re-reads its inputs to say what the answer would have been
|
|
19
|
+
* without each cap.
|
|
20
|
+
*/
|
|
21
|
+
import type { EvidenceCategory, G4Inputs } from "@descryy/ir";
|
|
22
|
+
/**
|
|
23
|
+
* The two gates that can lower a category below what the evidence alone read.
|
|
24
|
+
*
|
|
25
|
+
* Not a list of every gate in the pipeline — the fabrication gates (G1, G2) reject a claim
|
|
26
|
+
* outright rather than demoting one, and the funnel's cap truncates a ranked list rather than
|
|
27
|
+
* changing any finding's category. Both are real losses and neither is a *demotion*; conflating
|
|
28
|
+
* them here would make the levels-lost totals below meaningless.
|
|
29
|
+
*/
|
|
30
|
+
export declare const DEMOTION_GATES: readonly ["evidence-precondition", "reliability-cap"];
|
|
31
|
+
export type DemotionGate = (typeof DEMOTION_GATES)[number];
|
|
32
|
+
export interface Demotion {
|
|
33
|
+
readonly gate: DemotionGate;
|
|
34
|
+
/** What the observed evidence alone read, before any cap. */
|
|
35
|
+
readonly from: EvidenceCategory;
|
|
36
|
+
/** What was actually reported. */
|
|
37
|
+
readonly to: EvidenceCategory;
|
|
38
|
+
/** Rank levels lost. 1 or 2 — a demotion of 0 is not a demotion and is reported as `null`. */
|
|
39
|
+
readonly levels: number;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Which gate, if any, lowered this finding's category, and by how much. `null` when nothing
|
|
43
|
+
* did. Pure and total; never throws.
|
|
44
|
+
*
|
|
45
|
+
* At most one gate is reported. When G3's precondition binds, every downstream value is already
|
|
46
|
+
* `unconfirmed` and the reliability cap has nothing left to lower — so attributing the loss to
|
|
47
|
+
* both would double-count one demotion.
|
|
48
|
+
*/
|
|
49
|
+
export declare function attributeDemotion(inputs: G4Inputs): Demotion | null;
|
|
50
|
+
/** One gate's share of the total loss. */
|
|
51
|
+
export interface GateTally {
|
|
52
|
+
/** How many findings this gate demoted. */
|
|
53
|
+
readonly count: number;
|
|
54
|
+
/** Total rank levels it removed, across those findings. */
|
|
55
|
+
readonly levels: number;
|
|
56
|
+
}
|
|
57
|
+
export interface DemotionLedger {
|
|
58
|
+
readonly total: number;
|
|
59
|
+
/** Findings demoted by some gate. */
|
|
60
|
+
readonly demoted: number;
|
|
61
|
+
readonly byGate: Readonly<Record<DemotionGate, GateTally>>;
|
|
62
|
+
/**
|
|
63
|
+
* Findings the evidence read as `confirmed` that were reported as `unconfirmed` — the full
|
|
64
|
+
* two-level fall, and the population `gate_loosening.md` §1.1(c) is about.
|
|
65
|
+
*/
|
|
66
|
+
readonly confirmedToUnconfirmed: number;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Aggregate the ledger over a run's findings. Order-independent and pure.
|
|
70
|
+
*
|
|
71
|
+
* Takes `G4Inputs` rather than `FindingRecord` so a caller holding either can use it — the
|
|
72
|
+
* inputs are the only part a demotion is computable from, and requiring the whole record would
|
|
73
|
+
* stop this being runnable over a stored inputs column alone.
|
|
74
|
+
*/
|
|
75
|
+
export declare function buildDemotionLedger(runs: readonly G4Inputs[]): DemotionLedger;
|
|
76
|
+
//# sourceMappingURL=demotion-ledger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"demotion-ledger.d.ts","sourceRoot":"","sources":["../../src/governance/demotion-ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE9D;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,uDAAwD,CAAC;AAEpF,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAS3D,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,kCAAkC;IAClC,QAAQ,CAAC,EAAE,EAAE,gBAAgB,CAAC;IAC9B,8FAA8F;IAC9F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAeD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAyBnE;AAED,0CAA0C;AAC1C,MAAM,WAAW,SAAS;IACxB,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qCAAqC;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;IAC3D;;;OAGG;IACH,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;CACzC;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,QAAQ,EAAE,GAAG,cAAc,CAoB7E"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The demotion ledger — `documents/plans/gate_loosening.md` §3.4.
|
|
3
|
+
*
|
|
4
|
+
* The question *"what did this run throw away, and which gate did it"* has had no answer.
|
|
5
|
+
* Each gate is individually defensible and the chain is conjunctive, so the cost of the
|
|
6
|
+
* composition is invisible from any one of them — §2 property 1, which nothing in the
|
|
7
|
+
* codebase computes or bounds.
|
|
8
|
+
*
|
|
9
|
+
* This computes it, and needs no new instrumentation to do so: every finding is already
|
|
10
|
+
* stored with the `G4Inputs` that graded it (`FindingRecord`), so the attribution is
|
|
11
|
+
* derivable over findings that already exist, retroactively.
|
|
12
|
+
*
|
|
13
|
+
* ## An instrument, not a second report surface
|
|
14
|
+
*
|
|
15
|
+
* §6 risk 3 is that this becomes a second uncapped list next to the first one. It is for
|
|
16
|
+
* tuning a threshold and should be judged on whether it changed one. Nothing here renders,
|
|
17
|
+
* and nothing here decides — `reportCategory` remains the only function that assigns a
|
|
18
|
+
* category, and this module only re-reads its inputs to say what the answer would have been
|
|
19
|
+
* without each cap.
|
|
20
|
+
*/
|
|
21
|
+
import { existenceCategory, reportCategory } from "@descryy/ir";
|
|
22
|
+
/**
|
|
23
|
+
* The two gates that can lower a category below what the evidence alone read.
|
|
24
|
+
*
|
|
25
|
+
* Not a list of every gate in the pipeline — the fabrication gates (G1, G2) reject a claim
|
|
26
|
+
* outright rather than demoting one, and the funnel's cap truncates a ranked list rather than
|
|
27
|
+
* changing any finding's category. Both are real losses and neither is a *demotion*; conflating
|
|
28
|
+
* them here would make the levels-lost totals below meaningless.
|
|
29
|
+
*/
|
|
30
|
+
export const DEMOTION_GATES = ["evidence-precondition", "reliability-cap"];
|
|
31
|
+
/** Strongest first, matching `@descryy/ir`'s own rank so the arithmetic agrees across packages. */
|
|
32
|
+
const RANK = {
|
|
33
|
+
confirmed: 2,
|
|
34
|
+
"strongly supported": 1,
|
|
35
|
+
unconfirmed: 0,
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* The evidence reading with **no** gate applied at all — not even G3's precondition.
|
|
39
|
+
*
|
|
40
|
+
* Deliberately not {@link existenceCategory}, which enforces the precondition first. The
|
|
41
|
+
* difference is the entire point of this module: without a pre-gate baseline there is nothing
|
|
42
|
+
* for G3 to be measured against, and a record where the precondition bound would look
|
|
43
|
+
* identical to one where nothing was ever observed.
|
|
44
|
+
*/
|
|
45
|
+
function evidenceReading(inputs) {
|
|
46
|
+
if (inputs.directMechanismEvidence)
|
|
47
|
+
return "confirmed";
|
|
48
|
+
return inputs.independentSignalTypes >= 1 ? "strongly supported" : "unconfirmed";
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Which gate, if any, lowered this finding's category, and by how much. `null` when nothing
|
|
52
|
+
* did. Pure and total; never throws.
|
|
53
|
+
*
|
|
54
|
+
* At most one gate is reported. When G3's precondition binds, every downstream value is already
|
|
55
|
+
* `unconfirmed` and the reliability cap has nothing left to lower — so attributing the loss to
|
|
56
|
+
* both would double-count one demotion.
|
|
57
|
+
*/
|
|
58
|
+
export function attributeDemotion(inputs) {
|
|
59
|
+
const raw = evidenceReading(inputs);
|
|
60
|
+
// G3 — binds only on a record claiming evidence it also says it does not have. In valid data
|
|
61
|
+
// this is unreachable (both M and E are computed from the same array), which is why a hit here
|
|
62
|
+
// is worth surfacing: it means a record disagrees with itself.
|
|
63
|
+
if (!inputs.hasRuntimeEvidence && RANK[raw] > RANK.unconfirmed) {
|
|
64
|
+
return {
|
|
65
|
+
gate: "evidence-precondition",
|
|
66
|
+
from: raw,
|
|
67
|
+
to: "unconfirmed",
|
|
68
|
+
levels: RANK[raw] - RANK.unconfirmed,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
const existence = existenceCategory(inputs);
|
|
72
|
+
const reported = reportCategory(inputs).category;
|
|
73
|
+
if (RANK[existence] <= RANK[reported])
|
|
74
|
+
return null;
|
|
75
|
+
return {
|
|
76
|
+
gate: "reliability-cap",
|
|
77
|
+
from: existence,
|
|
78
|
+
to: reported,
|
|
79
|
+
levels: RANK[existence] - RANK[reported],
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Aggregate the ledger over a run's findings. Order-independent and pure.
|
|
84
|
+
*
|
|
85
|
+
* Takes `G4Inputs` rather than `FindingRecord` so a caller holding either can use it — the
|
|
86
|
+
* inputs are the only part a demotion is computable from, and requiring the whole record would
|
|
87
|
+
* stop this being runnable over a stored inputs column alone.
|
|
88
|
+
*/
|
|
89
|
+
export function buildDemotionLedger(runs) {
|
|
90
|
+
const byGate = {
|
|
91
|
+
"evidence-precondition": { count: 0, levels: 0 },
|
|
92
|
+
"reliability-cap": { count: 0, levels: 0 },
|
|
93
|
+
};
|
|
94
|
+
let demoted = 0;
|
|
95
|
+
let confirmedToUnconfirmed = 0;
|
|
96
|
+
for (const inputs of runs) {
|
|
97
|
+
const demotion = attributeDemotion(inputs);
|
|
98
|
+
if (demotion === null)
|
|
99
|
+
continue;
|
|
100
|
+
demoted += 1;
|
|
101
|
+
const tally = byGate[demotion.gate];
|
|
102
|
+
byGate[demotion.gate] = { count: tally.count + 1, levels: tally.levels + demotion.levels };
|
|
103
|
+
if (demotion.from === "confirmed" && demotion.to === "unconfirmed")
|
|
104
|
+
confirmedToUnconfirmed += 1;
|
|
105
|
+
}
|
|
106
|
+
return { total: runs.length, demoted, byGate, confirmedToUnconfirmed };
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=demotion-ledger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"demotion-ledger.js","sourceRoot":"","sources":["../../src/governance/demotion-ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAGhE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,uBAAuB,EAAE,iBAAiB,CAAU,CAAC;AAIpF,mGAAmG;AACnG,MAAM,IAAI,GAA+C;IACvD,SAAS,EAAE,CAAC;IACZ,oBAAoB,EAAE,CAAC;IACvB,WAAW,EAAE,CAAC;CACf,CAAC;AAYF;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,MAAgB;IACvC,IAAI,MAAM,CAAC,uBAAuB;QAAE,OAAO,WAAW,CAAC;IACvD,OAAO,MAAM,CAAC,sBAAsB,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,aAAa,CAAC;AACnF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAgB;IAChD,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAEpC,6FAA6F;IAC7F,+FAA+F;IAC/F,+DAA+D;IAC/D,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC/D,OAAO;YACL,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,GAAG;YACT,EAAE,EAAE,aAAa;YACjB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW;SACrC,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;IACjD,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAEnD,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,SAAS;QACf,EAAE,EAAE,QAAQ;QACZ,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;KACzC,CAAC;AACJ,CAAC;AAsBD;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAyB;IAC3D,MAAM,MAAM,GAAoC;QAC9C,uBAAuB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;QAChD,iBAAiB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;KAC3C,CAAC;IAEF,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAE/B,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,QAAQ,KAAK,IAAI;YAAE,SAAS;QAEhC,OAAO,IAAI,CAAC,CAAC;QACb,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC3F,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,IAAI,QAAQ,CAAC,EAAE,KAAK,aAAa;YAAE,sBAAsB,IAAI,CAAC,CAAC;IAClG,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC;AACzE,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** §20.1 governance funnel — five filters ending in a hard cap; F2 (feedback-store false
|
|
2
2
|
* positives) and the cap itself were unimplemented until now. Caps are starting values (pr=5,
|
|
3
3
|
* §20.1's own 3+2 example). Never silently drops: every finding lands in reported/unconfirmed/suppressed. */
|
|
4
|
-
import { type Finding } from "@descryy/ir";
|
|
4
|
+
import { type Finding, type ReportCategory } from "@descryy/ir";
|
|
5
5
|
import type { Trigger } from "../scoping/tiers.ts";
|
|
6
6
|
/** Findings one run may report, per trigger. `pr`=5 is §20.1's own arithmetic (3+2). The rest
|
|
7
7
|
* scale to the reading surface (same shape as NODE_BUDGETS) — starting values, not measurements. */
|
|
@@ -22,6 +22,18 @@ export interface FindingFunnelOptions {
|
|
|
22
22
|
readonly isDismissed?: (finding: Finding) => boolean;
|
|
23
23
|
/** Overrides the trigger's cap. For a caller that has measured its own; not a way to opt out. */
|
|
24
24
|
readonly cap?: number;
|
|
25
|
+
/**
|
|
26
|
+
* The finding's **existence** category — how strongly the evidence says the failure is real,
|
|
27
|
+
* uncapped by the structural path (`@descryy/ir`'s `existenceCategory`).
|
|
28
|
+
*
|
|
29
|
+
* Caller-supplied for the same reason `isDismissed` is: `Finding` is §20's fourteen fields and
|
|
30
|
+
* stays fourteen, so the second axis arrives as a lookup rather than a fifteenth field. Absent
|
|
31
|
+
* means "read it off `confidence`", which reproduces the pre-existing routing exactly.
|
|
32
|
+
*
|
|
33
|
+
* Routing on this is `gate_loosening.md` §3.3: a reproduced failure whose cause was never
|
|
34
|
+
* traced is capped at `unconfirmed` on attribution and belongs in front of a developer anyway.
|
|
35
|
+
*/
|
|
36
|
+
readonly existenceOf?: (finding: Finding) => ReportCategory;
|
|
25
37
|
}
|
|
26
38
|
export interface FindingTruncation {
|
|
27
39
|
readonly total: number;
|
|
@@ -37,6 +49,13 @@ export interface FindingFunnelResult {
|
|
|
37
49
|
readonly unconfirmed: readonly Finding[];
|
|
38
50
|
/** Removed by F2, kept so the run can say what it hid and why that is not a silence. */
|
|
39
51
|
readonly suppressed: readonly Finding[];
|
|
52
|
+
/**
|
|
53
|
+
* Findings in `reported` whose own `confidence` would not have got them there — the failure
|
|
54
|
+
* is established, the cause is not. A renderer must label these as such: a confirmed symptom
|
|
55
|
+
* with an untraced cause is a different claim from a confirmed cause, and rule 7 forbids
|
|
56
|
+
* presenting the weaker one at the stronger one's weight. Empty when `existenceOf` is absent.
|
|
57
|
+
*/
|
|
58
|
+
readonly promotedByExistence: readonly Finding[];
|
|
40
59
|
readonly truncation: FindingTruncation;
|
|
41
60
|
}
|
|
42
61
|
/** §20.1's funnel. Pure and total — every input finding appears in exactly one output list.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finding-funnel.d.ts","sourceRoot":"","sources":["../../src/governance/finding-funnel.ts"],"names":[],"mappings":"AAAA;;8GAE8G;AAE9G,OAAO,EAAsB,KAAK,OAAO,
|
|
1
|
+
{"version":3,"file":"finding-funnel.d.ts","sourceRoot":"","sources":["../../src/governance/finding-funnel.ts"],"names":[],"mappings":"AAAA;;8GAE8G;AAE9G,OAAO,EAAsB,KAAK,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAEpF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD;qGACqG;AACrG,eAAO,MAAM,YAAY;IACvB,yFAAyF;;IAEzF,uEAAuE;;IAEvE,kCAAkC;;IAElC,oFAAoF;;CAE1C,CAAC;AAc7C,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;kEAC8D;IAC9D,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;IACrD,iGAAiG;IACjG,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,cAAc,CAAC;CAC7D;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sGAAsG;IACtG,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,yEAAyE;IACzE,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,iFAAiF;IACjF,QAAQ,CAAC,WAAW,EAAE,SAAS,OAAO,EAAE,CAAC;IACzC,wFAAwF;IACxF,QAAQ,CAAC,UAAU,EAAE,SAAS,OAAO,EAAE,CAAC;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,mBAAmB,EAAE,SAAS,OAAO,EAAE,CAAC;IACjD,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;CACxC;AAED;yGACyG;AACzG,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,OAAO,EAAE,oBAAoB,GAC5B,mBAAmB,CAqDrB;AAsBD;8EAC8E;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -28,27 +28,40 @@ const NOT_CONFIDENT = new Set(["unconfirmed", "not analysable", "unsupported"]);
|
|
|
28
28
|
* Deterministic ordering (replay guarantee, §9 layer 6): ties break on fingerprint, not input order. */
|
|
29
29
|
export function runFindingFunnel(findings, options) {
|
|
30
30
|
const isDismissed = options.isDismissed ?? (() => false);
|
|
31
|
+
const existenceOf = options.existenceOf ?? ((finding) => finding.confidence);
|
|
31
32
|
const suppressed = [];
|
|
32
33
|
const confident = [];
|
|
33
34
|
const unconfirmed = [];
|
|
35
|
+
const promotedByExistence = [];
|
|
34
36
|
for (const finding of findings) {
|
|
35
37
|
if (isDismissed(finding)) {
|
|
36
38
|
suppressed.push(finding);
|
|
37
39
|
continue;
|
|
38
40
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
// The stronger of the two axes decides routing: attribution says how well the cause is
|
|
42
|
+
// known, existence says whether the failure is real, and a developer needs the second one
|
|
43
|
+
// to decide whether to look at all.
|
|
44
|
+
const existence = existenceOf(finding);
|
|
45
|
+
const effective = CATEGORY_RANK[existence] > CATEGORY_RANK[finding.confidence] ? existence : finding.confidence;
|
|
46
|
+
if (NOT_CONFIDENT.has(effective))
|
|
47
|
+
unconfirmed.push({ finding, effective });
|
|
48
|
+
else {
|
|
49
|
+
confident.push({ finding, effective });
|
|
50
|
+
// Rule 7 cuts both ways: a finding that reached the reported set on evidence its
|
|
51
|
+
// attribution could not support is disclosed, never quietly upgraded.
|
|
52
|
+
if (NOT_CONFIDENT.has(finding.confidence))
|
|
53
|
+
promotedByExistence.push(finding);
|
|
54
|
+
}
|
|
43
55
|
}
|
|
44
|
-
const ranked =
|
|
56
|
+
const ranked = confident.sort(compareRanked).map((r) => r.finding);
|
|
45
57
|
const cap = Math.max(0, Math.floor(options.cap ?? FINDING_CAPS[options.trigger]));
|
|
46
58
|
const reported = ranked.slice(0, cap);
|
|
47
59
|
const dropped = ranked.length - reported.length;
|
|
48
60
|
return {
|
|
49
61
|
reported,
|
|
50
|
-
unconfirmed:
|
|
62
|
+
unconfirmed: unconfirmed.sort(compareRanked).map((r) => r.finding),
|
|
51
63
|
suppressed,
|
|
64
|
+
promotedByExistence,
|
|
52
65
|
truncation: {
|
|
53
66
|
total: ranked.length,
|
|
54
67
|
shown: reported.length,
|
|
@@ -61,16 +74,21 @@ export function runFindingFunnel(findings, options) {
|
|
|
61
74
|
},
|
|
62
75
|
};
|
|
63
76
|
}
|
|
64
|
-
function
|
|
65
|
-
|
|
77
|
+
function compareRanked(a, b) {
|
|
78
|
+
// Effective category first: is this real, however well the cause is known.
|
|
79
|
+
const byEffective = CATEGORY_RANK[b.effective] - CATEGORY_RANK[a.effective];
|
|
80
|
+
if (byEffective !== 0)
|
|
81
|
+
return byEffective;
|
|
82
|
+
// Then attribution, so a finding whose cause is also known outranks one whose cause is not.
|
|
83
|
+
const byCategory = CATEGORY_RANK[b.finding.confidence] - CATEGORY_RANK[a.finding.confidence];
|
|
66
84
|
if (byCategory !== 0)
|
|
67
85
|
return byCategory;
|
|
68
86
|
// Then by how well the code beneath it was understood — rule 3's axis.
|
|
69
|
-
const byResolution = Number(b.resolutionLevel) - Number(a.resolutionLevel);
|
|
87
|
+
const byResolution = Number(b.finding.resolutionLevel) - Number(a.finding.resolutionLevel);
|
|
70
88
|
if (byResolution !== 0)
|
|
71
89
|
return byResolution;
|
|
72
90
|
// A stable, content-derived tiebreak, so replay reproduces the order.
|
|
73
|
-
return findingFingerprint(a) < findingFingerprint(b) ? -1 : 1;
|
|
91
|
+
return findingFingerprint(a.finding) < findingFingerprint(b.finding) ? -1 : 1;
|
|
74
92
|
}
|
|
75
93
|
/** Re-exported so a caller wiring the funnel and ledger imports one module — implementation
|
|
76
94
|
* lives in @descryy/ir's identity module (DEC-NEXT-edge-id-prefix-split). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finding-funnel.js","sourceRoot":"","sources":["../../src/governance/finding-funnel.ts"],"names":[],"mappings":"AAAA;;8GAE8G;AAE9G,OAAO,EAAE,kBAAkB,EAAqC,MAAM,aAAa,CAAC;AAIpF;qGACqG;AACrG,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,yFAAyF;IACzF,WAAW,EAAE,CAAC;IACd,uEAAuE;IACvE,UAAU,EAAE,CAAC;IACb,kCAAkC;IAClC,EAAE,EAAE,CAAC;IACL,oFAAoF;IACpF,OAAO,EAAE,EAAE;CAC+B,CAAC;AAE7C,yEAAyE;AACzE,MAAM,aAAa,GAAmC;IACpD,SAAS,EAAE,CAAC;IACZ,oBAAoB,EAAE,CAAC;IACvB,WAAW,EAAE,CAAC;IACd,gBAAgB,EAAE,CAAC;IACnB,WAAW,EAAE,CAAC;CACf,CAAC;AAEF,8FAA8F;AAC9F,MAAM,aAAa,GAAgC,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"finding-funnel.js","sourceRoot":"","sources":["../../src/governance/finding-funnel.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,4 +8,6 @@ export { ESCALATION_TRIGGERS, checkEscalation } from "./escalation.ts";
|
|
|
8
8
|
export type { EscalationCheckInput, EscalationTrigger } from "./escalation.ts";
|
|
9
9
|
export { runFindingFunnel, findingFingerprint, FINDING_CAPS } from "./finding-funnel.ts";
|
|
10
10
|
export type { FindingFunnelOptions, FindingFunnelResult, FindingTruncation, } from "./finding-funnel.ts";
|
|
11
|
+
export { DEMOTION_GATES, attributeDemotion, buildDemotionLedger } from "./demotion-ledger.ts";
|
|
12
|
+
export type { Demotion, DemotionGate, DemotionLedger, GateTally } from "./demotion-ledger.ts";
|
|
11
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/governance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAErI,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAEnG,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,cAAc,EACd,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvE,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAE/E,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzF,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/governance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAErI,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAEnG,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,cAAc,EACd,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvE,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAE/E,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzF,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/governance/index.js
CHANGED
|
@@ -3,4 +3,5 @@ export { checkCandidateBoundary } from "./candidate-boundary.js";
|
|
|
3
3
|
export { BUDGET_CAP_NAMES, DEFAULT_INVESTIGATION_BUDGET, checkRunBudget, hypothesisRoundLimitReached, } from "./budget.js";
|
|
4
4
|
export { ESCALATION_TRIGGERS, checkEscalation } from "./escalation.js";
|
|
5
5
|
export { runFindingFunnel, findingFingerprint, FINDING_CAPS } from "./finding-funnel.js";
|
|
6
|
+
export { DEMOTION_GATES, attributeDemotion, buildDemotionLedger } from "./demotion-ledger.js";
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/governance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,cAAc,EACd,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAUrB,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGvE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/governance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,cAAc,EACd,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAUrB,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGvE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOzF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/graph/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export type { Mergeable } from "./merge.ts";
|
|
|
7
7
|
export { resolveCrossLanguage, RESOLVER_PRODUCED_BY } from "./cross-language.ts";
|
|
8
8
|
export type { NamespaceDeclaration, CrossLanguageAmbiguity, CrossLanguageResult } from "./cross-language.ts";
|
|
9
9
|
export { applyRuntimeObservations, reapplyEarnedOverlays, observedEdges, edgeCorrections, recordEdgeCorrection, RUNTIME_ADAPTER_ID, RUNTIME_ADAPTER_VERSION, RUNTIME_PRODUCER, } from "./runtime-confirmation.ts";
|
|
10
|
-
export type { Clock, EdgeCorrectionRow, ObservedEdgeRow, RuntimeConfirmationInput, RuntimeConfirmationResult, RuntimeObservationRefusal, StaleR4Observation, } from "./runtime-confirmation.ts";
|
|
10
|
+
export type { Clock, ConfirmedFactConflict, EdgeCorrectionRow, ObservedEdgeRow, RuntimeConfirmationInput, RuntimeConfirmationResult, RuntimeObservationRefusal, StaleR4Observation, } from "./runtime-confirmation.ts";
|
|
11
11
|
export { applyObservedTests, observedTests } from "./observed-tests.ts";
|
|
12
12
|
export type { ObservedTestObservation, ObservedTestOutcome, ObservedTestRefusal, ObservedTestRow, ObservedTestsInput, ObservedTestsResult, } from "./observed-tests.ts";
|
|
13
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEzG,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACjF,YAAY,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE7G,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,KAAK,EACL,iBAAiB,EACjB,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACxE,YAAY,EACV,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEzG,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACjF,YAAY,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE7G,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,KAAK,EACL,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACxE,YAAY,EACV,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC"}
|
package/dist/graph/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAGjF,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAGjF,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAWnC,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -18,6 +18,22 @@ export interface StaleR4Observation {
|
|
|
18
18
|
readonly observedByRun: string | null;
|
|
19
19
|
readonly detail: string;
|
|
20
20
|
}
|
|
21
|
+
/** A denial that lands on an edge `mintEdgesFromConfirmedFacts` wrote from a
|
|
22
|
+
* human's answer (`attrs.humanAsserted`, DEC-223). Structurally separate from
|
|
23
|
+
* the generic `contradictions` bucket on purpose: a human assertion and a
|
|
24
|
+
* fresh runtime observation disagreeing is a different situation from the
|
|
25
|
+
* graph's own static guess being wrong, and this project's rule is that a
|
|
26
|
+
* human assertion is never silently overridden or silently trusted forever —
|
|
27
|
+
* so this only names the collision. It does not pick a winner: the edge is
|
|
28
|
+
* still demoted the same as any other contradicted sub-R4 edge (see the
|
|
29
|
+
* caller), and `attrs.confirmedFacts` on the edge itself is left untouched. */
|
|
30
|
+
export interface ConfirmedFactConflict {
|
|
31
|
+
readonly edgeId: string;
|
|
32
|
+
/** `attrs.confirmedFacts` off the edge, verbatim — the confirmed side of the disagreement. */
|
|
33
|
+
readonly confirmedFacts: readonly Record<string, unknown>[];
|
|
34
|
+
/** The runtime observation's own words — the fresh side of the disagreement. */
|
|
35
|
+
readonly detail: string;
|
|
36
|
+
}
|
|
21
37
|
export interface RuntimeConfirmationInput {
|
|
22
38
|
/** The run that witnessed these observations. Becomes `edges.observed_by_run` and `observed_edges.run_id`. */
|
|
23
39
|
readonly runId: string;
|
|
@@ -36,6 +52,9 @@ export interface RuntimeConfirmationResult {
|
|
|
36
52
|
readonly contradictions: readonly GraphDefectRecord[];
|
|
37
53
|
readonly staleR4: readonly StaleR4Observation[];
|
|
38
54
|
readonly refused: readonly RuntimeObservationRefusal[];
|
|
55
|
+
/** Denials that also collided with a human-confirmed edge. A subset named
|
|
56
|
+
* separately, never merged into `contradictions` — see {@link ConfirmedFactConflict}. */
|
|
57
|
+
readonly confirmedFactConflict: readonly ConfirmedFactConflict[];
|
|
39
58
|
}
|
|
40
59
|
/** One row of the EARNED R4 ledger. */
|
|
41
60
|
export interface ObservedEdgeRow {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-confirmation.d.ts","sourceRoot":"","sources":["../../src/graph/runtime-confirmation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAU,KAAK,QAAQ,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAEzG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,oFAAoF;AACpF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,8GAA8G;IAC9G,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,8IAA8I;IAC9I,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,SAAS,sBAAsB,EAAE,CAAC;CAC1D;AAED,MAAM,WAAW,yBAAyB;IACxC,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,oFAAoF;IACpF,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,iFAAiF;IACjF,QAAQ,CAAC,cAAc,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACtD,QAAQ,CAAC,OAAO,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD,QAAQ,CAAC,OAAO,EAAE,SAAS,yBAAyB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-confirmation.d.ts","sourceRoot":"","sources":["../../src/graph/runtime-confirmation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAU,KAAK,QAAQ,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAEzG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,oFAAoF;AACpF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;gFAQgF;AAChF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,8FAA8F;IAC9F,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAC5D,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,8GAA8G;IAC9G,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,8IAA8I;IAC9I,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,SAAS,sBAAsB,EAAE,CAAC;CAC1D;AAED,MAAM,WAAW,yBAAyB;IACxC,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,oFAAoF;IACpF,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,iFAAiF;IACjF,QAAQ,CAAC,cAAc,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACtD,QAAQ,CAAC,OAAO,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD,QAAQ,CAAC,OAAO,EAAE,SAAS,yBAAyB,EAAE,CAAC;IACvD;8FAC0F;IAC1F,QAAQ,CAAC,qBAAqB,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAClE;AAED,uCAAuC;AACvC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,wDAAwD;AACxD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AASD,qEAAqE;AACrE,MAAM,WAAW,KAAK;IACpB,GAAG,IAAI,MAAM,CAAC;CACf;AAID;;yEAEyE;AACzE,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,wBAAwB,EAC/B,KAAK,GAAE,KAAoB,GAC1B,yBAAyB,CAuF3B;AAED;;;4FAG4F;AAC5F,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,yBAAyB,CAyClF;AAED,+EAA+E;AAC/E,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,eAAe,EAAE,CA0B7G;AAED,wEAAwE;AACxE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,iBAAiB,EAAE,CAYtE;AAED;;sDAEsD;AACtD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAChJ,KAAK,GAAE,KAAoB,GAC1B;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAQ7B;AAkGD,+FAA+F;AAC/F,eAAO,MAAM,kBAAkB,yBAAyB,CAAC;AACzD,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,gBAAgB,2BAAqD,CAAC"}
|
|
@@ -15,6 +15,7 @@ export function applyRuntimeObservations(driver, input, clock = SYSTEM_CLOCK) {
|
|
|
15
15
|
const contradictions = [];
|
|
16
16
|
const staleR4 = [];
|
|
17
17
|
const refused = [];
|
|
18
|
+
const confirmedFactConflict = [];
|
|
18
19
|
const now = clock.now();
|
|
19
20
|
driver.transaction(() => {
|
|
20
21
|
for (const observation of input.observations) {
|
|
@@ -73,9 +74,17 @@ export function applyRuntimeObservations(driver, input, clock = SYSTEM_CLOCK) {
|
|
|
73
74
|
claimedResolution: existing.resolution,
|
|
74
75
|
detail: observation.detail,
|
|
75
76
|
});
|
|
77
|
+
// A human answered this exact edge (DEC-223) and the runtime now disagrees.
|
|
78
|
+
// Named separately from the contradiction above — not auto-resolved, not
|
|
79
|
+
// merged: the demotion above still runs unconditionally (this signal never
|
|
80
|
+
// picks a winner), and `attrs.confirmedFacts` on the edge is left as-is.
|
|
81
|
+
const confirmedFacts = confirmedFactsOf(existing);
|
|
82
|
+
if (confirmedFacts !== null) {
|
|
83
|
+
confirmedFactConflict.push({ edgeId: id, confirmedFacts, detail: observation.detail });
|
|
84
|
+
}
|
|
76
85
|
}
|
|
77
86
|
});
|
|
78
|
-
return { promoted, created, confirmed, contradictions, staleR4, refused };
|
|
87
|
+
return { promoted, created, confirmed, contradictions, staleR4, refused, confirmedFactConflict };
|
|
79
88
|
}
|
|
80
89
|
/** Re-projects the EARNED ledgers onto a freshly rebuilt derived graph — what
|
|
81
90
|
* makes the DEC-017 partition pay. Without this, a re-index silently resets the
|
|
@@ -120,7 +129,7 @@ export function reapplyEarnedOverlays(driver) {
|
|
|
120
129
|
demoteEdge(driver, correction.edgeId);
|
|
121
130
|
}
|
|
122
131
|
});
|
|
123
|
-
return { promoted, created, confirmed, contradictions: [], staleR4: [], refused };
|
|
132
|
+
return { promoted, created, confirmed, contradictions: [], staleR4: [], refused, confirmedFactConflict: [] };
|
|
124
133
|
}
|
|
125
134
|
/** Every row of the EARNED R4 ledger, oldest first, optionally for one run. */
|
|
126
135
|
export function observedEdges(driver, options = {}) {
|
|
@@ -169,9 +178,32 @@ export function recordEdgeCorrection(driver, input, clock = SYSTEM_CLOCK) {
|
|
|
169
178
|
// Internals.
|
|
170
179
|
function readEdge(driver, id) {
|
|
171
180
|
return driver
|
|
172
|
-
.prepare("SELECT id, resolution, observed_by_run FROM edges WHERE id = ?")
|
|
181
|
+
.prepare("SELECT id, resolution, observed_by_run, attrs FROM edges WHERE id = ?")
|
|
173
182
|
.all(id)[0];
|
|
174
183
|
}
|
|
184
|
+
/** The `attrs.confirmedFacts` array off a human-confirmed edge row, or `null`
|
|
185
|
+
* when the edge carries no `attrs.humanAsserted` — the signal that gates
|
|
186
|
+
* {@link ConfirmedFactConflict}. Malformed/missing `attrs` reads as "not
|
|
187
|
+
* human-asserted" rather than throwing — a parse failure here must never
|
|
188
|
+
* block the ordinary demotion path. */
|
|
189
|
+
function confirmedFactsOf(edge) {
|
|
190
|
+
if (edge.attrs === null)
|
|
191
|
+
return null;
|
|
192
|
+
let parsed;
|
|
193
|
+
try {
|
|
194
|
+
parsed = JSON.parse(edge.attrs);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
return null;
|
|
198
|
+
}
|
|
199
|
+
if (typeof parsed !== "object" || parsed === null)
|
|
200
|
+
return null;
|
|
201
|
+
const attrs = parsed;
|
|
202
|
+
if (attrs["humanAsserted"] !== true)
|
|
203
|
+
return null;
|
|
204
|
+
const facts = attrs["confirmedFacts"];
|
|
205
|
+
return Array.isArray(facts) ? facts : [];
|
|
206
|
+
}
|
|
175
207
|
/** The first of `from`/`to` this graph does not hold, or `null` when it holds both. */
|
|
176
208
|
function missingNode(driver, from, to) {
|
|
177
209
|
const statement = driver.prepare("SELECT id FROM nodes WHERE id = ?");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-confirmation.js","sourceRoot":"","sources":["../../src/graph/runtime-confirmation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAsE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-confirmation.js","sourceRoot":"","sources":["../../src/graph/runtime-confirmation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAsE,MAAM,aAAa,CAAC;AA2FzG,MAAM,YAAY,GAAU,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;AAEtD;;yEAEyE;AACzE,MAAM,UAAU,wBAAwB,CACtC,MAAiB,EACjB,KAA+B,EAC/B,QAAe,YAAY;IAE3B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,cAAc,GAAwB,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,MAAM,OAAO,GAAgC,EAAE,CAAC;IAChD,MAAM,qBAAqB,GAA4B,EAAE,CAAC;IAE1D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;IAExB,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE;QACtB,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YAC7C,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC1E,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAEtC,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBACrB,yEAAyE;gBACzE,sDAAsD;gBACtD,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;gBACtE,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,WAAW,CAAC,IAAI;wBACtB,EAAE,EAAE,WAAW,CAAC,EAAE;wBAClB,QAAQ,EAAE,WAAW,CAAC,QAAQ;wBAC9B,MAAM,EACJ,GAAG,OAAO,0CAA0C,WAAW,CAAC,QAAQ,kBAAkB;4BAC1F,qEAAqE;qBACxE,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBAED,kBAAkB,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;gBAExD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,cAAc,CAAC,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;oBACtE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnB,CAAC;qBAAM,IAAI,QAAQ,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;oBACnC,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpB,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrB,CAAC;gBACD,SAAS;YACX,CAAC;YAED,YAAY;YACZ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,EAAE,EAAE,WAAW,CAAC,EAAE;oBAClB,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,MAAM,EACJ,MAAM,WAAW,CAAC,QAAQ,cAAc,WAAW,CAAC,IAAI,OAAO,WAAW,CAAC,EAAE,kBAAkB;wBAC/F,gEAAgE;iBACnE,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YAED,IAAI,QAAQ,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;gBAC7B,wEAAwE;gBACxE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;gBAClG,SAAS;YACX,CAAC;YAED,gBAAgB,CAAC,MAAM,EAAE,EAAE,EAAE,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACtD,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACvB,cAAc,CAAC,IAAI,CAAC;gBAClB,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,EAAE,EAAE,WAAW,CAAC,EAAE;gBAClB,QAAQ,EAAE,WAAW,CAAC,QAAQ;gBAC9B,iBAAiB,EAAE,QAAQ,CAAC,UAAoD;gBAChF,MAAM,EAAE,WAAW,CAAC,MAAM;aAC3B,CAAC,CAAC;YAEH,4EAA4E;YAC5E,yEAAyE;YACzE,2EAA2E;YAC3E,yEAAyE;YACzE,MAAM,cAAc,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAClD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC5B,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACnG,CAAC;AAED;;;4FAG4F;AAC5F,MAAM,UAAU,qBAAqB,CAAC,MAAiB;IACrD,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IAEjF,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAgC,EAAE,CAAC;IAEhD,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE;QACtB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YACtD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,EAAE,EAAE,GAAG,CAAC,EAAE;oBACV,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,MAAM,EAAE,GAAG,OAAO,uCAAuC,GAAG,CAAC,KAAK,mCAAmC;iBACtG,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;gBAClE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC;iBAAM,IAAI,QAAQ,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC3C,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,0EAA0E;YAC1E,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,UAAU,GAAG,CAAC;gBAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,EAAE,EAAE,CAAC;AAC/G,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,aAAa,CAAC,MAAiB,EAAE,UAAuC,EAAE;IACxF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACrE,MAAM,GAAG,GACP,sFAAsF;QACtF,uBAAuB,KAAK,wCAAwC,CAAC;IACvE,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChE,OAAO,MAAM;SACV,OAAO,CAQL,GAAG,CAAC;SACN,GAAG,CAAC,GAAG,IAAI,CAAC;SACZ,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACb,MAAM,EAAE,GAAG,CAAC,OAAO;QACnB,KAAK,EAAE,GAAG,CAAC,MAAM;QACjB,IAAI,EAAE,GAAG,CAAC,YAAY;QACtB,EAAE,EAAE,GAAG,CAAC,UAAU;QAClB,QAAQ,EAAE,GAAG,CAAC,SAAqB;QACnC,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,UAAU,EAAE,GAAG,CAAC,WAAW;KAC5B,CAAC,CAAC,CAAC;AACR,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,OAAO,MAAM;SACV,OAAO,CACN,4GAA4G,CAC7G;SACA,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACb,MAAM,EAAE,GAAG,CAAC,OAAO;QACnB,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;QACpD,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,WAAW,EAAE,GAAG,CAAC,YAAY;KAC9B,CAAC,CAAC,CAAC;AACR,CAAC;AAED;;sDAEsD;AACtD,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,KAAgJ,EAChJ,QAAe,YAAY;IAE3B,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE;QACtB,mBAAmB,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,UAAU,GAAG,CAAC;YAAE,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC7G,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACxB,CAAC;AAED,aAAa;AAEb,SAAS,QAAQ,CAAC,MAAiB,EAAE,EAAU;IAC7C,OAAO,MAAM;SACV,OAAO,CAAU,uEAAuE,CAAC;SACzF,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAChB,CAAC;AAED;;;;wCAIwC;AACxC,SAAS,gBAAgB,CAAC,IAAa;IACrC,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACrC,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/D,MAAM,KAAK,GAAG,MAAiC,CAAC;IAChD,IAAI,KAAK,CAAC,eAAe,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,KAAK,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAmC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED,uFAAuF;AACvF,SAAS,WAAW,CAAC,MAAiB,EAAE,IAAY,EAAE,EAAU;IAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAiB,mCAAmC,CAAC,CAAC;IACtF,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CACzB,MAAiB,EACjB,EAAU,EACV,KAA+B,EAC/B,WAAmC,EACnC,GAAW;IAEX,MAAM;SACH,OAAO,CACN,4GAA4G;QAC1G,+BAA+B;QAC/B,0CAA0C,CAC7C;SACA,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACxG,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAiB,EAAE,EAAU,EAAE,MAAc,EAAE,GAAW;IAClF,mBAAmB,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAiB,EAAE,EAAU,EAAE,OAAe,EAAE,MAAc,EAAE,GAAW;IACtG,MAAM;SACH,OAAO,CACN,2FAA2F;QACzF,2FAA2F;QAC3F,uCAAuC,CAC1C;SACA,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,WAAW,CAAC,MAAiB,EAAE,EAAU,EAAE,KAAa;IAC/D,4EAA4E;IAC5E,MAAM;SACH,OAAO,CAAC,qFAAqF,CAAC;SAC9F,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,UAAU,CAAC,MAAiB,EAAE,EAAU;IAC/C,MAAM,CAAC,OAAO,CAAC,gDAAgD,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,cAAc,CACrB,MAAiB,EACjB,EAAU,EACV,WAAwF,EACxF,KAAa,EACb,SAAiB;IAEjB,8EAA8E;IAC9E,8EAA8E;IAC9E,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACjE,MAAM;SACH,OAAO,CACN,mHAAmH;QACjH,6CAA6C;QAC7C,6GAA6G,CAChH;SACA,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;AAC7G,CAAC;AAED,+FAA+F;AAC/F,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AACzD,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,kBAAkB,IAAI,uBAAuB,EAAE,CAAC;AAEnF,SAAS,gBAAgB,CAAC,MAAiB,EAAE,KAAa,EAAE,SAAiB;IAC3E,MAAM,EAAE,GAAG,WAAW,KAAK,EAAE,CAAC;IAC9B,MAAM;SACH,OAAO,CACN,sGAAsG;QACpG,4DAA4D;QAC5D,kDAAkD;QAClD,6BAA6B,CAChC;SACA,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACjG,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
package/dist/query/index.d.ts
CHANGED
|
@@ -31,4 +31,5 @@ export { rankRootCause, DEFAULT_ROOT_CAUSE_WEIGHTS, ROOT_CAUSE_TRACE_EDGE_TYPES,
|
|
|
31
31
|
export type { RootCauseWeights, RootCauseOptions, RankedRootCauseCandidate, RootCauseRanking, ChangeCouplingEvidence, } from "./root-cause-score.ts";
|
|
32
32
|
export { createResolutionFloor } from "./resolution-floor.ts";
|
|
33
33
|
export type { ResolutionFloor } from "./resolution-floor.ts";
|
|
34
|
+
export { tableForModel, modelsForTable } from "./model-table.ts";
|
|
34
35
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/query/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/query/index.ts"],"names":[],"mappings":"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"}
|
package/dist/query/index.js
CHANGED
|
@@ -15,4 +15,5 @@ export { applyDeclaredValues, DECLARED_VALUE_RELIABILITY } from "./declared-valu
|
|
|
15
15
|
export { describeRowClosures } from "./row-closure-picture.js";
|
|
16
16
|
export { rankRootCause, DEFAULT_ROOT_CAUSE_WEIGHTS, ROOT_CAUSE_TRACE_EDGE_TYPES, INCIDENT_SATURATION } from "./root-cause-score.js";
|
|
17
17
|
export { createResolutionFloor } from "./resolution-floor.js";
|
|
18
|
+
export { tableForModel, modelsForTable } from "./model-table.js";
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
package/dist/query/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAQjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGxG,OAAO,EACL,QAAQ,EACR,eAAe,EACf,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,WAAW,GACZ,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AASrG,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAG3D,OAAO,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAQ7G,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGzE,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIrG,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAO9F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAQ/D,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AASpI,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAQjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGxG,OAAO,EACL,QAAQ,EACR,eAAe,EACf,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,WAAW,GACZ,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AASrG,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAG3D,OAAO,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAQ7G,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGzE,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIrG,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAO9F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAQ/D,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AASpI,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAG9D,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** `MODEL` -> `DATABASE_TABLE`, joined at query time rather than by a stored
|
|
2
|
+
* edge — `DEC-NEXT-database-table-column-traversability-vs-queryability.md`
|
|
3
|
+
* rules that queryability, not a new edge type, is what these checks need.
|
|
4
|
+
*
|
|
5
|
+
* `databaseTableNodesFromModel` (`@descryy/ir`, DEC-240) mints every
|
|
6
|
+
* `DATABASE_TABLE` node's id deterministically from
|
|
7
|
+
* `nodeId(scope, "DATABASE_TABLE", tableQsp(schema, table), null)` — with
|
|
8
|
+
* `language: null` unconditionally, specifically so an ORM-derived producer
|
|
9
|
+
* and a raw-DDL-derived producer land on the identical id for the same real
|
|
10
|
+
* table, with no coordination between them. A `MODEL` node's `attrs.table`
|
|
11
|
+
* (and optional `attrs.schema`) is the literal table name it declares — a
|
|
12
|
+
* model refuses rather than guesses if it can't determine one, so this is
|
|
13
|
+
* always single-valued, never ambiguous. Recomputing the same id from those
|
|
14
|
+
* attrs and looking it up is therefore an O(1) exact match, no scan, no
|
|
15
|
+
* fuzzy string comparison — the same "relationship read from attrs at query
|
|
16
|
+
* time, not stored" precedent as `contracts/orphans.ts`'s `keyOf()`. */
|
|
17
|
+
import { type IdentityScope, type IRNode } from "@descryy/ir";
|
|
18
|
+
import type { AdjacencyProvider } from "./provider.ts";
|
|
19
|
+
/** A `MODEL` node's `DATABASE_TABLE` counterpart, or `undefined` when the
|
|
20
|
+
* model names no table, or when the table it names was never observed in
|
|
21
|
+
* this graph (no adapter emitted it, or it belongs to a different scope).
|
|
22
|
+
* Both are real, disclosable gaps — never an error. `scope` must be the
|
|
23
|
+
* same `IdentityScope` the graph was built with; `DATABASE_TABLE` is
|
|
24
|
+
* workspace-scoped (`NODE_SCOPE`), so a mismatched scope silently misses. */
|
|
25
|
+
export declare function tableForModel(provider: AdjacencyProvider, model: IRNode, scope: IdentityScope): IRNode | undefined;
|
|
26
|
+
/** The reverse direction: every `MODEL` node in this graph whose declared
|
|
27
|
+
* table resolves to `table`. Real and legitimate to be more than one — two
|
|
28
|
+
* ORM entities intentionally sharing a table is not an error, just a fact
|
|
29
|
+
* to enumerate correctly. O(models enumerated); there is no stored edge to
|
|
30
|
+
* walk in the other direction. */
|
|
31
|
+
export declare function modelsForTable(provider: AdjacencyProvider, table: IRNode, scope: IdentityScope, limit?: number): {
|
|
32
|
+
readonly models: readonly IRNode[];
|
|
33
|
+
readonly truncated: boolean;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=model-table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-table.d.ts","sourceRoot":"","sources":["../../src/query/model-table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;yEAeyE;AAEzE,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,MAAM,EACZ,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,iBAAiB,EAAW,MAAM,eAAe,CAAC;AAYhE;;;;;8EAK8E;AAC9E,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,GACnB,MAAM,GAAG,SAAS,CAGpB;AAED;;;;mCAImC;AACnC,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,KAAK,CAAC,EAAE,MAAM,GACb;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAIrE"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/** `MODEL` -> `DATABASE_TABLE`, joined at query time rather than by a stored
|
|
2
|
+
* edge — `DEC-NEXT-database-table-column-traversability-vs-queryability.md`
|
|
3
|
+
* rules that queryability, not a new edge type, is what these checks need.
|
|
4
|
+
*
|
|
5
|
+
* `databaseTableNodesFromModel` (`@descryy/ir`, DEC-240) mints every
|
|
6
|
+
* `DATABASE_TABLE` node's id deterministically from
|
|
7
|
+
* `nodeId(scope, "DATABASE_TABLE", tableQsp(schema, table), null)` — with
|
|
8
|
+
* `language: null` unconditionally, specifically so an ORM-derived producer
|
|
9
|
+
* and a raw-DDL-derived producer land on the identical id for the same real
|
|
10
|
+
* table, with no coordination between them. A `MODEL` node's `attrs.table`
|
|
11
|
+
* (and optional `attrs.schema`) is the literal table name it declares — a
|
|
12
|
+
* model refuses rather than guesses if it can't determine one, so this is
|
|
13
|
+
* always single-valued, never ambiguous. Recomputing the same id from those
|
|
14
|
+
* attrs and looking it up is therefore an O(1) exact match, no scan, no
|
|
15
|
+
* fuzzy string comparison — the same "relationship read from attrs at query
|
|
16
|
+
* time, not stored" precedent as `contracts/orphans.ts`'s `keyOf()`. */
|
|
17
|
+
import { DEFAULT_MODEL_SCHEMA, nodeId, tableQsp, } from "@descryy/ir";
|
|
18
|
+
/** The table id a `MODEL` node's own declared shape computes to, or
|
|
19
|
+
* `undefined` when it names no table — refused rather than guessed at mint
|
|
20
|
+
* time (`model-tables.ts`), so this is a real absence, not a lookup miss. */
|
|
21
|
+
function declaredTableId(model, scope) {
|
|
22
|
+
const table = model.attrs["table"];
|
|
23
|
+
if (typeof table !== "string" || table === "")
|
|
24
|
+
return undefined;
|
|
25
|
+
const schema = typeof model.attrs["schema"] === "string" ? model.attrs["schema"] : DEFAULT_MODEL_SCHEMA;
|
|
26
|
+
return nodeId(scope, "DATABASE_TABLE", tableQsp(schema, table), null);
|
|
27
|
+
}
|
|
28
|
+
/** A `MODEL` node's `DATABASE_TABLE` counterpart, or `undefined` when the
|
|
29
|
+
* model names no table, or when the table it names was never observed in
|
|
30
|
+
* this graph (no adapter emitted it, or it belongs to a different scope).
|
|
31
|
+
* Both are real, disclosable gaps — never an error. `scope` must be the
|
|
32
|
+
* same `IdentityScope` the graph was built with; `DATABASE_TABLE` is
|
|
33
|
+
* workspace-scoped (`NODE_SCOPE`), so a mismatched scope silently misses. */
|
|
34
|
+
export function tableForModel(provider, model, scope) {
|
|
35
|
+
const tableId = declaredTableId(model, scope);
|
|
36
|
+
return tableId === undefined ? undefined : provider.node(tableId);
|
|
37
|
+
}
|
|
38
|
+
/** The reverse direction: every `MODEL` node in this graph whose declared
|
|
39
|
+
* table resolves to `table`. Real and legitimate to be more than one — two
|
|
40
|
+
* ORM entities intentionally sharing a table is not an error, just a fact
|
|
41
|
+
* to enumerate correctly. O(models enumerated); there is no stored edge to
|
|
42
|
+
* walk in the other direction. */
|
|
43
|
+
export function modelsForTable(provider, table, scope, limit) {
|
|
44
|
+
const set = limit === undefined ? provider.nodesOfType("MODEL") : provider.nodesOfType("MODEL", limit);
|
|
45
|
+
const models = set.nodes.filter((model) => declaredTableId(model, scope) === table.id);
|
|
46
|
+
return { models, truncated: set.truncated };
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=model-table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-table.js","sourceRoot":"","sources":["../../src/query/model-table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;yEAeyE;AAEzE,OAAO,EACL,oBAAoB,EACpB,MAAM,EACN,QAAQ,GAGT,MAAM,aAAa,CAAC;AAIrB;;8EAE8E;AAC9E,SAAS,eAAe,CAAC,KAAa,EAAE,KAAoB;IAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAChE,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC;IACxG,OAAO,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;;8EAK8E;AAC9E,MAAM,UAAU,aAAa,CAC3B,QAA2B,EAC3B,KAAa,EACb,KAAoB;IAEpB,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9C,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACpE,CAAC;AAED;;;;mCAImC;AACnC,MAAM,UAAU,cAAc,CAC5B,QAA2B,EAC3B,KAAa,EACb,KAAoB,EACpB,KAAc;IAEd,MAAM,GAAG,GAAY,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAChH,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;IACvF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;AAC9C,CAAC"}
|
package/dist/query/queries.d.ts
CHANGED
|
@@ -33,7 +33,7 @@ export declare function testsCovering(provider: AdjacencyProvider, nodeId: strin
|
|
|
33
33
|
}): QueryResult<IRNode[]>;
|
|
34
34
|
/** Edge types that carry data, not control. Exported so a caller
|
|
35
35
|
* disclosing "what it walked" names this same list — a second copy would drift. */
|
|
36
|
-
export declare const DATA_FLOW_EDGE_TYPES: readonly ["PROPAGATES_TO", "READS", "
|
|
36
|
+
export declare const DATA_FLOW_EDGE_TYPES: readonly ["PROPAGATES_TO", "READS", "ASSIGNS", "RETURNS"];
|
|
37
37
|
export declare function dataFlowFrom(provider: AdjacencyProvider, nodeId: string, options?: TraversalOptions): QueryResult<{
|
|
38
38
|
node: IRNode;
|
|
39
39
|
depth: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../src/query/queries.ts"],"names":[],"mappings":"AAAA;;;;0EAI0E;AAE1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAmB,MAAM,aAAa,CAAC;AAIrE,OAAO,KAAK,EAAE,iBAAiB,EAAc,WAAW,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAA4C,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAwChG,MAAM,WAAW,aAAc,SAAQ,gBAAgB;IACrD,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,KAAK,MAAM,CAAC;IAC9E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,GAAE,aAAkB,GAC1B,WAAW,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAiB/D;AAID,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;CACxB;AAED;;oFAEoF;AACpF,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,iBAAiB,EAC3B,MAAM,EAAE,MAAM,GACb,WAAW,CAAC,cAAc,EAAE,CAAC,CAqB/B;AAeD,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,iBAAiB,EAC3B,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GACnD,WAAW,CAAC,MAAM,EAAE,CAAC,CA4BvB;AAID;oFACoF;AACpF,eAAO,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../src/query/queries.ts"],"names":[],"mappings":"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"}
|
package/dist/query/queries.js
CHANGED
|
@@ -105,7 +105,7 @@ export function testsCovering(provider, nodeId, options = {}) {
|
|
|
105
105
|
// 4. Data flow — "where does this field end up?"
|
|
106
106
|
/** Edge types that carry data, not control. Exported so a caller
|
|
107
107
|
* disclosing "what it walked" names this same list — a second copy would drift. */
|
|
108
|
-
export const DATA_FLOW_EDGE_TYPES = ["PROPAGATES_TO", "READS", "
|
|
108
|
+
export const DATA_FLOW_EDGE_TYPES = ["PROPAGATES_TO", "READS", "ASSIGNS", "RETURNS"];
|
|
109
109
|
export function dataFlowFrom(provider, nodeId, options = {}) {
|
|
110
110
|
const outcome = bfs(provider, [nodeId], {
|
|
111
111
|
direction: "out",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/query/queries.ts"],"names":[],"mappings":"AAAA;;;;0EAI0E;AAI1E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAuC,MAAM,eAAe,CAAC;AAEhG,SAAS,QAAQ,CACf,QAA2B,EAC3B,eAAgC;IAEhC,OAAO,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,eAAe,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,MAAM,CACb,QAA2B,EAC3B,IAAO,EACP,eAAgC,EAChC,SAAkB,EAClB,KAAe;IAEf,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CACR,kFAAkF;YAChF,kDAAkD,CACrD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAChF,CAAC;AAED,8EAA8E;AAC9E,SAAS,OAAO,CACd,QAA2B,EAC3B,OAA2B;IAE3B,MAAM,GAAG,GAAqD,EAAE,CAAC;IACjE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,SAAS;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAUD,MAAM,UAAU,QAAQ,CACtB,QAA2B,EAC3B,KAAwB,EACxB,UAAyB,EAAE;IAE3B,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE;QAC3C,SAAS,EAAE,IAAI;QACf,GAAG,OAAO;QACV,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;KAC7E,CAAC,CAAC;IACH,wEAAwE;IACxE,8EAA8E;IAC9E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,CAAC,eAAe,IAAI,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CACR,6DAA6D,OAAO,CAAC,eAAe,IAAI;YACtF,+EAA+E;YAC/E,4CAA4C,CAC/C,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACjH,CAAC;AASD;;oFAEoF;AACpF,MAAM,UAAU,eAAe,CAC7B,QAA2B,EAC3B,MAAc;IAEd,MAAM,KAAK,GAAe,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,6EAA6E;IAC7E,gDAAgD;IAChD,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;IAEtC,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC;QACtG,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,SAAS;YAAE,SAAS;QACjC,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa;YAAE,SAAS;QACtE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE;QACrD,uFAAuF;YACrF,uFAAuF;YACvF,2CAA2C;KAC9C,CAAC,CAAC;AACL,CAAC;AAED,+CAA+C;AAE/C;;;;+BAI+B;AAC/B,SAAS,kBAAkB,CAAC,QAA2B,EAAE,MAAc;IACrE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,WAAW;QAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,QAA2B,EAC3B,MAAc,EACd,UAAkD,EAAE;IAEpD,sEAAsE;IACtE,4EAA4E;IAC5E,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;QAClE,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC;QAC/B,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;KACpE,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SAClB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,CAAC,eAAe,IAAI,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CACR,4BAA4B,OAAO,CAAC,eAAe,yCAAyC;YAC1F,uFAAuF,CAC1F,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CACR,wFAAwF;YACtF,oDAAoD,CACvD,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACpF,CAAC;AAED,iDAAiD;AAEjD;oFACoF;AACpF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/query/queries.ts"],"names":[],"mappings":"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"}
|
package/dist/scoping/weights.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"weights.js","sourceRoot":"","sources":["../../src/scoping/weights.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAiB,MAAM,aAAa,CAAC;AAExD,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAqB,MAAM,aAAa,CAAC;AAmBxF;uEACuE;AACvE,MAAM,CAAC,MAAM,oBAAoB,GAAuC;IACtE,8DAA8D;IAC9D,KAAK,EAAE,IAAI;IACX,aAAa,EAAE,IAAI;IACnB,UAAU,EAAE,GAAG;IACf,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,IAAI;IACb,
|
|
1
|
+
{"version":3,"file":"weights.js","sourceRoot":"","sources":["../../src/scoping/weights.ts"],"names":[],"mappings":"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"}
|
package/dist/tiers/ladder.js
CHANGED
|
@@ -92,7 +92,7 @@ const S_REQUIREMENTS = [
|
|
|
92
92
|
kind: "capability",
|
|
93
93
|
statement: "models and their storage are in the graph, so propagation reaches the database",
|
|
94
94
|
nodeTypes: ["MODEL"],
|
|
95
|
-
edgeTypes: ["READS", "
|
|
95
|
+
edgeTypes: ["READS", "ASSIGNS"],
|
|
96
96
|
},
|
|
97
97
|
{
|
|
98
98
|
id: "S.corpus-r3",
|
package/dist/tiers/ladder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ladder.js","sourceRoot":"","sources":["../../src/tiers/ladder.ts"],"names":[],"mappings":"AAAA;;;;8EAI8E;AAM9E,iFAAiF;AACjF,MAAM,CAAC,MAAM,KAAK,GAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAoB3D,qEAAqE;AACrE,6EAA6E;AAC7E,kFAAkF;AAElF,MAAM,cAAc,GAA2B;IAC7C;QACE,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,yCAAyC;QACpD,oEAAoE;QACpE,qEAAqE;QACrE,kFAAkF;QAClF,SAAS,EAAE,CAAC,QAAQ,CAAC;KACtB;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,qCAAqC;QAChD,aAAa,EAAE,CAAC;KACjB;CACF,CAAC;AAEF,MAAM,cAAc,GAA2B;IAC7C;QACE,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,wEAAwE;QACnF,SAAS,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;QAChC,SAAS,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;KAChC;IACD;QACE,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,uEAAuE;QAClF,SAAS,EAAE,CAAC,WAAW,CAAC;QACxB,SAAS,EAAE,CAAC,OAAO,CAAC;KACrB;IACD;QACE,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,+DAA+D;QAC1E,aAAa,EAAE,CAAC;KACjB;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,qCAAqC;QAChD,aAAa,EAAE,CAAC;KACjB;CACF,CAAC;AAEF,MAAM,cAAc,GAA2B;IAC7C;QACE,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,uEAAuE;QAClF,SAAS,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC;QACxC,SAAS,EAAE,CAAC,YAAY,CAAC;KAC1B;IACD;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,oFAAoF;QAC/F,SAAS,EAAE,CAAC,UAAU,CAAC;KACxB;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,UAAU;QAChB,SAAS,EACP,2GAA2G;KAC9G;CACF,CAAC;AAEF,MAAM,cAAc,GAA2B;IAC7C;QACE,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,wFAAwF;QACnG,aAAa,EAAE,CAAC;KACjB;IACD;QACE,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,oFAAoF;QAC/F,SAAS,EAAE,CAAC,KAAK,CAAC;QAClB,SAAS,EAAE,CAAC,WAAW,CAAC;KACzB;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,gFAAgF;QAC3F,SAAS,EAAE,CAAC,OAAO,CAAC;QACpB,SAAS,EAAE,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ladder.js","sourceRoot":"","sources":["../../src/tiers/ladder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@descryy/core",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Descry graph engine: storage, graph builder, query layer, traversal, diff scoping, git source, MCP server.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -33,6 +33,6 @@
|
|
|
33
33
|
"build": "tsc -b"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@descryy/ir": "0.6.
|
|
36
|
+
"@descryy/ir": "0.6.3"
|
|
37
37
|
}
|
|
38
38
|
}
|