Skip to main content
Pharos

Changelog: May 2026

Latest releases and all monthly archives
  1. Week #22

    141 commits

    The Depeg Resolver (DDR/DDRR) v2 ships at /depeg, dashboard cards flatten, and the data layer gets a two-pass audit.

    • /depeg goes public: DDR predicts how long an active depeg will last with sticky locked forecasts and a verdict-band lockup; DDRR scores past predictions on a reviewer. DDR also shows on each coin page.

    • Data audit & remediationcoverage

      Data passes plus follow-ups recover crvUSD and Reservoir reserve breakers, move ZCHF capacity to CHFAU, switch fxSAVE redemption to live capacity, align USG/HLUSD/JPYC/YUSD, and pin StablR's EURR/USDR multisig exploit.

    • A new GENIUS Act tracker surface launches alongside expanded compliance metadata research, and the MiCA tracker now enforces out-of-scope constraints to keep deliberately-undefined coins distinct from unassessed ones.

    • Pre-launch additionscoverage

      Tenbin Gold (tGLD), a synthetic gold debt-note from a CME-futures basket, and GEL₮, Tether's pre-launch Georgian Lari, join the pre-launch list, and the weekly upcoming sweep tracks Flipcash's launch and USDPT.

    • Flat-card design passdesign

      Card accents flatten: the colored border-l retires except for data-driven indicators. Price Transparency and Redemption Backstop go full-width on coin pages, and depeg page hierarchy tightens around the resolver.

    • Platform hygieneinfra

      Cron cache helpers centralize, depeg resolver and DEWS D1 retries harden, admin API contracts get schema validation, and several large surfaces (yield, command palette, timeline, picker) split into smaller modules.

    Show commits
    • 6eecb559 chore(generated): refresh client registry
    • 0f62f475 chore(generated): refresh prevalidated registry
    • 94059597 chore(generated): refresh cemetery dataset
    • 9013a9e1 chore(generated): refresh sitemap dates
    • c2b058a1 data(pre-launch): weekly update — Flipcash launch, USDPT tracking, dead-link fixes
    • 2c99a74c feat(annotations): pin StablR EURR/USDR multisig exploit (2026-05-24)
    • ab794b65 fix(ddrr): bound operational miss rate
    • 404eb147 test(telegram): cover my-chat-member failure path
    • b5229594 test(api): use valid admin polling fixtures
    • d231ce5e fix(api): import schemas from concrete shared modules
    • 580bd444 chore(generated): refresh docs metadata
    • 0ccce994 ci: ratchet critical coverage and cron console usage
    • 71aab01d fix(worker): harden dex merge and ddr storage writes
    • 4e5fb755 fix(api-key): stop parsing query credentials
    • 1c17cbff fix(api): validate admin query contracts
    • 6f2998b5 docs: sync audit findings with source
    • 155de905 style(timeline): trim helper eof blanks
    • ec77c876 docs: document remediation guardrails
    • 0f98e819 refactor(yield): extract leaderboard row parts
    • d3763f96 refactor(ddr): split resolver row card

    … and 121 more

  2. Week #21

    448 commits

    Design-system overhaul lands, the MiCA tracker goes live, and the yield page gets a ground-up rebuild.

    • Design system & UX overhauldesign

      Foundational tokens consolidated with a severity AA-contrast fork, then an IA graph, a11y and motion choreography, editorial voice, inline sparklines with linked brushing, and a universal watchlist with palette verbs.

    • Yield rebuilt around a scatter and a draggable risk-budget slider, a source sheet showing confidence and depth, a per-factor PYS breakdown, per-coin APY-change attribution, and a public decision ledger (v8.16).

    • MiCA tracker launchcoverage

      A new /mica/ tracker launches and sweeps to full coverage at 25 coins, cross-referenced against the ESMA register, with GUSD ruled non-compliant and the tracker cross-linked from coin and compliance surfaces.

    • Learn hub & depeg case studiesfeature

      A new /learn hub and LEARN nav group launch with a depeg case-studies section; case studies cross-link from coin, cemetery, depeg, and mechanism pages, and chart annotations now link to the case study behind each event.

    • Guided stablecoin Pickerfeature

      A guided stablecoin picker ships at /screener/picker/ on a new selector engine: snapshot endpoint, peg-scope scoring, custody and depeg-watch logic, a mobile form, a homepage callout, and a Telegram follow command.

    • Navigation & homepage refreshdesign

      An alternate homepage and timeline layout land, with a 9-depeg desktop grid, an optional phosphor CRT reading mode, a unified chain-profile hero, expanded mechanism explainers, and a prominence-ranked command palette.

    • DEX price sanity gates and Carbon normalization make DexScreener augmentation opt-in (pricing v6.05), Liquidity Score v5.7 adds price-gating, plus a cron staleness watchdog and an API-key rate-limit fallback.

    • Redemption backstop scoring (v4.04) gains documented route sources, source-support validation, and expanded confidence scoring, with a coverage matrix that surfaces outage and degraded states; report cards degrade on redemption outages, the data is exposed in stablecoin JSON-LD, and malformed telemetry fails closed.

    • Mint Authority transparencyfeature

      A new Mint Authority section on coin pages surfaces who can mint and control supply. It includes control addresses with on-chain evidence, Safe-module display, and risk-tone posture cues. Coverage expands across the top stablecoins.

    • Broader coveragecoverage

      The tracked universe reaches 399 coins with FUSD, sDOLA, GLDT, and Ondo's iAUON and sLVON added and pre-launch gynUSD joining, while reserve adapters climb to 57 and live-reserve coverage to 267.

    Show commits
    • eada0aad Sync report card snapshot test generation
    • 08f9e5dc Stabilize coverage page section tests
    • ca66632b Sync validate prebuild parity test
    • 2e91831b Refresh build attribution baseline
    • 4a60bb25 Adjust client registry chunk budget
    • 9e2239b7 Prune unused release exports
    • 470eac5f Update stablecoin detail hotspot baseline
    • 2e0ee1e1 Remove unused stablecoin detail test binding
    • d51dbebf Clarify dependency coverage audit docs
    • 04c480f4 Fix dependency coverage script doc path
    • 3c39f7a5 Add risk-tone cues and flatten Mint Authority controls
    • 9d5a80a6 Clarify mint authority Safe module display
    • fec47fc5 Fix redemption wrap-up validation findings
    • 56da0ca7 Document base issuer route sources
    • 97a95a42 Document collateral and issuer route sources
    • ebf1d4a5 Remove unused redemption route-status feed hook
    • 131afbf4 Centralize redemption display labels
    • f3efdaeb Expand top stablecoin mint authority coverage
    • c4f34ff2 Document stablecoin redemption route sources
    • fec39124 Document commodity redemption route sources

    … and 428 more

  3. Week #20

    945 commits

    Screener launches, detail pages rebuild around verdict, and Yield v8.13 ships multi-currency benchmarks.

    • Pharos Screener launchfeature

      New /screener/ tool ships with composable filters, blacklistable + safety-tier predicates, URL state codec, and universal CSV/NDJSON/Markdown export for power users.

    • Detail page rebuilddesign

      Detail pages restructure around section banners, with a verdict-first hero, mechanism schematics, AI summaries with Term popovers, attestor + freezability identity pills, and a mobile compact summary bar.

    • Trust & SEO surface areafeature

      Ten methodology white-paper PDFs go live, RSS feeds ship for digest/depeg/methodology/cemetery, citation blocks + Pharos URN substrate land, plus AI-disclosure badges and a page-footer trust strip.

    • Yield gets a v8.13 bump with a multi-currency benchmark registry (GBP/JPY/MXN/BRL/AUD/CAD), currency tab strip, per-coin /stablecoin/[id]/yield page, source-risk scoring, and yield-spike annotations.

    • Tape → Timeline migrationfeature

      The Tape moves to /timeline/ with per-class digest grouping and new PSI/DEWS/mint-burn/yield/peak-worsen/methodology/cemetery/lifecycle projectors. Copy-permalink, server-side search, and wire-service redesign land.

    • Telegram Mini App maturationfeature

      Mini App Phase 2-4 ships with HMAC hardening, /forget command, batched coin-setting writes, global depeg-step setting, and watchlists. Group UX, retention, and webhook delivery hardened across the board.

    • DEWS v6 lands with evidence + freshness scoring, depeg lifecycle provenance schema, /depeg/<event>/ pages gated at 250 bps threshold, incident triage surface, and historical provenance persistence.

    • Reserve adapter count climbs to 55 with sGHO, Zephyr, centrifuge-vault, Resupply, hbUSDT, and score-grade adapters. Live-reserves coverage reaches 252; methodology v7.23 documents the scoring policy.

    • Redemption backstop v4 ships with audited route coverage, capacity-model split, run-row handling, source-reviewed backstop scoring, refreshed coverage modeling, and a redemption backstop card on detail pages.

    • Performance + bundle workinfra

      Client registry splits into a slim 281 KiB path (down from 1.37 MiB), fonts move to woff2 + subset Newsreader, detail charts lazy-mount on intersection, Web Vitals stream to GA, and chunk-size budgets gate merges.

    • Worker + scripts modularizationinfra

      Scripts split into ci/maintenance/oneshots, telegram webhook + store split into focused submodules, shared/lib groups by domain (chains, classification, telegram, blacklist), and cron mock factories standardize tests.

    • CI + supply chain hardeningsecurity

      Zizmor + CodeQL findings remediated, persist-credentials + explicit secrets enforced on workflows, deploy validation runtime trimmed, validate leaf jobs start immediately, and pages release smoke gates clarified.

    Show commits
    • 498da50a Refresh docs metadata
    • a5b4cffe Expand reserve and redemption coverage
    • a4297211 Fix coverage matrix stablecoin column overflow
    • 52cce346 Fix reserve adapter request header tests
    • d86229f8 Fix reserve sync CI validation
    • de9fd912 Improve reserve sync coverage rescues
    • 1bc7275b expand redemption backstop coverage
    • 84fc4bac feat(telegram): add non-USD preset watchlists
    • 924a87a0 chore(generated): refresh screener sitemap date
    • 59c461b4 polish(screener): streamline page layout
    • a525fcb7 feat(screener): refine filter controls
    • c6aa0960 chore(generated): refresh public metadata dates
    • e21e56eb refactor(reserves): break live reserve store cycle
    • 491d1302 refactor(ui): split relative time helper
    • 41ee2648 chore(guardrails): refresh hotspot and unused-export metadata
    • 7843689f fix(scripts): align maintenance validation docs
    • 1c680f24 fix(telegram): share bot registration payloads
    • 350e58b5 fix: repair USG inception supply history
    • 645c5f23 fix(screener): show stablecoin logos
    • c7720591 fix(docs): repair 24 broken source-path references after swarm file moves

    … and 925 more

  4. Week #19

    45 commits

    Non-USD stablecoin batch ships, DEX pricing gains confidence telemetry, and Telegram adds depeg-step commands.

    • Non-USD coverage expansioncoverage

      Non-USD peg batch ships with supply-backfill fallback, CADD joins with full redemption + live-reserve coverage, Tangent USG activates, and the homepage Fiat filter works on first click.

    • Live reserve hardeningfeature

      Reserve Protocol DTF adapter goes live, deferred and uncertain sync states surface in the UI, adapter helper contracts expand coverage, and River/SG Forge date handling hardens.

    • DEX pricing telemetryinfra

      Confidence telemetry exposes per-source reliability, expanded bridge sources widen DEX coverage, impossible TVL and fee-variant duplicates rejected, and stale Coinbase DAI-USD dropped.

    • Digest intelligencefeature

      Daily digest leads with critical risk signals and uses live prices for active depegs. Telegram gains depeg-step commands and hardened group UX; homepage preview rebalanced.

    • Freezability and blacklist auditfeature

      Freezability classifications audited and corrected, USD3 reclassified as CeFi-dependent, blacklist identity tracking improved with new API artifacts and redemption backstop coverage.

    • USND archivecoverage

      Nerite USND moves to the frozen cemetery archive after the rsETH collateral incident, preserving the detail page while removing live reserve tracking.

    • Infrastructure and docsinfra

      Alt-peg atlas positioning fixed, LLMs stablecoin export refreshed, sitemap test prereqs generated correctly, and README gains TOC with AI guidance cross-reference.

    Show commits
    • 78630d39 fix: correct Tangent USG metadata and coverage
    • 62f2181e Fix alt-peg atlas positioning
    • 04727ff1 Refresh llms stablecoin export
    • 335effcf Activate USG Tangent tracking
    • 4b52bf43 Fix River live reserve source
    • 925c76de Fix CoinGecko onchain lookup miss breaker accounting
    • 5cbb5b01 test(reserves): review mixed stablecoin buckets
    • f2220212 chore: refresh llms artifact
    • 6781166c fix(reserves): refresh drifted reserve metadata
    • 98470d5e fix(live-reserves): handle sg forge ambiguous dates
    • 4af6a09a Reclassify USD3 as CeFi-dependent
    • b2b9f880 docs: add README TOC and AI guidance cross-reference
    • 55fe0ad3 fix(digest): use live prices for active depegs
    • 37b15584 fix(ci): generate sitemap test prerequisites
    • e05d2f9c fix(dex-liquidity): index fee variant dedupe
    • 7710d91b feat: support telegram depeg-step commands
    • fbf6e44a fix: balance homepage digest preview
    • 8097ddd3 fix(dex-liquidity): reject impossible staged TVL
    • 38e56975 Audit freezability classifications
    • 973eb6e5 Correct freezability classifications

    … and 25 more

  5. Week #18

    255 commits

    PharosVille v1 ships, frozen lifecycle lands with USR + BUCK archived, and a 10-phase audit remediation closes.

    • Pharosville v1design

      Pharosville v1 launch: a pixel-art harbor where the Pharos data comes to life, with chains as harbors, stablecoins as ships, and DEWS alert tiers as sea zones.

    • Frozen lifecyclefeature

      USR (Resolv) and BUCK become the first frozen archives. Frozen banner + chart footers, command-palette/compare/cemetery surfaces, OG/sitemap retention, cron writes excluded, PSI excludes frozen.

    • Audit remediation: 10 phasessecurity

      Phases 2-10 close: refactor splits (env contracts, contagion graph, dex discovery, taxonomy, fallback, depeg), shell-safe git refs, validated D1 usage payloads, KYC blacklist hardening, Node 24 baseline.

    • Per-coin catalog migrationinfra

      Stablecoin metadata moves from monolithic JSON shells to per-coin files with a generated aggregate; loaders, docs, lifecycle references, and tests follow.

    • Coverage and redemption modelingcoverage

      MYRC and KRWQ join coverage (MYR + KRW peg support); pmUSD gets a redemption backstop via sUSDS PSM; catalog refreshes after the crvUSD GHO PegKeeper update.

    • Mint/burn cleanup + DEX resilienceinfra

      Legacy mint/burn sync fallback removed, D1 rows-read cut, homepage events count chip restored via O(1) sqlite_sequence read; DEX liquidity degrades cleanly on source outages.

    • Funding page polishfeature

      Funding KPI card now shows <1% donor share and prior-month coverage; 12 new donations from this week's funding-update sweep.

    Show commits
    • beb436d1 feat(funding): show <1% and prior-month coverage in KPI card
    • f3e08d0e feat(promo): advertise PharosVille across pharos-watch surfaces
    • 0f81e63f data(funding): add 12 new donation(s) via funding-update
    • e00f95ec fix(data): regenerate catalog after crvusd GHO PegKeeper update
    • a5d3a5ea fix(data): add sUSDS PSM mechanism dependency for pmUSD
    • 635b562e feat(backstop): add pmUSD PSM redemption backstop (psm-swap via sUSDS)
    • 75873892 chore(deps): sync lockfile with worker viem/workers-types bumps (#105)
    • 1e22d0b2 fix(worker): degrade dex liquidity on source outages
    • e5c2ed43 test: avoid gitleaks fixture false positives
    • 891b20d5 docs(changelog): record BUCK freeze
    • ad6398ab feat(stablecoin): freeze BUCK
    • 9def4e4c fix admin stress signals
    • a767f7e7 fix: avoid unnecessary worker promotion
    • 309fed76 chore: remove host pharosville surface
    • 2028ad70 chore: add pharosville api contract (#98)
    • 327cb3c7 chore: update runtime repo identity (#97)
    • 30a78107 chore: update repo links to pharos-watch
    • bd263546 feat(pharosville): add ethereum harbor hub
    • c5e07e03 docs(pharosville): document observatory revamp target and asset budget
    • acb0dbcb feat(pharosville): dense maritime observatory revamp with shoreline detail

    … and 235 more