Audit sunk cost escalation
Audit whether cumulative sunk cost predicts aggregate project continuation after project fixed effects, checkpoint time, forward value, success probability, remaining cost, and future irreversibility, with project-cluster bootstrap uncertainty.
What it's for
Makes portfolio-governance drift visible when continuation becomes increasingly associated with money already spent rather than the remaining forward case, while refusing simplistic blame or automatic cancellation.
What you give it
Inputs split into evidence read from your connected systems, calibration your team owns, and numerical controls that affect precision but never the result's meaning.
| Field | Type | Role | Required |
|---|---|---|---|
| bootstrap_draws | integer ≥ 200, ≤ 20000 | Numerical control | Optional |
| checkpoints | array of objects (9 fields) ≥ 20 items | Evidence | Yes |
| confidence_level | number ≥ 0.8, ≤ 0.999 | Your calibration | Optional |
| max_detail_rows | integer ≥ 1, ≤ 500 | Numerical control | Optional |
| minimum_material_probability_effect | number ≥ 0, ≤ 1 | Your calibration | Optional |
| minimum_project_count | integer ≥ 5, ≤ 1000 | Your calibration | Optional |
| ridge_penalty | number ≥ 0, ≤ 1000 | Your calibration | Optional |
| seed | integer ≥ 0, ≤ 4294967295 | Numerical control | Optional |
Each checkpoints
record
| Field | Type | Required |
|---|---|---|
| checkpoint_order | integer (≥ 0) | Yes |
| continued | boolean | Yes |
| cumulative_sunk_cost | number (≥ 0) | Yes |
| expected_future_benefit | number (≥ 0) | Yes |
| forward_success_probability | number (≥ 0, ≤ 1) | Yes |
| future_irreversibility_cost | number (≥ 0) | Yes |
| id | string (non-empty) | Yes |
| project_id | string (non-empty) | Yes |
| remaining_cost | number (≥ 0) | Yes |
{
"bootstrap_draws": 500,
"checkpoints": [
{
"checkpoint_order": 0,
"continued": false,
"cumulative_sunk_cost": 20,
"expected_future_benefit": 160,
"forward_success_probability": 0.75,
"future_irreversibility_cost": 10,
"id": "portfolio-checkpoint-0-0",
"project_id": "portfolio-project-0",
"remaining_cost": 100
},
{
"checkpoint_order": 1,
"continued": true,
"cumulative_sunk_cost": 35,
"expected_future_benefit": 150,
"forward_success_probability": 0.65,
"future_irreversibility_cost": 15,
"id": "portfolio-checkpoint-0-1",
"project_id": "portfolio-project-0",
"remaining_cost": 90
},
{
"checkpoint_order": 0,
"continued": true,
"cumulative_sunk_cost": 25,
"expected_future_benefit": 160,
"forward_success_probability": 0.75,
"future_irreversibility_cost": 10,
"id": "portfolio-checkpoint-1-0",
"project_id": "portfolio-project-1",
"remaining_cost": 100
},
{
"checkpoint_order": 1,
"continued": true,
"cumulative_sunk_cost": 40,
"expected_future_benefit": 150,
"forward_success_probability": 0.65,
"future_irreversibility_cost": 15,
"id": "portfolio-checkpoint-1-1", Truncated for display — the full payload is 226 lines.
What you get back
This is the actual output of running the example above — computed by the same function the platform calls, not an illustration.
{
"assumptions": [
"Checkpoints are immutable pre-decision records with comparable continue/stop semantics; future benefit, success probability, remaining cost and irreversibility cost were available at that checkpoint and exclude sunk expenditure.",
"The coefficient is a controlled within-project association in continuation probability per one standard deviation of log sunk cost, not a causal effect, proof of bias, intent, misconduct or an instruction to stop a project.",
"Forward-economics controls, checkpoint fraction and project fixed effects do not rule out omitted time-varying information, option value, dependencies, contractual constraints, learning, strategic commitments or selection into later checkpoints.",
"This is aggregate decision-process governance and must not be attributed to named executives, teams or employees; review the decision record and omitted forward considerations before drawing any conclusion."
],
"configuration": {
"bootstrap_draws": 500,
"confidence_level": 0.95,
"controls": [
"project fixed effects by within-project centering",
"forward expected economic margin",
"forward success probability",
"remaining cost",
"within-project checkpoint fraction"
],
"log_sunk_cost_mean": 3.8746,
"log_sunk_cost_standard_deviation": 0.3521,
"ridge_penalty": 0,
"seed": 84,
"sunk_cost_transform": "log1p_then_global_standardization"
},
"decision": "no_precision_supported_sunk_cost_escalation_signal",
"method": "project_fixed_effect_forward_economics_sunk_cost_audit_v1",
"project_diagnostics": [
{
"checkpoint_count": 2,
"continuation_rate": 0.5,
"first_forward_margin": 10,
"first_sunk_cost": 65,
"last_forward_margin": -7.5,
"last_sunk_cost": 80,
"project_id": "portfolio-project-9"
},
{
"checkpoint_count": 2,
"continuation_rate": 0.5,
"first_forward_margin": 10,
"first_sunk_cost": 60,
"last_forward_margin": -7.5,
"last_sunk_cost": 75,
"project_id": "portfolio-project-8"
}, Truncated for display — the full payload is 134 lines.
How it works
Statistical audit & measurement — Check whether a number is fit to decide on: coverage, timing, reconciliation, and the gaps a dashboard hides.
- 1 Freeze immutable project checkpoints containing the actual continue/stop decision and only the forward benefit, success probability, remaining cost, future irreversibility and cumulative spend known before that decision.
- 2 Transform and standardize sunk cost, remove project fixed effects and declared time-varying forward-economics controls with Frisch-Waugh-Lovell residualization, and estimate the remaining within-project continuation-probability association.
- 3 Bootstrap whole projects, check leave-one-project-out sign stability, require a governed material effect plus a confidence interval above zero, and return only an aggregate governance-review signal rather than attributing intent or ordering cancellation.
Before you trust it
Every tool in the catalog ships with the conditions under which its answer is meaningful — and the conditions under which it should abstain instead of guessing.
Assumptions & guardrails
- Metric definitions, weights, aggregate grain, sampling, missingness, dependence, and comparison windows correspond to the management claim being audited.
- Decision checkpoints are comparable, immutable and not selected according to later outcomes; forward values and constraints are complete, measured before action and exclude already-spent cost; omitted option value or commitments can explain the residual association.
- Association, instability, or measurement quality is not a causal effect and must not be converted directly into an individual employment decision.
- A positive coefficient is a controlled association, not causal proof of sunk-cost bias, irrationality, misconduct or any named leader's intent, and it cannot automatically stop a project or drive an employment decision.
Minimum evidence
- checkpoints: at least 20 rows/items
How to validate it
Validate on future periods or held-out aggregate units, compare with a simple baseline, and require stability across plausible metric definitions and decision thresholds.
Calibrating it to your org
Same for everyone
The mathematical kernel, validation rules, method version, and JSON output semantics are organization-independent; no tenant-trained coefficients or company benchmark is embedded in the function.
Specific to you
- point-in-time forward economic margin and comparable within-project checkpoint panel preserving every eligible decision, including stops and unresolved projects, without rewriting forecasts from later outcomes
- project and checkpoint eligibility, continuation semantics, finance perimeter and currency, forward-value horizon, probability vintage, option/dependency/contract treatment, material probability effect, confidence, ridge, bootstrap, privacy boundary, and review ownership
Calibration workflow
- 1 Define the management decision, target outcome, aggregate unit, privacy boundary, cadence, and prediction/intervention horizon for this organization.
- 2 Build a tenant-scoped historical cohort using only information available before each prediction or decision; preserve zero periods, censoring, assignment probabilities, and unresolved outcomes when the method requires them.
- 3 Estimate statistical parameters on training history, but obtain costs, utilities, risk tolerance, practical-effect thresholds, capacity, and policy constraints from accountable decision owners.
- 4 Validate on later time windows or held-out aggregate units at the deployment grain, against a simple baseline and the function-specific validation strategy.
- 5 Deploy only if the returned decision clears evidence, overlap, calibration, robustness, and guardrail checks; warning, unsupported, schema-gap, and fallback decisions are abstentions.
- 6 Monitor realized outcomes, data drift, coverage, and decision regret; recalibrate at a governed cadence or after a detected regime/definition change, never merely because a stakeholder dislikes the result.
Call it from your AI
You don't wire up 388 tools in your MCP client. The GitRevio MCP server exposes 18 tools, three of which let an agent search the catalog, read a tool's schema, and run it — so the assistant finds this one on its own.
gitrevio_capabilities_search
{ "q": "audit whether cumulative sunk cost predicts" }
→ finds "audit_sunk_cost_escalation"
gitrevio_capability_describe
{ "capability_id": "audit_sunk_cost_escalation" }
→ returns the input schema and agent guidance shown on this page
gitrevio_capability_run
{ "capability_id": "audit_sunk_cost_escalation", "arguments": { ... } }
→ returns the result shown above Works in Claude Desktop, Claude Code, Cursor, Cline, Continue.dev, Goose and Aider. See the MCP server.
Related tools
Calculate earned value forecast
Turn period-level planned value, accepted earned value, and actual cost into a correlated Bayesian CPI/SPI distribution for final cost, completion period, budget overrun, and deadline miss, with classical EAC cross-checks and an early-progress abstention gate.
Optimize reliability investment frontier
Construct a dependency- and exclusion-feasible Pareto frontier across investment cost, expected residual loss, CVaR loss, and expected downtime under coherent scenarios and explicit pair interactions, then select the least-cost evaluated portfolio clearing governed reliability targets.
Audit commercial technical commitment integrity
Audit signed commercial promises against explicitly allocated technical scope, dependency order, funded capacity, acceptance criteria and evidence; expose orphan scope, double allocation, cycles, late plans and maximum contractual penalty without interpreting legal rights from engineering activity.
Audit decision execution fidelity
Audit whether approved decisions actually became verified implementation at the promised aggregate-unit and component grain, with whole-unit bootstrap uncertainty and simultaneous gates for fidelity, overdue scope, unverifiable evidence, exceptions and critical gaps.
Audit KPI threshold bunching
Detect a post-target excess concentration immediately above a governed KPI threshold: compare within-unit pre/post local mass and above-versus-below mirror asymmetry, bootstrap whole units, report density bins and a smoothed log-density jump, and explicitly refuse to equate bunching with individual gaming or intent.
Audit release risk prediction integrity
Audit a complete eligible-change release-risk cohort for point-in-time prediction lineage, exact change-to-deployment linkage, mature mutually exclusive outcomes, selective labels, score-triggered intervention contamination, calibration and false alarms before the score influences a release decision.