futurefin-projection-realism-campaign

Audits and improves the correctness of FutureFin's projection and FIRE simulation engine.

1|Updated May 2, 2026
One-click install
npx skills add https://github.com/maxlainz/FutureFin --skill futurefin-projection-realism-campaign-maxlainz
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: futurefin-projection-realism-campaign
Source: https://github.com/maxlainz/FutureFin/tree/main/.claude/skills/futurefin-projection-realism-campaign
Command: npx skills add https://github.com/maxlainz/FutureFin --skill futurefin-projection-realism-campaign-maxlainz

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? FutureFin's projection and FIRE engine can produce numbers that look plausible but are silently wrong, and ad-hoc fixes risk breaking determinism, Decimal money discipline, or client-server parity. This Skill provides a gated, evidence-driven campaign to audit, stress, and extend the economic model without regressions. ## Core Features & Use Cases - Baseline establishment (Phase 0): Runs engine unit tests, Postgres-backed integration tests including the fire-parity fixture, and frontend Vitest parity suites before any change. - Model fidelity inventory (Phase 1): Classifies every model simplification with code anchors and discriminating experiments whose predicted numbers are written down before running. - Ranked solution menu (Phase 2): Pre-registered candidates including property-based invariant testing with proptest, seeded Monte Carlo percentile bands, sequence-of-returns stress, tax-aware drawdown, and dynamic SWR. - Use Case: When asked to "add Monte Carlo simulation to the retirement projection" or "audit why the engine ignores loan interest", load this Skill to follow the fenced-off wrong paths, parity discipline, and promotion protocol instead of improvising. ## Quick Start Load this skill and run the Phase 0 baseline to audit the projection engine before proposing any realism improvement.

Frequently Asked Questions about futurefin-projection-realism-campaign

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add Monte Carlo simulation to a FIRE projection engine?▼

Follow Phase 2(b): justify the return distribution, derive a deterministic seed from the input so identical requests give identical bands, and add percentile fields like net_worth_p10/p50/p90 additively to the response. The pre-registered acceptance test requires bands to equal the deterministic series when sigma is zero.

How do I test a financial projection engine for silent wrongness?▼

Start with property-based invariant testing using proptest as a dev-dependency of the engine crate. Candidate invariants include cascade conservation, per-asset decomposition, scoped monotonicity under added income, net worth continuity, and determinism, each with a documented domain of validity.

When should I not use the projection realism campaign skill?▼

Do not use it for triaging a live wrong-number bug, learning the FIRE math as implemented, generic merge or release gates, or test mechanics. Those route to the debugging playbook, FIRE domain reference, change-control, and validation skills respectively.

Why must the projection engine avoid f64 for money calculations?▼

Money is rust_decimal::Decimal end-to-end as a non-negotiable architecture contract. The only sanctioned f64 use is the serialization boundary for large arrays, where precision was audited at under 1 euro over 70 years.

What is the fire-parity fixture and why does it matter?▼

It is a shared JSON fixture of numeric cases with a ±1 euro tolerance that both the Rust handler and the TypeScript fire.ts implementation must pass. If tax brackets or gross-up logic change on either side, the fixture must be regenerated and both suites must pass, since one-sided green indicates drift.