Back to the changelog

v0.42.0

July 11, 2026

The Saving Challenge becomes contract-proof: the frozen baseline now carries a SHA-256 fingerprint that makes the integrity of the numbers provable, a simulator lets you try fees and parameters before proposing the contract, and every monthly consolidation arrives as a notification. List and detail tell the accrued story at a glance: cumulatives, chart, measured vs estimated savings. Contains a database migration.

  • Security

    Verifiable contract

    Baseline integrity fingerprint. When a baseline is frozen, a SHA-256 fingerprint of its cost components is computed: it appears in the challenge detail (copyable), in the Contract sheet of the Excel export, and is re-verified on every report — if the frozen data were ever altered, a red "Tampered" badge exposes it immediately. Existing baselines get their fingerprint via a one-off script. The Excel export is also hardened against formula injection: a cell can never "execute" what a user typed.

  • Feature

    Simulator on the frozen baseline

    Try the contract before proposing it. From a frozen baseline (map settings → baseline list) open the Simulate panel: fee %, minimum fee, recurring costs and horizon in months → monthly table and cumulative preview, computed by the exact same engine as the real thing. One click on "Create challenge with these parameters" pre-fills the contract.

  • Feature

    Accrued value at a glance

    Consolidation notification. When a month consolidates, Admins get an in-app notification with net saving and fee, linking straight to the challenge. The challenge list now shows accrued Saving and accrued Fee without opening the detail; the detail adds a cumulative line chart (saving and fee, dashed in preview) and two cards keeping measured (hard) and estimated (capacity) savings separate. Health is more honest too: a baseline flow that was never published is now flagged in the health banner.

  • Improvement

    Order and care

    Baseline drafts under control: delete them from the list (with confirmation) and orphan drafts auto-delete after 7 days, race-safe against freezing. Sturdier wizard: no negative values, "Freeze" disabled until the data is valid, and a server-rejected override highlights the exact row. Onboarding: with no challenge or baseline yet, the Saving page explains the path to create the first one. More reliable behind the scenes too: the tenant's premium status is no longer lost on partial saves, and premium permission checks now respond faster.