@productbrain/cli 0.1.0-beta.1290 → 0.1.0-beta.1323

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 (54) hide show
  1. package/dist/__tests__/authority-domains-queue.test.d.ts +2 -0
  2. package/dist/__tests__/authority-domains-queue.test.d.ts.map +1 -0
  3. package/dist/__tests__/authority-domains-queue.test.js +169 -0
  4. package/dist/__tests__/authority-domains-queue.test.js.map +1 -0
  5. package/dist/__tests__/handshake-preview.test.js +108 -0
  6. package/dist/__tests__/handshake-preview.test.js.map +1 -1
  7. package/dist/__tests__/handshake.test.js +177 -1
  8. package/dist/__tests__/handshake.test.js.map +1 -1
  9. package/dist/__tests__/orient.test.js +104 -0
  10. package/dist/__tests__/orient.test.js.map +1 -1
  11. package/dist/__tests__/session-start-key-refresh.test.js +2 -1
  12. package/dist/__tests__/session-start-key-refresh.test.js.map +1 -1
  13. package/dist/commands/authority-domains.d.ts +11 -0
  14. package/dist/commands/authority-domains.d.ts.map +1 -1
  15. package/dist/commands/authority-domains.js +73 -0
  16. package/dist/commands/authority-domains.js.map +1 -1
  17. package/dist/commands/handshake.d.ts +27 -0
  18. package/dist/commands/handshake.d.ts.map +1 -1
  19. package/dist/commands/handshake.js +243 -1
  20. package/dist/commands/handshake.js.map +1 -1
  21. package/dist/commands/orient.d.ts +15 -0
  22. package/dist/commands/orient.d.ts.map +1 -1
  23. package/dist/commands/orient.js.map +1 -1
  24. package/dist/commands/session.js +4 -4
  25. package/dist/commands/session.js.map +1 -1
  26. package/dist/formatters/orient.d.ts +15 -0
  27. package/dist/formatters/orient.d.ts.map +1 -1
  28. package/dist/formatters/orient.js +40 -4
  29. package/dist/formatters/orient.js.map +1 -1
  30. package/dist/generators/chain-classifier.d.ts +15 -1
  31. package/dist/generators/chain-classifier.d.ts.map +1 -1
  32. package/dist/generators/chain-classifier.js +39 -91
  33. package/dist/generators/chain-classifier.js.map +1 -1
  34. package/dist/generators/chain-classifier.test.js +117 -27
  35. package/dist/generators/chain-classifier.test.js.map +1 -1
  36. package/dist/generators/chain-rules.d.ts.map +1 -1
  37. package/dist/generators/chain-rules.js +9 -1
  38. package/dist/generators/chain-rules.js.map +1 -1
  39. package/dist/generators/chain-rules.test.js +34 -2
  40. package/dist/generators/chain-rules.test.js.map +1 -1
  41. package/dist/index.js +30 -4
  42. package/dist/index.js.map +1 -1
  43. package/dist/lib/collectionRegistry.d.ts +2 -0
  44. package/dist/lib/collectionRegistry.d.ts.map +1 -1
  45. package/dist/lib/collectionRegistry.js.map +1 -1
  46. package/dist/lib/startup-resolution-signals.d.ts +34 -0
  47. package/dist/lib/startup-resolution-signals.d.ts.map +1 -0
  48. package/dist/lib/startup-resolution-signals.js +118 -0
  49. package/dist/lib/startup-resolution-signals.js.map +1 -0
  50. package/dist/lib/startup-resolution-signals.test.d.ts +2 -0
  51. package/dist/lib/startup-resolution-signals.test.d.ts.map +1 -0
  52. package/dist/lib/startup-resolution-signals.test.js +113 -0
  53. package/dist/lib/startup-resolution-signals.test.js.map +1 -0
  54. package/package.json +1 -1
@@ -23,6 +23,84 @@ function makeRelation(overrides) {
23
23
  ...overrides,
24
24
  };
25
25
  }
26
+ const COLLECTIONS = [
27
+ {
28
+ slug: 'standards',
29
+ name: 'Standards',
30
+ governanceRole: 'binding',
31
+ defaultCanonicalKey: 'standard',
32
+ governanceFunction: 'constraint',
33
+ classificationSignals: ['quality', 'test', 'gate'],
34
+ usageGuidance: 'Rules and standards that constrain behavior and must be followed.',
35
+ },
36
+ {
37
+ slug: 'business-rules',
38
+ name: 'Business Rules',
39
+ governanceRole: 'binding',
40
+ defaultCanonicalKey: 'business-rule',
41
+ governanceFunction: 'constraint',
42
+ classificationSignals: ['auth', 'security'],
43
+ usageGuidance: 'Operational rules that constrain product behavior and govern workflows.',
44
+ },
45
+ {
46
+ slug: 'architecture',
47
+ name: 'Architecture',
48
+ governanceRole: 'binding',
49
+ defaultCanonicalKey: 'architecture_note',
50
+ governanceFunction: 'boundary',
51
+ usageGuidance: 'Architecture notes that define system boundaries, interfaces, domains, and layers.',
52
+ },
53
+ {
54
+ slug: 'decisions',
55
+ name: 'Decisions',
56
+ governanceRole: 'binding',
57
+ defaultCanonicalKey: 'decision',
58
+ governanceFunction: 'convention',
59
+ classificationSignals: ['deployment'],
60
+ usageGuidance: 'Decisions record choices, practices, and conventions.',
61
+ },
62
+ {
63
+ slug: 'patterns',
64
+ name: 'Patterns',
65
+ governanceRole: 'binding',
66
+ defaultCanonicalKey: 'pattern',
67
+ governanceFunction: 'convention',
68
+ usageGuidance: 'Reusable patterns and conventions.',
69
+ },
70
+ {
71
+ slug: 'policies',
72
+ name: 'Policies',
73
+ governanceRole: 'binding',
74
+ defaultCanonicalKey: 'policy',
75
+ governanceFunction: 'policy',
76
+ usageGuidance: 'Policies for access, permissions, auth, and security.',
77
+ },
78
+ {
79
+ slug: 'flows',
80
+ name: 'Flows',
81
+ governanceRole: 'binding',
82
+ defaultCanonicalKey: 'flow',
83
+ governanceFunction: 'workflow',
84
+ usageGuidance: 'Workflow and process lifecycle definitions.',
85
+ },
86
+ {
87
+ slug: 'glossary',
88
+ name: 'Glossary',
89
+ governanceRole: 'reference',
90
+ defaultCanonicalKey: 'glossary_term',
91
+ governanceFunction: 'unclassified',
92
+ usageGuidance: 'Reference definitions.',
93
+ },
94
+ {
95
+ slug: 'compliance-gates',
96
+ name: 'Compliance Gates',
97
+ governanceRole: 'binding',
98
+ defaultCanonicalKey: 'quality_gate',
99
+ governanceFunction: 'quality-gate',
100
+ classificationSignals: ['coverage', 'verification'],
101
+ usageGuidance: 'Quality gates and verification checks.',
102
+ },
103
+ ];
26
104
  // ── Test cases ─────────────────────────────────────────────────────────
27
105
  describe('classifyGovernance — collection signal', () => {
28
106
  it('STD entry with constrains relation → constraint with high confidence (>=0.6)', () => {
@@ -32,7 +110,7 @@ describe('classifyGovernance — collection signal', () => {
32
110
  collectionSlug: 'standards',
33
111
  relations: [makeRelation({ type: 'constrains', otherCollectionSlug: 'bets' })],
34
112
  });
35
- const results = classifyGovernance([entry]);
113
+ const results = classifyGovernance([entry], COLLECTIONS);
36
114
  expect(results).toHaveLength(1);
37
115
  expect(results[0].governanceFunction).toBe('constraint');
38
116
  expect(results[0].confidence).toBeGreaterThanOrEqual(0.6);
@@ -43,7 +121,7 @@ describe('classifyGovernance — collection signal', () => {
43
121
  name: 'Seven system domains',
44
122
  collectionSlug: 'architecture',
45
123
  });
46
- const results = classifyGovernance([entry]);
124
+ const results = classifyGovernance([entry], COLLECTIONS);
47
125
  expect(results).toHaveLength(1);
48
126
  expect(results[0].governanceFunction).toBe('boundary');
49
127
  expect(results[0].confidence).toBeGreaterThanOrEqual(0.4);
@@ -59,8 +137,8 @@ describe('classifyGovernance — collection signal', () => {
59
137
  name: 'some decision',
60
138
  collectionSlug: 'decisions',
61
139
  });
62
- const withName = classifyGovernance([entry]);
63
- const withoutName = classifyGovernance([noNameEntry]);
140
+ const withName = classifyGovernance([entry], COLLECTIONS);
141
+ const withoutName = classifyGovernance([noNameEntry], COLLECTIONS);
64
142
  expect(withName[0].governanceFunction).toBe('convention');
65
143
  expect(withName[0].confidence).toBeGreaterThan(withoutName[0].confidence);
66
144
  });
@@ -70,7 +148,7 @@ describe('classifyGovernance — collection signal', () => {
70
148
  name: 'Feature flag lifecycle flow',
71
149
  collectionSlug: 'flows',
72
150
  });
73
- const results = classifyGovernance([entry]);
151
+ const results = classifyGovernance([entry], COLLECTIONS);
74
152
  expect(results).toHaveLength(1);
75
153
  expect(results[0].governanceFunction).toBe('workflow');
76
154
  });
@@ -81,18 +159,18 @@ describe('classifyGovernance — collection signal', () => {
81
159
  collectionSlug: 'policies',
82
160
  relations: [makeRelation({ type: 'governs', otherCollectionSlug: 'bets' })],
83
161
  });
84
- const results = classifyGovernance([entry]);
162
+ const results = classifyGovernance([entry], COLLECTIONS);
85
163
  expect(results).toHaveLength(1);
86
164
  expect(results[0].governanceFunction).toBe('policy');
87
165
  expect(results[0].confidence).toBeGreaterThanOrEqual(0.6);
88
166
  });
89
- it('STD entry with test in name → quality-gate with boosted confidence', () => {
167
+ it('custom quality-gate collection → quality-gate from explicit metadata', () => {
90
168
  const entry = makeEntry({
91
- entryId: 'STD-2',
169
+ entryId: 'QG-2',
92
170
  name: 'Test coverage quality gate for all slices',
93
- collectionSlug: 'standards',
171
+ collectionSlug: 'compliance-gates',
94
172
  });
95
- const results = classifyGovernance([entry]);
173
+ const results = classifyGovernance([entry], COLLECTIONS);
96
174
  expect(results).toHaveLength(1);
97
175
  expect(results[0].governanceFunction).toBe('quality-gate');
98
176
  expect(results[0].confidence).toBeGreaterThanOrEqual(0.5);
@@ -105,13 +183,13 @@ describe('classifyGovernance — null entryId safety', () => {
105
183
  name: 'Draft entry without ID',
106
184
  collectionSlug: 'standards',
107
185
  });
108
- const results = classifyGovernance([entry]);
186
+ const results = classifyGovernance([entry], COLLECTIONS);
109
187
  expect(results).toHaveLength(0);
110
188
  });
111
189
  });
112
190
  describe('classifyGovernance — empty input', () => {
113
191
  it('empty input → empty output', () => {
114
- const results = classifyGovernance([]);
192
+ const results = classifyGovernance([], COLLECTIONS);
115
193
  expect(results).toHaveLength(0);
116
194
  });
117
195
  });
@@ -123,7 +201,7 @@ describe('classifyGovernance — unclassified', () => {
123
201
  collectionSlug: 'glossary',
124
202
  relations: [makeRelation({ type: 'constrains' })],
125
203
  });
126
- const results = classifyGovernance([entry]);
204
+ const results = classifyGovernance([entry], COLLECTIONS);
127
205
  expect(results).toHaveLength(1);
128
206
  expect(results[0].governanceFunction).toBe('unclassified');
129
207
  expect(results[0].confidence).toBe(0);
@@ -144,7 +222,7 @@ describe('classifyGovernance — multiple signal matches', () => {
144
222
  makeRelation({ type: 'governs' }),
145
223
  ],
146
224
  });
147
- const results = classifyGovernance([entry]);
225
+ const results = classifyGovernance([entry], COLLECTIONS);
148
226
  expect(results).toHaveLength(1);
149
227
  // Both constraint and policy are plausible; the function with the highest score wins.
150
228
  // With 2x constrains boosts, constraint should dominate.
@@ -163,7 +241,7 @@ describe('classifyGovernance — passthrough fields', () => {
163
241
  data,
164
242
  relations: [relation],
165
243
  });
166
- const results = classifyGovernance([entry]);
244
+ const results = classifyGovernance([entry], COLLECTIONS);
167
245
  expect(results[0].data).toBe(data);
168
246
  expect(results[0].relations).toEqual([relation]);
169
247
  });
@@ -173,14 +251,14 @@ describe('classifyGovernance — passthrough fields', () => {
173
251
  name: 'My architecture entry',
174
252
  collectionSlug: 'architecture',
175
253
  });
176
- const results = classifyGovernance([entry]);
254
+ const results = classifyGovernance([entry], COLLECTIONS);
177
255
  expect(results[0].entryId).toBe('ARCH-42');
178
256
  expect(results[0].name).toBe('My architecture entry');
179
257
  expect(results[0].collectionSlug).toBe('architecture');
180
258
  });
181
259
  });
182
260
  describe('classifyGovernance — name signal boosts', () => {
183
- it('security keyword boosts policy for business-rules collection', () => {
261
+ it('workspace collection signals boost that collection metadata function', () => {
184
262
  const withKeyword = makeEntry({
185
263
  entryId: 'BR-2',
186
264
  name: 'Auth security check before MCP tool execution',
@@ -191,11 +269,10 @@ describe('classifyGovernance — name signal boosts', () => {
191
269
  name: 'Some business rule',
192
270
  collectionSlug: 'business-rules',
193
271
  });
194
- const [withResult] = classifyGovernance([withKeyword]);
195
- const [withoutResult] = classifyGovernance([withoutKeyword]);
196
- // Security keyword → policy wins over default constraint
197
- expect(withResult.governanceFunction).toBe('policy');
198
- // Without keyword, default constraint wins
272
+ const [withResult] = classifyGovernance([withKeyword], COLLECTIONS);
273
+ const [withoutResult] = classifyGovernance([withoutKeyword], COLLECTIONS);
274
+ expect(withResult.governanceFunction).toBe('constraint');
275
+ expect(withResult.confidence).toBeGreaterThan(withoutResult.confidence);
199
276
  expect(withoutResult.governanceFunction).toBe('constraint');
200
277
  });
201
278
  it('matchedSignals contains human-readable explanations', () => {
@@ -205,7 +282,7 @@ describe('classifyGovernance — name signal boosts', () => {
205
282
  collectionSlug: 'standards',
206
283
  relations: [makeRelation({ type: 'constrains' })],
207
284
  });
208
- const [result] = classifyGovernance([entry]);
285
+ const [result] = classifyGovernance([entry], COLLECTIONS);
209
286
  expect(result.matchedSignals.length).toBeGreaterThan(0);
210
287
  expect(result.matchedSignals.some((s) => s.includes('standards'))).toBe(true);
211
288
  });
@@ -217,7 +294,7 @@ describe('classifyGovernance — mixed null/non-null entryIds', () => {
217
294
  makeEntry({ entryId: null, name: 'Draft entry', collectionSlug: 'standards' }),
218
295
  makeEntry({ entryId: 'ARCH-2', name: 'Architecture entry', collectionSlug: 'architecture' }),
219
296
  ];
220
- const results = classifyGovernance(entries);
297
+ const results = classifyGovernance(entries, COLLECTIONS);
221
298
  expect(results).toHaveLength(2);
222
299
  expect(results.map((r) => r.entryId)).toEqual(['STD-1', 'ARCH-2']);
223
300
  });
@@ -229,7 +306,7 @@ describe('classifyGovernance — patterns collection', () => {
229
306
  name: 'Additive wrapping pattern for feature flags',
230
307
  collectionSlug: 'patterns',
231
308
  });
232
- const results = classifyGovernance([entry]);
309
+ const results = classifyGovernance([entry], COLLECTIONS);
233
310
  expect(results[0].governanceFunction).toBe('convention');
234
311
  });
235
312
  });
@@ -249,9 +326,22 @@ describe('classifyGovernance — informed_by ARCH relation boosts boundary', ()
249
326
  }),
250
327
  ],
251
328
  });
252
- // Also include 'domain' keyword in the name → double boundary boost
253
- const results = classifyGovernance([entry]);
329
+ const results = classifyGovernance([entry], COLLECTIONS);
254
330
  expect(results[0].governanceFunction).toBe('boundary');
255
331
  });
332
+ it('custom slugs classify from governanceFunction metadata, not PB slug names', () => {
333
+ const collections = [
334
+ { slug: 'working-agreements', governanceRole: 'binding', governanceFunction: 'constraint' },
335
+ { slug: 'system-shape', governanceRole: 'binding', governanceFunction: 'boundary' },
336
+ ];
337
+ const results = classifyGovernance([
338
+ makeEntry({ entryId: 'WA-1', name: 'Team agreement', collectionSlug: 'working-agreements' }),
339
+ makeEntry({ entryId: 'SYS-1', name: 'System boundary', collectionSlug: 'system-shape' }),
340
+ ], collections);
341
+ expect(results.map((r) => [r.collectionSlug, r.governanceFunction])).toEqual([
342
+ ['working-agreements', 'constraint'],
343
+ ['system-shape', 'boundary'],
344
+ ]);
345
+ });
256
346
  });
257
347
  //# sourceMappingURL=chain-classifier.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chain-classifier.test.js","sourceRoot":"","sources":["../../src/generators/chain-classifier.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain-classifier.test.js","sourceRoot":"","sources":["../../src/generators/chain-classifier.test.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,kBAAkB,GAInB,MAAM,uBAAuB,CAAC;AAE/B,0EAA0E;AAE1E,SAAS,SAAS,CAAC,SAA2G;IAC5H,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,kBAAkB,EAAE,IAAI;QACxB,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,EAAE;QACb,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,SAA6D;IACjF,OAAO;QACL,SAAS,EAAE,UAAU;QACrB,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,aAAa;QACxB,mBAAmB,EAAE,IAAI;QACzB,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAgC;IAC/C;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,UAAU;QAC/B,kBAAkB,EAAE,YAAY;QAChC,qBAAqB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC;QAClD,aAAa,EAAE,mEAAmE;KACnF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,gBAAgB;QACtB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,eAAe;QACpC,kBAAkB,EAAE,YAAY;QAChC,qBAAqB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;QAC3C,aAAa,EAAE,yEAAyE;KACzF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,cAAc;QACpB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,mBAAmB;QACxC,kBAAkB,EAAE,UAAU;QAC9B,aAAa,EAAE,oFAAoF;KACpG;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,UAAU;QAC/B,kBAAkB,EAAE,YAAY;QAChC,qBAAqB,EAAE,CAAC,YAAY,CAAC;QACrC,aAAa,EAAE,uDAAuD;KACvE;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,SAAS;QAC9B,kBAAkB,EAAE,YAAY;QAChC,aAAa,EAAE,oCAAoC;KACpD;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,QAAQ;QAC7B,kBAAkB,EAAE,QAAQ;QAC5B,aAAa,EAAE,uDAAuD;KACvE;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;QACb,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,MAAM;QAC3B,kBAAkB,EAAE,UAAU;QAC9B,aAAa,EAAE,6CAA6C;KAC7D;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,cAAc,EAAE,WAAW;QAC3B,mBAAmB,EAAE,eAAe;QACpC,kBAAkB,EAAE,cAAc;QAClC,aAAa,EAAE,wBAAwB;KACxC;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,kBAAkB;QACxB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,cAAc;QACnC,kBAAkB,EAAE,cAAc;QAClC,qBAAqB,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC;QACnD,aAAa,EAAE,wCAAwC;KACxD;CACF,CAAC;AAEF,0EAA0E;AAE1E,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;IACtD,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,kCAAkC;YACxC,cAAc,EAAE,WAAW;YAC3B,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,CAAC;SAC/E,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,sBAAsB;YAC5B,cAAc,EAAE,cAAc;SAC/B,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,4CAA4C;YAClD,cAAc,EAAE,WAAW;SAC5B,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,SAAS,CAAC;YAC5B,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,eAAe;YACrB,cAAc,EAAE,WAAW;SAC5B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,kBAAkB,CAAC,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;QAEnE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1D,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAC/B,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,6BAA6B;YACnC,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,uBAAuB;YAC7B,cAAc,EAAE,UAAU;YAC1B,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,CAAC;SAC5E,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,2CAA2C;YACjD,cAAc,EAAE,kBAAkB;SACnC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0CAA0C,EAAE,GAAG,EAAE;IACxD,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,wBAAwB;YAC9B,cAAc,EAAE,WAAW;SAC5B,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,OAAO,GAAG,kBAAkB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,yBAAyB;YAC/B,cAAc,EAAE,UAAU;YAC1B,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;SAClD,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;IAC5D,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,uDAAuD;QACvD,2DAA2D;QAC3D,sEAAsE;QACtE,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,0CAA0C;YAChD,cAAc,EAAE,gBAAgB;YAChC,SAAS,EAAE;gBACT,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;gBACpC,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;gBACpC,YAAY,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;aAClC;SACF,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,sFAAsF;QACtF,yDAAyD;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACvD,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,IAAI,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,eAAe;YACrB,cAAc,EAAE,WAAW;YAC3B,IAAI;YACJ,SAAS,EAAE,CAAC,QAAQ,CAAC;SACtB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,uBAAuB;YAC7B,cAAc,EAAE,cAAc;SAC/B,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACvD,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,MAAM,WAAW,GAAG,SAAS,CAAC;YAC5B,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,+CAA+C;YACrD,cAAc,EAAE,gBAAgB;SACjC,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,SAAS,CAAC;YAC/B,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,oBAAoB;YAC1B,cAAc,EAAE,gBAAgB;SACjC,CAAC,CAAC;QAEH,MAAM,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAC,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;QACpE,MAAM,CAAC,aAAa,CAAC,GAAG,kBAAkB,CAAC,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC,CAAC;QAE1E,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACxE,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,gCAAgC;YACtC,cAAc,EAAE,WAAW;YAC3B,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;SAClD,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mDAAmD,EAAE,GAAG,EAAE;IACjE,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,OAAO,GAAG;YACd,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;YACpF,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;YAC9E,SAAS,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;SAC7F,CAAC;QAEF,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0CAA0C,EAAE,GAAG,EAAE;IACxD,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,6CAA6C;YACnD,cAAc,EAAE,UAAU;SAC3B,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,gEAAgE,EAAE,GAAG,EAAE;IAC9E,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,wCAAwC;YAC9C,cAAc,EAAE,WAAW;YAC3B,SAAS,EAAE;gBACT,YAAY,CAAC;oBACX,IAAI,EAAE,aAAa;oBACnB,SAAS,EAAE,UAAU;oBACrB,mBAAmB,EAAE,cAAc;oBACnC,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EAAE,SAAS;iBACxB,CAAC;aACH;SACF,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;QACnF,MAAM,WAAW,GAAgC;YAC/C,EAAE,IAAI,EAAE,oBAAoB,EAAE,cAAc,EAAE,SAAS,EAAE,kBAAkB,EAAE,YAAY,EAAE;YAC3F,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,kBAAkB,EAAE,UAAU,EAAE;SACpF,CAAC;QACF,MAAM,OAAO,GAAG,kBAAkB,CAAC;YACjC,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,oBAAoB,EAAE,CAAC;YAC5F,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;SACzF,EAAE,WAAW,CAAC,CAAC;QAEhB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3E,CAAC,oBAAoB,EAAE,YAAY,CAAC;YACpC,CAAC,cAAc,EAAE,UAAU,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"chain-rules.d.ts","sourceRoot":"","sources":["../../src/generators/chain-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAI7D,OAAO,KAAK,EAAE,UAAU,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAIhE,mDAAmD;AACnD,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,yDAAyD;IACzD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,+DAA+D;IAC/D,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;IAC/B,KAAK,EAAE,eAAe,CAAC;IACvB,sFAAsF;IACtF,UAAU,EAAE,OAAO,uBAAuB,EAAE,oBAAoB,EAAE,CAAC;CACpE;AAkCD;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,OAAO,SAAS,EAC9B,WAAW,EAAE,aAAa,EAAE,GAC3B,OAAO,CAAC,gBAAgB,CAAC,CAoF3B"}
1
+ {"version":3,"file":"chain-rules.d.ts","sourceRoot":"","sources":["../../src/generators/chain-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAI7D,OAAO,KAAK,EAAE,UAAU,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAIhE,mDAAmD;AACnD,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,yDAAyD;IACzD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,+DAA+D;IAC/D,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;IAC/B,KAAK,EAAE,eAAe,CAAC;IACvB,sFAAsF;IACtF,UAAU,EAAE,OAAO,uBAAuB,EAAE,oBAAoB,EAAE,CAAC;CACpE;AAkCD;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,OAAO,SAAS,EAC9B,WAAW,EAAE,aAAa,EAAE,GAC3B,OAAO,CAAC,gBAAgB,CAAC,CA4F3B"}
@@ -53,6 +53,7 @@ export async function generateChainRules(kernelCallFn, manualRules) {
53
53
  // Step 1: Fetch governance entries — return sentinel on failure
54
54
  // The Convex query returns { entries: [...], total: N } — unwrap the array.
55
55
  let entries;
56
+ let collections = [];
56
57
  try {
57
58
  const result = await kernelCallFn('chain.getGovernanceWithRelations', {});
58
59
  if (!Array.isArray(result?.entries)) {
@@ -69,8 +70,15 @@ export async function generateChainRules(kernelCallFn, manualRules) {
69
70
  classified: [],
70
71
  };
71
72
  }
73
+ try {
74
+ const collectionResult = await kernelCallFn('chain.listCollections', {});
75
+ collections = Array.isArray(collectionResult) ? collectionResult : [];
76
+ }
77
+ catch {
78
+ collections = [];
79
+ }
72
80
  // Step 2: Classify entries
73
- const classified = classifyGovernance(entries);
81
+ const classified = classifyGovernance(entries, collections);
74
82
  // Step 3: Build manual rule name set for suppression check
75
83
  const manualRuleNames = new Set(manualRules.map((r) => r.name));
76
84
  // Step 4: Resolve an archetype per governance function
@@ -1 +1 @@
1
- {"version":3,"file":"chain-rules.js","sourceRoot":"","sources":["../../src/generators/chain-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain-rules.js","sourceRoot":"","sources":["../../src/generators/chain-rules.ts"],"names":[],"mappings":"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"}
@@ -26,9 +26,25 @@ function makeManualRule(name) {
26
26
  targets: undefined,
27
27
  };
28
28
  }
29
+ const COLLECTIONS = [
30
+ { slug: 'standards', governanceFunction: 'constraint' },
31
+ { slug: 'business-rules', governanceFunction: 'constraint' },
32
+ { slug: 'architecture', governanceFunction: 'boundary' },
33
+ { slug: 'decisions', governanceFunction: 'convention' },
34
+ { slug: 'policies', governanceFunction: 'policy' },
35
+ { slug: 'flows', governanceFunction: 'workflow' },
36
+ ];
29
37
  /** Mock kernelCall that returns the given entries wrapped in the Convex response shape. */
30
- function mockMcpSuccess(entries) {
31
- return vi.fn().mockResolvedValue({ entries, total: entries.length });
38
+ function mockMcpSuccess(entries, collections = COLLECTIONS) {
39
+ return vi.fn((name) => {
40
+ if (name === 'chain.getGovernanceWithRelations') {
41
+ return Promise.resolve({ entries, total: entries.length });
42
+ }
43
+ if (name === 'chain.listCollections') {
44
+ return Promise.resolve(collections);
45
+ }
46
+ return Promise.resolve(null);
47
+ });
32
48
  }
33
49
  /** Mock kernelCall that throws. */
34
50
  function mockMcpFailure(error = new Error('Network error')) {
@@ -45,6 +61,7 @@ describe('generateChainRules', () => {
45
61
  const mcpFn = mockMcpSuccess(entries);
46
62
  const result = await generateChainRules(mcpFn, []);
47
63
  expect(mcpFn).toHaveBeenCalledWith('chain.getGovernanceWithRelations', {});
64
+ expect(mcpFn).toHaveBeenCalledWith('chain.listCollections', {});
48
65
  expect(result.sentinel).toBeNull();
49
66
  expect(result.rules.length).toBeGreaterThan(0);
50
67
  // All generated rules must have chain:// sourcePath
@@ -175,5 +192,20 @@ describe('generateChainRules', () => {
175
192
  // gaps length equals suppressedByZeroEntries
176
193
  expect(result.gaps.length).toBe(result.stats.suppressedByZeroEntries);
177
194
  });
195
+ it('classifies custom collection slugs from collection metadata', async () => {
196
+ const entries = [
197
+ makeEntry({ entryId: 'WA-1', name: 'Working agreement', collectionSlug: 'working-agreements' }),
198
+ makeEntry({ entryId: 'SYS-1', name: 'Boundary note', collectionSlug: 'system-shape' }),
199
+ ];
200
+ const mcpFn = mockMcpSuccess(entries, [
201
+ { slug: 'working-agreements', governanceFunction: 'constraint' },
202
+ { slug: 'system-shape', governanceFunction: 'boundary' },
203
+ ]);
204
+ const result = await generateChainRules(mcpFn, []);
205
+ expect(result.classified.map((entry) => [entry.collectionSlug, entry.governanceFunction])).toEqual([
206
+ ['working-agreements', 'constraint'],
207
+ ['system-shape', 'boundary'],
208
+ ]);
209
+ });
178
210
  });
179
211
  //# sourceMappingURL=chain-rules.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chain-rules.test.js","sourceRoot":"","sources":["../../src/generators/chain-rules.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain-rules.test.js","sourceRoot":"","sources":["../../src/generators/chain-rules.test.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -44,7 +44,7 @@ import { runVerify } from './commands/verify.js';
44
44
  import { runCodexPrep } from './commands/codex-prep.js';
45
45
  import { runCollectionsList, runCollectionsGet, runCollectionsAudit, runCollectionsExport } from './commands/collections.js';
46
46
  import { runWorkspaceVerify, runWorkspaceRepair, runDefinitionsDiff } from './commands/workspace.js';
47
- import { runAuthorityDomainsActivateCutover, runAuthorityDomainsDeactivateCutover, runAuthorityDomainsBenchmark, runAuthorityDomainsDiscardPending, runAuthorityDomainsPropose, runAuthorityDomainsRatify, runAuthorityDomainsReadiness, runAuthorityDomainsRecordSample, runAuthorityDomainsReject, runAuthorityDomainsReview, runAuthorityDomainsPrincipleDistribution, } from './commands/authority-domains.js';
47
+ import { runAuthorityDomainsActivateCutover, runAuthorityDomainsAdd, runAuthorityDomainsDeactivateCutover, runAuthorityDomainsBenchmark, runAuthorityDomainsDiscardPending, runAuthorityDomainsPropose, runAuthorityDomainsQueueTag, runAuthorityDomainsRatify, runAuthorityDomainsReadiness, runAuthorityDomainsRecordSample, runAuthorityDomainsReject, runAuthorityDomainsReview, runAuthorityDomainsPrincipleDistribution, } from './commands/authority-domains.js';
48
48
  import { runDoctor } from './commands/doctor.js';
49
49
  import { runWhoami } from './commands/whoami.js';
50
50
  import { runUpgrade } from './commands/upgrade.js';
@@ -402,8 +402,7 @@ program
402
402
  .description('Print workspace stage and all orient sections (strategic context, bets, governance, tensions, etc.)')
403
403
  .option('-b, --brief', 'Compact view: stage, counts, top bets, tensions, planned work')
404
404
  .option('-t, --task <task>', 'Task description for task-shaped governance and context')
405
- // SYNC: domain list must match TaskDomain in convex/agentKnowledge/startupResolver.ts
406
- .option('-s, --scope <domain>', 'Domain scope for governance filtering. Accepts authority roots, child scopes such as product-design/ux and data/analytics, and legacy internal scopes.')
405
+ .option('-s, --scope <domain>', 'Domain scope for governance filtering. Forwarded to the workspace model for validation and custom domain resolution.')
407
406
  .option('--full', 'Full depth orient (tier=full). Use for thorough context loading.')
408
407
  .action(async (opts) => {
409
408
  await runOrient({ brief: opts.brief, task: opts.task?.trim() || undefined, scope: opts.scope?.trim() || undefined, full: opts.full });
@@ -427,7 +426,12 @@ program
427
426
  }
428
427
  // Commander turns `--no-prompt` into `prompt: false`. We invert so HandshakeOptions sees noPrompt=true.
429
428
  const noPrompt = opts.prompt === false;
430
- await runHandshake({ force: opts.force, apply: opts.apply, dryRun: opts.dryRun, level: opts.level, generate: opts.generate, surfaces: opts.surfaces?.split(','), noPrompt, lenient: opts.lenient });
429
+ // Attribute the bare-handshake invocation so its context.served row is separable from
430
+ // session-start ('session-start') / session-close ('session-close') / manual orient rows.
431
+ // Without this, the kernel used to coerce the absent path to 'manual-orient', polluting the
432
+ // proof slice that isolates manual `pb orient --task` rows (the 'handshake' union member was
433
+ // otherwise never emitted).
434
+ await runHandshake({ force: opts.force, apply: opts.apply, dryRun: opts.dryRun, level: opts.level, generate: opts.generate, surfaces: opts.surfaces?.split(','), noPrompt, lenient: opts.lenient, invocationPath: 'handshake' });
431
435
  });
432
436
  program
433
437
  .command('codex-prep <task...>')
@@ -809,6 +813,18 @@ workspaceCmd
809
813
  const authorityDomainsCmd = program
810
814
  .command('authority-domains')
811
815
  .description('Operator commands for WP-354 authority-domain readiness and evidence');
816
+ function collectRepeatableOption(value, previous) {
817
+ return [...(previous ?? []), value];
818
+ }
819
+ authorityDomainsCmd
820
+ .command('add <slug>')
821
+ .description('Create an authority domain for this workspace')
822
+ .option('--description <description>', 'Authority-domain description')
823
+ .option('--alias <alias>', 'Alias/keyword for this domain (repeatable)', collectRepeatableOption)
824
+ .option('--path-glob <glob>', 'Changed-path glob for this domain (repeatable)', collectRepeatableOption)
825
+ .action(async (slug, opts) => {
826
+ await runAuthorityDomainsAdd(slug, opts);
827
+ });
812
828
  authorityDomainsCmd
813
829
  .command('propose')
814
830
  .description('Generate authority-domain tag proposals')
@@ -849,6 +865,16 @@ authorityDomainsCmd
849
865
  .action(async (proposalId, opts) => {
850
866
  await runAuthorityDomainsRatify(proposalId, opts);
851
867
  });
868
+ authorityDomainsCmd
869
+ .command('queue-tag')
870
+ .description('Queue a known-correct authority-domain tag proposal')
871
+ .requiredOption('--entry <entryId>', 'Entry ID to tag, e.g. DEC-1244')
872
+ .requiredOption('--domain <domainSlug>', 'Authority-domain slug, e.g. product-design/ux')
873
+ .option('--note <note>', 'Known-correct evidence note')
874
+ .option('--ratify', 'Immediately ratify using the generated confirmation string')
875
+ .action(async (opts) => {
876
+ await runAuthorityDomainsQueueTag(opts);
877
+ });
852
878
  authorityDomainsCmd
853
879
  .command('reject <proposal-id>')
854
880
  .description('Reject an authority-domain tag proposal')