Penrose 0.9 is a pre-1.0 research release. This roadmap shares direction and open problems; it is not a
schedule or a promise of dates. Interfaces may still change before 1.0. If something here matters to you,
or you disagree with a priority, open a GitHub Discussion.
A transparent, calibrated, reproducible standard for evaluating quantitative performance claims that others can adopt, audit, and extend, plus a growing, shared corpus of invalidations that makes each new claim cheaper to judge than the last. Penrose is the referee layer; it does not generate alpha and makes no profitability claims, and that will not change.
The falsification pipeline supports a growing set of structured claim families behind one power-aware verdict taxonomy, anti-mining deflation, robustness stack, and calibrated discovery/confirmation firewall. Current evidence is separated from superseded and prior-epoch history; dependence-aware evidence cards distinguish many claims from many independent studies; every original submission can retain exact source bytes; and the dashboard exposes the resulting workflow in operator-readable form. Candidate generation has a reconciled funnel, bounded mechanical repair, immutable lifecycle history, and a power-aware confirmation gate, but remains default-off and cannot cross the human P9 authorization boundary.
The core remains deliberately conservative. Costs and capacity are modeled rather than measured, several data domains still need production-quality point-in-time adapters, independent replication is not automatic, shared corpus networking is not active, and the visual Settings surface and Builder Pennie are deferred. See the systems paper and changelog for the detailed evidence contract and release history.
- Reconstruction fidelity. The central risk for prose inputs is testing a broken approximation of a strategy. Stronger reconstruction and a first-class path for code-complete candidates (where this risk disappears) is the highest-leverage area.
- Point-in-time data adapters. Leakage-safe adapters for more domains (equities, futures, FX,
macro). Several ship today (FRED, Stooq, Databento, and a BYO-local
pysystemtradefutures adapter that resamples intraday→daily through the granularity gate); the contract is insrc/penrose/data/. More sources (and a fuller futures-roll/point-in-time treatment) are the most valuable place to contribute. - Independent replication and fresh-data confirmation. A workflow that lets a generated or
borderline claim graduate beyond
watchonly after confirmation on data it never touched during discovery. - Measured costs and capacity. Replacing modeled fee/impact curves with paper-traded or observed
fills, so survivors can be certified without the
watchcap that modeled costs currently impose. - Sequential and power-aware evaluation. The
underpoweredverdict is now a calibrated decision rather than a label: a marginal edge the data cannot resolve is separated from a structurally dead one, the power question is posed against a frozen realistic-edge floor rather than the observed in-sample estimate (using the upward-biased in-sample estimate was circular), and the false-kill and mined-noise-pass rates are enforced by a Monte-Carlo control. What remains is turning the resolution guidance (how much more data or cross-sectional breadth would resolve a marginal edge) into a full sequential design, drawing on the optimal-stopping literature (see references [8] and [9] in the README). - Agent-first operation. The most powerful way to drive Penrose is to point an agent at it: ingest a
paper or repo, reconstruct claims, register an honest cohort, run the grid, and read what survives, at
a scale a human clicking a UI cannot match. The read-only MCP server and an opt-in, human-gated
management surface (register a cohort, run a claim, fetch a verdict) both ship today, so an agent
can operate the referee end to end while never crossing the P9 authorization gate: the orchestrator
still cannot write the approved corpus, only a human can. In that model the dashboard
becomes mostly an overview and authorization surface rather than the primary control panel; Pennie is
wired to the MCP so you can manage and run the pipeline directly from the dashboard; and running Penrose
inside a proper external agent harness is a first-class, recommended path alongside it. The tool surface
ships as an extra (
pip install penrose[mcp]), never in the core, and the management tools land only once the surface stabilizes and the human gate is provably un-crossable. - A public corpus commons (opt-in
penrose share). A way to pool anonymized invalidations so the corpus compounds across users rather than per-clone, and so the gates can be calibrated against real field usage. The trust posture is the whole point and is non-negotiable: it is an explicit, preview-before-send command a user runs deliberately (never silent telemetry, nothing leaves the machine behind your back), it reuses the publish-path leak-check to strip anything sensitive (raw claim text, strategy code, keys, machine paths), and it sends only anonymized structured records (verdict distributions, kill reasons, domains, versions, gate-fire counts) to a small serverless collector. Default off; opt-in; auditable. Infrastructure is not built yet.
- Penrose is not a backtester and not an alpha generator. Use it alongside those tools, not instead of them.
- It will never assert that a strategy is profitable or tradeable. It reports whether evidence survives honest testing.
- It is not a publication authority or an oracle. A verdict informs a human; it does not decide truth or investment suitability.
Open a GitHub Issue for bugs and concrete requests, or a Discussion for direction. The two highest-value contribution surfaces are data adapters and reviewed strategy modules; see CONTRIBUTING.md.