@aibvf/core 0.4.0 → 0.6.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.
- package/dist/changePlan.d.ts +2 -2
- package/dist/changePlan.d.ts.map +1 -1
- package/dist/changePlan.js +3 -5
- package/dist/changePlan.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/inferReadiness.d.ts +26 -0
- package/dist/inferReadiness.d.ts.map +1 -0
- package/dist/inferReadiness.js +67 -0
- package/dist/inferReadiness.js.map +1 -0
- package/dist/inferReadiness.test.d.ts +2 -0
- package/dist/inferReadiness.test.d.ts.map +1 -0
- package/dist/inferReadiness.test.js +46 -0
- package/dist/inferReadiness.test.js.map +1 -0
- package/dist/pillarsOptional.test.d.ts +2 -0
- package/dist/pillarsOptional.test.d.ts.map +1 -0
- package/dist/pillarsOptional.test.js +75 -0
- package/dist/pillarsOptional.test.js.map +1 -0
- package/dist/score.d.ts +29 -1
- package/dist/score.d.ts.map +1 -1
- package/dist/score.js +100 -15
- package/dist/score.js.map +1 -1
- package/dist/taxonomy.d.ts +7 -0
- package/dist/taxonomy.d.ts.map +1 -1
- package/dist/taxonomy.js +7 -0
- package/dist/taxonomy.js.map +1 -1
- package/dist/types.d.ts +53 -12
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/changePlan.d.ts
CHANGED
|
@@ -17,6 +17,6 @@
|
|
|
17
17
|
*
|
|
18
18
|
* Deterministic, like everything in the engine: same inputs, same plan.
|
|
19
19
|
*/
|
|
20
|
-
import type { RecommendInput, Recommendation, ChangePlan } from './types.js';
|
|
21
|
-
export declare function buildChangePlan(input: RecommendInput, recommendations: Recommendation[], feasible: boolean): ChangePlan;
|
|
20
|
+
import type { RecommendInput, Recommendation, ChangePlan, PillarScores } from './types.js';
|
|
21
|
+
export declare function buildChangePlan(input: RecommendInput, resolved: PillarScores, recommendations: Recommendation[], feasible: boolean): ChangePlan;
|
|
22
22
|
//# sourceMappingURL=changePlan.d.ts.map
|
package/dist/changePlan.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changePlan.d.ts","sourceRoot":"","sources":["../src/changePlan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EACV,cAAc,EAAE,cAAc,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"changePlan.d.ts","sourceRoot":"","sources":["../src/changePlan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EACV,cAAc,EAAE,cAAc,EAAE,UAAU,EAAc,YAAY,EACrE,MAAM,YAAY,CAAC;AAuRpB,wBAAgB,eAAe,CAC7B,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,YAAY,EACtB,eAAe,EAAE,cAAc,EAAE,EACjC,QAAQ,EAAE,OAAO,GAChB,UAAU,CAuFZ"}
|
package/dist/changePlan.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { PACE_DRAG_RATE } from './score.js';
|
|
2
|
-
|
|
3
|
-
const REGULATED_FUNCTIONS = new Set(['risk', 'finance', 'hr']);
|
|
4
|
-
const REGULATED_INDUSTRIES = new Set(['financial', 'healthcare', 'public_sector', 'energy']);
|
|
2
|
+
import { REGULATED_FUNCTIONS, REGULATED_INDUSTRIES } from './taxonomy.js';
|
|
5
3
|
const ACCELERATE_FLOOR = 60;
|
|
6
4
|
const GOV_CEILING = 40;
|
|
7
5
|
// ── play builders ──────────────────────────────────────────────────────────
|
|
@@ -268,8 +266,8 @@ function inferRiskType(input) {
|
|
|
268
266
|
function inferResistanceType(input) {
|
|
269
267
|
return input.readiness === 'agile' ? 'skill' : 'will';
|
|
270
268
|
}
|
|
271
|
-
export function buildChangePlan(input, recommendations, feasible) {
|
|
272
|
-
const { strategic_alignment: sa, financial_return: fr, change_enablement: ce, governance_risk: gr } =
|
|
269
|
+
export function buildChangePlan(input, resolved, recommendations, feasible) {
|
|
270
|
+
const { strategic_alignment: sa, financial_return: fr, change_enablement: ce, governance_risk: gr } = resolved;
|
|
273
271
|
// Severity per pillar: distance from the Accelerate thresholds, with the
|
|
274
272
|
// forcing conditions (GR >= 70, FR <= 20) dominating everything else.
|
|
275
273
|
const allShortfalls = [
|
package/dist/changePlan.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changePlan.js","sourceRoot":"","sources":["../src/changePlan.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"changePlan.js","sourceRoot":"","sources":["../src/changePlan.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { validate } from './validate.js';
|
|
2
|
-
export { score, recommendImprovements, calculatePaceLayerDrag, BASE_RATES, IND_MULT, TIER_ADJ, READINESS_CAPTURE, PACE_DRAG_RATE, } from './score.js';
|
|
2
|
+
export { score, recommendImprovements, calculatePaceLayerDrag, estimatePillars, resolvePillars, BASE_RATES, IND_MULT, TIER_ADJ, READINESS_CAPTURE, PACE_DRAG_RATE, } from './score.js';
|
|
3
3
|
export { diagnoseProcess, BRAIN_VERSION, EVIDENCE, FUNCTION_MEDIANS, } from './diagnose.js';
|
|
4
4
|
export { buildChangePlan } from './changePlan.js';
|
|
5
|
+
export { inferReadiness } from './inferReadiness.js';
|
|
5
6
|
export { bvfSchema } from './schema.js';
|
|
6
7
|
export { INDUSTRIES, FUNCTIONS, AI_TIERS, READINESS, INDUSTRY_LABEL, FUNCTION_LABEL, TIER_LABEL } from './taxonomy.js';
|
|
7
8
|
export type * from './types.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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,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,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,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
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { validate } from './validate.js';
|
|
2
|
-
export { score, recommendImprovements, calculatePaceLayerDrag, BASE_RATES, IND_MULT, TIER_ADJ, READINESS_CAPTURE, PACE_DRAG_RATE, } from './score.js';
|
|
2
|
+
export { score, recommendImprovements, calculatePaceLayerDrag, estimatePillars, resolvePillars, BASE_RATES, IND_MULT, TIER_ADJ, READINESS_CAPTURE, PACE_DRAG_RATE, } from './score.js';
|
|
3
3
|
export { diagnoseProcess, BRAIN_VERSION, EVIDENCE, FUNCTION_MEDIANS, } from './diagnose.js';
|
|
4
4
|
export { buildChangePlan } from './changePlan.js';
|
|
5
|
+
export { inferReadiness } from './inferReadiness.js';
|
|
5
6
|
export { bvfSchema } from './schema.js';
|
|
6
7
|
export { INDUSTRIES, FUNCTIONS, AI_TIERS, READINESS, INDUSTRY_LABEL, FUNCTION_LABEL, TIER_LABEL } from './taxonomy.js';
|
|
7
8
|
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,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,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,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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* infer_readiness: measure organisational readiness instead of asking for it.
|
|
3
|
+
*
|
|
4
|
+
* Readiness is the AI BVF's most consequential input, it sets the value
|
|
5
|
+
* capture rate, the pace-layer drag, and (since 0.8.0) the estimated
|
|
6
|
+
* change-enablement pillar, and it has always been self-reported, which is
|
|
7
|
+
* the same gaming surface every maturity model carries. This module closes
|
|
8
|
+
* that surface: it reads the operational signals an organisation cannot
|
|
9
|
+
* easily flatter, hand-offs, rework, wait time, automation coverage and
|
|
10
|
+
* cycle time against the published function medians, and returns the
|
|
11
|
+
* readiness classification the process data supports, with a confidence
|
|
12
|
+
* governed by how many signals were provided and how well they agree.
|
|
13
|
+
*
|
|
14
|
+
* The mapping is the operational definition of the words themselves:
|
|
15
|
+
* siloed IS many hand-offs, high rework and long waits; agile IS few
|
|
16
|
+
* hand-offs, low rework and short decision loops. Deterministic, like
|
|
17
|
+
* everything in the engine: same signals, same answer.
|
|
18
|
+
*/
|
|
19
|
+
import type { InferReadinessInput, InferReadinessResult } from './types.js';
|
|
20
|
+
/**
|
|
21
|
+
* Infer readiness from measured process signals. Requires `function` (for
|
|
22
|
+
* the medians) and at least two of the five signals; confidence scales with
|
|
23
|
+
* coverage and drops when the signals disagree.
|
|
24
|
+
*/
|
|
25
|
+
export declare function inferReadiness(input: InferReadinessInput): InferReadinessResult;
|
|
26
|
+
//# sourceMappingURL=inferReadiness.d.ts.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { FUNCTION_MEDIANS } from './diagnose.js';
|
|
2
|
+
const LEAN_LABEL = { 0: 'agile', 1: 'traditional', 2: 'siloed' };
|
|
3
|
+
function read(signal, value, lean, note) {
|
|
4
|
+
return { signal, value, leans: LEAN_LABEL[lean], note };
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Infer readiness from measured process signals. Requires `function` (for
|
|
8
|
+
* the medians) and at least two of the five signals; confidence scales with
|
|
9
|
+
* coverage and drops when the signals disagree.
|
|
10
|
+
*/
|
|
11
|
+
export function inferReadiness(input) {
|
|
12
|
+
const med = FUNCTION_MEDIANS[input.function];
|
|
13
|
+
if (!med)
|
|
14
|
+
throw new Error(`Unknown function: ${input.function}`);
|
|
15
|
+
const reads = [];
|
|
16
|
+
const leans = [];
|
|
17
|
+
if (typeof input.handoffs === 'number') {
|
|
18
|
+
const ratio = input.handoffs / med.handoffs;
|
|
19
|
+
const lean = ratio >= 1.5 ? 2 : ratio >= 1.0 ? 1 : 0;
|
|
20
|
+
leans.push(lean);
|
|
21
|
+
reads.push(read('handoffs', input.handoffs, lean, `${input.handoffs} hand-offs against a ${med.handoffs} median for ${input.function}: ${lean === 2 ? 'work moves by escalation, the structural signature of a siloed organisation' : lean === 1 ? 'a functional hierarchy passing work along its lines' : 'few owners per outcome, decisions stay close to the work'}.`));
|
|
22
|
+
}
|
|
23
|
+
if (typeof input.rework_rate === 'number') {
|
|
24
|
+
const lean = input.rework_rate >= 0.15 ? 2 : input.rework_rate >= 0.05 ? 1 : 0;
|
|
25
|
+
leans.push(lean);
|
|
26
|
+
reads.push(read('rework_rate', input.rework_rate, lean, `${Math.round(input.rework_rate * 100)}% of instances reopened: ${lean === 2 ? 'quality is being negotiated between departments after the fact' : lean === 1 ? 'normal friction for a traditional operating model' : 'first-time-right discipline, a fast-feedback culture'}.`));
|
|
27
|
+
}
|
|
28
|
+
if (typeof input.touch_ratio === 'number') {
|
|
29
|
+
const lean = input.touch_ratio < 0.15 ? 2 : input.touch_ratio <= 0.4 ? 1 : 0;
|
|
30
|
+
leans.push(lean);
|
|
31
|
+
reads.push(read('touch_ratio', input.touch_ratio, lean, `${Math.round(input.touch_ratio * 100)}% of elapsed time is actual work, the rest is waiting: ${lean === 2 ? 'the process spends its life in queues between functions' : lean === 1 ? 'meaningful wait states between owners' : 'short decision loops, little queueing'}.`));
|
|
32
|
+
}
|
|
33
|
+
if (typeof input.automation_level === 'number') {
|
|
34
|
+
const lean = input.automation_level < 0.2 ? 2 : input.automation_level <= 0.5 ? 1 : 0;
|
|
35
|
+
leans.push(lean);
|
|
36
|
+
reads.push(read('automation_level', input.automation_level, lean, `${Math.round(input.automation_level * 100)}% already automated: ${lean === 2 ? 'manual effort is the norm, prior automation attempts have not stuck' : lean === 1 ? 'partial automation, typical of a traditional estate' : 'the organisation already absorbs automation well'}.`));
|
|
37
|
+
}
|
|
38
|
+
if (typeof input.cycle_time_days === 'number') {
|
|
39
|
+
const ratio = input.cycle_time_days / med.cycle_days;
|
|
40
|
+
const lean = ratio >= 1.5 ? 2 : ratio >= 0.75 ? 1 : 0;
|
|
41
|
+
leans.push(lean);
|
|
42
|
+
reads.push(read('cycle_time_days', input.cycle_time_days, lean, `${input.cycle_time_days} days against a ${med.cycle_days}-day median for ${input.function}: ${lean === 2 ? 'the operating model is adding most of the elapsed time' : lean === 1 ? 'in line with a functional hierarchy' : 'faster than the median, the structure is not in the way'}.`));
|
|
43
|
+
}
|
|
44
|
+
if (leans.length < 2) {
|
|
45
|
+
throw new Error('infer_readiness needs at least two measured signals (of handoffs, rework_rate, touch_ratio, automation_level, cycle_time_days). With fewer, self-reported readiness plus signal_completeness is the honest fallback.');
|
|
46
|
+
}
|
|
47
|
+
const avg = leans.reduce((s, l) => s + l, 0) / leans.length;
|
|
48
|
+
const readiness = avg >= 1.4 ? 'siloed' : avg >= 0.7 ? 'traditional' : 'agile';
|
|
49
|
+
// Confidence: coverage sets the base, disagreement discounts it.
|
|
50
|
+
const COVERAGE_BASE = { 2: 45, 3: 60, 4: 75, 5: 90 };
|
|
51
|
+
const base = COVERAGE_BASE[leans.length] ?? 90;
|
|
52
|
+
const spread = Math.max(...leans) - Math.min(...leans); // 0 = unanimous, 2 = fully split
|
|
53
|
+
const confidence = Math.max(20, Math.round(base - spread * 10));
|
|
54
|
+
const disagreement = spread === 2
|
|
55
|
+
? '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
|
+
: undefined;
|
|
57
|
+
return {
|
|
58
|
+
readiness,
|
|
59
|
+
readiness_basis: 'measured',
|
|
60
|
+
confidence,
|
|
61
|
+
signals_used: leans.length,
|
|
62
|
+
signal_reads: reads,
|
|
63
|
+
...(disagreement ? { disagreement } : {}),
|
|
64
|
+
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.`,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=inferReadiness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inferReadiness.js","sourceRoot":"","sources":["../src/inferReadiness.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inferReadiness.test.d.ts","sourceRoot":"","sources":["../src/inferReadiness.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import test from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import { inferReadiness } from './inferReadiness.js';
|
|
4
|
+
test('siloed-shaped signals classify siloed (procurement-flow shape)', () => {
|
|
5
|
+
const r = inferReadiness({ function: 'supply', handoffs: 11, rework_rate: 0.22, touch_ratio: 0.08, automation_level: 0.1, cycle_time_days: 18 });
|
|
6
|
+
assert.equal(r.readiness, 'siloed');
|
|
7
|
+
assert.equal(r.readiness_basis, 'measured');
|
|
8
|
+
assert.equal(r.signals_used, 5);
|
|
9
|
+
assert.ok(r.confidence >= 70);
|
|
10
|
+
});
|
|
11
|
+
test('agile-shaped signals classify agile (ticket-triage shape)', () => {
|
|
12
|
+
const r = inferReadiness({ function: 'cx', handoffs: 1, rework_rate: 0.03, touch_ratio: 0.55, automation_level: 0.6, cycle_time_days: 0.5 });
|
|
13
|
+
assert.equal(r.readiness, 'agile');
|
|
14
|
+
assert.ok(r.confidence >= 70);
|
|
15
|
+
});
|
|
16
|
+
test('middle signals classify traditional', () => {
|
|
17
|
+
const r = inferReadiness({ function: 'finance', handoffs: 4, rework_rate: 0.08, touch_ratio: 0.3, automation_level: 0.35, cycle_time_days: 5 });
|
|
18
|
+
assert.equal(r.readiness, 'traditional');
|
|
19
|
+
});
|
|
20
|
+
test('fewer signals means lower confidence', () => {
|
|
21
|
+
const five = inferReadiness({ function: 'supply', handoffs: 11, rework_rate: 0.22, touch_ratio: 0.08, automation_level: 0.1, cycle_time_days: 18 });
|
|
22
|
+
const two = inferReadiness({ function: 'supply', handoffs: 11, rework_rate: 0.22 });
|
|
23
|
+
assert.equal(two.readiness, 'siloed');
|
|
24
|
+
assert.ok(two.confidence < five.confidence);
|
|
25
|
+
});
|
|
26
|
+
test('disagreeing signals discount confidence and attach the disagreement note', () => {
|
|
27
|
+
const r = inferReadiness({ function: 'cx', handoffs: 6, rework_rate: 0.02, touch_ratio: 0.6, automation_level: 0.1 });
|
|
28
|
+
assert.ok(r.disagreement && r.disagreement.includes('disagree'));
|
|
29
|
+
const unanimous = inferReadiness({ function: 'cx', handoffs: 1, rework_rate: 0.02, touch_ratio: 0.6, automation_level: 0.6 });
|
|
30
|
+
assert.ok(r.confidence < unanimous.confidence);
|
|
31
|
+
});
|
|
32
|
+
test('fewer than two signals refuses honestly', () => {
|
|
33
|
+
assert.throws(() => inferReadiness({ function: 'cx', handoffs: 3 }), /at least two measured signals/);
|
|
34
|
+
});
|
|
35
|
+
test('deterministic: same signals, same answer', () => {
|
|
36
|
+
const a = inferReadiness({ function: 'hr', handoffs: 7, rework_rate: 0.18, touch_ratio: 0.1 });
|
|
37
|
+
const b = inferReadiness({ function: 'hr', handoffs: 7, rework_rate: 0.18, touch_ratio: 0.1 });
|
|
38
|
+
assert.deepEqual(a, b);
|
|
39
|
+
});
|
|
40
|
+
test('per-signal reads explain each lean in plain language', () => {
|
|
41
|
+
const r = inferReadiness({ function: 'supply', handoffs: 11, rework_rate: 0.22 });
|
|
42
|
+
assert.equal(r.signal_reads.length, 2);
|
|
43
|
+
assert.ok(r.signal_reads.every(s => s.note.length > 20 && ['agile', 'traditional', 'siloed'].includes(s.leans)));
|
|
44
|
+
assert.ok(!JSON.stringify(r).includes('—'), 'em-dash found in output text');
|
|
45
|
+
});
|
|
46
|
+
//# sourceMappingURL=inferReadiness.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inferReadiness.test.js","sourceRoot":"","sources":["../src/inferReadiness.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pillarsOptional.test.d.ts","sourceRoot":"","sources":["../src/pillarsOptional.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import test from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import { score, recommendImprovements, estimatePillars } from './score.js';
|
|
4
|
+
const bare = {
|
|
5
|
+
industry: 'manufacturing', revenue_eur: 500_000_000,
|
|
6
|
+
function: 'cx', ai_tier: 'gen2', readiness: 'agile',
|
|
7
|
+
};
|
|
8
|
+
test('score runs with no pillar scores at all and reports every pillar estimated', () => {
|
|
9
|
+
const r = score(bare);
|
|
10
|
+
assert.ok(['Fix', 'Stop'].includes(r.classification));
|
|
11
|
+
assert.deepEqual(Object.values(r.pillar_basis), ['estimated', 'estimated', 'estimated', 'estimated']);
|
|
12
|
+
assert.ok(r.caveat && r.caveat.includes('Estimated pillars'));
|
|
13
|
+
});
|
|
14
|
+
test('fully estimated pillars never produce an Accelerate, by prior design', () => {
|
|
15
|
+
// Sweep every tier x readiness x function combination with no scores given.
|
|
16
|
+
for (const ai_tier of ['gen1', 'gen2', 'gen3']) {
|
|
17
|
+
for (const readiness of ['agile', 'traditional', 'siloed']) {
|
|
18
|
+
for (const fn of ['finance', 'hr', 'sales', 'supply', 'cx', 'risk', 'it', 'rd']) {
|
|
19
|
+
const r = score({ ...bare, ai_tier, readiness, function: fn });
|
|
20
|
+
assert.notEqual(r.classification, 'Accelerate', `${ai_tier}/${readiness}/${fn} accelerated on estimates`);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
test('estimated GR forces Stop for agentic AI in a regulated function and industry', () => {
|
|
26
|
+
const r = score({ ...bare, industry: 'financial', function: 'risk', ai_tier: 'gen3' });
|
|
27
|
+
// gen3 (55) + regulated function (+10) + regulated industry (+8) = 73 >= 70.
|
|
28
|
+
assert.equal(r.scores_used.governance_risk, 73);
|
|
29
|
+
assert.equal(r.classification, 'Stop');
|
|
30
|
+
});
|
|
31
|
+
test('estimation priors are deterministic and sit in unproven territory', () => {
|
|
32
|
+
const e = estimatePillars({ industry: 'retail', function: 'sales', ai_tier: 'gen1', readiness: 'siloed' });
|
|
33
|
+
assert.deepEqual(e, estimatePillars({ industry: 'retail', function: 'sales', ai_tier: 'gen1', readiness: 'siloed' }));
|
|
34
|
+
assert.equal(e.strategic_alignment, 50);
|
|
35
|
+
assert.equal(e.change_enablement, 32);
|
|
36
|
+
assert.ok(e.financial_return < 60 && e.financial_return > 20);
|
|
37
|
+
});
|
|
38
|
+
test('partial scores keep given values, estimate the rest, and scale the signal default', () => {
|
|
39
|
+
const r = score({ ...bare, scores: { strategic_alignment: 70, financial_return: 65 } });
|
|
40
|
+
assert.equal(r.pillar_basis.strategic_alignment, 'given');
|
|
41
|
+
assert.equal(r.pillar_basis.financial_return, 'given');
|
|
42
|
+
assert.equal(r.pillar_basis.change_enablement, 'estimated');
|
|
43
|
+
assert.equal(r.scores_used.strategic_alignment, 70);
|
|
44
|
+
// 2 of 4 given: default signal 0.75, so confidence is haircut below the full-signal figure.
|
|
45
|
+
const full = score({ ...bare, scores: { strategic_alignment: 70, financial_return: 65, change_enablement: 55, governance_risk: 42 } });
|
|
46
|
+
assert.ok(r.confidence < full.confidence + 10); // sanity: haircut applied, not inflated
|
|
47
|
+
});
|
|
48
|
+
test('a mixed call with one estimated pillar can still Accelerate, with the estimation caveat attached', () => {
|
|
49
|
+
const r = score({
|
|
50
|
+
...bare, ai_tier: 'gen1', industry: 'retail',
|
|
51
|
+
scores: { strategic_alignment: 72, financial_return: 68, change_enablement: 66 },
|
|
52
|
+
});
|
|
53
|
+
// GR estimated at gen1 unregulated = 30, under the 40 ceiling.
|
|
54
|
+
assert.equal(r.classification, 'Accelerate');
|
|
55
|
+
assert.equal(r.pillar_basis.governance_risk, 'estimated');
|
|
56
|
+
assert.ok(r.caveat && r.caveat.includes('governance_risk'));
|
|
57
|
+
});
|
|
58
|
+
test('all four given reproduces the old behaviour exactly: basis given, no estimation caveat, signal 1', () => {
|
|
59
|
+
const r = score({ ...bare, scores: { strategic_alignment: 70, financial_return: 65, change_enablement: 62, governance_risk: 35 } });
|
|
60
|
+
assert.deepEqual(Object.values(r.pillar_basis), ['given', 'given', 'given', 'given']);
|
|
61
|
+
assert.equal(r.classification, 'Accelerate');
|
|
62
|
+
assert.equal(r.caveat, undefined);
|
|
63
|
+
});
|
|
64
|
+
test('explicit signal_completeness still wins over the given-count default', () => {
|
|
65
|
+
const r = score({ ...bare, signal_completeness: 0.2 });
|
|
66
|
+
assert.ok(r.caveat && r.caveat.includes('0.2'));
|
|
67
|
+
});
|
|
68
|
+
test('recommend_improvements runs with no scores and returns a provisional change plan', () => {
|
|
69
|
+
const r = recommendImprovements({ ...bare, ai_tier: 'gen3', readiness: 'traditional' });
|
|
70
|
+
assert.ok(['Fix', 'Stop'].includes(r.current_classification));
|
|
71
|
+
assert.ok(r.notes.some(n => n.includes('Estimated pillars')));
|
|
72
|
+
assert.ok(r.change_plan && r.change_plan.plays.length > 0);
|
|
73
|
+
assert.ok(r.change_plan.plays.some(p => p.id === 'pace-realign'));
|
|
74
|
+
});
|
|
75
|
+
//# sourceMappingURL=pillarsOptional.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pillarsOptional.test.js","sourceRoot":"","sources":["../src/pillarsOptional.test.ts"],"names":[],"mappings":"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"}
|
package/dist/score.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ScoreInput, ScoreResult, RecommendInput, RecommendResult, PaceLayerInput, PaceLayerResult, AiTier, Readiness } from './types.js';
|
|
1
|
+
import type { ScoreInput, ScoreResult, RecommendInput, RecommendResult, PaceLayerInput, PaceLayerResult, PillarScores, PillarBasis, AiTier, Readiness } from './types.js';
|
|
2
2
|
interface BaseRate {
|
|
3
3
|
rev: {
|
|
4
4
|
lo: number;
|
|
@@ -55,6 +55,34 @@ export declare const PACE_DRAG_RATE: Record<AiTier, Record<Readiness, {
|
|
|
55
55
|
lo: number;
|
|
56
56
|
hi: number;
|
|
57
57
|
}>>;
|
|
58
|
+
/**
|
|
59
|
+
* Deterministic pillar estimation for callers who do not have measured
|
|
60
|
+
* pillar scores. Every prior is anchored to something the engine already
|
|
61
|
+
* knows, and every estimated value sits in unproven territory by design:
|
|
62
|
+
* an estimate can force caution (a Stop) but can never hand out the
|
|
63
|
+
* evidence-cleared scores an Accelerate requires.
|
|
64
|
+
*
|
|
65
|
+
* - strategic_alignment: flat 50. Alignment to a board KPI cannot be read
|
|
66
|
+
* from industry or function; 50 means unproven, ask the board-anchor
|
|
67
|
+
* question.
|
|
68
|
+
* - financial_return: anchored to the published benchmark upside for the
|
|
69
|
+
* function (BASE_RATES). Strong upside estimates 52, mid 46, thin 40.
|
|
70
|
+
* Never above 60 (an unmodelled case is unproven), never at or below 20
|
|
71
|
+
* (no evidence of a bad case either).
|
|
72
|
+
* - change_enablement: from readiness, the engine's change-capability
|
|
73
|
+
* proxy. agile 55, traditional 45, siloed 32.
|
|
74
|
+
* - governance_risk: from tier plus regulated context. gen1 30, gen2 42,
|
|
75
|
+
* gen3 55, +10 in a regulated function, +8 in a regulated industry.
|
|
76
|
+
* Agentic AI in a regulated function and industry estimates at 73,
|
|
77
|
+
* which forces a Stop until governance evidence exists — deliberate.
|
|
78
|
+
*/
|
|
79
|
+
export declare function estimatePillars(input: Pick<ScoreInput, 'industry' | 'function' | 'ai_tier' | 'readiness'>): PillarScores;
|
|
80
|
+
/** Resolve given + estimated pillars into a full set, with provenance. */
|
|
81
|
+
export declare function resolvePillars(input: ScoreInput): {
|
|
82
|
+
scores: PillarScores;
|
|
83
|
+
basis: PillarBasis;
|
|
84
|
+
givenCount: number;
|
|
85
|
+
};
|
|
58
86
|
/**
|
|
59
87
|
* Score an initiative according to AI BVF v1.0.
|
|
60
88
|
* Deterministic. No network. No dependencies.
|
package/dist/score.d.ts.map
CHANGED
|
@@ -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,
|
|
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"}
|
package/dist/score.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { REGULATED_FUNCTIONS, REGULATED_INDUSTRIES } from './taxonomy.js';
|
|
1
2
|
// Deferred-access import: buildChangePlan is only called inside
|
|
2
3
|
// recommendImprovements, so the score <-> changePlan module cycle is safe.
|
|
3
4
|
import { buildChangePlan } from './changePlan.js';
|
|
@@ -103,12 +104,70 @@ function appliedModules(industry, fn, readiness) {
|
|
|
103
104
|
}
|
|
104
105
|
/** Below this signal_completeness, score() attaches a soft-inputs caveat. */
|
|
105
106
|
const SIGNAL_CAVEAT_THRESHOLD = 0.7;
|
|
107
|
+
/**
|
|
108
|
+
* Deterministic pillar estimation for callers who do not have measured
|
|
109
|
+
* pillar scores. Every prior is anchored to something the engine already
|
|
110
|
+
* knows, and every estimated value sits in unproven territory by design:
|
|
111
|
+
* an estimate can force caution (a Stop) but can never hand out the
|
|
112
|
+
* evidence-cleared scores an Accelerate requires.
|
|
113
|
+
*
|
|
114
|
+
* - strategic_alignment: flat 50. Alignment to a board KPI cannot be read
|
|
115
|
+
* from industry or function; 50 means unproven, ask the board-anchor
|
|
116
|
+
* question.
|
|
117
|
+
* - financial_return: anchored to the published benchmark upside for the
|
|
118
|
+
* function (BASE_RATES). Strong upside estimates 52, mid 46, thin 40.
|
|
119
|
+
* Never above 60 (an unmodelled case is unproven), never at or below 20
|
|
120
|
+
* (no evidence of a bad case either).
|
|
121
|
+
* - change_enablement: from readiness, the engine's change-capability
|
|
122
|
+
* proxy. agile 55, traditional 45, siloed 32.
|
|
123
|
+
* - governance_risk: from tier plus regulated context. gen1 30, gen2 42,
|
|
124
|
+
* gen3 55, +10 in a regulated function, +8 in a regulated industry.
|
|
125
|
+
* Agentic AI in a regulated function and industry estimates at 73,
|
|
126
|
+
* which forces a Stop until governance evidence exists — deliberate.
|
|
127
|
+
*/
|
|
128
|
+
export function estimatePillars(input) {
|
|
129
|
+
const base = BASE_RATES[input.function];
|
|
130
|
+
const upside = base ? base.rev.hi + base.cost.hi : 0;
|
|
131
|
+
const financial_return = upside >= 0.10 ? 52 : upside >= 0.07 ? 46 : 40;
|
|
132
|
+
const CE_BY_READINESS = { agile: 55, traditional: 45, siloed: 32 };
|
|
133
|
+
const change_enablement = CE_BY_READINESS[input.readiness] ?? 45;
|
|
134
|
+
const GR_BY_TIER = { gen1: 30, gen2: 42, gen3: 55 };
|
|
135
|
+
let governance_risk = GR_BY_TIER[input.ai_tier] ?? 42;
|
|
136
|
+
if (REGULATED_FUNCTIONS.has(input.function))
|
|
137
|
+
governance_risk += 10;
|
|
138
|
+
if (input.industry && REGULATED_INDUSTRIES.has(input.industry))
|
|
139
|
+
governance_risk += 8;
|
|
140
|
+
governance_risk = Math.min(100, governance_risk);
|
|
141
|
+
return { strategic_alignment: 50, financial_return, change_enablement, governance_risk };
|
|
142
|
+
}
|
|
143
|
+
/** Resolve given + estimated pillars into a full set, with provenance. */
|
|
144
|
+
export function resolvePillars(input) {
|
|
145
|
+
const est = estimatePillars(input);
|
|
146
|
+
const given = input.scores ?? {};
|
|
147
|
+
const pillars = ['strategic_alignment', 'financial_return', 'change_enablement', 'governance_risk'];
|
|
148
|
+
const scores = {};
|
|
149
|
+
const basis = {};
|
|
150
|
+
let givenCount = 0;
|
|
151
|
+
for (const p of pillars) {
|
|
152
|
+
const v = given[p];
|
|
153
|
+
if (typeof v === 'number') {
|
|
154
|
+
scores[p] = v;
|
|
155
|
+
basis[p] = 'given';
|
|
156
|
+
givenCount++;
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
scores[p] = est[p];
|
|
160
|
+
basis[p] = 'estimated';
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return { scores, basis, givenCount };
|
|
164
|
+
}
|
|
106
165
|
/**
|
|
107
166
|
* Score an initiative according to AI BVF v1.0.
|
|
108
167
|
* Deterministic. No network. No dependencies.
|
|
109
168
|
*/
|
|
110
169
|
export function score(input) {
|
|
111
|
-
const { industry, revenue_eur, function: fn, ai_tier, readiness
|
|
170
|
+
const { industry, revenue_eur, function: fn, ai_tier, readiness } = input;
|
|
112
171
|
const base = BASE_RATES[fn];
|
|
113
172
|
if (!base)
|
|
114
173
|
throw new Error(`Unknown function: ${fn}`);
|
|
@@ -119,23 +178,39 @@ export function score(input) {
|
|
|
119
178
|
const cap = READINESS_CAPTURE[readiness];
|
|
120
179
|
if (!cap)
|
|
121
180
|
throw new Error(`Unknown readiness: ${readiness}`);
|
|
122
|
-
const {
|
|
181
|
+
const { scores: resolved, basis, givenCount } = resolvePillars(input);
|
|
182
|
+
const { strategic_alignment: sa, financial_return: fr, change_enablement: ce, governance_risk: gr } = resolved;
|
|
183
|
+
const allEstimated = givenCount === 0;
|
|
184
|
+
const anyEstimated = givenCount < 4;
|
|
123
185
|
const grossLo = Math.round(revenue_eur * (base.rev.lo + base.cost.lo) * mult * tAdj);
|
|
124
186
|
const grossHi = Math.round(revenue_eur * (base.rev.hi + base.cost.hi) * mult * tAdj);
|
|
125
187
|
const netLo = Math.round(grossLo * cap.low);
|
|
126
188
|
const netHi = Math.round(grossHi * cap.high);
|
|
127
|
-
|
|
189
|
+
let cls = classify(sa, fr, ce, gr);
|
|
190
|
+
// Stop-first invariant: a fully-estimated pass can never hand out a green
|
|
191
|
+
// light. The priors already make this structurally impossible (estimated
|
|
192
|
+
// strategic_alignment is 50), this guard keeps the promise even if the
|
|
193
|
+
// priors ever change.
|
|
194
|
+
if (allEstimated && cls.label === 'Accelerate') {
|
|
195
|
+
cls = { label: 'Fix', reason: 'Clears the Accelerate thresholds on estimated pillars only. Confirm the four pillar scores with evidence to unlock the Go.' };
|
|
196
|
+
}
|
|
128
197
|
// Base confidence from the pillar scores themselves.
|
|
129
198
|
const baseConfidence = (sa + fr + ce + (100 - gr)) / 4;
|
|
130
|
-
// Input-quality haircut.
|
|
131
|
-
//
|
|
132
|
-
//
|
|
133
|
-
|
|
134
|
-
const signal = Math.max(0, Math.min(1, input.signal_completeness ??
|
|
199
|
+
// Input-quality haircut. When the caller does not supply
|
|
200
|
+
// signal_completeness it defaults from how many pillars were actually
|
|
201
|
+
// given: all four = 1 (identical to the pre-0.5.0 behaviour), none = 0.5.
|
|
202
|
+
const defaultSignal = 0.5 + 0.125 * givenCount;
|
|
203
|
+
const signal = Math.max(0, Math.min(1, input.signal_completeness ?? defaultSignal));
|
|
135
204
|
const confidence = Math.round(baseConfidence * (0.5 + 0.5 * signal));
|
|
136
|
-
const
|
|
137
|
-
|
|
138
|
-
|
|
205
|
+
const caveatParts = [];
|
|
206
|
+
if (anyEstimated) {
|
|
207
|
+
const estimated = Object.keys(basis).filter(k => basis[k] === 'estimated');
|
|
208
|
+
caveatParts.push(`Estimated pillars: ${estimated.join(', ')} (deterministic priors from readiness, tier, function and benchmarks, see pillar_basis). Confirm them with evidence before committing budget.`);
|
|
209
|
+
}
|
|
210
|
+
if (signal < SIGNAL_CAVEAT_THRESHOLD) {
|
|
211
|
+
caveatParts.push(`Verdict rests on soft inputs (signal_completeness ${signal}). Decision confidence has been reduced accordingly; treat this as directional.`);
|
|
212
|
+
}
|
|
213
|
+
const caveat = caveatParts.length ? caveatParts.join(' ') : undefined;
|
|
139
214
|
return {
|
|
140
215
|
classification: cls.label,
|
|
141
216
|
reason: cls.reason,
|
|
@@ -148,6 +223,8 @@ export function score(input) {
|
|
|
148
223
|
drivers: base.drivers,
|
|
149
224
|
source: base.source,
|
|
150
225
|
applied_modules: appliedModules(industry, fn, readiness),
|
|
226
|
+
scores_used: resolved,
|
|
227
|
+
pillar_basis: basis,
|
|
151
228
|
...(caveat ? { caveat } : {}),
|
|
152
229
|
};
|
|
153
230
|
}
|
|
@@ -179,11 +256,19 @@ const GOV_LOWER_TARGET = 35;
|
|
|
179
256
|
* high to recover.
|
|
180
257
|
*/
|
|
181
258
|
export function recommendImprovements(input) {
|
|
182
|
-
const { scores } = input;
|
|
183
|
-
const { strategic_alignment: sa, financial_return: fr, change_enablement: ce, governance_risk: gr } =
|
|
184
|
-
|
|
259
|
+
const { scores: resolved, basis, givenCount } = resolvePillars(input);
|
|
260
|
+
const { strategic_alignment: sa, financial_return: fr, change_enablement: ce, governance_risk: gr } = resolved;
|
|
261
|
+
let current = classify(sa, fr, ce, gr).label;
|
|
262
|
+
// Same Stop-first invariant as score(): fully-estimated pillars never
|
|
263
|
+
// produce an Accelerate, they produce a Fix pending confirmation.
|
|
264
|
+
if (givenCount === 0 && current === 'Accelerate')
|
|
265
|
+
current = 'Fix';
|
|
185
266
|
const recs = [];
|
|
186
267
|
const notes = [];
|
|
268
|
+
if (givenCount < 4) {
|
|
269
|
+
const estimated = Object.keys(basis).filter(k => basis[k] === 'estimated');
|
|
270
|
+
notes.push(`Estimated pillars: ${estimated.join(', ')} (deterministic priors from readiness, tier, function and benchmarks). The plan below is provisional on those pillars; confirm them with evidence and re-run.`);
|
|
271
|
+
}
|
|
187
272
|
if (current === 'Accelerate') {
|
|
188
273
|
return {
|
|
189
274
|
current_classification: current,
|
|
@@ -219,7 +304,7 @@ export function recommendImprovements(input) {
|
|
|
219
304
|
recommendations: recs,
|
|
220
305
|
projected_confidence: projectedConfidence,
|
|
221
306
|
notes,
|
|
222
|
-
change_plan: buildChangePlan(input, recs, feasible),
|
|
307
|
+
change_plan: buildChangePlan(input, resolved, recs, feasible),
|
|
223
308
|
};
|
|
224
309
|
}
|
|
225
310
|
/**
|
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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"}
|
package/dist/taxonomy.d.ts
CHANGED
|
@@ -5,4 +5,11 @@ export declare const READINESS: readonly ["agile", "traditional", "siloed"];
|
|
|
5
5
|
export declare const INDUSTRY_LABEL: Record<string, string>;
|
|
6
6
|
export declare const FUNCTION_LABEL: Record<string, string>;
|
|
7
7
|
export declare const TIER_LABEL: Record<string, string>;
|
|
8
|
+
/**
|
|
9
|
+
* Contexts where governance exposure defaults to regulatory. Shared by the
|
|
10
|
+
* pillar estimator and the change-leader play selector so both infer the
|
|
11
|
+
* same way from the same facts.
|
|
12
|
+
*/
|
|
13
|
+
export declare const REGULATED_FUNCTIONS: ReadonlySet<string>;
|
|
14
|
+
export declare const REGULATED_INDUSTRIES: ReadonlySet<string>;
|
|
8
15
|
//# sourceMappingURL=taxonomy.d.ts.map
|
package/dist/taxonomy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taxonomy.d.ts","sourceRoot":"","sources":["../src/taxonomy.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,yMAGb,CAAC;AAEX,eAAO,MAAM,SAAS,yEAAmE,CAAC;AAC1F,eAAO,MAAM,QAAQ,mCAAkC,CAAC;AACxD,eAAO,MAAM,SAAS,6CAA4C,CAAC;AAEnE,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOjD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAGjD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAI7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"taxonomy.d.ts","sourceRoot":"","sources":["../src/taxonomy.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,yMAGb,CAAC;AAEX,eAAO,MAAM,SAAS,yEAAmE,CAAC;AAC1F,eAAO,MAAM,QAAQ,mCAAkC,CAAC;AACxD,eAAO,MAAM,SAAS,6CAA4C,CAAC;AAEnE,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOjD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAGjD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAI7C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAsC,CAAC;AAC3F,eAAO,MAAM,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAmE,CAAC"}
|
package/dist/taxonomy.js
CHANGED
|
@@ -22,4 +22,11 @@ export const TIER_LABEL = {
|
|
|
22
22
|
gen2: 'Gen 2 — GenAI',
|
|
23
23
|
gen3: 'Gen 3 — Agentic',
|
|
24
24
|
};
|
|
25
|
+
/**
|
|
26
|
+
* Contexts where governance exposure defaults to regulatory. Shared by the
|
|
27
|
+
* pillar estimator and the change-leader play selector so both infer the
|
|
28
|
+
* same way from the same facts.
|
|
29
|
+
*/
|
|
30
|
+
export const REGULATED_FUNCTIONS = new Set(['risk', 'finance', 'hr']);
|
|
31
|
+
export const REGULATED_INDUSTRIES = new Set(['financial', 'healthcare', 'public_sector', 'energy']);
|
|
25
32
|
//# sourceMappingURL=taxonomy.js.map
|
package/dist/taxonomy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taxonomy.js","sourceRoot":"","sources":["../src/taxonomy.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,WAAW,EAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,YAAY,EAAC,WAAW;IAChF,eAAe,EAAC,WAAW,EAAC,cAAc,EAAC,eAAe,EAAC,aAAa,EAAC,QAAQ,EAAC,YAAY;CACtF,CAAC;AAEX,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,SAAS,EAAC,IAAI,EAAC,OAAO,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,CAAU,CAAC;AAC1F,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAC,MAAM,EAAC,MAAM,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,CAAU,CAAC;AAEnE,MAAM,CAAC,MAAM,cAAc,GAA2B;IACpD,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,sBAAsB;IAC/F,MAAM,EAAE,oBAAoB,EAAE,SAAS,EAAE,oBAAoB,EAAE,UAAU,EAAE,sBAAsB;IACjG,SAAS,EAAE,4BAA4B,EAAE,aAAa,EAAE,8BAA8B;IACtF,SAAS,EAAE,kBAAkB,EAAE,YAAY,EAAE,uBAAuB;IACpE,aAAa,EAAE,4BAA4B,EAAE,WAAW,EAAE,4BAA4B;IACtF,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,YAAY;CACtD,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAA2B;IACpD,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc;IAChG,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,kBAAkB;CAClG,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAA2B;IAChD,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,iBAAiB;CACxB,CAAC"}
|
|
1
|
+
{"version":3,"file":"taxonomy.js","sourceRoot":"","sources":["../src/taxonomy.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,WAAW,EAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,YAAY,EAAC,WAAW;IAChF,eAAe,EAAC,WAAW,EAAC,cAAc,EAAC,eAAe,EAAC,aAAa,EAAC,QAAQ,EAAC,YAAY;CACtF,CAAC;AAEX,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,SAAS,EAAC,IAAI,EAAC,OAAO,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,CAAU,CAAC;AAC1F,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAC,MAAM,EAAC,MAAM,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,CAAU,CAAC;AAEnE,MAAM,CAAC,MAAM,cAAc,GAA2B;IACpD,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,sBAAsB;IAC/F,MAAM,EAAE,oBAAoB,EAAE,SAAS,EAAE,oBAAoB,EAAE,UAAU,EAAE,sBAAsB;IACjG,SAAS,EAAE,4BAA4B,EAAE,aAAa,EAAE,8BAA8B;IACtF,SAAS,EAAE,kBAAkB,EAAE,YAAY,EAAE,uBAAuB;IACpE,aAAa,EAAE,4BAA4B,EAAE,WAAW,EAAE,4BAA4B;IACtF,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,YAAY;CACtD,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAA2B;IACpD,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc;IAChG,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,kBAAkB;CAClG,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAA2B;IAChD,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,iBAAiB;CACxB,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;AAC3F,MAAM,CAAC,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -39,25 +39,35 @@ export interface Portfolio {
|
|
|
39
39
|
};
|
|
40
40
|
initiatives: Initiative[];
|
|
41
41
|
}
|
|
42
|
+
/** The four pillars, fully resolved (every pillar carries a number). */
|
|
43
|
+
export interface PillarScores {
|
|
44
|
+
strategic_alignment: number;
|
|
45
|
+
financial_return: number;
|
|
46
|
+
change_enablement: number;
|
|
47
|
+
governance_risk: number;
|
|
48
|
+
}
|
|
49
|
+
/** Where each resolved pillar value came from. */
|
|
50
|
+
export type PillarBasis = Record<keyof PillarScores, 'given' | 'estimated'>;
|
|
42
51
|
export interface ScoreInput {
|
|
43
52
|
industry: Industry;
|
|
44
53
|
revenue_eur: number;
|
|
45
54
|
function: FunctionId;
|
|
46
55
|
ai_tier: AiTier;
|
|
47
56
|
readiness: Readiness;
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
57
|
+
/**
|
|
58
|
+
* Optional, and each pillar inside it is optional. Give the pillars you
|
|
59
|
+
* have evidence for; any missing pillar is estimated deterministically
|
|
60
|
+
* from readiness, tier, function and the published benchmarks, the result
|
|
61
|
+
* reports which were estimated via pillar_basis, and a fully-estimated
|
|
62
|
+
* pass can never return Accelerate.
|
|
63
|
+
*/
|
|
64
|
+
scores?: Partial<PillarScores>;
|
|
54
65
|
/**
|
|
55
66
|
* Optional 0–1. How grounded the four pillar scores are in real evidence
|
|
56
|
-
* versus estimated from context.
|
|
57
|
-
*
|
|
58
|
-
* confidence and
|
|
59
|
-
*
|
|
60
|
-
* signal_completeness.
|
|
67
|
+
* versus estimated from context. When omitted it defaults from the count
|
|
68
|
+
* of pillars actually given (all four = 1, none = 0.5), which haircuts
|
|
69
|
+
* decision confidence and attaches a caveat on soft inputs. Mirrors
|
|
70
|
+
* diagnose_process's signal_completeness.
|
|
61
71
|
*/
|
|
62
72
|
signal_completeness?: number;
|
|
63
73
|
}
|
|
@@ -78,7 +88,11 @@ export interface ScoreResult {
|
|
|
78
88
|
drivers: string[];
|
|
79
89
|
source: string;
|
|
80
90
|
applied_modules: string[];
|
|
81
|
-
/**
|
|
91
|
+
/** The four pillar values the verdict was computed on, given or estimated. */
|
|
92
|
+
scores_used: PillarScores;
|
|
93
|
+
/** Which pillars were given by the caller and which were estimated by the engine. */
|
|
94
|
+
pillar_basis: PillarBasis;
|
|
95
|
+
/** Present when signal_completeness is low or any pillar was estimated: warns the verdict rests on soft inputs. */
|
|
82
96
|
caveat?: string;
|
|
83
97
|
}
|
|
84
98
|
/** What kind of resistance sits behind a low change-enablement score. */
|
|
@@ -150,6 +164,33 @@ export interface RecommendResult {
|
|
|
150
164
|
/** Absent when the initiative is already Accelerate. */
|
|
151
165
|
change_plan?: ChangePlan;
|
|
152
166
|
}
|
|
167
|
+
/** Input for infer_readiness: measured process signals, at least two required. */
|
|
168
|
+
export interface InferReadinessInput {
|
|
169
|
+
function: FunctionId;
|
|
170
|
+
handoffs?: number;
|
|
171
|
+
rework_rate?: number;
|
|
172
|
+
touch_ratio?: number;
|
|
173
|
+
automation_level?: number;
|
|
174
|
+
cycle_time_days?: number;
|
|
175
|
+
}
|
|
176
|
+
/** One measured signal and the readiness it points toward. */
|
|
177
|
+
export interface SignalRead {
|
|
178
|
+
signal: string;
|
|
179
|
+
value: number;
|
|
180
|
+
leans: Readiness;
|
|
181
|
+
note: string;
|
|
182
|
+
}
|
|
183
|
+
export interface InferReadinessResult {
|
|
184
|
+
readiness: Readiness;
|
|
185
|
+
/** Always 'measured': this classification came from process data, not self-report. */
|
|
186
|
+
readiness_basis: 'measured';
|
|
187
|
+
confidence: number;
|
|
188
|
+
signals_used: number;
|
|
189
|
+
signal_reads: SignalRead[];
|
|
190
|
+
/** Present when the signals point in opposing directions. */
|
|
191
|
+
disagreement?: string;
|
|
192
|
+
guidance: string;
|
|
193
|
+
}
|
|
153
194
|
export interface PaceLayerInput {
|
|
154
195
|
revenue_eur: number;
|
|
155
196
|
ai_tier: AiTier;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -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,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aibvf/core",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "AI BVF
|
|
3
|
+
"version": "0.6.0",
|
|
4
|
+
"description": "AI BVF \u2014 open protocol for scoring AI investments. Validator and scoring engine.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
7
7
|
"bvf",
|
|
@@ -42,4 +42,4 @@
|
|
|
42
42
|
"typescript": "^5.4.0",
|
|
43
43
|
"@types/node": "^20.0.0"
|
|
44
44
|
}
|
|
45
|
-
}
|
|
45
|
+
}
|