@aibvf/core 0.6.0 → 0.7.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.
@@ -0,0 +1,14 @@
1
+ /**
2
+ * map_to_taxonomy: senior users say "customer service", "procurement" and
3
+ * "legal", not cx, supply and risk. This maps everyday business language
4
+ * onto the canonical enums deterministically, so callers stop passing the
5
+ * wrong function. Matching is exact-first, then alias, then word overlap.
6
+ */
7
+ import type { MapTaxonomyResult } from './types.js';
8
+ export declare function mapToTaxonomy(input: {
9
+ industry?: string;
10
+ function?: string;
11
+ ai_tier?: string;
12
+ readiness?: string;
13
+ }): MapTaxonomyResult;
14
+ //# sourceMappingURL=aliases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aliases.d.ts","sourceRoot":"","sources":["../src/aliases.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,YAAY,CAAC;AAmEnE,wBAAgB,aAAa,CAAC,KAAK,EAAE;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,iBAAiB,CASpB"}
@@ -0,0 +1,73 @@
1
+ import { INDUSTRIES, FUNCTIONS, AI_TIERS, READINESS } from './taxonomy.js';
2
+ const FUNCTION_ALIASES = {
3
+ cx: ['customer service', 'customer support', 'support', 'service desk', 'contact centre', 'contact center', 'customer experience', 'call centre', 'call center', 'helpdesk', 'client service'],
4
+ supply: ['procurement', 'supply chain', 'logistics', 'operations', 'ops', 'manufacturing ops', 'warehouse', 'inventory', 'sourcing', 'fulfilment', 'fulfillment'],
5
+ rd: ['r&d', 'research', 'product development', 'product', 'engineering', 'innovation', 'design', 'development'],
6
+ risk: ['legal', 'compliance', 'audit', 'risk management', 'regulatory', 'governance', 'fraud', 'controls'],
7
+ hr: ['people', 'talent', 'recruiting', 'recruitment', 'human resources', 'people operations', 'workforce', 'l&d', 'learning and development'],
8
+ sales: ['marketing', 'revenue', 'commercial', 'growth', 'business development', 'crm', 'pipeline', 'pricing'],
9
+ it: ['technology', 'infrastructure', 'devops', 'service management', 'itsm', 'platform', 'cloud', 'security operations'],
10
+ finance: ['accounting', 'fp&a', 'treasury', 'controlling', 'financial planning', 'billing', 'accounts payable', 'accounts receivable', 'fpa'],
11
+ };
12
+ const INDUSTRY_ALIASES = {
13
+ retail: ['ecommerce', 'e-commerce', 'consumer goods', 'fmcg', 'grocery', 'fashion', 'shops'],
14
+ financial: ['banking', 'bank', 'insurance', 'insurer', 'fintech', 'asset management', 'payments', 'financial services'],
15
+ healthcare: ['hospital', 'pharma', 'pharmaceutical', 'medtech', 'life sciences', 'clinical', 'health'],
16
+ manufacturing: ['industrial', 'automotive', 'factory', 'production', 'engineering company'],
17
+ technology: ['software', 'saas', 'tech', 'it services', 'telecom', 'telecommunications'],
18
+ logistics: ['transport', 'shipping', 'freight', 'distribution', 'postal'],
19
+ energy: ['utilities', 'utility', 'oil and gas', 'power', 'renewables'],
20
+ public_sector: ['government', 'municipality', 'public services', 'civil service', 'defence', 'defense'],
21
+ professional: ['consulting', 'consultancy', 'law firm', 'accounting firm', 'agency', 'professional services'],
22
+ education: ['university', 'school', 'edtech', 'training provider'],
23
+ real_estate: ['property', 'housing', 'construction', 'proptech'],
24
+ creative: ['media', 'entertainment', 'publishing', 'advertising', 'gaming'],
25
+ nonprofit: ['ngo', 'charity', 'foundation', 'not for profit', 'non-profit'],
26
+ universal: ['general', 'cross-industry', 'any', 'other'],
27
+ };
28
+ const TIER_ALIASES = {
29
+ gen1: ['rpa', 'automation', 'scripted', 'rules based', 'rules-based', 'workflow automation', 'macros', 'classic ml'],
30
+ gen2: ['genai', 'gen ai', 'generative ai', 'llm', 'copilot', 'chatbot', 'assistant', 'gpt', 'claude', 'summarisation', 'drafting'],
31
+ gen3: ['agentic', 'agents', 'autonomous', 'ai agents', 'multi-agent', 'auto-pilot', 'autopilot', 'self-directed'],
32
+ };
33
+ const READINESS_ALIASES = {
34
+ agile: ['cross-functional', 'startup', 'product-led', 'fast-moving', 'collaborative', 'empowered teams', 'change-ready'],
35
+ traditional: ['hierarchy', 'hierarchical', 'functional', 'corporate', 'committee', 'matrix', 'established'],
36
+ siloed: ['bureaucratic', 'territorial', 'rigid', 'slow', 'legacy culture', 'political', 'fragmented'],
37
+ };
38
+ function matchOne(input, canon, aliases) {
39
+ const norm = input.trim().toLowerCase().replace(/[_-]+/g, ' ');
40
+ const compact = norm.replace(/\s+/g, '');
41
+ for (const c of canon) {
42
+ if (compact === c.toLowerCase().replace(/[_\s]+/g, ''))
43
+ return { input, resolved: c, matched_on: 'exact' };
44
+ }
45
+ for (const [c, list] of Object.entries(aliases)) {
46
+ for (const a of list) {
47
+ if (norm === a)
48
+ return { input, resolved: c, matched_on: a };
49
+ }
50
+ }
51
+ for (const [c, list] of Object.entries(aliases)) {
52
+ for (const a of list) {
53
+ if (norm.includes(a) || a.includes(norm))
54
+ return { input, resolved: c, matched_on: a };
55
+ }
56
+ }
57
+ return { input, resolved: null, suggestions: [...canon] };
58
+ }
59
+ export function mapToTaxonomy(input) {
60
+ const out = {
61
+ guidance: 'Pass the resolved values to score_initiative, score_portfolio, sequence_portfolio, recommend_improvements, calculate_pace_layer_drag, get_benchmark or infer_readiness. A null resolution means no confident match: ask the user to pick from the suggestions rather than guessing.',
62
+ };
63
+ if (input.industry !== undefined)
64
+ out.industry = matchOne(input.industry, INDUSTRIES, INDUSTRY_ALIASES);
65
+ if (input.function !== undefined)
66
+ out.function = matchOne(input.function, FUNCTIONS, FUNCTION_ALIASES);
67
+ if (input.ai_tier !== undefined)
68
+ out.ai_tier = matchOne(input.ai_tier, AI_TIERS, TIER_ALIASES);
69
+ if (input.readiness !== undefined)
70
+ out.readiness = matchOne(input.readiness, READINESS, READINESS_ALIASES);
71
+ return out;
72
+ }
73
+ //# sourceMappingURL=aliases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aliases.js","sourceRoot":"","sources":["../src/aliases.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Reproducibility: every scoring call carries an audit record naming the
3
+ * engine version, the rules that fired, and the resolved inputs, so a
4
+ * challenged verdict can be reproduced months later without asking any
5
+ * model to remember anything. Deterministic by design: no timestamps.
6
+ */
7
+ import type { AuditRecord } from './types.js';
8
+ /** Single source of truth for the engine version; bump with package.json. */
9
+ export declare const CORE_VERSION = "0.7.0";
10
+ export declare function buildAudit(rules_fired: string[], inputs_used: Record<string, unknown>): AuditRecord;
11
+ //# sourceMappingURL=audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,6EAA6E;AAC7E,eAAO,MAAM,YAAY,UAAU,CAAC;AAEpC,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,CASnG"}
package/dist/audit.js ADDED
@@ -0,0 +1,13 @@
1
+ /** Single source of truth for the engine version; bump with package.json. */
2
+ export const CORE_VERSION = '0.7.0';
3
+ export function buildAudit(rules_fired, inputs_used) {
4
+ return {
5
+ engine: '@aibvf/core',
6
+ engine_version: CORE_VERSION,
7
+ bvf_version: '1.0',
8
+ rules_fired,
9
+ inputs_used,
10
+ note: 'Deterministic: the same inputs on the same engine version reproduce this result exactly.',
11
+ };
12
+ }
13
+ //# sourceMappingURL=audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AAQA,6EAA6E;AAC7E,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC;AAEpC,MAAM,UAAU,UAAU,CAAC,WAAqB,EAAE,WAAoC;IACpF,OAAO;QACL,MAAM,EAAE,aAAa;QACrB,cAAc,EAAE,YAAY;QAC5B,WAAW,EAAE,KAAK;QAClB,WAAW;QACX,WAAW;QACX,IAAI,EAAE,0FAA0F;KACjG,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=boardInstrument.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boardInstrument.test.d.ts","sourceRoot":"","sources":["../src/boardInstrument.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,124 @@
1
+ import test from 'node:test';
2
+ import assert from 'node:assert/strict';
3
+ import { score, recommendImprovements } from './score.js';
4
+ import { inferReadiness } from './inferReadiness.js';
5
+ import { sequencePortfolio } from './sequencePortfolio.js';
6
+ import { mapToTaxonomy } from './aliases.js';
7
+ import { CORE_VERSION } from './audit.js';
8
+ const base = {
9
+ industry: 'retail', revenue_eur: 300_000_000, function: 'cx', ai_tier: 'gen2', readiness: 'traditional',
10
+ scores: { strategic_alignment: 70, financial_return: 64, change_enablement: 48, governance_risk: 35 },
11
+ };
12
+ // ── audit ──────────────────────────────────────────────────────────────────
13
+ test('every scoring call carries a reproducible audit record', () => {
14
+ const s = score(base);
15
+ assert.equal(s.audit.engine, '@aibvf/core');
16
+ assert.equal(s.audit.engine_version, CORE_VERSION);
17
+ assert.ok(s.audit.rules_fired.some(r => r.startsWith('classify:Fix')));
18
+ assert.ok(s.audit.rules_fired.some(r => r.startsWith('value:BASE_RATES[cx]')));
19
+ const r = recommendImprovements(base);
20
+ assert.ok(r.audit.rules_fired.some(x => x.startsWith('gap:change_enablement')));
21
+ const i = inferReadiness({ function: 'cx', handoffs: 5, rework_rate: 0.2 });
22
+ assert.ok(i.audit.rules_fired.some(x => x.startsWith('classify:')));
23
+ });
24
+ test('audit reflects estimation when pillars are omitted', () => {
25
+ const s = score({ ...base, scores: undefined });
26
+ assert.ok(s.audit.rules_fired.some(r => r.startsWith('estimate:')));
27
+ assert.ok(s.audit.rules_fired.some(r => r.includes('(defaulted)')));
28
+ });
29
+ // ── sensitivity ────────────────────────────────────────────────────────────
30
+ test('sensitivity: readiness notch-down shrinks value, revenue -20pct scales, flips are named', () => {
31
+ const s = score(base);
32
+ assert.ok(s.sensitivity.readiness_one_notch_down);
33
+ assert.equal(s.sensitivity.readiness_one_notch_down.readiness, 'siloed');
34
+ assert.ok(s.sensitivity.readiness_one_notch_down.net_value_eur.high < s.net_high_eur);
35
+ assert.equal(s.sensitivity.revenue_minus_20pct.net_value_eur.low, Math.round(s.net_low_eur * 0.8));
36
+ assert.ok(s.sensitivity.verdict_flips.some(f => f.includes('to Accelerate')));
37
+ assert.ok(s.sensitivity.verdict_flips.some(f => f.includes('Stop')));
38
+ });
39
+ test('sensitivity: siloed has no notch down; Accelerate names its margins', () => {
40
+ const s = score({ ...base, readiness: 'siloed', scores: { ...base.scores } });
41
+ assert.equal(s.sensitivity.readiness_one_notch_down, null);
42
+ const a = score({ ...base, scores: { strategic_alignment: 75, financial_return: 70, change_enablement: 65, governance_risk: 38 } });
43
+ assert.equal(a.classification, 'Accelerate');
44
+ assert.ok(a.sensitivity.verdict_flips.some(f => f.includes('governance_risk +3')));
45
+ });
46
+ // ── claimed vs measured readiness ──────────────────────────────────────────
47
+ test('claimed agile vs measured siloed reports the gap as a finding', () => {
48
+ const r = inferReadiness({
49
+ function: 'supply', handoffs: 11, rework_rate: 0.22, touch_ratio: 0.08, automation_level: 0.1, cycle_time_days: 18,
50
+ claimed_readiness: 'agile',
51
+ });
52
+ assert.equal(r.readiness, 'siloed');
53
+ assert.equal(r.claimed_readiness, 'agile');
54
+ assert.equal(r.readiness_gap, 2);
55
+ assert.ok(r.gap_finding && r.gap_finding.includes('two notches'));
56
+ });
57
+ test('claimed matches measured strengthens rather than flags', () => {
58
+ const r = inferReadiness({ function: 'cx', handoffs: 1, rework_rate: 0.03, touch_ratio: 0.55, claimed_readiness: 'agile' });
59
+ assert.equal(r.readiness_gap, 0);
60
+ assert.ok(r.gap_finding && r.gap_finding.includes('holds up'));
61
+ });
62
+ // ── taxonomy aliases ───────────────────────────────────────────────────────
63
+ test('everyday language maps onto the canonical taxonomy', () => {
64
+ const m = mapToTaxonomy({ function: 'Customer Service', industry: 'Banking', ai_tier: 'GenAI copilot', readiness: 'bureaucratic' });
65
+ assert.equal(m.function.resolved, 'cx');
66
+ assert.equal(m.industry.resolved, 'financial');
67
+ assert.equal(m.ai_tier.resolved, 'gen2');
68
+ assert.equal(m.readiness.resolved, 'siloed');
69
+ });
70
+ test('no confident match returns null with suggestions, never a guess', () => {
71
+ const m = mapToTaxonomy({ function: 'astrology' });
72
+ assert.equal(m.function.resolved, null);
73
+ assert.ok(m.function.suggestions.includes('cx'));
74
+ });
75
+ // ── sequence_portfolio ─────────────────────────────────────────────────────
76
+ const seqInput = {
77
+ organization: { name: 'Test org', industry: 'financial', revenue_eur: 1_200_000_000 },
78
+ readiness: 'traditional',
79
+ initiatives: [
80
+ { id: 'a', name: 'Doomed voice bot', function: 'cx', ai_tier: 'gen3', scores: { strategic_alignment: 40, financial_return: 15, change_enablement: 30, governance_risk: 60 } },
81
+ { id: 'b', name: 'Quick finance win', function: 'finance', ai_tier: 'gen1', scores: { strategic_alignment: 72, financial_return: 68, change_enablement: 66, governance_risk: 30 } },
82
+ { id: 'c', name: 'CX assist', function: 'cx', ai_tier: 'gen2', scores: { strategic_alignment: 70, financial_return: 65, change_enablement: 62, governance_risk: 35 } },
83
+ { id: 'd', name: 'Agentic supply pilot', function: 'finance', ai_tier: 'gen3', scores: { strategic_alignment: 75, financial_return: 70, change_enablement: 64, governance_risk: 38 } },
84
+ { id: 'e', name: 'Finance copilot', function: 'finance', ai_tier: 'gen2', scores: { strategic_alignment: 68, financial_return: 63, change_enablement: 61, governance_risk: 32 } },
85
+ { id: 'f', name: 'Fixable claims triage', function: 'risk', ai_tier: 'gen2', scores: { strategic_alignment: 65, financial_return: 62, change_enablement: 45, governance_risk: 50 } },
86
+ ],
87
+ };
88
+ test('stops land in wave 1, quick wins in wave 2, fixes behind gates in wave 3', () => {
89
+ const r = sequencePortfolio(seqInput);
90
+ assert.equal(r.waves[0].initiatives.length, 1);
91
+ assert.equal(r.waves[0].initiatives[0].id, 'a');
92
+ assert.ok(r.waves[0].initiatives[0].action.includes('Stop now'));
93
+ const w3fix = r.waves[2].initiatives.find(x => x.id === 'f');
94
+ assert.ok(w3fix && w3fix.action.includes('re-score gate'));
95
+ assert.equal(r.totals.stopped, 1);
96
+ });
97
+ test('change capacity defers overflow and reports the conflict', () => {
98
+ const r = sequencePortfolio({ ...seqInput, constraints: { max_parallel_per_function: 1 } });
99
+ // three finance initiatives cannot all land at once with max_parallel 1
100
+ assert.ok(r.capacity_conflicts.some(c => c.function === 'finance'));
101
+ const placedFinanceW2 = r.waves[1].initiatives.filter(x => x.function === 'finance').length;
102
+ assert.ok(placedFinanceW2 <= 1);
103
+ assert.ok(r.capacity_conflicts.every(c => c.resolution.includes('overflow')));
104
+ });
105
+ test('sequencing is deterministic and audited', () => {
106
+ const a = sequencePortfolio(seqInput);
107
+ const b = sequencePortfolio(seqInput);
108
+ assert.deepEqual(a, b);
109
+ assert.ok(a.audit.rules_fired.some(x => x.startsWith('capacity:')));
110
+ assert.ok(a.sequencing_principles.some(p => p.includes('break an organisation')));
111
+ });
112
+ test('no em-dashes or banned vocabulary in any new output text', () => {
113
+ const blobs = [
114
+ JSON.stringify(score(base).sensitivity), JSON.stringify(score(base).audit),
115
+ JSON.stringify(inferReadiness({ function: 'supply', handoffs: 11, rework_rate: 0.22, claimed_readiness: 'agile' })),
116
+ JSON.stringify(sequencePortfolio(seqInput)),
117
+ JSON.stringify(mapToTaxonomy({ function: 'legal' })),
118
+ ].join(' ');
119
+ assert.ok(!blobs.includes('—'), 'em-dash found');
120
+ for (const w of ['boardroom', 'leverage', 'crucial', 'seamless']) {
121
+ assert.ok(!blobs.toLowerCase().includes(w), `banned word: ${w}`);
122
+ }
123
+ });
124
+ //# sourceMappingURL=boardInstrument.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boardInstrument.test.js","sourceRoot":"","sources":["../src/boardInstrument.test.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,9 @@ export { score, recommendImprovements, calculatePaceLayerDrag, estimatePillars,
3
3
  export { diagnoseProcess, BRAIN_VERSION, EVIDENCE, FUNCTION_MEDIANS, } from './diagnose.js';
4
4
  export { buildChangePlan } from './changePlan.js';
5
5
  export { inferReadiness } from './inferReadiness.js';
6
+ export { sequencePortfolio } from './sequencePortfolio.js';
7
+ export { mapToTaxonomy } from './aliases.js';
8
+ export { buildAudit, CORE_VERSION } from './audit.js';
6
9
  export { bvfSchema } from './schema.js';
7
10
  export { INDUSTRIES, FUNCTIONS, AI_TIERS, READINESS, INDUSTRY_LABEL, FUNCTION_LABEL, TIER_LABEL } from './taxonomy.js';
8
11
  export type * from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EAAE,cAAc,EAC/B,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,cAAc,GAClE,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,aAAa,EAAE,QAAQ,EAAE,gBAAgB,GAC1C,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACvH,mBAAmB,YAAY,CAAC;AAEhC,eAAO,MAAM,WAAW,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EAAE,cAAc,EAC/B,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,cAAc,GAClE,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,aAAa,EAAE,QAAQ,EAAE,gBAAgB,GAC1C,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACvH,mBAAmB,YAAY,CAAC;AAEhC,eAAO,MAAM,WAAW,QAAQ,CAAC"}
package/dist/index.js CHANGED
@@ -3,6 +3,9 @@ export { score, recommendImprovements, calculatePaceLayerDrag, estimatePillars,
3
3
  export { diagnoseProcess, BRAIN_VERSION, EVIDENCE, FUNCTION_MEDIANS, } from './diagnose.js';
4
4
  export { buildChangePlan } from './changePlan.js';
5
5
  export { inferReadiness } from './inferReadiness.js';
6
+ export { sequencePortfolio } from './sequencePortfolio.js';
7
+ export { mapToTaxonomy } from './aliases.js';
8
+ export { buildAudit, CORE_VERSION } from './audit.js';
6
9
  export { bvfSchema } from './schema.js';
7
10
  export { INDUSTRIES, FUNCTIONS, AI_TIERS, READINESS, INDUSTRY_LABEL, FUNCTION_LABEL, TIER_LABEL } from './taxonomy.js';
8
11
  export const BVF_VERSION = '1.0';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EAAE,cAAc,EAC/B,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,cAAc,GAClE,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,aAAa,EAAE,QAAQ,EAAE,gBAAgB,GAC1C,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGvH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EAAE,cAAc,EAC/B,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,cAAc,GAClE,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,aAAa,EAAE,QAAQ,EAAE,gBAAgB,GAC1C,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGvH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"inferReadiness.d.ts","sourceRoot":"","sources":["../src/inferReadiness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAyB,mBAAmB,EAAE,oBAAoB,EAAc,MAAM,YAAY,CAAC;AAW/G;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAkE/E"}
1
+ {"version":3,"file":"inferReadiness.d.ts","sourceRoot":"","sources":["../src/inferReadiness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAyB,mBAAmB,EAAE,oBAAoB,EAAc,MAAM,YAAY,CAAC;AAY/G;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CA4F/E"}
@@ -1,4 +1,5 @@
1
1
  import { FUNCTION_MEDIANS } from './diagnose.js';
2
+ import { buildAudit } from './audit.js';
2
3
  const LEAN_LABEL = { 0: 'agile', 1: 'traditional', 2: 'siloed' };
3
4
  function read(signal, value, lean, note) {
4
5
  return { signal, value, leans: LEAN_LABEL[lean], note };
@@ -54,6 +55,20 @@ export function inferReadiness(input) {
54
55
  const disagreement = spread === 2
55
56
  ? 'The signals disagree with each other, some read agile while others read siloed, which usually means readiness is uneven across the process rather than one thing. Treat the classification as the centre of gravity and look at the per-signal reads.'
56
57
  : undefined;
58
+ // Claimed versus measured: when the organisation's self-image and its
59
+ // process data disagree, the gap is the finding, not a rounding error.
60
+ const ORDER = { agile: 0, traditional: 1, siloed: 2 };
61
+ let claimedBlock = {};
62
+ if (input.claimed_readiness) {
63
+ const gap = ORDER[readiness] - ORDER[input.claimed_readiness];
64
+ claimedBlock = {
65
+ claimed_readiness: input.claimed_readiness,
66
+ readiness_gap: gap,
67
+ ...(gap > 0 ? { gap_finding: `The organisation describes itself as ${input.claimed_readiness} and measures as ${readiness}, ${gap === 1 ? 'one notch' : 'two notches'} below its self-image. That gap is itself a change-readiness finding: plan the change work for the measured level, because the process data is what the initiative will actually land on.` }
68
+ : gap < 0 ? { gap_finding: `The organisation describes itself as ${input.claimed_readiness} but measures as ${readiness}, better than it claims. Understated capacity is rare and useful: there is more change absorption available than the self-report suggests.` }
69
+ : { gap_finding: `Claimed and measured readiness agree at ${readiness}: the self-report holds up against the process data, which strengthens confidence in every score built on it.` }),
70
+ };
71
+ }
57
72
  return {
58
73
  readiness,
59
74
  readiness_basis: 'measured',
@@ -61,7 +76,15 @@ export function inferReadiness(input) {
61
76
  signals_used: leans.length,
62
77
  signal_reads: reads,
63
78
  ...(disagreement ? { disagreement } : {}),
79
+ ...claimedBlock,
64
80
  guidance: `Pass readiness="${readiness}" to score_initiative, score_portfolio, recommend_improvements or calculate_pace_layer_drag. If this measured classification is lower than the self-reported one, trust the process data: the gap between what an organisation says and what its hand-offs show is itself a change-readiness finding.`,
81
+ audit: buildAudit([
82
+ `signals:${leans.length}`,
83
+ `mean_lean:${(leans.reduce((a, b) => a + b, 0) / leans.length).toFixed(2)}`,
84
+ `classify:${readiness}`,
85
+ `confidence:${confidence}(coverage_base-disagreement)`,
86
+ ...(input.claimed_readiness ? [`claimed_vs_measured:${input.claimed_readiness}->${readiness}`] : []),
87
+ ], { function: input.function, signals_provided: leans.length, ...(input.claimed_readiness ? { claimed_readiness: input.claimed_readiness } : {}) }),
65
88
  };
66
89
  }
67
90
  //# sourceMappingURL=inferReadiness.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inferReadiness.js","sourceRoot":"","sources":["../src/inferReadiness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inferReadiness.js","sourceRoot":"","sources":["../src/inferReadiness.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"score.d.ts","sourceRoot":"","sources":["../src/score.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAAE,WAAW,EACvB,cAAc,EAAE,eAAe,EAC/B,cAAc,EAAE,eAAe,EAC/B,YAAY,EAAE,WAAW,EACH,MAAM,EAAE,SAAS,EACxC,MAAM,YAAY,CAAC;AAMpB,UAAU,QAAQ;IAChB,GAAG,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAS/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAe3D,CAAC;AAEF,eAAO,MAAM,QAAQ;;;;CAAkD,CAAC;AAExE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;CAIpB,CAAC;AAEX;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,CAIxF,CAAC;AAgDF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC,GACzE,YAAY,CAed;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG;IACjD,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,CAaA;AAED;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CAgEpD;AAwBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAoD5E;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAwB7E"}
1
+ {"version":3,"file":"score.d.ts","sourceRoot":"","sources":["../src/score.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAAE,WAAW,EACvB,cAAc,EAAE,eAAe,EAC/B,cAAc,EAAE,eAAe,EAC/B,YAAY,EAAE,WAAW,EACH,MAAM,EAAE,SAAS,EACxC,MAAM,YAAY,CAAC;AAOpB,UAAU,QAAQ;IAChB,GAAG,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAS/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAe3D,CAAC;AAEF,eAAO,MAAM,QAAQ;;;;CAAkD,CAAC;AAExE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;CAIpB,CAAC;AAEX;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,CAIxF,CAAC;AAgDF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC,GACzE,YAAY,CAed;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG;IACjD,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,CAaA;AAoCD;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CA8FpD;AAwBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CA6D5E;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAwB7E"}
package/dist/score.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { REGULATED_FUNCTIONS, REGULATED_INDUSTRIES } from './taxonomy.js';
2
+ import { buildAudit } from './audit.js';
2
3
  // Deferred-access import: buildChangePlan is only called inside
3
4
  // recommendImprovements, so the score <-> changePlan module cycle is safe.
4
5
  import { buildChangePlan } from './changePlan.js';
@@ -162,6 +163,50 @@ export function resolvePillars(input) {
162
163
  }
163
164
  return { scores, basis, givenCount };
164
165
  }
166
+ const NOTCH_DOWN = { agile: 'traditional', traditional: 'siloed', siloed: null };
167
+ /** The nearest single-pillar movements that change the verdict, in plain language. */
168
+ function verdictFlips(sa, fr, ce, gr, label) {
169
+ const flips = [];
170
+ if (label === 'Accelerate') {
171
+ const raw = [
172
+ [`governance_risk +${41 - gr} (to 41) drops this to Fix`, 41 - gr],
173
+ [`strategic_alignment -${sa - 59} (to 59) drops this to Fix`, sa - 59],
174
+ [`financial_return -${fr - 59} (to 59) drops this to Fix`, fr - 59],
175
+ [`change_enablement -${ce - 59} (to 59) drops this to Fix`, ce - 59],
176
+ ];
177
+ const margins = raw.filter(([, d]) => d > 0);
178
+ margins.sort((a, b) => a[1] - b[1]);
179
+ flips.push(...margins.slice(0, 2).map(m => m[0]));
180
+ }
181
+ else if (label === 'Stop') {
182
+ if (gr >= 70)
183
+ flips.push(`governance_risk -${gr - 69} (to 69) lifts the Stop gate`);
184
+ if (fr <= 20)
185
+ flips.push(`financial_return +${21 - fr} (to 21) lifts the Stop gate`);
186
+ }
187
+ else {
188
+ const gaps = [];
189
+ if (sa < 60)
190
+ gaps.push(`strategic_alignment +${60 - sa}`);
191
+ if (fr < 60)
192
+ gaps.push(`financial_return +${60 - fr}`);
193
+ if (ce < 60)
194
+ gaps.push(`change_enablement +${60 - ce}`);
195
+ if (gr > 40)
196
+ gaps.push(`governance_risk -${gr - 40}`);
197
+ if (gaps.length)
198
+ flips.push(`to Accelerate: ${gaps.join(', ')}`);
199
+ const toStop = [];
200
+ if (gr < 70)
201
+ toStop.push([`governance_risk +${70 - gr} (to 70) forces Stop`, 70 - gr]);
202
+ if (fr > 20)
203
+ toStop.push([`financial_return -${fr - 20} (to 20) forces Stop`, fr - 20]);
204
+ toStop.sort((a, b) => a[1] - b[1]);
205
+ if (toStop.length)
206
+ flips.push(`nearest Stop: ${toStop[0][0]}`);
207
+ }
208
+ return flips;
209
+ }
165
210
  /**
166
211
  * Score an initiative according to AI BVF v1.0.
167
212
  * Deterministic. No network. No dependencies.
@@ -211,6 +256,32 @@ export function score(input) {
211
256
  caveatParts.push(`Verdict rests on soft inputs (signal_completeness ${signal}). Decision confidence has been reduced accordingly; treat this as directional.`);
212
257
  }
213
258
  const caveat = caveatParts.length ? caveatParts.join(' ') : undefined;
259
+ // Sensitivity: what moves this verdict, computed deterministically.
260
+ const notch = NOTCH_DOWN[readiness];
261
+ let readinessDown = null;
262
+ if (notch) {
263
+ const capDown = READINESS_CAPTURE[notch];
264
+ const clsDown = classify(sa, fr, ce, gr); // pillars unchanged; readiness moves value + confidence context
265
+ readinessDown = {
266
+ readiness: notch,
267
+ classification: clsDown.label,
268
+ net_value_eur: { low: Math.round(grossLo * capDown.low), high: Math.round(grossHi * capDown.high) },
269
+ decision_confidence: confidence,
270
+ };
271
+ }
272
+ const sensitivity = {
273
+ readiness_one_notch_down: readinessDown,
274
+ revenue_minus_20pct: { net_value_eur: { low: Math.round(netLo * 0.8), high: Math.round(netHi * 0.8) } },
275
+ verdict_flips: verdictFlips(sa, fr, ce, gr, cls.label),
276
+ };
277
+ const estimated = Object.keys(basis).filter(k => basis[k] === 'estimated');
278
+ const rules = [
279
+ ...(estimated.length ? [`estimate:${estimated.join(',')}`] : []),
280
+ `signal_completeness:${signal}${input.signal_completeness === undefined ? '(defaulted)' : '(given)'}`,
281
+ `classify:${cls.label}`,
282
+ ...(allEstimated && cls.label === 'Fix' && sa >= 60 && fr >= 60 && ce >= 60 && gr <= 40 ? ['downgrade:estimated_accelerate_to_fix'] : []),
283
+ `value:BASE_RATES[${fn}] x IND_MULT[${industry}]=${mult} x TIER_ADJ[${ai_tier}]=${tAdj} x CAPTURE[${readiness}]=${cap.low}-${cap.high}`,
284
+ ];
214
285
  return {
215
286
  classification: cls.label,
216
287
  reason: cls.reason,
@@ -225,6 +296,8 @@ export function score(input) {
225
296
  applied_modules: appliedModules(industry, fn, readiness),
226
297
  scores_used: resolved,
227
298
  pillar_basis: basis,
299
+ sensitivity,
300
+ audit: buildAudit(rules, { industry, revenue_eur, function: fn, ai_tier, readiness, scores: resolved, pillar_basis: basis }),
228
301
  ...(caveat ? { caveat } : {}),
229
302
  };
230
303
  }
@@ -277,6 +350,7 @@ export function recommendImprovements(input) {
277
350
  recommendations: [],
278
351
  projected_confidence: Math.round((sa + fr + ce + (100 - gr)) / 4),
279
352
  notes: ['Initiative is already classified Accelerate. No flip required.'],
353
+ audit: buildAudit(['classify:Accelerate', 'no_flip_required'], { function: input.function, ai_tier: input.ai_tier, readiness: input.readiness, scores: resolved }),
280
354
  };
281
355
  }
282
356
  if (sa < 60)
@@ -305,6 +379,11 @@ export function recommendImprovements(input) {
305
379
  projected_confidence: projectedConfidence,
306
380
  notes,
307
381
  change_plan: buildChangePlan(input, resolved, recs, feasible),
382
+ audit: buildAudit([
383
+ `classify:${current}`,
384
+ `feasible:${feasible}`,
385
+ ...recs.map(r => `gap:${r.pillar}:${r.current}->${r.target}`),
386
+ ], { industry: input.industry, revenue_eur: input.revenue_eur, function: input.function, ai_tier: input.ai_tier, readiness: input.readiness, scores: resolved }),
308
387
  };
309
388
  }
310
389
  /**
package/dist/score.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"score.js","sourceRoot":"","sources":["../src/score.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"score.js","sourceRoot":"","sources":["../src/score.ts"],"names":[],"mappings":"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"}
@@ -21,8 +21,13 @@ test('default (no signal_completeness) leaves confidence at the pre-0.3.4 value'
21
21
  assert.equal(v.confidence, 62);
22
22
  assert.equal(v.caveat, undefined);
23
23
  });
24
- test('signal_completeness = 1 is identical to omitting it', () => {
25
- assert.deepEqual(score({ ...base, signal_completeness: 1 }), score(base));
24
+ test('signal_completeness = 1 behaves identically to omitting it (audit provenance may differ)', () => {
25
+ const { audit: a1, ...explicit } = score({ ...base, signal_completeness: 1 });
26
+ const { audit: a2, ...omitted } = score(base);
27
+ assert.deepEqual(explicit, omitted);
28
+ // the audit legitimately records given vs defaulted provenance
29
+ assert.ok(a1.rules_fired.some(r => r.includes('(given)')));
30
+ assert.ok(a2.rules_fired.some(r => r.includes('(defaulted)')));
26
31
  });
27
32
  test('low signal_completeness haircuts confidence and attaches a caveat', () => {
28
33
  const soft = score({ ...base, signal_completeness: 0.4 });
@@ -1 +1 @@
1
- {"version":3,"file":"score.test.js","sourceRoot":"","sources":["../src/score.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"score.test.js","sourceRoot":"","sources":["../src/score.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * sequence_portfolio: the Coroner's Sequencer lifted into the engine, with
3
+ * change capacity as a first-class constraint. Ten good ideas can still
4
+ * break an organisation if they all land on Finance in the same quarter,
5
+ * so the plan is three 30-day waves with named gates, and per-function
6
+ * parallel-change limits that defer overflow rather than pretending an
7
+ * organisation can absorb everything at once.
8
+ *
9
+ * Wave logic, unchanged from the Coroner:
10
+ * - Wave 1, days 1-30: every Stop. Free the budget, signal seriousness.
11
+ * - Wave 2, days 31-60: the quicker half of the Accelerates. Bank early
12
+ * wins, de-risk the sponsor.
13
+ * - Wave 3, days 61-90: complex Accelerates plus all Fixes, which enter
14
+ * behind their re-score gates with the trust the first waves bought.
15
+ *
16
+ * Deterministic: same portfolio, same constraints, same plan.
17
+ */
18
+ import type { SequenceInput, SequenceResult } from './types.js';
19
+ export declare function sequencePortfolio(input: SequenceInput): SequenceResult;
20
+ //# sourceMappingURL=sequencePortfolio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sequencePortfolio.d.ts","sourceRoot":"","sources":["../src/sequencePortfolio.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EACV,aAAa,EAAE,cAAc,EAE9B,MAAM,YAAY,CAAC;AAWpB,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CAwItE"}
@@ -0,0 +1,137 @@
1
+ import { score } from './score.js';
2
+ import { buildAudit } from './audit.js';
3
+ const TIER_COMPLEXITY = { gen1: 1, gen2: 2, gen3: 4 };
4
+ /** Lower is quicker to ship: tier ambition plus a penalty for shaky confidence. */
5
+ function complexity(item) {
6
+ return (TIER_COMPLEXITY[item.ai_tier] ?? 2) + (item.decision_confidence < 50 ? 2 : 0);
7
+ }
8
+ export function sequencePortfolio(input) {
9
+ const { organization, initiatives, readiness } = input;
10
+ const maxParallel = Math.max(1, input.constraints?.max_parallel_per_function ?? 2);
11
+ const horizon = input.constraints?.horizon_days ?? 90;
12
+ const waveLen = Math.round(horizon / 3);
13
+ const scored = [];
14
+ const skipped = [];
15
+ for (const init of initiatives) {
16
+ try {
17
+ const r = score({
18
+ industry: organization.industry,
19
+ revenue_eur: organization.revenue_eur,
20
+ function: init.function,
21
+ ai_tier: init.ai_tier,
22
+ readiness,
23
+ scores: init.scores,
24
+ });
25
+ scored.push({
26
+ id: init.id, name: init.name, function: init.function, ai_tier: init.ai_tier,
27
+ classification: r.classification,
28
+ action: '', reason: r.reason,
29
+ net_value_eur: { low: r.net_low_eur, high: r.net_high_eur },
30
+ decision_confidence: r.confidence,
31
+ });
32
+ }
33
+ catch (e) {
34
+ skipped.push({ id: init.id, name: init.name, reason: e instanceof Error ? e.message : String(e) });
35
+ }
36
+ }
37
+ const stops = scored.filter(x => x.classification === 'Stop');
38
+ const accelerates = scored.filter(x => x.classification === 'Accelerate').sort((a, b) => complexity(a) - complexity(b) || b.net_value_eur.high - a.net_value_eur.high);
39
+ const fixes = scored.filter(x => x.classification === 'Fix');
40
+ const quickCount = accelerates.length ? Math.max(1, Math.floor(accelerates.length / 2)) : 0;
41
+ const wave2Seed = accelerates.slice(0, quickCount);
42
+ const wave3Seed = [...accelerates.slice(quickCount), ...fixes];
43
+ stops.forEach(x => { x.action = 'Stop now and reclaim the budget and attention. Announce it: a visible Stop is what makes the rest of the plan credible.'; });
44
+ wave2Seed.forEach(x => { x.action = 'Ship inside the wave. Scoped, measured, and reported as the early win the later waves borrow trust from.'; });
45
+ wave3Seed.forEach(x => {
46
+ x.action = x.classification === 'Fix'
47
+ ? 'Run recommend_improvements for the change plan first; this enters the wave behind its re-score gate, not before.'
48
+ : 'Deliver with the trust and capacity the first two waves freed up.';
49
+ });
50
+ // Change-capacity constraint: at most maxParallel initiatives landing on
51
+ // one function per wave. Overflow defers to the next wave, then beyond
52
+ // the horizon, and every deferral is reported as a conflict, because the
53
+ // constraint IS the finding.
54
+ const conflicts = [];
55
+ const deferred = [];
56
+ function applyCapacity(seed, wave, carryTo) {
57
+ const kept = [];
58
+ const perFn = new Map();
59
+ for (const item of seed) {
60
+ const n = perFn.get(item.function) ?? 0;
61
+ if (n < maxParallel) {
62
+ perFn.set(item.function, n + 1);
63
+ kept.push(item);
64
+ }
65
+ else {
66
+ const existing = conflicts.find(c => c.function === item.function && c.wave === wave);
67
+ if (existing)
68
+ existing.overflow.push(item.name);
69
+ else
70
+ conflicts.push({
71
+ function: item.function, wave, overflow: [item.name],
72
+ resolution: carryTo
73
+ ? `More than ${maxParallel} initiatives land on ${item.function} in wave ${wave}; overflow moves to the next wave so the function is changed, not overwhelmed.`
74
+ : `More than ${maxParallel} initiatives land on ${item.function} in wave ${wave}; overflow moves beyond the ${horizon}-day horizon and needs its own decision.`,
75
+ });
76
+ if (carryTo)
77
+ carryTo.push(item);
78
+ else
79
+ deferred.push(item);
80
+ }
81
+ }
82
+ return kept;
83
+ }
84
+ const wave1Items = stops; // stopping does not consume change capacity, it frees it
85
+ const wave3Carry = [];
86
+ const wave2Items = applyCapacity(wave2Seed, 2, wave3Carry);
87
+ const wave3All = [...wave3Seed, ...wave3Carry];
88
+ const wave3Items = applyCapacity(wave3All, 3, null);
89
+ const waves = [
90
+ {
91
+ wave: 1, window_days: [1, waveLen], theme: 'Stop and reclaim',
92
+ rationale: 'Every Stop verdict lands first. Freeing budget and attention is the cheapest value in the portfolio, and a visible Stop signals the scoring is real.',
93
+ initiatives: wave1Items,
94
+ gate_to_next: 'Stops announced and budgets reclaimed; owners of wave 2 initiatives named.',
95
+ },
96
+ {
97
+ wave: 2, window_days: [waveLen + 1, waveLen * 2], theme: 'Quick, visible wins',
98
+ rationale: 'The quicker half of the Accelerates, by tier and confidence. Early wins buy the sponsor the trust the complex work will spend.',
99
+ initiatives: wave2Items,
100
+ gate_to_next: 'At least one wave 2 initiative measurably delivering; change capacity confirmed free for wave 3.',
101
+ },
102
+ {
103
+ wave: 3, window_days: [waveLen * 2 + 1, horizon], theme: 'Complex builds and repaired Fixes',
104
+ rationale: 'The ambitious Accelerates plus every Fix, each behind its re-score gate. This wave only works on the trust and capacity the first two created.',
105
+ initiatives: wave3Items,
106
+ gate_to_next: null,
107
+ },
108
+ ];
109
+ const accEUR = [...wave2Items, ...wave3Items].filter(x => x.classification === 'Accelerate');
110
+ const aggregate = {
111
+ low: accEUR.reduce((s, x) => s + x.net_value_eur.low, 0),
112
+ high: accEUR.reduce((s, x) => s + x.net_value_eur.high, 0),
113
+ };
114
+ return {
115
+ waves,
116
+ capacity_conflicts: conflicts,
117
+ deferred_beyond_horizon: deferred,
118
+ skipped,
119
+ totals: { stopped: wave1Items.length, quick_wins: wave2Items.length, complex_or_fix: wave3Items.length, deferred: deferred.length },
120
+ aggregate_accelerate_value_eur: aggregate,
121
+ sequencing_principles: [
122
+ 'Stops go first: reclaimed budget and attention fund everything after.',
123
+ 'Early wins precede ambition: wave 2 exists to buy wave 3 its trust.',
124
+ `No function absorbs more than ${maxParallel} concurrent changes per wave: ten good ideas can still break an organisation if they all land in one place.`,
125
+ 'Fixes enter only behind their re-score gates, never on hope.',
126
+ ],
127
+ audit: buildAudit([
128
+ `waves:3x${waveLen}d(horizon:${horizon})`,
129
+ `capacity:max_parallel_per_function=${maxParallel}`,
130
+ `wave1:stops=${wave1Items.length}`,
131
+ `wave2:quick_accelerates=${wave2Items.length}`,
132
+ `wave3:complex_plus_fixes=${wave3Items.length}`,
133
+ ...(conflicts.length ? [`capacity_conflicts:${conflicts.length}`] : []),
134
+ ], { organization: { industry: organization.industry, revenue_eur: organization.revenue_eur }, readiness, initiatives: initiatives.length }),
135
+ };
136
+ }
137
+ //# sourceMappingURL=sequencePortfolio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sequencePortfolio.js","sourceRoot":"","sources":["../src/sequencePortfolio.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -71,6 +71,38 @@ export interface ScoreInput {
71
71
  */
72
72
  signal_completeness?: number;
73
73
  }
74
+ /** Reproducibility record attached to every scoring call. Deterministic: no timestamps. */
75
+ export interface AuditRecord {
76
+ engine: string;
77
+ engine_version: string;
78
+ bvf_version: string;
79
+ /** The rules that actually fired, in order, e.g. estimation, gates, classification. */
80
+ rules_fired: string[];
81
+ /** The resolved inputs the result was computed on. */
82
+ inputs_used: Record<string, unknown>;
83
+ note: string;
84
+ }
85
+ /** What moves the verdict: deterministic perturbations of the same call. */
86
+ export interface ScoreSensitivity {
87
+ /** Null when readiness is already siloed. */
88
+ readiness_one_notch_down: null | {
89
+ readiness: Readiness;
90
+ classification: Classification;
91
+ net_value_eur: {
92
+ low: number;
93
+ high: number;
94
+ };
95
+ decision_confidence: number;
96
+ };
97
+ revenue_minus_20pct: {
98
+ net_value_eur: {
99
+ low: number;
100
+ high: number;
101
+ };
102
+ };
103
+ /** The nearest single-pillar movements that change the verdict, in plain language. */
104
+ verdict_flips: string[];
105
+ }
74
106
  export interface ScoreResult {
75
107
  classification: Classification;
76
108
  reason: string;
@@ -92,6 +124,8 @@ export interface ScoreResult {
92
124
  scores_used: PillarScores;
93
125
  /** Which pillars were given by the caller and which were estimated by the engine. */
94
126
  pillar_basis: PillarBasis;
127
+ sensitivity: ScoreSensitivity;
128
+ audit: AuditRecord;
95
129
  /** Present when signal_completeness is low or any pillar was estimated: warns the verdict rests on soft inputs. */
96
130
  caveat?: string;
97
131
  }
@@ -163,6 +197,7 @@ export interface RecommendResult {
163
197
  notes: string[];
164
198
  /** Absent when the initiative is already Accelerate. */
165
199
  change_plan?: ChangePlan;
200
+ audit: AuditRecord;
166
201
  }
167
202
  /** Input for infer_readiness: measured process signals, at least two required. */
168
203
  export interface InferReadinessInput {
@@ -172,6 +207,8 @@ export interface InferReadinessInput {
172
207
  touch_ratio?: number;
173
208
  automation_level?: number;
174
209
  cycle_time_days?: number;
210
+ /** Optional. What the organisation says about itself; the measured result is compared against it and the gap reported as a finding. */
211
+ claimed_readiness?: Readiness;
175
212
  }
176
213
  /** One measured signal and the readiness it points toward. */
177
214
  export interface SignalRead {
@@ -189,7 +226,14 @@ export interface InferReadinessResult {
189
226
  signal_reads: SignalRead[];
190
227
  /** Present when the signals point in opposing directions. */
191
228
  disagreement?: string;
229
+ /** Echo of claimed_readiness when supplied. */
230
+ claimed_readiness?: Readiness;
231
+ /** Ordinal distance between claimed and measured: positive means the organisation claims better than it measures. */
232
+ readiness_gap?: number;
233
+ /** Present when claimed and measured differ: the gap read as a change-readiness finding. */
234
+ gap_finding?: string;
192
235
  guidance: string;
236
+ audit: AuditRecord;
193
237
  }
194
238
  export interface PaceLayerInput {
195
239
  revenue_eur: number;
@@ -258,4 +302,92 @@ export interface BrainVerdict {
258
302
  brain_version: string;
259
303
  disclaimer: string;
260
304
  }
305
+ /** One initiative inside a sequencing request (flat pillar numbers). */
306
+ export interface SequenceInitiative {
307
+ id: string;
308
+ name: string;
309
+ function: FunctionId;
310
+ ai_tier: AiTier;
311
+ scores: PillarScores;
312
+ }
313
+ export interface SequenceConstraints {
314
+ /** Max initiatives landing on one business function per wave. Default 2. */
315
+ max_parallel_per_function?: number;
316
+ /** Planning horizon in days. Default 90 (three 30-day waves). */
317
+ horizon_days?: number;
318
+ }
319
+ export interface SequenceInput {
320
+ organization: {
321
+ name?: string;
322
+ industry: Industry;
323
+ revenue_eur: number;
324
+ };
325
+ initiatives: SequenceInitiative[];
326
+ readiness: Readiness;
327
+ constraints?: SequenceConstraints;
328
+ }
329
+ export interface SequencedItem {
330
+ id: string;
331
+ name: string;
332
+ function: FunctionId;
333
+ ai_tier: AiTier;
334
+ classification: Classification;
335
+ action: string;
336
+ reason: string;
337
+ net_value_eur: {
338
+ low: number;
339
+ high: number;
340
+ };
341
+ decision_confidence: number;
342
+ }
343
+ export interface SequenceWave {
344
+ wave: number;
345
+ window_days: [number, number];
346
+ theme: string;
347
+ rationale: string;
348
+ initiatives: SequencedItem[];
349
+ gate_to_next: string | null;
350
+ }
351
+ export interface CapacityConflict {
352
+ function: FunctionId;
353
+ wave: number;
354
+ overflow: string[];
355
+ resolution: string;
356
+ }
357
+ export interface SequenceResult {
358
+ waves: SequenceWave[];
359
+ capacity_conflicts: CapacityConflict[];
360
+ deferred_beyond_horizon: SequencedItem[];
361
+ skipped: Array<{
362
+ id: string;
363
+ name: string;
364
+ reason: string;
365
+ }>;
366
+ totals: {
367
+ stopped: number;
368
+ quick_wins: number;
369
+ complex_or_fix: number;
370
+ deferred: number;
371
+ };
372
+ aggregate_accelerate_value_eur: {
373
+ low: number;
374
+ high: number;
375
+ };
376
+ sequencing_principles: string[];
377
+ audit: AuditRecord;
378
+ }
379
+ /** Result of mapping free text onto the canonical taxonomy. */
380
+ export interface TaxonomyMatch {
381
+ input: string;
382
+ resolved: string | null;
383
+ matched_on?: string;
384
+ suggestions?: string[];
385
+ }
386
+ export interface MapTaxonomyResult {
387
+ industry?: TaxonomyMatch;
388
+ function?: TaxonomyMatch;
389
+ ai_tier?: TaxonomyMatch;
390
+ readiness?: TaxonomyMatch;
391
+ guidance: string;
392
+ }
261
393
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAChB,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAC/D,YAAY,GAAG,WAAW,GAAG,eAAe,GAAG,WAAW,GAC1D,cAAc,GAAG,eAAe,GAAG,aAAa,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE/E,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAC7F,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAC9C,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,aAAa,GAAG,QAAQ,CAAC;AAC3D,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,KAAK,GAAG,MAAM,CAAC;AAC3D,MAAM,MAAM,MAAM,GAAG,aAAa,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;AAC7E,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAE5E,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,mBAAmB,EAAE,WAAW,CAAC;IACjC,gBAAgB,EAAE,WAAW,CAAC;IAC9B,iBAAiB,EAAE,WAAW,CAAC;IAC/B,eAAe,EAAE,WAAW,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,eAAe,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,KAAK,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,QAAQ,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B;AAED,wEAAwE;AACxE,MAAM,WAAW,YAAY;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,kDAAkD;AAClD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,YAAY,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC;AAE5E,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/B;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3F,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,8EAA8E;IAC9E,WAAW,EAAE,YAAY,CAAC;IAC1B,qFAAqF;IACrF,YAAY,EAAE,WAAW,CAAC;IAC1B,mHAAmH;IACnH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,yEAAyE;AACzE,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC;AAC9C,sEAAsE;AACtE,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,CAAC;AAErE,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,yJAAyJ;IACzJ,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,wIAAwI;IACxI,SAAS,CAAC,EAAE,QAAQ,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,qBAAqB,GAAG,kBAAkB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;IAC7F,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,iFAAiF;AACjF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,oFAAoF;AACpF,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,UAAU,CAAC;IACrB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,2FAA2F;IAC3F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,uFAAuF;AACvF,MAAM,WAAW,UAAU;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;IAChD,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,mBAAmB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,WAAW,CAAC;IAC1B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,sBAAsB,EAAE,cAAc,CAAC;IACvC,qBAAqB,EAAE,cAAc,CAAC;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,wDAAwD;IACxD,WAAW,CAAC,EAAE,UAAU,CAAC;CAC1B;AAED,kFAAkF;AAClF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,8DAA8D;AAC9D,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,SAAS,CAAC;IACrB,sFAAsF;IACtF,eAAe,EAAE,UAAU,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC5C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAID,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,2BAA2B,GAC3B,kBAAkB,GAClB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEzD,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,UAAU,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,UAAU,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,iBAAiB,CAAC;IACtC,YAAY,EAAE,YAAY,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,cAAc,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,gBAAgB,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aibvf/core",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "AI BVF \u2014 open protocol for scoring AI investments. Validator and scoring engine.",
5
5
  "keywords": [
6
6
  "ai",
@@ -39,7 +39,7 @@
39
39
  "test": "node --test dist/*.test.js"
40
40
  },
41
41
  "devDependencies": {
42
- "typescript": "^5.4.0",
43
- "@types/node": "^20.0.0"
42
+ "typescript": "^6.0.3",
43
+ "@types/node": "^26.1.0"
44
44
  }
45
45
  }