Mint/Burn Flow Changelog
Full version history of Mint/Burn Flow methodology decisions, from v1.0 to v6.30.
What this controls
Mint/Burn Flow Changelog version history
Use this changelog to trace how Pharos changed the related scoring, data-source, threshold, or interpretation rules over time. Entries record the contract active at each release; archived rules are retained so historical charts and citations can be read against the rules active at the time.
Primary references
Latest version
Exclude curated non-circulating inventory from economic flow
Classify mints to and burns from supply-excluded holder addresses as protocol-internal using the circulating-supply exclusion registry.
Impact snapshot
- The single address authority is CURATED_ONCHAIN_SUPPLY_EXCLUSIONS. The event counterparty must match a curated non-circulating holder for the same stablecoin and chain, case-insensitively; all other protocol-internal exclusions still require exact per-event review.
- Cron and one-shot replay apply the rule after atomic-roundtrip detection. Both mints and burns retain their ledger rows and burn classification while leaving counted hourly totals, nets, pressure, baselines, Bank Run Gauge, DEWS flow and digest inputs.
- Existing classification UPDATEs rewrite stored duplicate event IDs, including non-standard mints, and replay recalculates affected hourly buckets. Historical correction requires replay; this change alone does not repair previously stored rows or published digests.
- The reviewedProtocolInternal diagnostic remains the exact reviewed-event count; address matches enter the existing non-standard classification counter. Frontend supply rankings already consume circulating supply with these balances excluded and require no additional suppression.
v6.30Oct 25, 2026Exclude curated non-circulating inventory from economic flow
Classify mints to and burns from supply-excluded holder addresses as protocol-internal using the circulating-supply exclusion registry.
- The single address authority is CURATED_ONCHAIN_SUPPLY_EXCLUSIONS. The event counterparty must match a curated non-circulating holder for the same stablecoin and chain, case-insensitively; all other protocol-internal exclusions still require exact per-event review.
- Cron and one-shot replay apply the rule after atomic-roundtrip detection. Both mints and burns retain their ledger rows and burn classification while leaving counted hourly totals, nets, pressure, baselines, Bank Run Gauge, DEWS flow and digest inputs.
- Existing classification UPDATEs rewrite stored duplicate event IDs, including non-standard mints, and replay recalculates affected hourly buckets. Historical correction requires replay; this change alone does not repair previously stored rows or published digests.
- The reviewedProtocolInternal diagnostic remains the exact reviewed-event count; address matches enter the existing non-standard classification counter. Frontend supply rankings already consume circulating supply with these balances excluded and require no additional suppression.
DetailsHide details
Exclude curated non-circulating inventory from economic flow
Classify mints to and burns from supply-excluded holder addresses as protocol-internal using the circulating-supply exclusion registry.
- The single address authority is CURATED_ONCHAIN_SUPPLY_EXCLUSIONS. The event counterparty must match a curated non-circulating holder for the same stablecoin and chain, case-insensitively; all other protocol-internal exclusions still require exact per-event review.
- Cron and one-shot replay apply the rule after atomic-roundtrip detection. Both mints and burns retain their ledger rows and burn classification while leaving counted hourly totals, nets, pressure, baselines, Bank Run Gauge, DEWS flow and digest inputs.
- Existing classification UPDATEs rewrite stored duplicate event IDs, including non-standard mints, and replay recalculates affected hourly buckets. Historical correction requires replay; this change alone does not repair previously stored rows or published digests.
- The reviewedProtocolInternal diagnostic remains the exact reviewed-event count; address matches enter the existing non-standard classification counter. Frontend supply rankings already consume circulating supply with these balances excluded and require no additional suppression.
Impact notes
- The single address authority is CURATED_ONCHAIN_SUPPLY_EXCLUSIONS. The event counterparty must match a curated non-circulating holder for the same stablecoin and chain, case-insensitively; all other protocol-internal exclusions still require exact per-event review.
- Cron and one-shot replay apply the rule after atomic-roundtrip detection. Both mints and burns retain their ledger rows and burn classification while leaving counted hourly totals, nets, pressure, baselines, Bank Run Gauge, DEWS flow and digest inputs.
- Existing classification UPDATEs rewrite stored duplicate event IDs, including non-standard mints, and replay recalculates affected hourly buckets. Historical correction requires replay; this change alone does not repair previously stored rows or published digests.
- The reviewedProtocolInternal diagnostic remains the exact reviewed-event count; address matches enter the existing non-standard classification counter. Frontend supply rankings already consume circulating supply with these balances excluded and require no additional suppression.
v6.29Oct 20, 2026Bounded historical transition and common scan watermark
Restore admitted historical flow windows without inventing v2 proofs, align public windows to a common fresh scanned hour, and retain admitted-member gauge weighting.
- Hours strictly before 2026-10-20 12:00 UTC may use explicitly labelled legacy-pre-cutover cursor/event assurance for frozen source identities. The boundary is the last complete hour before the 12:03 deployment and 12:05:04 first T1 producer. At and after that boundary, exact current-fingerprint v2 proof remains mandatory; dirty hours and valuation debt remain unavailable.
- The common fully scanned closed-hour watermark is bounded by the existing effective public freshness budget and exposed with timestamp, age, budget and failure reason. Totals, pressure, largest events, baselines and longer windows share it. Cached observations cannot renew an expired watermark.
- Pre-T1 gauge semantics are restored: null pressure inputs are excluded, not zeroed, with no market-wide coverage-percentage quorum. The payload explicitly names admitted-coins score scope, scan completeness, admitted/excluded counts and excluded observed market cap. No scored weight means no gauge.
- The transition expires after the 90-day window passes the fixed cutover, plus the watermark freshness budget: removal is safe after 2027-01-18 12:00 UTC plus that budget. Cache v6 separates the changed reader contract. No synthetic ledger proof, D1 migration or historical backfill is required for this reader transition.
DetailsHide details
Bounded historical transition and common scan watermark
Restore admitted historical flow windows without inventing v2 proofs, align public windows to a common fresh scanned hour, and retain admitted-member gauge weighting.
- Hours strictly before 2026-10-20 12:00 UTC may use explicitly labelled legacy-pre-cutover cursor/event assurance for frozen source identities. The boundary is the last complete hour before the 12:03 deployment and 12:05:04 first T1 producer. At and after that boundary, exact current-fingerprint v2 proof remains mandatory; dirty hours and valuation debt remain unavailable.
- The common fully scanned closed-hour watermark is bounded by the existing effective public freshness budget and exposed with timestamp, age, budget and failure reason. Totals, pressure, largest events, baselines and longer windows share it. Cached observations cannot renew an expired watermark.
- Pre-T1 gauge semantics are restored: null pressure inputs are excluded, not zeroed, with no market-wide coverage-percentage quorum. The payload explicitly names admitted-coins score scope, scan completeness, admitted/excluded counts and excluded observed market cap. No scored weight means no gauge.
- The transition expires after the 90-day window passes the fixed cutover, plus the watermark freshness budget: removal is safe after 2027-01-18 12:00 UTC plus that budget. Cache v6 separates the changed reader contract. No synthetic ledger proof, D1 migration or historical backfill is required for this reader transition.
Impact notes
- Hours strictly before 2026-10-20 12:00 UTC may use explicitly labelled legacy-pre-cutover cursor/event assurance for frozen source identities. The boundary is the last complete hour before the 12:03 deployment and 12:05:04 first T1 producer. At and after that boundary, exact current-fingerprint v2 proof remains mandatory; dirty hours and valuation debt remain unavailable.
- The common fully scanned closed-hour watermark is bounded by the existing effective public freshness budget and exposed with timestamp, age, budget and failure reason. Totals, pressure, largest events, baselines and longer windows share it. Cached observations cannot renew an expired watermark.
- Pre-T1 gauge semantics are restored: null pressure inputs are excluded, not zeroed, with no market-wide coverage-percentage quorum. The payload explicitly names admitted-coins score scope, scan completeness, admitted/excluded counts and excluded observed market cap. No scored weight means no gauge.
- The transition expires after the 90-day window passes the fixed cutover, plus the watermark freshness budget: removal is safe after 2027-01-18 12:00 UTC plus that budget. Cache v6 separates the changed reader contract. No synthetic ledger proof, D1 migration or historical backfill is required for this reader transition.
- The scanner advances only with matching accepted proof. Unproven live ranges receive up to four bounded attempts, halving from the same start; each prefix is re-scanned with fresh conservation boundaries, never skipped. Lane-local gap repair persists events and materializes hours before committing real proof without regressing the cursor. Repairs use whole raw-retained hours within eight days, never reconstructing older hourly-only history from pruned raw rows.
- Planned activation is provisionally 2026-10-21 00:00 UTC (1792540800), following the next-UTC-midnight convention; re-date effectiveAt at release. This release timestamp is separate from the immutable historical assurance boundary at 2026-10-20 12:00 UTC. Production activation and real gap-repair observations remain release requirements.
Earlier versions
Compact summaries retain historical citation targets. Open a version archive for its full evidence and commit provenance.
- v6.28 · Proven supply destruction and complete window coverage
Oct 20, 2026
Reviewed zero-address transfers require destruction evidence, and flow windows require durable scan proof before publishing net activity, direction or pressure.
- v6.27 · Literal minting pressure needs fully valued volumes
Oct 19, 2026
The literal 24-hour minting-pressure reading (mint versus burn volume balance) is now published only when both sides of the window are fully valued. When either side has unpriced or unrecorded events it renders NR with a machine-readable reason instead of a balance computed from lower-bound volumes.
- v6.26 · Reviewed Ethereum issuance coverage for BRSRV, CHFSAFO and GLDon
Oct 15, 2026
BRSRV, CHFSAFO and GLDon join the extended Ethereum mint/burn lane through reviewed contract identities and start blocks. Flow formulas and aggregate weighting are unchanged.
- v6.25 · One-sided bounds on partially valued nets
Oct 11, 2026
When unpriced events sit on only one side of a window, the flow tracker now shows the proven bound on the signed net (≥ when only mints are unpriced, ≤ when only burns are) instead of a bare NR, and the aggregate 24-hour direction is proven from every coin's known subtotals.
- v6.24 · Closed-hour flow windows and complete repair evidence
Oct 10, 2026
Flow windows now consistently cover closed UTC hours, excluding the current partial hour without losing the oldest hour's valuation debt. Verified CCTP V2 destination mints no longer count as issuance, and retention and historical pricing preserve the complete evidence needed to rebuild hourly totals.
- v6.23 · Event-time pricing and published valuation gating
Sep 28, 2026
A mint or burn is valued only with a price observed within 24 hours of the event, and the public flow API stops publishing nets, directions, pressure and flight-to-quality that missing valuation could change.
- v6.22 · Recorded valuation completeness
Sep 27, 2026
Hourly flow buckets record how many counted mints and burns lack a USD valuation beside the known dollar subtotals, and internal flow consumers stop drawing conclusions that missing valuation could change.
- v6.21 · Reviewed protocol-internal flows
Sep 27, 2026
Individually reviewed events that move tokens inside an issuer's own balance sheet are tagged protocol_internal and leave counted flow, starting with USD.AI's September 23 sUSDai loan deployment.
- v6.2 · Complete BUIDL Ethereum contract coverage
Sep 14, 2026
BUIDL flow tracking includes both registered Ethereum share-class tokens, matching the contract set used by upstream Ethereum supply.
- v6.191 · Base Dollar native flow coverage
Aug 21, 2026
Base Dollar joins the extended mint/burn lane on its canonical Base deployment from the verified creation block, with a protocol-scale threshold that retains ordinary borrower issuance while filtering sub-economic interest-distribution churn.
- v6.19 · Bank Run Gauge: one producer, one universe
Aug 10, 2026
The Bank Run Gauge is now computed once, by the /api/mint-burn-flows publication, and the daily digest re-bins that publication instead of recomputing a second composite from mint_burn_hourly over a narrower coin set with global peg-bucket supply weights.
- v6.18 · Retention-safe quiet coverage maturity
Jul 28, 2026
Mint/burn coverage maturity now uses completed block-scan span when a quiet asset has no retained event row, preventing retention from sending fully observed configs back to bootstrapping.
- v6.17 · Tx-context shortfall exclusion recovery
Jun 7, 2026
Bridge-aware mint/burn ingestion now handles residual transaction-context shortfalls per row, excluding unresolved rows from economic flow while allowing resolved rows and the sync frontier to proceed.
- v6.16 · Bridge context budget recovery
Jun 7, 2026
Bridge-aware critical mint/burn configs now resolve transaction and receipt context with one Alchemy batch request per transaction and have a bounded larger critical budget for high-volume configs.
- v6.15 · Bridge tx-context shortfall guard
Jun 6, 2026
Bridge-aware mint/burn ingestion now treats unresolved transaction context as a classification shortfall instead of publishing bridge candidates as standard flow.
- v6.14 · Bridge config validation fail-closed
Jun 6, 2026
Bridge-detection config validation now aborts module load on malformed addresses, topics, or selectors instead of logging and continuing with silently disabled bridge filtering.
- v6.13 · USD-valued largest-event guard
Jun 6, 2026
The public 24-hour largest-event field now considers only rows with resolved USD valuation, preventing raw token amounts from being rendered as dollars.
- v6.12 · Cadence-based coverage lag classification
Jun 6, 2026
Per-coin mint/burn coverage now marks established configs as lagging once block progress falls beyond the public freshness cadence, and reports unknown coverage when current chain-head metadata is unavailable.
- v6.11 · yBOLD extended transfer coverage
May 12, 2026
Yearn BOLD (yBOLD) now has extended Ethereum mint/burn tracking through standard ERC-20 zero-address Transfer events.
- v6.1 · USG extended transfer coverage
May 8, 2026
Tangent USD (USG) now has extended Ethereum mint/burn tracking from its reviewed deployment block using standard ERC-20 zero-address Transfer events.
- v6.0 · Bridge classifier parity, LayerZero endpoint-only signal, canonical-chain gauge weighting
Apr 17, 2026
Bridge classification now tags both mint and burn rows for CCIP/CCTP transactions, the LayerZero classifier recognizes endpoint-only fingerprints, and the Bank Run Gauge weights coins by their tracked-chain circulating supply rather than global supply. Atomic-roundtrip detection now requires mint/burn totals to match within 0.5%, and custom-event counterparty extraction supports unindexed address parameters.
- v5.2 · GYD retirement from active mint/burn coverage
Apr 14, 2026
GYD was removed from active mint/burn flow tracking after its cross-chain contract incident left the token functionally dead and moved it to the cemetery dataset.
- v5.1 · Canonical-chain mint/burn scope for native issuance tracking
Apr 8, 2026
Mint/burn coverage now follows each asset's configured issuance chain instead of assuming Ethereum-only scope, with USDai switched to native Arbitrum issuance/redemption tracking and stale non-canonical rows excluded from public aggregates.
- v5.0 · Bridge-transfer flow exclusion for omnichain tokens
Apr 8, 2026
Bridge-aware classification now excludes bridge-transfer mints as well as burns, starting with USDai's LayerZero OFT path, and replay/backfill runs can repair previously inserted rows.
- v4.9 · Deterministic repair loops and adapter provenance disclosures
Mar 24, 2026
Mint/burn repair and coverage semantics were tightened through historical-first valuation repair, deterministic cleanup backlogs, aligned FTQ classification, and explicit adapter provenance on public coverage metadata.
- v4.8 · Ethereum coverage wave for long-tail mint/burn tracking
Mar 24, 2026
Mint/burn flow coverage expanded materially by restoring and adding long-tail Ethereum ERC-20 configs that can be tracked with the standard zero-address Transfer path.
- v4.7 · Closed-day baseline, fixed aggregate 24h semantics, and coverage disclosures
Mar 10, 2026
Pressure Shift now compares live 24-hour flows against trailing fully closed daily baselines, aggregate API 24h fields are fixed regardless of chart window, and the product now exposes Ethereum-only scope plus coverage/freshness metadata.
- v4.6 · Safe-frontier ingestion and counted event-history alignment
Mar 9, 2026
Mint/burn ingestion now advances only to a shared safe coverage frontier under partial scans, and product event-history surfaces now default to counted economic-flow rows.
- v4.5 · Data quality: noise filtering, auto-heal, and activity gating
Mar 9, 2026
Improves flow data reliability by excluding flash-loan roundtrips from aggregation, auto-healing missing USD prices, and gating pressure shift for low-activity coins.
- v4.4 · Two-signal flow semantics and baseline-aware interpretation
Mar 7, 2026
Per-coin flow UI now separates raw 24h net flow from baseline-relative pressure shift while preserving the underlying formula.
- v4.3 · NR gating for no-activity flow windows
Mar 4, 2026
Coins with no mint/burn activity in the active 24h window now publish NR flow intensity and are excluded from gauge weighting.
- v4.2 · Signed zero-baseline flow-intensity semantics
Mar 4, 2026
Flow Intensity Score and Bank Run Gauge moved from midpoint semantics to canonical signed outputs centered at zero baseline.
- v4.1 · Reliability remediation and controlled backfill recovery
Mar 4, 2026
Ingestion moved to a reliability-first runtime policy with degraded/error health signaling and operator-grade recovery controls.
- v4.0 · reUSD deposit amount scale correction
Mar 4, 2026
Fixed a scale mismatch in reUSD mint decoding that overstated deposit-side mint volume.
- v3.2 · Event-time USD valuation for flow amounts
Mar 3, 2026
Flow USD amounts moved from run-time spot pricing to event-time historical price attribution when available.
- v3.1 · Alchemy migration and chain-aware scan controls
Mar 3, 2026
Mint/burn ingestion migrated to Alchemy JSON-RPC with chain-specific scan behavior and stronger timestamp resolution guarantees.
- v3.0 · reUSD multi-chain coverage and per-coin dedup correction
Mar 2, 2026
Coverage expanded to Re Protocol reUSD across four chains, then corrected aggregate dedup logic to avoid multi-contract over-weighting.
- v2.1 · Grade-aware flight-to-quality classification
Mar 1, 2026
Flight-to-quality shifted from static safe-haven lists to report-card score buckets, with fallback only when grade data is stale or missing.
- v2.0 · USDT treasury-event capture and partial-data gauge support
Mar 1, 2026
Coverage and scoring robustness were upgraded to capture USDT treasury mint/burn events and keep the gauge active during early-history ramp.
- v1.0 · Initial Mint/Burn Flow release
Mar 1, 2026
Launched baseline mint/burn flow tracking, scoring primitives, and public API surfaces for aggregate and per-coin analysis.