score_portfolio
Score every initiative in an AI BVF portfolio in a single call. Returns board-level verdict: Accelerate, Fix, Stop counts, value range, confidence, and top initiatives. Validates portfolio schema first.
Instructions
Score every initiative in an AI BVF v1.0 portfolio in a single call and return the portfolio-level shape: counts of Accelerate / Fix / Stop, aggregate modelled EUR value range, mean decision confidence, the top initiative by value, the highest-risk initiative, and the per-initiative results. Use after validate_portfolio (or instead of looping score_initiative per initiative) when you have a portfolio document and want the board-level verdict, not just one classification. Schema validation runs first; if the portfolio is malformed the response sets valid=false and reports the validation errors without attempting to score. Pure deterministic calculation — no network, auth, or side effects.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| portfolio | Yes | A portfolio document conforming to the AI BVF v1.0 schema: bvf_version, organization (name, industry, optional revenue_eur), and a non-empty initiatives array. Each initiative carries id, name, function, ai_tier, and a scores object whose four pillars each carry a numeric value (0–100). organization.revenue_eur is required to model EUR value; initiatives that cannot be scored (missing revenue, unknown function/ai_tier) appear in skipped_initiatives rather than scored_initiatives. Schema: https://www.aibvf.com/protocol. | |
| readiness | Yes | Organisational readiness applied to every initiative in the portfolio. Honest self-assessment: agile = cross-functional, fast decisions; traditional = functional hierarchy; siloed = rigid, hand-off heavy. The portfolio schema does not carry per-initiative readiness; this single value sets the capture rate for the whole portfolio. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| total | Yes | Total initiatives in the portfolio (scored + skipped). | |
| valid | Yes | True when the portfolio passed schema validation. False means no initiatives were scored. | |
| summary | Yes | ||
| readiness | Yes | Readiness value applied across all initiatives. | |
| bvf_version | Yes | AI BVF protocol version used. | |
| organization | Yes | Echo of the portfolio organisation fields applied to scoring. | |
| validation_errors | No | Empty when valid; otherwise one entry per schema violation. | |
| advisory_next_step | No | Optional CTA, present only when any initiative was Fix or Stop. | |
| scored_initiatives | Yes | Per-initiative scoring result. | |
| skipped_initiatives | Yes | Initiatives that could not be scored, with the reason. Empty when all initiatives scored. | |
| aggregate_net_value_eur | Yes | Sum of net EUR value across scored initiatives, low/high. | |
| highest_risk_initiative | No | Scored initiative most at risk: worst classification (Stop > Fix > Accelerate), tie-broken by lowest decision_confidence. Omitted when none were scored. | |
| top_initiative_by_value | No | Scored initiative with the highest mid-point net EUR value. Omitted when none were scored. | |
| mean_decision_confidence | Yes | Mean decision confidence across scored initiatives (0–100); 0 when none were scored. |