audit-tools 0.35.7 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/audit/clarification/blastRadius.d.ts +5 -6
  2. package/dist/audit/clarification/blastRadius.d.ts.map +1 -1
  3. package/dist/audit/clarification/blastRadius.js +18 -5
  4. package/dist/audit/clarification/blastRadius.js.map +1 -1
  5. package/dist/audit/clarification/partition.d.ts.map +1 -1
  6. package/dist/audit/clarification/partition.js +5 -4
  7. package/dist/audit/clarification/partition.js.map +1 -1
  8. package/dist/audit/cli/charterClarificationPrompt.d.ts.map +1 -1
  9. package/dist/audit/cli/charterClarificationPrompt.js +34 -11
  10. package/dist/audit/cli/charterClarificationPrompt.js.map +1 -1
  11. package/dist/audit/cli/charterDeltaPrompt.d.ts +10 -7
  12. package/dist/audit/cli/charterDeltaPrompt.d.ts.map +1 -1
  13. package/dist/audit/cli/charterDeltaPrompt.js +75 -19
  14. package/dist/audit/cli/charterDeltaPrompt.js.map +1 -1
  15. package/dist/audit/cli/charterExtractionPrompt.d.ts +24 -15
  16. package/dist/audit/cli/charterExtractionPrompt.d.ts.map +1 -1
  17. package/dist/audit/cli/charterExtractionPrompt.js +80 -87
  18. package/dist/audit/cli/charterExtractionPrompt.js.map +1 -1
  19. package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
  20. package/dist/audit/cli/conceptualDispatch.js +5 -1
  21. package/dist/audit/cli/conceptualDispatch.js.map +1 -1
  22. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  23. package/dist/audit/cli/nextStepCommand.js +17 -7
  24. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  25. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  26. package/dist/audit/cli/nextStepHelpers.js +38 -21
  27. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  28. package/dist/audit/extractors/commentDecomposition.d.ts +8 -6
  29. package/dist/audit/extractors/commentDecomposition.d.ts.map +1 -1
  30. package/dist/audit/extractors/commentDecomposition.js +56 -10
  31. package/dist/audit/extractors/commentDecomposition.js.map +1 -1
  32. package/dist/audit/io/artifacts.d.ts.map +1 -1
  33. package/dist/audit/io/artifacts.js +15 -1
  34. package/dist/audit/io/artifacts.js.map +1 -1
  35. package/dist/audit/orchestrator/charterDeltaExecutor.d.ts.map +1 -1
  36. package/dist/audit/orchestrator/charterDeltaExecutor.js +19 -2
  37. package/dist/audit/orchestrator/charterDeltaExecutor.js.map +1 -1
  38. package/dist/audit/orchestrator/charterExtractionExecutor.d.ts.map +1 -1
  39. package/dist/audit/orchestrator/charterExtractionExecutor.js +19 -4
  40. package/dist/audit/orchestrator/charterExtractionExecutor.js.map +1 -1
  41. package/dist/audit/orchestrator/charterPackets.d.ts +44 -0
  42. package/dist/audit/orchestrator/charterPackets.d.ts.map +1 -0
  43. package/dist/audit/orchestrator/charterPackets.js +217 -0
  44. package/dist/audit/orchestrator/charterPackets.js.map +1 -0
  45. package/dist/audit/orchestrator/dependencyMap.d.ts.map +1 -1
  46. package/dist/audit/orchestrator/dependencyMap.js +9 -4
  47. package/dist/audit/orchestrator/dependencyMap.js.map +1 -1
  48. package/dist/audit/orchestrator/dependencySlices.d.ts +0 -15
  49. package/dist/audit/orchestrator/dependencySlices.d.ts.map +1 -1
  50. package/dist/audit/orchestrator/dependencySlices.js +32 -23
  51. package/dist/audit/orchestrator/dependencySlices.js.map +1 -1
  52. package/dist/audit/orchestrator/designReviewPrompt.js +1 -1
  53. package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
  54. package/dist/audit/types/charterRegister.d.ts +46 -14
  55. package/dist/audit/types/charterRegister.d.ts.map +1 -1
  56. package/dist/audit/types/charterRegister.js +11 -1
  57. package/dist/audit/types/charterRegister.js.map +1 -1
  58. package/dist/audit/validation/artifacts.d.ts.map +1 -1
  59. package/dist/audit/validation/artifacts.js +1 -19
  60. package/dist/audit/validation/artifacts.js.map +1 -1
  61. package/dist/shared/decompose/charterExtraction.d.ts +285 -143
  62. package/dist/shared/decompose/charterExtraction.d.ts.map +1 -1
  63. package/dist/shared/decompose/charterExtraction.js +340 -99
  64. package/dist/shared/decompose/charterExtraction.js.map +1 -1
  65. package/dist/shared/index.d.ts +2 -2
  66. package/dist/shared/index.d.ts.map +1 -1
  67. package/dist/shared/index.js +1 -1
  68. package/dist/shared/index.js.map +1 -1
  69. package/dist/shared/types/charter.d.ts +109 -34
  70. package/dist/shared/types/charter.d.ts.map +1 -1
  71. package/dist/shared/types/charter.js +87 -22
  72. package/dist/shared/types/charter.js.map +1 -1
  73. package/dist/shared/types/intentCheckpoint.d.ts +9 -196
  74. package/dist/shared/types/intentCheckpoint.d.ts.map +1 -1
  75. package/dist/shared/types/intentCheckpoint.js +10 -13
  76. package/dist/shared/types/intentCheckpoint.js.map +1 -1
  77. package/package.json +1 -1
@@ -1,33 +1,54 @@
1
1
  // The charter layer of the conceptual design-review — assemble a gated charter
2
- // register from a host LLM submission (Phase C; design of record
3
- // spec/conceptual-design-review-design.md §"The four charters" + §"The True
2
+ // register from host LLM submissions (Phase C; design of record
3
+ // spec/conceptual-design-review-design.md §"The estimator charters" + §"The True
4
4
  // charter needs hard gates").
5
5
  //
6
- // Division of labour ([[contract-authoring-determinism-direction]]): the LLM emits
7
- // JUDGMENT (per consensus subsystem, the four charter families in telos terms +
8
- // the interpreted pairwise deltas it sees); this module is the deterministic
9
- // ENFORCEMENT half it assigns stable ids, derives each delta's kind + routing
10
- // from its charter pair (the design's routing table, never host discretion), runs
11
- // the Phase-A hard gates (applyTrueCharterGate drops un-falsifiable True;
12
- // gateCharterDelta forces a low-confidence side to the human channel), grounds
13
- // every subsystem against the Phase-B consensus scaffold, and surfaces the
6
+ // Division of labour ([[contract-authoring-determinism-direction]]): each blind
7
+ // LANE emits JUDGMENT a self-organized leveled teleology whose nodes carry FILE
8
+ // SCOPES (purpose in telos terms + premise height + the files it claims to
9
+ // describe); the independent delta miner emits the channel-pair gaps it sees plus
10
+ // a triangulated telos per subsystem. This module is the deterministic
11
+ // ENFORCEMENT half it grounds every file scope against the repo universe,
12
+ // JOINS the per-kind teleologies to each other and to the decomposition HINT by
13
+ // file-set overlap (the decomposition is a scaffold suggestion, never a forced
14
+ // node list), selects each unit's per-kind charter mechanically, derives each
15
+ // delta's kind + routing from its channel pair (the design's routing table, never
16
+ // host discretion), runs the Phase-A hard gates (applyTrueCharterGate drops
17
+ // un-falsifiable True; gateCharterDelta forces a low-confidence side to the human
18
+ // channel), computes the per-channel-pair disagreement density, and surfaces the
14
19
  // surviving deltas as Finding leads for synthesis. PURE + deterministic +
15
- // language-neutral (operates on abstract node-id partitions + telos strings, no
20
+ // language-neutral (operates on abstract file-path scopes + telos strings, no
16
21
  // IO): provenance-on-disk grounding is the ingest's concern, not this module's.
17
22
  import { z } from "zod";
18
- import { CharterSchema, CharterKindSchema, GoalGraphSchema, } from "../types/charter.js";
23
+ import { CharterSchema, CharterKindSchema, CharterConfidenceSchema, CharterProvenanceSchema, GoalGraphSchema, TeleologyNodeSchema, TriangulatedTelosSchema, } from "../types/charter.js";
19
24
  import { applyTrueCharterGate, gateCharterDelta, } from "../validation/charterGate.js";
20
- // ── Submission contract (what the host LLM writes to incoming/) ────────────────
25
+ // ── Submission contracts (what the host LLM writes to incoming/) ───────────────
21
26
  /**
22
- * A single charter as the host emits it the persisted `Charter` minus its
23
- * `charter_id`, which the tool assigns deterministically (`node_id:kind`) so
24
- * charter identity can never drift from the host's free choice.
27
+ * One teleology node as a lane emits it: a charter statement WITH its file scope
28
+ * and emergent level (the `TeleologyNodeSchema` fields, single-sourced minus
29
+ * `purpose`, which the charter half already carries). The tool assigns unit
30
+ * membership and `charter_id` — the host never picks a join key beyond the
31
+ * content-derived file scope itself.
25
32
  */
26
- const CharterInputSchema = CharterSchema.omit({ charter_id: true });
33
+ const CharterNodeInputSchema = CharterSchema.omit({ charter_id: true })
34
+ .extend(TeleologyNodeSchema.omit({ purpose: true }).shape)
35
+ .strict();
27
36
  /**
28
- * A delta as the host emits it: the symmetric charter-kind `pair` it sees a gap
37
+ * The charter-EXTRACTION submission (Phase C.1): ONE blind lane's self-organized
38
+ * teleology. Deltas are NOT authored here — the independent delta miner mines
39
+ * them in a second pass over the joined charters, so no author marks its own
40
+ * homework. Lanes from every kind are merged (concatenated) before assembly;
41
+ * the join is by file-set overlap, so lanes never need to agree on node ids.
42
+ */
43
+ export const CharterSubmissionSchema = z
44
+ .object({
45
+ nodes: z.array(CharterNodeInputSchema).default([]),
46
+ })
47
+ .strict();
48
+ /**
49
+ * A delta as the miner emits it: the symmetric channel `pair` it sees a gap
29
50
  * across + the interpreted `summary` of that gap. The tool derives `kind`,
30
- * `routed_to`, and `delta_id` — the host never picks the routing (that is the
51
+ * `routed_to`, and `delta_id` — the miner never picks the routing (that is the
31
52
  * design's fixed table, enforced here).
32
53
  */
33
54
  const CharterDeltaInputSchema = z
@@ -36,47 +57,50 @@ const CharterDeltaInputSchema = z
36
57
  summary: z.string(),
37
58
  })
38
59
  .strict();
39
- /** One reviewed subsystem's charters (extraction phase — charters only). */
40
- const CharterSubsystemInputSchema = z
60
+ /** One subsystem's mined deltas (delta phase). */
61
+ const CharterDeltaSubsystemInputSchema = z
41
62
  .object({
42
63
  node_id: z.string(),
43
- charters: z.array(CharterInputSchema),
64
+ deltas: z.array(CharterDeltaInputSchema).default([]),
44
65
  })
45
66
  .strict();
46
67
  /**
47
- * The charter-EXTRACTION submission (Phase C.1): per consensus subsystem, its
48
- * charters. Deltas are NOT authored here an independent delta-miner mines them in
49
- * a second pass over the assembled charters, so no author marks its own homework and
50
- * `revealed` can be extracted blind to `stated`. Multiple entries sharing a
51
- * `node_id` (one per independent per-kind extractor) are merged at assembly.
68
+ * A True nomination as the miner emits it — downstream of triangulation, at the
69
+ * `deepest` ceiling only (the assembly refuses them otherwise; the consent gate
70
+ * moved here when `true` stopped being an extraction lane). Falsifiable-or-drop:
71
+ * `applyTrueCharterGate` enforces the concrete alternative + concrete cost.
52
72
  */
53
- export const CharterSubmissionSchema = z
54
- .object({
55
- subsystems: z.array(CharterSubsystemInputSchema).default([]),
56
- })
57
- .strict();
58
- /** One subsystem's mined deltas (delta phase). */
59
- const CharterDeltaSubsystemInputSchema = z
73
+ const TrueNominationInputSchema = z
60
74
  .object({
61
75
  node_id: z.string(),
62
- deltas: z.array(CharterDeltaInputSchema).default([]),
76
+ /** The nominated ideal, in telos terms. */
77
+ purpose: z.string(),
78
+ nominated_alternative: z.string(),
79
+ nominated_cost: z.string(),
80
+ confidence: CharterConfidenceSchema,
81
+ /** May be empty — the ideal cites no source. */
82
+ provenance: z.array(CharterProvenanceSchema).default([]),
63
83
  })
64
84
  .strict();
65
85
  /**
66
- * The charter-DELTA submission (Phase C.2): the independent delta-miner's pairwise
67
- * gaps across the already-assembled charters, plus the goal DAG it reads off all
68
- * subsystems (it is the only pass that sees every merged subsystem, so it owns
69
- * `goal_graph`).
86
+ * The charter-DELTA submission (Phase C.2): the independent miner's channel-pair
87
+ * gaps across the already-joined charters, its TRIANGULATED TELOS per subsystem
88
+ * (a unified opinion the owner reacts to a lead, never a reconciliation), any
89
+ * True nominations (deepest only), plus the goal DAG it reads off all subsystems
90
+ * (it is the only pass that sees every joined unit, so it owns `goal_graph`).
70
91
  */
71
92
  export const CharterDeltaSubmissionSchema = z
72
93
  .object({
73
94
  subsystems: z.array(CharterDeltaSubsystemInputSchema).default([]),
95
+ triangulated: z.array(TriangulatedTelosSchema).default([]),
96
+ true_nominations: z.array(TrueNominationInputSchema).default([]),
74
97
  goal_graph: GoalGraphSchema.optional(),
75
98
  /**
76
99
  * Explicit clean affirmation — "I mined every subsystem and found no deltas."
77
100
  * REQUIRED when the submission carries zero deltas, and REFUSED alongside any
78
101
  * delta, so a dead miner (which submits nothing) can never be mistaken for a
79
102
  * clean one (same contract as `reviewed_clean` on a zero-finding AuditResult).
103
+ * Keyed to DELTAS only: a clean mine may still carry triangulated teloses.
80
104
  */
81
105
  no_deltas: z.boolean().optional(),
82
106
  })
@@ -99,38 +123,50 @@ export const CharterDeltaSubmissionSchema = z
99
123
  });
100
124
  }
101
125
  });
102
- // ── Deterministic routing table (design §"The four charters") ──────────────────
126
+ // ── Deterministic routing table (design §"The estimator charters") ─────────────
103
127
  /**
104
128
  * Canonical charter-kind order — pairs are sorted by this so `[stated, revealed]`
105
129
  * and `[revealed, stated]` map to one key (the deltas are symmetric).
106
130
  */
107
- const KIND_ORDER = ["stated", "inferred", "revealed", "true"];
131
+ const KIND_ORDER = ["stated", "structural", "revealed", "true"];
108
132
  function canonicalPair(pair) {
109
133
  return [...pair].sort((a, b) => KIND_ORDER.indexOf(a) - KIND_ORDER.indexOf(b));
110
134
  }
111
135
  /**
112
136
  * The design's routing table, keyed by canonical `pair` — who acts on each gap.
113
- * A pair OUTSIDE this table has no defined owner and is a validation issue (the
114
- * tool never invents a route). `severity` ranks the surfaced lead: a wrong-goal
115
- * provocation is the highest-blast, an unstated assumption the lowest.
137
+ * Every ESTIMATOR pair has one defined meaning; `true` pairs exist only for the
138
+ * miner's deepest-rung nominations. A pair OUTSIDE this table has no defined
139
+ * owner and is a validation issue (the tool never invents a route). `severity`
140
+ * ranks the surfaced lead: a wrong-goal provocation is the highest-blast, doc
141
+ * rot the lowest.
116
142
  */
117
143
  const DELTA_ROUTES = {
118
- "stated|inferred": {
119
- kind: "unstated_assumption",
120
- routed_to: "clarification",
144
+ "stated|structural": {
145
+ kind: "doc_rot",
146
+ routed_to: "remediator",
121
147
  severity: "low",
122
148
  },
123
149
  "stated|revealed": {
124
- kind: "spec_drift",
150
+ kind: "says_does_drift",
125
151
  routed_to: "remediator",
126
152
  severity: "medium",
127
153
  },
128
- "revealed|true": {
154
+ "structural|revealed": {
155
+ kind: "architecture_betrayal",
156
+ routed_to: "clarification",
157
+ severity: "medium",
158
+ },
159
+ "stated|true": {
129
160
  kind: "wrong_goal",
130
161
  routed_to: "human",
131
162
  severity: "high",
132
163
  },
133
- "stated|true": {
164
+ "structural|true": {
165
+ kind: "wrong_goal",
166
+ routed_to: "human",
167
+ severity: "high",
168
+ },
169
+ "revealed|true": {
134
170
  kind: "wrong_goal",
135
171
  routed_to: "human",
136
172
  severity: "high",
@@ -141,76 +177,245 @@ function weakerConfidence(a, b) {
141
177
  const rank = { high: 2, medium: 1, low: 0 };
142
178
  return rank[a.confidence] <= rank[b.confidence] ? a.confidence : b.confidence;
143
179
  }
144
- // ── Assembly ───────────────────────────────────────────────────────────────────
180
+ // ── Assembly: the file-set-overlap JOIN (Phase C.1) ────────────────────────────
181
+ /** Stable content-derived node order so assembly never depends on input order. */
182
+ function sortNodeInputs(nodes) {
183
+ return [...nodes].sort((a, b) => KIND_ORDER.indexOf(a.kind) - KIND_ORDER.indexOf(b.kind) ||
184
+ a.premise_height - b.premise_height ||
185
+ a.purpose.localeCompare(b.purpose) ||
186
+ (a.files[0] ?? "").localeCompare(b.files[0] ?? ""));
187
+ }
188
+ /** Sorted intersection size of a node's files against a member set. */
189
+ function overlapSize(files, members) {
190
+ let n = 0;
191
+ for (const f of files)
192
+ if (members.has(f))
193
+ n += 1;
194
+ return n;
195
+ }
145
196
  /**
146
- * Assemble the gated charters (Phase C.1) from a validated extraction submission.
197
+ * Assemble the joined charter layer (Phase C.1) from the merged per-lane
198
+ * submissions. Deterministic: same nodes + same hint + same universe always
199
+ * yield the same units, ids, and charter selection.
147
200
  *
148
- * `membersByNode` grounds each submitted subsystem against the Phase-B consensus
149
- * scaffold: a `node_id` the structure decomposition never surfaced is an invented
150
- * subsystem dropped with an issue (the host cannot conjure boundaries the
151
- * deterministic layer didn't find). Entries sharing a `node_id` one per
152
- * independent per-kind extractor are merged before assembly. Deterministic: same
153
- * submission + same scaffold always yields the same charters.
201
+ * Join: each grounded node maps to the hint unit with the largest file overlap
202
+ * (ties lexicographically first hint id); nodes overlapping NO hint unit are
203
+ * union-found into residual units on any shared file, across kinds. A unit's id
204
+ * is its hint `node_id` when hinted, else the lexicographically first file of
205
+ * its scope union (provably collision-free: a residual scope contains no hint
206
+ * member, so its first file can never equal a hint id, which IS a hint member).
207
+ * Per unit per kind, the best-overlap node becomes the kind's charter
208
+ * (`charter_id = unit:kind`); every joined node persists in the unit's
209
+ * teleology, levels intact.
154
210
  */
155
- export function assembleCharters(submission, membersByNode) {
156
- const subsystems = [];
211
+ export function assembleCharters(submission, params) {
157
212
  const validation_issues = [];
158
- // Merge input entries sharing a node_id (independent per-kind files each
159
- // contribute one kind) into one charter list per subsystem before assembly.
160
- const chartersByNode = new Map();
161
- for (const sub of submission.subsystems) {
162
- const list = chartersByNode.get(sub.node_id) ?? [];
163
- list.push(...sub.charters);
164
- chartersByNode.set(sub.node_id, list);
165
- }
166
- // Stable output order: sort by node_id (content-derived, never input order — an
167
- // incidentally-ordered array churns the artifact hash, cascading phantom
168
- // staleness; see the extractor-ordering invariant in CLAUDE.md).
169
- const sortedNodeIds = [...chartersByNode.keys()].sort((a, b) => a.localeCompare(b));
170
- for (const node_id of sortedNodeIds) {
171
- const members = membersByNode.get(node_id);
172
- if (!members) {
173
- validation_issues.push(`subsystem "${node_id}" is not a consensus node in the structure decomposition — dropped (charters may only review discovered subsystems)`);
213
+ // Ground every node against the universe; drop whole nodes on unknown paths
214
+ // (a silently narrowed scope would corrupt the join key).
215
+ const grounded = [];
216
+ for (const node of sortNodeInputs(submission.nodes)) {
217
+ const unknown = node.files.filter((f) => !params.universe.has(f));
218
+ if (unknown.length > 0) {
219
+ validation_issues.push(`${node.kind} teleology node "${node.purpose.slice(0, 80)}" cites file(s) outside the repo universe — dropped (${unknown
220
+ .sort((a, b) => a.localeCompare(b))
221
+ .join(", ")})`);
174
222
  continue;
175
223
  }
176
- // Assign ids + enforce one charter per kind (a dup kind including one from a
177
- // second per-kind file — is a submission error; keep the first, flag the rest).
178
- const seenKinds = new Set();
179
- const withIds = [];
180
- for (const input of chartersByNode.get(node_id)) {
181
- if (seenKinds.has(input.kind)) {
182
- validation_issues.push(`subsystem "${node_id}" has more than one "${input.kind}" charter — kept the first, dropped the rest`);
183
- continue;
224
+ grounded.push({ ...node, files: [...new Set(node.files)].sort((a, b) => a.localeCompare(b)) });
225
+ }
226
+ // Hint mapping: node → best-overlap consensus unit.
227
+ const hintIds = [...params.hint.keys()].sort((a, b) => a.localeCompare(b));
228
+ const hintMembers = new Map(hintIds.map((id) => [id, new Set(params.hint.get(id))]));
229
+ const hinted = new Map();
230
+ const residual = [];
231
+ for (const node of grounded) {
232
+ let bestId;
233
+ let bestOverlap = 0;
234
+ for (const id of hintIds) {
235
+ const overlap = overlapSize(node.files, hintMembers.get(id));
236
+ if (overlap > bestOverlap) {
237
+ bestOverlap = overlap;
238
+ bestId = id;
184
239
  }
185
- seenKinds.add(input.kind);
186
- withIds.push({ ...input, charter_id: `${node_id}:${input.kind}` });
187
240
  }
188
- // Phase-A True gate: drop un-falsifiable True nominations (no concrete
189
- // alternative + cost). Surface each drop as an issue.
190
- const { kept, dropped } = applyTrueCharterGate(withIds);
241
+ if (bestId !== undefined) {
242
+ const list = hinted.get(bestId) ?? [];
243
+ list.push(node);
244
+ hinted.set(bestId, list);
245
+ }
246
+ else {
247
+ residual.push(node);
248
+ }
249
+ }
250
+ // Residual union-find: any shared file joins nodes into one unit, across kinds.
251
+ const parent = residual.map((_, i) => i);
252
+ const find = (i) => {
253
+ while (parent[i] !== i) {
254
+ parent[i] = parent[parent[i]];
255
+ i = parent[i];
256
+ }
257
+ return i;
258
+ };
259
+ const union = (a, b) => {
260
+ const ra = find(a);
261
+ const rb = find(b);
262
+ if (ra !== rb)
263
+ parent[Math.max(ra, rb)] = Math.min(ra, rb);
264
+ };
265
+ const byFile = new Map();
266
+ residual.forEach((node, i) => {
267
+ for (const f of node.files) {
268
+ const seen = byFile.get(f);
269
+ if (seen === undefined)
270
+ byFile.set(f, i);
271
+ else
272
+ union(seen, i);
273
+ }
274
+ });
275
+ const residualUnits = new Map();
276
+ residual.forEach((node, i) => {
277
+ const root = find(i);
278
+ const list = residualUnits.get(root) ?? [];
279
+ list.push(node);
280
+ residualUnits.set(root, list);
281
+ });
282
+ const drafts = [];
283
+ for (const id of hintIds) {
284
+ const nodes = hinted.get(id);
285
+ if (!nodes || nodes.length === 0)
286
+ continue; // partial coverage is designed
287
+ const members = new Set(params.hint.get(id));
288
+ for (const node of nodes)
289
+ for (const f of node.files)
290
+ members.add(f);
291
+ drafts.push({
292
+ node_id: id,
293
+ members: [...members].sort((a, b) => a.localeCompare(b)),
294
+ nodes,
295
+ });
296
+ }
297
+ for (const nodes of residualUnits.values()) {
298
+ const members = new Set();
299
+ for (const node of nodes)
300
+ for (const f of node.files)
301
+ members.add(f);
302
+ const sorted = [...members].sort((a, b) => a.localeCompare(b));
303
+ drafts.push({ node_id: sorted[0], members: sorted, nodes });
304
+ }
305
+ drafts.sort((a, b) => a.node_id.localeCompare(b.node_id));
306
+ // Per unit: teleologies per kind + tool-selected charter per kind + True gate.
307
+ const subsystems = [];
308
+ for (const draft of drafts) {
309
+ const memberSet = new Set(draft.members);
310
+ const byKind = new Map();
311
+ for (const node of draft.nodes) {
312
+ const list = byKind.get(node.kind) ?? [];
313
+ list.push(node);
314
+ byKind.set(node.kind, list);
315
+ }
316
+ const teleologies = {};
317
+ const selected = [];
318
+ for (const kind of KIND_ORDER) {
319
+ const nodes = byKind.get(kind);
320
+ if (!nodes || nodes.length === 0)
321
+ continue;
322
+ teleologies[kind] = nodes
323
+ .map((n) => ({
324
+ purpose: n.purpose,
325
+ premise_height: n.premise_height,
326
+ files: n.files,
327
+ }))
328
+ .sort((a, b) => a.premise_height - b.premise_height ||
329
+ a.purpose.localeCompare(b.purpose));
330
+ const best = [...nodes].sort((a, b) => overlapSize(b.files, memberSet) - overlapSize(a.files, memberSet) ||
331
+ a.premise_height - b.premise_height ||
332
+ a.purpose.localeCompare(b.purpose))[0];
333
+ selected.push({
334
+ charter_id: `${draft.node_id}:${kind}`,
335
+ kind,
336
+ purpose: best.purpose,
337
+ provenance: best.provenance,
338
+ confidence: best.confidence,
339
+ ...(best.nominated_alternative !== undefined
340
+ ? { nominated_alternative: best.nominated_alternative }
341
+ : {}),
342
+ ...(best.nominated_cost !== undefined
343
+ ? { nominated_cost: best.nominated_cost }
344
+ : {}),
345
+ });
346
+ }
347
+ // Phase-A True gate: extraction lanes never author `true`, but the gate
348
+ // stays as the mechanical backstop (falsifiable-or-drop).
349
+ const { kept, dropped } = applyTrueCharterGate(selected);
191
350
  for (const drop of dropped) {
192
351
  validation_issues.push(`${drop.charter_id}: ${drop.reason}`);
193
352
  }
353
+ if (kept.length === 0)
354
+ continue;
194
355
  subsystems.push({
195
- node_id,
196
- members,
356
+ node_id: draft.node_id,
357
+ members: draft.members,
197
358
  charters: [...kept].sort((a, b) => a.charter_id.localeCompare(b.charter_id)),
359
+ teleologies,
198
360
  });
199
361
  }
200
362
  return { subsystems, validation_issues };
201
363
  }
202
364
  /**
203
- * Assemble the routed+gated deltas (Phase C.2) from the independent delta-miner's
204
- * submission, given the already-assembled charters. The miner never picks routing —
205
- * `kind`/`routed_to` derive from the charter pair (the design's fixed table). A
206
- * delta whose `node_id` has no assembled charters, or that references a
207
- * missing/dropped charter kind, is dropped with an issue.
365
+ * Assemble the routed+gated deltas, triangulated teloses, and disagreement
366
+ * density (Phase C.2) from the independent miner's submission, given the
367
+ * already-joined charters. The miner never picks routing `kind`/`routed_to`
368
+ * derive from the channel pair (the design's fixed table). A delta whose
369
+ * `node_id` has no joined charters, or that references a missing/dropped
370
+ * charter kind, is dropped with an issue; so is a triangulated telos or True
371
+ * nomination naming an unknown unit.
208
372
  */
209
- export function assembleDeltas(submission, subsystems) {
373
+ export function assembleDeltas(submission, subsystems, params) {
210
374
  const deltas = [];
211
375
  const findings = [];
212
376
  const validation_issues = [];
213
- const byNode = new Map(subsystems.map((s) => [s.node_id, s]));
377
+ const augmented = subsystems.map((s) => ({
378
+ ...s,
379
+ charters: [...s.charters],
380
+ }));
381
+ const byNode = new Map(augmented.map((s) => [s.node_id, s]));
382
+ // True nominations first (deepest only): survivors join the unit's charters
383
+ // and are pair-eligible for this same submission's deltas.
384
+ const nominations = [...submission.true_nominations].sort((a, b) => a.node_id.localeCompare(b.node_id) || a.purpose.localeCompare(b.purpose));
385
+ if (nominations.length > 0 && !params.allowTrueNominations) {
386
+ validation_issues.push(`submission carries ${nominations.length} true nomination(s) but the ceiling does not authorize the deepest rung — all dropped (true provocations require explicit deepest opt-in)`);
387
+ }
388
+ else {
389
+ for (const nomination of nominations) {
390
+ const subsystem = byNode.get(nomination.node_id);
391
+ if (!subsystem) {
392
+ validation_issues.push(`true nomination for "${nomination.node_id}" names no joined subsystem — dropped`);
393
+ continue;
394
+ }
395
+ if (subsystem.charters.some((c) => c.kind === "true")) {
396
+ validation_issues.push(`subsystem "${nomination.node_id}" has more than one true nomination — kept the first, dropped the rest`);
397
+ continue;
398
+ }
399
+ const candidate = {
400
+ charter_id: `${nomination.node_id}:true`,
401
+ kind: "true",
402
+ purpose: nomination.purpose,
403
+ provenance: nomination.provenance,
404
+ confidence: nomination.confidence,
405
+ nominated_alternative: nomination.nominated_alternative,
406
+ nominated_cost: nomination.nominated_cost,
407
+ };
408
+ const { kept, dropped } = applyTrueCharterGate([candidate]);
409
+ for (const drop of dropped) {
410
+ validation_issues.push(`${drop.charter_id}: ${drop.reason}`);
411
+ }
412
+ if (kept.length > 0) {
413
+ subsystem.charters.push(kept[0]);
414
+ subsystem.charters.sort((a, b) => a.charter_id.localeCompare(b.charter_id));
415
+ }
416
+ }
417
+ }
418
+ // Deltas: route by channel pair, gate by confidence, surface as leads.
214
419
  const sorted = [...submission.subsystems].sort((a, b) => a.node_id.localeCompare(b.node_id));
215
420
  for (const sub of sorted) {
216
421
  const subsystem = byNode.get(sub.node_id);
@@ -253,11 +458,47 @@ export function assembleDeltas(submission, subsystems) {
253
458
  findings.push(deltaToFinding(gated, sub.node_id, subsystem.members, route.severity, weakerConfidence(charterA, charterB)));
254
459
  }
255
460
  }
461
+ // Triangulated teloses: one per known unit; a lead the owner reacts to.
462
+ const triangulated = [];
463
+ const seenTelos = new Set();
464
+ for (const telos of [...submission.triangulated].sort((a, b) => a.node_id.localeCompare(b.node_id))) {
465
+ if (!byNode.has(telos.node_id)) {
466
+ validation_issues.push(`triangulated telos for "${telos.node_id}" names no joined subsystem — dropped`);
467
+ continue;
468
+ }
469
+ if (seenTelos.has(telos.node_id)) {
470
+ validation_issues.push(`subsystem "${telos.node_id}" has more than one triangulated telos — kept the first, dropped the rest`);
471
+ continue;
472
+ }
473
+ seenTelos.add(telos.node_id);
474
+ triangulated.push(telos);
475
+ }
476
+ // Disagreement density: tool-computed, per unit per channel pair — the
477
+ // quantitative surface for "which parts of the triangulation need
478
+ // clarification."
479
+ const densityByKey = new Map();
480
+ for (const delta of deltas) {
481
+ const key = `${delta.delta_id.slice(0, delta.delta_id.lastIndexOf(":"))}|${delta.pair[0]}|${delta.pair[1]}`;
482
+ const nodeId = delta.delta_id.slice(0, delta.delta_id.lastIndexOf(":"));
483
+ const existing = densityByKey.get(key);
484
+ if (existing) {
485
+ densityByKey.set(key, { ...existing, count: existing.count + 1 });
486
+ }
487
+ else {
488
+ densityByKey.set(key, { node_id: nodeId, pair: delta.pair, count: 1 });
489
+ }
490
+ }
491
+ const disagreement = [...densityByKey.values()].sort((a, b) => a.node_id.localeCompare(b.node_id) ||
492
+ a.pair[0].localeCompare(b.pair[0]) ||
493
+ a.pair[1].localeCompare(b.pair[1]));
256
494
  deltas.sort((a, b) => a.delta_id.localeCompare(b.delta_id));
257
495
  findings.sort((a, b) => a.id.localeCompare(b.id));
258
496
  return {
497
+ subsystems: augmented,
259
498
  deltas,
260
499
  findings,
500
+ triangulated,
501
+ disagreement,
261
502
  goal_graph: submission.goal_graph ?? { nodes: [], edges: [] },
262
503
  validation_issues,
263
504
  };
@@ -266,7 +507,7 @@ export function assembleDeltas(submission, subsystems) {
266
507
  * Surface a routed charter delta as a Finding LEAD ([[leads-not-verdicts]] — the
267
508
  * owner judges it; a charter delta is never a verdict). `lens` is `architecture`:
268
509
  * a charter-boundary gap is a design defect. Members of the subsystem are the
269
- * affected files (structure decomposition operates over file ids).
510
+ * affected files (the charter layer operates over file ids).
270
511
  */
271
512
  function deltaToFinding(delta, nodeId, members, severity, confidence) {
272
513
  const kindLabel = delta.kind.replace(/_/g, " ");
@@ -1 +1 @@
1
- {"version":3,"file":"charterExtraction.js","sourceRoot":"","sources":["../../../src/shared/decompose/charterExtraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"charterExtraction.js","sourceRoot":"","sources":["../../../src/shared/decompose/charterExtraction.ts"],"names":[],"mappings":"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"}
@@ -23,8 +23,8 @@ export { findingIdentity } from "./types/finding.js";
23
23
  export { FindingSeveritySchema, FindingConfidenceSchema, FindingLocationSchema, FindingGroundingSchema, AnchorExpectationSchema, ExecutableAnchorSchema, FindingSchema, WorkBlockSchema, WorkBlockSeamSchema, FindingThemeSchema, SynthesisNarrativeSchema, AuditFindingsSummarySchema, AuditFindingsReportSchema, } from "./types/finding.js";
24
24
  export type { IntentCheckpoint } from "./types/intentCheckpoint.js";
25
25
  export { IntentCheckpointSchema } from "./types/intentCheckpoint.js";
26
- export type { CharterKind, CharterConfidence, CharterProvenance, Charter, GoalNode, GoalEdge, GoalGraph, Ceiling, CharterDelta, ClarificationValue, CharterClarificationAnswer, CharterClarificationRequest, } from "./types/charter.js";
27
- export { CharterKindSchema, CharterConfidenceSchema, CharterProvenanceSchema, CharterSchema, GoalNodeSchema, GoalEdgeSchema, GoalGraphSchema, CeilingSchema, CharterDeltaSchema, ClarificationValueSchema, CharterClarificationAnswerSchema, CharterClarificationRequestSchema, } from "./types/charter.js";
26
+ export type { CharterKind, CharterConfidence, CharterProvenance, Charter, GoalNode, GoalEdge, GoalGraph, Ceiling, CharterDelta, TeleologyNode, TriangulatedTelos, ChannelDisagreement, ClarificationValue, CharterClarificationAnswer, CharterClarificationRequest, } from "./types/charter.js";
27
+ export { CharterKindSchema, CharterConfidenceSchema, CharterProvenanceSchema, CharterSchema, GoalNodeSchema, GoalEdgeSchema, GoalGraphSchema, CeilingSchema, CharterDeltaSchema, TeleologyNodeSchema, TriangulatedTelosSchema, ChannelDisagreementSchema, ClarificationValueSchema, CharterClarificationAnswerSchema, CharterClarificationRequestSchema, } from "./types/charter.js";
28
28
  export { applyTrueCharterGate, charterReviewDisposition, gateCharterDelta, riskGateClarification, } from "./validation/charterGate.js";
29
29
  export type { WeightedGraph, Partition } from "./decompose/modularity.js";
30
30
  export { DEFAULT_RESOLUTIONS, louvain, resolutionSweep, } from "./decompose/modularity.js";