All apps

Portfolio & Decision Economics · R&D portfolio strategy / corporate development

CuRE Crucible

Portfolio & decision economics — program go/no-go, eNPV, and value-of-information on real-world-conditioned probability of success.

Part of Commercial

What it does

Portfolio & decision economics — program go/no-go, eNPV, and value-of-information on real-world-conditioned probability of success. RWD-conditioned probability-of-success is the wedge: pure-play portfolio-economics tools (Cytel, Berry, Captario, Intelligencia) model PoS rigorously, but none conditions the prior on the sponsor's own governed real-world substrate or refreshes it as that sponsor's data accrues — CuRE does, via Calculate + Conduct.

Key capabilities

  • Program go/no-go decision surface (attributed, hash-chained decision-of-record)
  • Grounded-AI decision Q&A — cite-or-refuse over the program-economics record + Calculate eNPV/VoI artifacts, routed through the audited Clarion gateway
  • eNPV + value-of-information views (consumed from Calculate)
  • Probability-of-success priors, RWD-conditioned via Calculate + Conduct
  • Portfolio go/no-go across assets and programs
  • Read-only eNPV / portfolio lineage seam into Control
  • Program / assumption authoring (CRUD)
  • Budget-constrained capital allocation with efficient frontier — the portfolio that maximizes total risk-adjusted eNPV under a strategist-set budget, consumed from Calculate's exact optimizer and rendered with the frontier traced across budgets
  • Named revenue scenarios per program (base / bull / bear peak-sales and uptake assumptions, provenance-tagged)

What sets it apart

  • Authors the actual pipeline — assets, programs, and named base/bull/bear revenue assumptions — and captures the go/no-go as an attributed, hash-chained decision-of-record.
  • RWD-conditioned probability-of-success is the wedge: pure-play portfolio-economics tools (Cytel, Berry, Captario, Intelligencia) model PoS rigorously, but none conditions the prior on the sponsor's own governed real-world substrate or refreshes it as that sponsor's data accrues — CuRE does, via Calculate + Conduct.
  • A distinct decision layer on the shared Calculate engine (the Caliber-from-Calculate shape, ADR-PLT-008): Crucible owns the program-economics domain, the go/no-go workflow, and the portfolio buyer surface; Calculate owns the versioned eNPV / VoI / PoS methodology it consumes — never re-implemented.
  • Board-level program economics live under an elevated R&D-strategy / corp-dev persona, org-private by default — a distinct governance surface from the clinical consent / DUA stack, not a reuse of it.
  • The decision-of-record is attributed, hash-chained, and append-only — go/no-go calls are inspectable business-decision history (NON-GxP decision support), not spreadsheet rows that drift.
  • Anchors the Commercial bundle and, per the ADR-PLT-008 dual-bundle membership, the design-and-decision bundle with Control + Calculate — distinct from Corridor, the separate Market-Access / HEOR app (ADR-PLT-132).
  • Grounded-AI decision Q&A answers strategy questions in plain language — cited to the org's own program-economics record and consumed Calculate eNPV/VoI artifacts, cite-or-refuse, routed through the audited Clarion gateway (never a direct provider call); commercial-data-partner ingestion extends the assumption surface further.
  • Capital allocation is solved, not approximated — under a strategist-set budget, the portfolio that maximizes total risk-adjusted eNPV comes from Calculate's exact budget-constrained optimizer, consumed as a versioned methodology artifact under the consume-not-reimplement rule (ADR-PLT-044) with the efficient frontier rendered around the budget; the transparent greedy eNPV-per-dollar ranking appears only as an explicitly labelled fallback when Calculate is unreachable, never passed off as the optimum.
CuRE Crucible · program eNPV + go/no-go
Live demo — synthetic data, runs in your browser

Re-roll a program's decision tree and watch the go/no-go move

A portfolio go/no-go turns on one number: the risk-adjusted expected net present value of a phased development program. Pick a phase and drag its cost, duration, or probability of success — and watch the whole decision tree re-roll: the probability of reaching each phase, its discounted expected cost, the cumulative launch probability, and the eNPV itself. Raise Phase 2's probability of success and a conditional go becomes a go; cut the peak revenue and the expectation goes negative. The roll-up table re-derives the total by hand, line by line.

Development phase

Probability of success is a per-phase conditional: the chance of advancing given the program got this far. In the product these priors can be conditioned on the platform's own real-world data rather than analyst judgement alone.

eNPV
$55M
risk-adjusted
Launch PoS
14.0%
all phases succeed
Expected PV cost
$104M
probability-weighted
Time to launch
8.0 yr
discount ×0.434
Conditional goadvisory

Positive eNPV, but the cumulative launch probability is thin — the expectation is carried by a low-probability tail, so the decision should be staged against the next phase readout.

The grade never decides. Crucible records the human's go/no-go with its rationale in an append-only, hash-chained decision-of-record, bound to the exact eNPV artifact below.

Decision-tree roll-up
PhaseStartReachPoSCostExpected PV cost
Phase 1yr 0.0100.0%65%$25M$25M
Phase 2yr 1.565.0%40%$70M$39M
Phase 3yr 4.026.0%60%$220M$38M
Filing & reviewyr 7.015.6%90%$30M$2M
Total expected PV cost$104M
Expected PV revenue — 14.0% × $2.60B × 0.434$158M
eNPV$55M

Each phase's cost is incurred at its start, weighted by the probability the program reaches it, and discounted back to today. The launch value is the peak-revenue present value earned at launch, weighted by the cumulative launch probability — so the table re-derives the eNPV by hand.

Pinned artifact provenance
Methodology
portfolio_economics.enpv.v1
Version
1.0.0

Crucible runs no eNPV math of its own. It commissions Calculate's version-pinned methodology, receives a frozen result stamped with this id and version, and pins that artifact to the program — so a decision can always be re-read against the exact economics it was taken on.

Why this is more than a toy

The eNPV is computed by a faithful, dependency-free port of Calculate's portfolio_economics.enpv.v1 methodology (services/calculate-py/src/calculate_py/stats/portfolio_economics/enpv.py): the discounted decision-tree expectation eNPV = launch_pos × PV(peak_revenue @ launch) − Σ reach_pos_i × PV(cost_i @ start_i), its per-phase PhaseEconomics roll-up, and its input guards — ported line-for-line. The methodology is explicitly empirical and closed-form (ADR-PLT-100 via ADR-PLT-113): a discounted expectation over analyst-supplied — optionally real-world-data-conditioned — probability-of-success priors, with no fit and no RNG, so it is oracle-validatable against a hand-computed decision tree. That placement is the point. Per ADR-PLT-008 and ADR-PLT-124 CuRE Crucible runs no eNPV math of its own: it commissions Calculate's version-pinned methodology, receives a frozen result stamped with its methodology id and version (ADR-PLT-045), and pins that artifact to the program — a program with no artifact yet reads null, never a fabricated figure. What Crucible owns is the decision layer above it: the advisory grade, and the go/no-go decision-of-record itself — attributed, hash-chained and append-only, bound to the exact artifact the call was made on, and explicitly non-GxP business-decision support with no Part 11 e-signature (ADR-CRU-005), because a commercial judgement is not a regulated act. The grade never decides; the human does, and the rationale is captured with it. Here it all runs entirely client-side on a synthetic program — no backend, no real data.

See CuRE Crucible in action

Every research ecosystem is unique. Let's discuss how CuRE can be configured for your needs.