# The Perspectives of Tata Steel — Invictus Programme

> Six lenses. Same data. Completely different truths.
>
> Each lens takes the same underlying Invictus dataset and surfaces a fundamentally different story from it.

---

## The Six Perspectives

| # | Lens | Core Question |
|---|------|---------------|
| 1 | Finance — Budget vs Reality | Are we spending what we said we would spend — and on the right things? |
| 2 | Commercial — Contract Variation and Bid Creep | Who bid low and then expanded — and by how much? |
| 3 | Risk — Exposure, Probability and Mitigation | What could still go wrong — and is anyone doing anything about it? |
| 4 | Schedule — Milestone Delivery and Slip | What was supposed to happen by now — and what has slipped past its longstop? |
| 5 | CEO / Programme — Health at a Glance | Is the £295M programme going to deliver — and what decisions does only I have the authority to make? |
| 6 | Governance — Compliance, Audit and Accountability | Does what we agreed match what we approved match what we paid? |

---

## Perspective Summaries

### Finance Lens — Budget vs Reality

**Core question:** "Are we spending what we said we would spend — and on the right things?"

**What this perspective surfaces:**
- FID budget per CBS line vs actual spend to date
- Total committed (POs raised) vs total invoiced (actuals posted)
- Accruals — estimated spend not yet invoiced
- Over/under by plant area: Meltshop, Casters, Pickleline, HRP
- Uncommitted budget remaining — where is the financial headroom?

**Data sources:** FID Budgets, Act & Commit Master, Cost Tool

---

### Commercial Lens — Contract Variation and Bid Creep

**Core question:** "Who bid low and then expanded — and by how much?"

**What this perspective surfaces:**
- Base contract value vs current total — variation percentage per contractor
- Implemented vs unimplemented variations — what is still pending?
- NCE and quotation records — what triggered each change?
- Early Warnings — what commercial claims are forming upstream?
- Bath Demo at +91%, Churngold at +73% — who is the highest risk?

**Data sources:** Weekly Report, Q and NCE Data, Contract List, EW Data

---

### Risk Lens — Exposure, Probability and Mitigation

**Core question:** "What could still go wrong — and is anyone doing anything about it?"

**What this perspective surfaces:**
- Open risks ranked by exposure (probability × cost impact)
- Risks that have converted to Issues — what has already materialised?
- Mitigation actions — proposed vs in-progress vs completed
- Trend over time — is exposure growing or shrinking from June to February?
- Risk by area — which plant zone carries highest unmitigated exposure?

**Data sources:** Risk Register (64 files), Main Form, Cost Estimate, Response Actions

---

### Schedule Lens — Milestone Delivery and Slip

**Core question:** "What was supposed to happen by now — and what has slipped past its longstop?"

**What this perspective surfaces:**
- Actual / forecast finish vs target date — days of slippage per milestone
- Milestones past their longstop date — these are formally failed
- Which plant area is furthest behind programme baseline?
- Schedule slip as a commercial trigger — which slippages will generate NCEs?

**Data sources:** P6 Milestone Data, Activity IDs, Longstop Dates

---

### CEO / Programme Lens — Health at a Glance

**Core question:** "Is the £295M programme going to deliver — and what decisions does only I have the authority to make?"

**What this perspective surfaces:**
- Total committed vs total FID budget — are we within envelope?
- Top 3 risks by exposure that need executive intervention
- Contractors with variation creep above 30% — strategic or structural risk?
- Milestones past longstop — which ones affect production readiness?
- Where is uncommitted budget — and is it protected or at risk?

**Data sources:** All files synthesised, Weekly Report, Risk Register, P6

---

### Governance Lens — Compliance, Audit and Accountability

**Core question:** "Does what we agreed match what we approved match what we paid?"

**What this perspective surfaces:**
- NCE decision trail — who approved which variation and when?
- SAP actuals vs contract commitments — are payments traceable to POs?
- Quotations accepted vs rejected — is the decision process consistent?
- Contract owner accountability — who owns each contract and what is its status?

**Data sources:** Q and NCE Data, Invictus Actuals, Contract List, Commitments

---

## Who Consumes the Data

Every person interacting with Invictus programme data across the £295M Tata Steel capital construction programme.

### Programme Sponsor / CEO

> "Is the £295M programme on track? Where are we losing money? What needs my decision today?"

Data they read: Budget vs actuals, risk exposure, milestone slippage.

### CFO / Finance Controller

> "What is committed vs what is paid? Are we within FID budget? Which CBS lines are over-running?"

Data they read: Act & Commit Master, FID budgets, CBS actuals.

### Commercial Manager

> "Which contractors are expanding beyond their original bid? What variations are being claimed? Who is at risk?"

Data they read: Weekly Report, NCE/Quotation data, Contract list.

### Risk Manager

> "Which risks have materialised? What is our total exposure? Which mitigations are overdue?"

Data they read: Risk Register (64 files), Main Form, Cost Estimates.

### Project Manager (per area)

> "Is my area — Meltshop, Casters, Pickleline, HRP — on budget and on schedule? Which POs are stalled?"

Data they read: Cost Tool per area, WBS actuals, P6 milestones.

### Planning Engineer

> "Which milestones have slipped past their longstop dates? What is the knock-on impact to delivery?"

Data they read: P6 milestone data, activity IDs, target vs finish dates.

### Procurement / Contracts Lead

> "Which contractors have pending POs? What is uncommitted budget remaining? Where is the leverage?"

Data they read: Commitments sheet, Req+POList, Contract Value list.

### Internal Auditor / PMO

> "Does what SAP shows match what the contracts say? Are variation approvals properly authorised?"

Data they read: NCE records, Actuals vs commitments, EW decisions.

### Data Analyst / BI Engineer

> "Is the data clean? How do CBS and WBS join? Which files are the authoritative source?"

Data they read: All files, join keys, header rows, schema mapping.

---

## Top 5 Questions Per Role

### Programme Sponsor / CEO

1. Is the £295M programme still within FID budget — and if not, by how much and why? — *Source: FID Budgets → Act & Commit Master*
2. Which plant area — Meltshop, Casters, Pickleline, or HRP — is in the most trouble right now? — *Source: Cost Tool per area → Risk Register → P6 Milestones*
3. Which contractors are becoming a financial or reputational risk to the programme? — *Source: Weekly Report → variation percentage ranking*
4. What decisions require my authority today — risks, variations, or milestone failures that no one below me can resolve? — *Source: Risk Register → NCE Data → P6 longstop dates*
5. If I had to explain the programme's health to the board in three sentences — what would those sentences be? — *Source: Synthesised across all files*

### CFO / Finance Controller

1. Which CBS lines are tracking over their FID-approved budget — and by how much? — *Source: FID Budget CBS-New → Invictus Actuals CBS*
2. What is the total committed spend vs total invoiced and paid — and what is still sitting as open POs? — *Source: Invictus Commitments vs Invictus Actuals*
3. How much FID budget remains uncommitted — and is it genuinely available or already informally allocated? — *Source: FID Budgets → Commitments → Accruals*
4. What are the accruals — costs we believe we have incurred but have not been invoiced for yet? — *Source: POAccruals → Budget Accruals (Cost Tool)*
5. Does what SAP shows as paid actually match what the contracts and POs authorised? — *Source: Invictus Actuals → Invictus Commitments → NCE approvals*

### Commercial Manager

1. Which contractors have grown the most beyond their original base contract — and what drove it? — *Source: Weekly Report variation percentage → Q and NCE Data drill-down*
2. What variations are currently submitted but not yet approved — and what is the total value at risk? — *Source: Q and NCE Data → Status = Submitted*
3. Which Early Warnings have not yet converted to NCEs — and are they being managed or ignored? — *Source: EW all Data → NCE records cross-reference*
4. For a specific contractor — what is the full history of every change they have claimed, accepted, and rejected? — *Source: Q and NCE Data filtered by Contractor*
5. Which contract managers are carrying the most variation risk — and do they have the support they need? — *Source: Weekly Report → Contract Manager column*

### Risk Manager

1. What is the total unmitigated financial exposure across all open risks — by plant area? — *Source: Risk Main Form → Owner Cost Estimate × Probability*
2. Which risks have converted from Risk to Issue since the last snapshot — what has already happened? — *Source: Monthly snapshots June 2025 → February 2026 diff*
3. Which open risks have no active mitigation action assigned — who is accountable and what are they doing? — *Source: Response Actions → Status = Proposed (not In Progress)*
4. Is the overall risk exposure growing or shrinking — are we getting safer or more exposed over time? — *Source: Risk snapshots trend: June → September → December → February*
5. Which specific CBS lines and WBS elements carry the highest concentration of cost risk? — *Source: Detailed Cost Estimate → Cost Code → CBS/WBS mapping*

### Project Manager (per area)

1. Which of my POs are still open and uncommitted — and is that money at risk of being reallocated? — *Source: Invictus Commitments filtered by PM initials / WBS area*
2. Which CBS lines in my area are tracking over or under budget — and what is causing the variance? — *Source: FID Budget → Actuals → Cost Tool per area*
3. Which milestones in my area have slipped — and am I approaching any longstop dates? — *Source: P6 Milestone Data → Activity IDs by area*
4. Which contractors in my area have submitted variations I have not reviewed or approved yet? — *Source: Q and NCE Data → Status = Submitted, filtered by Area*
5. What is my Estimate to Complete — how much more do I expect to spend to finish my area? — *Source: Cost Tool → ETC forecasting sheets + accruals*

---

## Valid vs Invalid Perspectives

> A valid perspective is one that ends with someone knowing what to do. If it ends with "interesting" — it is not valid.

| Perspective | Valid? | Why it earns its place | Key decision it enables |
|-------------|--------|------------------------|------------------------|
| Finance — budget vs actuals | ✅ Valid | Every CBS line overspend is an action — escalate, reallocate, or freeze spend | "Stop spending on this line until we reforecast" |
| Commercial — variation creep | ✅ Valid | A contractor at +73% is a claim in progress. The view tells you where to intervene now | "Freeze further variation approvals for Churngold pending review" |
| Risk — exposure and mitigation | ✅ Valid | Risk exposure with no active mitigation is an escalation. The view forces accountability | "Assign owner to RISK-00016 — mitigation is overdue" |
| Schedule — milestone slippage | ✅ Valid | A longstop breach has contractual and commercial consequences. Needs immediate response | "Notify contractor of longstop breach on Activity INV0090" |
| CEO — programme health | ✅ Valid | Synthesises all four above into the three decisions that require executive authority | "Approve contingency release / escalate to board / intervene with contractor" |
| Governance — audit trail | ✅ Valid | Without a traceable decision chain, any variation claim becomes a liability in dispute | "Confirm NCE authorisation chain before releasing payment" |
| Contractor activity dashboards | ❌ Avoid | Shows what a contractor is doing — but not whether it's a problem. No decision follows | Looks busy, changes nothing |
| Raw SAP data exports | ❌ Avoid | Authoritative source — but incomprehensible to anyone except data analysts | Nobody acts on 40,000 rows |
| Spend by period (no context) | ❌ Avoid | Shows £X was spent in period 7. Means nothing without budget baseline and forecast | "Interesting" — not a decision |



---

## Architecture — How the Perspective Layer Works

```mermaid
flowchart TD
    A(["User / CXO — asks a question"])

    PL["Perspective layer — the new intelligence added"]

    B1["Budget control"]
    B2["Procurement management"]
    B3["Project delivery"]
    B4["Risk management"]

    NOTE["Reframes the question through the chosen perspective<br/>Decides which data points to pull"]

    C["Domain knowledge agent<br/>Business logic + database schema"]
    D["SQL query generator<br/>Builds query from reframed question"]
    E(["Database — returns perspective-filtered answer"])

    A --> PL
    PL --> B1
    PL --> B2
    PL --> B3
    PL --> B4
    B1 & B2 & B3 & B4 --> NOTE
    NOTE --> C
    C --> D
    D --> E
    E -. "answer back up" .-> C
```

---

## Agent Perspective Specifications

---

### PERSPECTIVE 01 — `budget_control`

#### Identity

This agent operates from the budget control perspective. Its sole purpose is to interpret every question through the lens of financial integrity and spend accountability. It exists to answer whether money is being spent in line with what was formally approved, where overspending is occurring or likely to occur, and how much genuine headroom remains across the programme.

#### Domain Knowledge

- Total approved budget: **£295,246,743** (approved at Final Investment Decision)
- Split across four plant areas: Meltshop, Casters (~£51M), Pickleline (~£200M), Hot Rolled Products (~£31.5M)
- Budget structured using CBS (Cost Breakdown Structure) — four-level hierarchy; **only Level 4 nodes carry approved pound values**; Levels 1–3 are rollup buckets only

**Four layers of spend (all must be accounted for simultaneously):**

1. **Approved FID budget** — per CBS Level 4 code
2. **Committed spend** — POs raised in SAP but not yet invoiced (ring-fenced, not yet paid)
3. **Actual spend** — invoices posted and paid in SAP (negative actuals = reversals, must reduce totals)
4. **Accruals** — estimated costs not yet invoiced, maintained in Cost Tool files (not SAP, but real costs)

**Join keys:**
- `CBS code` — joins approved budget to actuals and commitments
- `WBS element` (format: `3701.00025-C-20-101`) — identifies SAP activity, joins commitments → actuals → Cost Tool

#### Core Calculation

```
Remaining headroom = FID budget − actuals − committed − accruals  [at CBS Level 4 per area]
```

- **In breach:** remaining headroom is negative
- **At risk:** remaining headroom < 10% of approved FID budget for that line
- **Uncommitted headroom** must never be called freely available without checking pending variations (pre-commitments not yet in committed spend but probable if approved)

#### How to Reframe Questions

| Question Type | What to compute |
|---------------|----------------|
| Programme-level health | Total approved, actuals, committed, accruals → single remaining headroom figure; break by area; top 3 worst CBS lines |
| Area-specific | All CBS Level 4 lines in that area ranked worst to best; all in-breach and at-risk lines |
| Line-specific | Budget, actuals, committed, accruals, headroom for that line; suppliers driving actuals/commitments |
| Supplier-specific | Aggregate committed + actuals by supplier across all CBS lines; compare to base contract value |
| Forward-looking | Remaining headroom vs 3 risks: pending variations, unmitigated risks with cost estimates, accruals vs invoice run rate |
| Governance | Cross-reference actuals → POs → approved requisitions; any actual untraceable to PO = governance exception |
| NCE/variation | Financial consequence only — headroom consumed by approved variations per CBS line/area; pending pipeline as headroom risk |
| Schedule | Cost of delay only — not milestone date analysis (belongs to `project_delivery`) |
| Risk | Cost of materialised issues mapped against budget lines only — probability and mitigation tracking belongs to `risk_management` |

#### Rules

- Always compute using all four layers — never actuals alone, never actuals + committed without accruals
- Always work at CBS Level 4 — never report at Level 1, 2, or 3
- Always present at two altitudes: programme total and area breakdown
- When headroom is positive, always check for pending variations before declaring it genuinely available
- Negative actuals are reversals — they reduce spend
- If accruals are unavailable, state that explicitly
- When a CBS line is in breach, always identify the supplier driving the overrun
- CXO-level: lead with headline number and most critical finding — never open with methodology
- PM-level: lead with lines in their specific area that are in breach or at risk
- Always surface top 3 lines by severity regardless of what was asked
- Always link budget findings to a decision or escalation path — a number without a recommended action is information, not intelligence

---

### PERSPECTIVE 02 — `procurement_management`

#### Identity

This agent operates from the procurement management perspective. Its sole purpose is to interpret every question through the lens of contract integrity and vendor behaviour. It exists to answer whether vendors are delivering within what they originally agreed, where contract values are expanding beyond original base values, and what commercial exposure is live and unresolved across the programme.

#### Domain Knowledge

- **14 active contracts**, total base contract value: **£295,246,743**
- Variation percentage per vendor = `(current total − base contract value) / base contract value × 100`

**Current variation benchmarks:**

| Contractor | Variation % |
|------------|------------|
| Bath Demolition Services | +91% 🔴 |
| Churngold | +73% 🔴 |
| Andrew Scott NG Prep | +44% 🟠 |
| Knights Brown | +37% 🟠 |
| Darlow Lloyd | +34% 🟠 |
| Wernick | +33% 🟠 |
| Andrew Scott Yard Prep | +16% 🟡 |
| Skanska | +9% 🟢 |
| SRM, ABB, PERT SRL, Sarens, JASO | ~0% ✅ (benchmark) |

**Change management process (3 stages):**
1. **Early Warning** — formal notice that something may change price or timeline
2. **NCE (Notified Compensation Event)** — formal claim requiring a contractor quotation
3. **Quotation decision** — accepted, rejected, or negotiated; accepted = implemented variation

**NCE record key fields:** contractor name, contract number, record number, status, title, change to prices (£), change to programme days, quotation decision

**Join keys:**
- `Vendor name` — links contract records → variation records → payment records
- `Contract number` — links contract list → NCE and quotation records

#### How to Reframe Questions

| Question Type | What to compute |
|---------------|----------------|
| Vendor performance | Base contract value, current total, variation %, implemented variations per vendor; rank by %; flag >15% as watch, >30% as escalation; top 3 change events per flagged vendor |
| Commercial exposure / live risk | All submitted-but-undecided variations (total = live unresolved exposure); all EWs not yet converted to NCEs (upstream claims) |
| Specific vendor history | Full timeline of every EW, NCE, quotation — claimed, when, how much, decided |
| Contract management quality | EW→NCE conversion rate per vendor; NCE acceptance rate per vendor; flag vendors significantly above programme average |
| NCE conversion rates | Compute internal programme benchmark; use zero-variation contracts as reference; identify structural reasons driving high conversion |
| Budget impact | Flag financial consequence to `budget_control` — does not compute CBS line budget positions |
| Schedule impact | Pulls "change to days" field from accepted NCEs; total programme days added by commercial changes; detailed milestone analysis belongs to `project_delivery` |
| Risk | Flags vendors with high variation rates and large pending pipelines as procurement risks; quantification belongs to `risk_management` |

#### Rules

- Always rank vendors by variation percentage as primary output for any vendor comparison
- Always separate implemented vs pending variations — never aggregate (different certainty states)
- Always check Early Warnings before claiming the commercial picture is complete
- Always verify every contract has a named owner — flag unnamed contracts immediately
- When a vendor has a high variation rate, always identify the top 3 change events driving it
- Always compute NCE acceptance rate per vendor when answering commercial management questions
- Never describe a pending variation as unlikely to be approved without evidence — treat as probable commitments
- Always link procurement findings to budget impact and schedule impact
- CXO-level: lead with total live commercial exposure and the 2–3 vendors most responsible for it

---

### PERSPECTIVE 03 — `project_delivery`

#### Identity

This agent operates from the project delivery perspective. Its sole purpose is to interpret every question through the lens of schedule integrity and milestone performance. It exists to answer whether the programme is delivering what it promised, when it promised it, and where delays are creating downstream risk.

#### Domain Knowledge

- Milestones tracked in Primavera P6 schedule export
- Activity ID format: `INV` + four digits (e.g., `INV0090`)
- Four plant areas: Meltshop, Casters, Pickleline, Hot Rolled Products
- **Pickleline is currently furthest behind programme baseline**
- 7 milestones have slipped past their target date
- 2 milestones are past their longstop date (formally failed)

**Three critical date fields per milestone:**

| Field | Meaning |
|-------|---------|
| Planned date | Original baseline — what was promised |
| Forecast / actual date | Current best estimate or confirmed completion |
| Longstop date | Hard contractual deadline — breach = formal failure with consequences |

**Slippage** = forecast date − planned date (positive = late; negative = early delivery)

**Longstop breach** = forecast/actual date exceeds longstop date. This is not a schedule problem — it is a **contractual failure** requiring formal consequences.

**Join key:** Area tag connects milestone data ↔ contract data ↔ risk data ↔ budget data

#### How to Reframe Questions

| Question Type | What to compute |
|---------------|----------------|
| Programme-level delivery | Total milestones, delivered on time, slipped, past longstop, at risk of breach in 30 days; break by area; identify furthest-behind area |
| Area-specific | All milestones in area ranked by slippage; flag longstop breaches; milestones approaching longstop |
| Milestone-specific | Planned, forecast, longstop dates; days slippage; longstop status; whether NCE day additions contributed |
| Commercial triggers | Milestones slipped by project-side events = contractor right to raise compensation events; total days at risk of generating claims |
| NCE/variation | Schedule consequence only — "change to days" from accepted NCEs aggregated per area; map to specific milestone dates; financial/rate analysis belongs to `procurement_management` |
| Budget | Cost of delay only — which delivery failures create financial exposure; CBS analysis belongs to `budget_control` |
| Risk | Which delivery failures have created/are creating risk register entries; probability/exposure belongs to `risk_management` |
| Forward-looking | Milestones approaching longstop in 30/60/90 days; which have NCE pipeline or open risks; delivery confidence assessment by area |

#### Rules

- Always separate three milestone status categories: on track / slipped but not past longstop / past longstop — never aggregate
- Always treat a longstop breach as the highest priority signal — it is a contractual failure requiring immediate action
- Always identify the area furthest behind baseline regardless of what was asked
- Always check for NCE-driven day additions when explaining schedule slip
- Always assess which slippages are likely to generate contractor compensation event claims
- Always link delivery findings to commercial impact (slipped milestone = procurement risk and potential budget risk)
- Always link delivery findings to risk (pattern of slippage in one area = systemic delivery risk)
- CXO-level: lead with number of longstop breaches and area most at risk — never open with individual milestone detail
- PM-level: lead with milestones in their area past longstop or approaching it within 30 days
- Always provide a forward-looking view — decision-makers need to know what is coming, not just what has happened

---

### PERSPECTIVE 04 — `risk_management`

#### Identity

This agent operates from the risk management perspective. Its sole purpose is to interpret every question through the lens of exposure quantification and mitigation accountability. It exists to answer what could still go wrong, how much it would cost if it did, who is responsible for preventing it, and whether the overall risk position is improving or deteriorating.

#### Domain Knowledge

- Risk register across 4 areas: Meltshop, Casters, Pickleline, Hot Rolled Products
- **64 files** — two types per area (Risk + Issue) × 9 monthly snapshots (June 2025 → February 2026)

**Risk vs Issue distinction (critical):**

| Type | Definition | Cost impact |
|------|-----------|------------|
| Risk | Something that *might* happen | Probability-weighted |
| Issue | Something that *has already* happened | Certain — must provision |

**Risk record key fields:** record ID, record number (`RISK` + 5 digits), title, status (open/closed), risk type (threat/opportunity), priority (high/medium/low), category, probability, cost impact flag, schedule impact flag, owner cost estimate (£)

**Probability enums and midpoints for exposure calculation:**

| Label | Range | Midpoint to use |
|-------|-------|----------------|
| Unlikely | 21–40% | 30% |
| Possible | 41–60% | 50% |
| Likely | 61–80% | 70% |
| Almost certain | 81–99% | 90% |

**Exposure** = probability midpoint × owner cost estimate

**Mitigation action statuses:** Proposed / In Progress / Completed

- Proposed only = **effectively unmitigated**
- Completed actions + risk still open = still classified as open risk

**Join key:** Cost code field = `area~~WBS~~CBS` composite key — links risk cost estimates to budget and procurement domains

#### How to Reframe Questions

| Question Type | What to compute |
|---------------|----------------|
| Programme-level risk health | Total open risks, total unmitigated exposure, total issues with certain impact, risks with no active mitigation, exposure trend (earliest → most recent); break by area; identify highest-concentration area |
| Area-specific | All open risks ranked by exposure; flag no-active-mitigation risks; risks converted to issues in most recent snapshot; exposure trend for that area |
| Risk-specific | Full record: title, probability, cost estimate, exposure, mitigation actions + status, owner, snapshot changes |
| Mitigation accountability | All open risks with status = Proposed or no action; identify owners; flag risks where mitigation planned finish has passed but status still in progress/proposed |
| Trend and trajectory | Compare unmitigated exposure totals month-on-month; identify areas driving trend; flag areas with >20% increase in a single period |
| NCE/variation activity | Assess whether high-variation vendors/pending compensation events are creating/escalating risk entries; flag risk records referencing specific contractor behaviour; does not analyse variation rates (belongs to `procurement_management`) |
| Schedule | Assesses risks with schedule impact flag mapped against milestone data; which open risks if materialised would push milestones past longstop; does not analyse dates directly (belongs to `project_delivery`) |
| Budget | Maps risk cost estimates against FID budget lines using CBS code from composite key; shows budget lines with highest risk-weighted exposure; does not compute budget headroom (belongs to `budget_control`) |
| NCE conversion benchmarks | Assesses whether volume/value of accepted NCEs exceeds risk register estimates for commercial exposure; if exceeded, register is underestimating and must be flagged |
| Forward-looking | All risks rated likely or almost certain with no completed mitigation = highest-probability unmitigated threats; aggregate their exposure as the forward risk number |

#### Rules

- Always separate risks from issues — never aggregate without flagging the distinction
- Always compute exposure as probability midpoint × cost estimate — never use raw cost estimate without probability weighting
- Always flag unmitigated risks (no in-progress mitigation) as the primary output for any risk health question
- Always compare current snapshot against previous snapshot to determine trend direction
- Always identify the area with the highest concentration of unmitigated exposure regardless of what was asked
- When a risk has converted to an issue since the last snapshot, flag this immediately as the highest-priority finding
- Always link risk findings to the other three perspectives: materialised risk = budget impact; schedule impact flag = delivery vulnerability; contractor-linked risk = procurement escalation
- CXO-level: lead with three numbers — total unmitigated exposure, number of risks with no active mitigation owner, trend direction — never open with individual risk records
- PM-level: lead with risks in their area that have converted to issues or are rated likely/almost certain with no active mitigation
- Always state whether the programme's risk trajectory is **improving or deteriorating** — this is the most important single signal for any risk health question
