@productbrain/cli 0.1.0-beta.1296 → 0.1.0-beta.1328

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 (32) hide show
  1. package/dist/__tests__/authority-domains-queue.test.js +33 -1
  2. package/dist/__tests__/authority-domains-queue.test.js.map +1 -1
  3. package/dist/__tests__/orient.test.js +40 -0
  4. package/dist/__tests__/orient.test.js.map +1 -1
  5. package/dist/commands/authority-domains.d.ts +5 -0
  6. package/dist/commands/authority-domains.d.ts.map +1 -1
  7. package/dist/commands/authority-domains.js +27 -0
  8. package/dist/commands/authority-domains.js.map +1 -1
  9. package/dist/commands/orient.d.ts +15 -0
  10. package/dist/commands/orient.d.ts.map +1 -1
  11. package/dist/commands/orient.js.map +1 -1
  12. package/dist/formatters/orient.d.ts +15 -0
  13. package/dist/formatters/orient.d.ts.map +1 -1
  14. package/dist/formatters/orient.js +14 -4
  15. package/dist/formatters/orient.js.map +1 -1
  16. package/dist/generators/chain-classifier.d.ts +15 -1
  17. package/dist/generators/chain-classifier.d.ts.map +1 -1
  18. package/dist/generators/chain-classifier.js +39 -91
  19. package/dist/generators/chain-classifier.js.map +1 -1
  20. package/dist/generators/chain-classifier.test.js +117 -27
  21. package/dist/generators/chain-classifier.test.js.map +1 -1
  22. package/dist/generators/chain-rules.d.ts.map +1 -1
  23. package/dist/generators/chain-rules.js +9 -1
  24. package/dist/generators/chain-rules.js.map +1 -1
  25. package/dist/generators/chain-rules.test.js +34 -2
  26. package/dist/generators/chain-rules.test.js.map +1 -1
  27. package/dist/index.js +14 -3
  28. package/dist/index.js.map +1 -1
  29. package/dist/lib/collectionRegistry.d.ts +2 -0
  30. package/dist/lib/collectionRegistry.d.ts.map +1 -1
  31. package/dist/lib/collectionRegistry.js.map +1 -1
  32. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"orient.js","sourceRoot":"","sources":["../../src/formatters/orient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orient.js","sourceRoot":"","sources":["../../src/formatters/orient.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,20 @@ export interface GovernanceEntryInput {
27
27
  data: Record<string, unknown> | null;
28
28
  relations: GovernanceRelationEdge[];
29
29
  }
30
+ /** Workspace collection metadata from chain.listCollections. */
31
+ export interface GovernanceCollectionInput {
32
+ slug: string;
33
+ name?: string;
34
+ description?: string;
35
+ purpose?: string;
36
+ usageGuidance?: string;
37
+ classificationCheck?: string;
38
+ classificationSignals?: string[];
39
+ defaultCanonicalKey?: string;
40
+ governanceRole?: string;
41
+ thinkingLayer?: string;
42
+ governanceFunction?: GovernanceFunction;
43
+ }
30
44
  /** Result of classifying a single governance entry. */
31
45
  export interface ClassifiedGovernance {
32
46
  entryId: string;
@@ -45,5 +59,5 @@ export interface ClassifiedGovernance {
45
59
  * per entry that has a non-null entryId. Entries with null entryId are silently
46
60
  * excluded (safety guard — entries without IDs cannot be referenced by archetypes).
47
61
  */
48
- export declare function classifyGovernance(entries: GovernanceEntryInput[]): ClassifiedGovernance[];
62
+ export declare function classifyGovernance(entries: GovernanceEntryInput[], collections?: GovernanceCollectionInput[]): ClassifiedGovernance[];
49
63
  //# sourceMappingURL=chain-classifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chain-classifier.d.ts","sourceRoot":"","sources":["../../src/generators/chain-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,0DAA0D;AAC1D,MAAM,MAAM,kBAAkB,GAC1B,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,QAAQ,GACR,UAAU,GACV,cAAc,GACd,cAAc,CAAC;AAEnB,yGAAyG;AACzG,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,UAAU,GAAG,UAAU,CAAC;IACnC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,mEAAmE;AACnE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAAC;IACrD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,sBAAsB,EAAE,CAAC;CACrC;AAED,uDAAuD;AACvD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,wCAAwC;IACxC,SAAS,EAAE,sBAAsB,EAAE,CAAC;CACrC;AAuGD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA4F1F"}
1
+ {"version":3,"file":"chain-classifier.d.ts","sourceRoot":"","sources":["../../src/generators/chain-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,0DAA0D;AAC1D,MAAM,MAAM,kBAAkB,GAC1B,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,QAAQ,GACR,UAAU,GACV,cAAc,GACd,cAAc,CAAC;AAEnB,yGAAyG;AACzG,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,UAAU,GAAG,UAAU,CAAC;IACnC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,mEAAmE;AACnE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAAC;IACrD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,sBAAsB,EAAE,CAAC;CACrC;AAED,gEAAgE;AAChE,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAED,uDAAuD;AACvD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,wCAAwC;IACxC,SAAS,EAAE,sBAAsB,EAAE,CAAC;CACrC;AA2BD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,oBAAoB,EAAE,EAC/B,WAAW,GAAE,yBAAyB,EAAO,GAC5C,oBAAoB,EAAE,CAqFxB"}
@@ -13,17 +13,6 @@ const COLLECTION_BASE_SCORE = 0.45;
13
13
  const RELATION_BOOST = 0.2;
14
14
  /** Score boost for a supporting name pattern match. */
15
15
  const NAME_BOOST = 0.15;
16
- /** Map collection slug → primary governance function. */
17
- const COLLECTION_TO_FUNCTION = {
18
- 'standards': 'constraint',
19
- 'business-rules': 'constraint',
20
- 'architecture': 'boundary',
21
- 'decisions': 'convention',
22
- 'patterns': 'convention',
23
- 'policies': 'policy',
24
- 'flows': 'workflow',
25
- 'glossary': 'unclassified',
26
- };
27
16
  /**
28
17
  * Relation-type signals that boost a governance function.
29
18
  * Key: relation type string (lowercased).
@@ -34,90 +23,28 @@ const RELATION_SIGNALS = [
34
23
  { type: 'governs', fn: 'policy', boost: RELATION_BOOST },
35
24
  { type: 'part_of', fn: 'workflow', boost: RELATION_BOOST },
36
25
  ];
37
- /** Relation signals based on the collection of the *other* entry. */
38
- const RELATION_COLLECTION_SIGNALS = [
39
- // informed_by an architecture entry → boost boundary
40
- { otherCollectionSlug: 'architecture', relationType: 'informed_by', fn: 'boundary', boost: RELATION_BOOST },
41
- ];
42
- /**
43
- * Name keyword signals — applied against the lowercased entry name.
44
- * Matched signals are applied once per matching keyword group.
45
- */
46
- const NAME_SIGNALS = [
47
- {
48
- keywords: ['auth', 'security', 'permission'],
49
- fn: 'policy',
50
- boost: NAME_BOOST,
51
- label: 'name contains security/auth/permission keyword',
52
- },
53
- {
54
- keywords: ['test', 'quality', 'check', 'gate'],
55
- fn: 'quality-gate',
56
- boost: NAME_BOOST,
57
- label: 'name contains test/quality/check/gate keyword',
58
- },
59
- {
60
- keywords: ['deploy', 'release', 'rollback'],
61
- fn: 'convention',
62
- boost: NAME_BOOST,
63
- label: 'name contains deploy/release/rollback keyword',
64
- },
65
- {
66
- keywords: ['domain', 'boundary', 'layer', 'architecture'],
67
- fn: 'boundary',
68
- boost: NAME_BOOST,
69
- label: 'name contains domain/boundary/layer/architecture keyword',
70
- },
71
- {
72
- keywords: ['flag', 'feature flag'],
73
- fn: 'convention',
74
- boost: NAME_BOOST,
75
- label: 'name contains flag/feature flag keyword',
76
- },
77
- ];
78
- /**
79
- * Secondary collection overrides — for collections that can produce multiple
80
- * governance functions depending on relation/name context. When a secondary
81
- * function score exceeds this threshold, it may win over the primary collection
82
- * signal if its total score is higher.
83
- *
84
- * `standards` can produce `quality-gate` in addition to `constraint`.
85
- * `business-rules` can produce `policy` in addition to `constraint`.
86
- * `decisions` can produce `boundary` in addition to `convention`.
87
- */
88
- const SECONDARY_COLLECTION_SIGNALS = {
89
- 'standards': 'quality-gate',
90
- 'business-rules': 'policy',
91
- 'decisions': 'boundary',
92
- };
93
26
  // ── Classifier ────────────────────────────────────────────────────────
94
27
  /**
95
28
  * Classify a batch of governance entries, returning one ClassifiedGovernance
96
29
  * per entry that has a non-null entryId. Entries with null entryId are silently
97
30
  * excluded (safety guard — entries without IDs cannot be referenced by archetypes).
98
31
  */
99
- export function classifyGovernance(entries) {
32
+ export function classifyGovernance(entries, collections = []) {
100
33
  const results = [];
34
+ const collectionBySlug = new Map(collections.map((c) => [c.slug, c]));
101
35
  for (const entry of entries) {
102
36
  // Safety: skip entries without a human-readable ID
103
37
  if (entry.entryId === null)
104
38
  continue;
105
39
  const scores = new Map();
106
40
  const signals = [];
107
- const nameLower = entry.name.toLowerCase();
108
41
  const slug = entry.collectionSlug;
42
+ const collection = collectionBySlug.get(slug);
109
43
  // ── Signal 1: Collection type (strongest) ──────────────────────
110
- const primaryFn = COLLECTION_TO_FUNCTION[slug];
44
+ const primaryFn = inferCollectionGovernanceFunction(collection, entry);
111
45
  if (primaryFn && primaryFn !== 'unclassified') {
112
46
  addScore(scores, primaryFn, COLLECTION_BASE_SCORE);
113
- signals.push(`collection '${slug}' → ${primaryFn}`);
114
- }
115
- // Secondary collection function — seed with a lower base so it can win
116
- // only when relation/name signals push it above the primary.
117
- const secondaryFn = SECONDARY_COLLECTION_SIGNALS[slug];
118
- if (secondaryFn) {
119
- addScore(scores, secondaryFn, COLLECTION_BASE_SCORE - 0.1);
120
- signals.push(`collection '${slug}' secondary → ${secondaryFn}`);
47
+ signals.push(`collection metadata '${slug}' → ${primaryFn}`);
121
48
  }
122
49
  // ── Signal 2: Relation types (refining) ───────────────────────
123
50
  for (const rel of entry.relations) {
@@ -128,20 +55,21 @@ export function classifyGovernance(entries) {
128
55
  signals.push(`relation '${rel.type}' → boost ${sig.fn}`);
129
56
  }
130
57
  }
131
- for (const sig of RELATION_COLLECTION_SIGNALS) {
132
- if (relTypeLower === sig.relationType &&
133
- rel.otherCollectionSlug === sig.otherCollectionSlug) {
134
- addScore(scores, sig.fn, sig.boost);
135
- signals.push(`relation '${rel.type}' to ${sig.otherCollectionSlug} → boost ${sig.fn}`);
58
+ if (relTypeLower === 'informed_by' && rel.otherCollectionSlug) {
59
+ const otherFn = inferCollectionGovernanceFunction(collectionBySlug.get(rel.otherCollectionSlug));
60
+ if (otherFn === 'boundary') {
61
+ addScore(scores, 'boundary', COLLECTION_BASE_SCORE + RELATION_BOOST);
62
+ signals.push(`relation '${rel.type}' to boundary collection '${rel.otherCollectionSlug}' → boost boundary`);
136
63
  }
137
64
  }
138
65
  }
139
- // ── Signal 3: Name patterns (weakest) ─────────────────────────
140
- for (const sig of NAME_SIGNALS) {
141
- const matched = sig.keywords.some((kw) => nameLower.includes(kw));
142
- if (matched) {
143
- addScore(scores, sig.fn, sig.boost);
144
- signals.push(sig.label);
66
+ // ── Signal 3: Workspace collection name signals (weakest) ────
67
+ if (primaryFn && collection?.classificationSignals?.length) {
68
+ const entryText = entry.name.toLowerCase();
69
+ const matchedSignal = collection.classificationSignals.find((signal) => entryText.includes(signal.toLowerCase()));
70
+ if (matchedSignal) {
71
+ addScore(scores, primaryFn, NAME_BOOST);
72
+ signals.push(`collection signal '${matchedSignal}' → boost ${primaryFn}`);
145
73
  }
146
74
  }
147
75
  // ── Pick winner ───────────────────────────────────────────────
@@ -153,8 +81,7 @@ export function classifyGovernance(entries) {
153
81
  bestFn = fn;
154
82
  }
155
83
  }
156
- // Glossary is always unclassified regardless of score
157
- if (slug === 'glossary') {
84
+ if (collection?.governanceFunction === 'unclassified') {
158
85
  bestFn = 'unclassified';
159
86
  bestScore = 0;
160
87
  }
@@ -177,4 +104,25 @@ export function classifyGovernance(entries) {
177
104
  function addScore(scores, fn, delta) {
178
105
  scores.set(fn, (scores.get(fn) ?? 0) + delta);
179
106
  }
107
+ function inferCollectionGovernanceFunction(collection, entry) {
108
+ const explicit = normalizeGovernanceFunction(collection?.governanceFunction);
109
+ if (explicit)
110
+ return explicit;
111
+ const dataFn = normalizeGovernanceFunction(entry?.data?.governanceFunction);
112
+ if (dataFn)
113
+ return dataFn;
114
+ return 'unclassified';
115
+ }
116
+ function normalizeGovernanceFunction(value) {
117
+ if (value === 'constraint' ||
118
+ value === 'boundary' ||
119
+ value === 'convention' ||
120
+ value === 'policy' ||
121
+ value === 'workflow' ||
122
+ value === 'quality-gate' ||
123
+ value === 'unclassified') {
124
+ return value;
125
+ }
126
+ return null;
127
+ }
180
128
  //# sourceMappingURL=chain-classifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chain-classifier.js","sourceRoot":"","sources":["../../src/generators/chain-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAqDH,sDAAsD;AACtD,MAAM,qBAAqB,GAAG,IAAI,CAAC;AACnC,wDAAwD;AACxD,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,uDAAuD;AACvD,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,yDAAyD;AACzD,MAAM,sBAAsB,GAAuC;IACjE,WAAW,EAAE,YAAY;IACzB,gBAAgB,EAAE,YAAY;IAC9B,cAAc,EAAE,UAAU;IAC1B,WAAW,EAAE,YAAY;IACzB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,cAAc;CAC3B,CAAC;AAEF;;;;GAIG;AACH,MAAM,gBAAgB,GAAmE;IACvF,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE;IAC/D,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE;IACxD,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE;CAC3D,CAAC;AAEF,qEAAqE;AACrE,MAAM,2BAA2B,GAK5B;IACH,qDAAqD;IACrD,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE;CAC5G,CAAC;AAEF;;;GAGG;AACH,MAAM,YAAY,GAAwF;IACxG;QACE,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC;QAC5C,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,gDAAgD;KACxD;IACD;QACE,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC;QAC9C,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,+CAA+C;KACvD;IACD;QACE,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC;QAC3C,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,+CAA+C;KACvD;IACD;QACE,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,CAAC;QACzD,EAAE,EAAE,UAAU;QACd,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,0DAA0D;KAClE;IACD;QACE,QAAQ,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC;QAClC,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,yCAAyC;KACjD;CACF,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,4BAA4B,GAAuC;IACvE,WAAW,EAAE,cAAc;IAC3B,gBAAgB,EAAE,QAAQ;IAC1B,WAAW,EAAE,UAAU;CACxB,CAAC;AAEF,yEAAyE;AAEzE;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAA+B;IAChE,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,mDAAmD;QACnD,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;YAAE,SAAS;QAErC,MAAM,MAAM,GAAa,IAAI,GAAG,EAAE,CAAC;QACnC,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC;QAElC,kEAAkE;QAClE,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,SAAS,IAAI,SAAS,KAAK,cAAc,EAAE,CAAC;YAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,qBAAqB,CAAC,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,eAAe,IAAI,OAAO,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,uEAAuE;QACvE,6DAA6D;QAC7D,MAAM,WAAW,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,GAAG,GAAG,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,eAAe,IAAI,iBAAiB,WAAW,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,iEAAiE;QACjE,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAE5C,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACnC,IAAI,YAAY,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;oBAC9B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,2BAA2B,EAAE,CAAC;gBAC9C,IACE,YAAY,KAAK,GAAG,CAAC,YAAY;oBACjC,GAAG,CAAC,mBAAmB,KAAK,GAAG,CAAC,mBAAmB,EACnD,CAAC;oBACD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,mBAAmB,YAAY,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;QACH,CAAC;QAED,iEAAiE;QACjE,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,IAAI,OAAO,EAAE,CAAC;gBACZ,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;gBACpC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,iEAAiE;QACjE,IAAI,MAAM,GAAuB,cAAc,CAAC;QAChD,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACjC,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;gBACtB,SAAS,GAAG,KAAK,CAAC;gBAClB,MAAM,GAAG,EAAE,CAAC;YACd,CAAC;QACH,CAAC;QAED,sDAAsD;QACtD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,MAAM,GAAG,cAAc,CAAC;YACxB,SAAS,GAAG,CAAC,CAAC;QAChB,CAAC;QAED,8BAA8B;QAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAEvD,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,kBAAkB,EAAE,MAAM;YAC1B,UAAU;YACV,cAAc,EAAE,OAAO;YACvB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E,SAAS,QAAQ,CAAC,MAAgB,EAAE,EAAsB,EAAE,KAAa;IACvE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"chain-classifier.js","sourceRoot":"","sources":["../../src/generators/chain-classifier.ts"],"names":[],"mappings":"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"}
@@ -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