Depeg Tracker + DEWS Changelog
Full version history of Depeg Tracker and DEWS methodology decisions, from v1.0 to v4.6.
Jump to Version
LatestLatest Version
Confidence-aware depeg routing, extreme-move confirmation, and provenance surfacing
Depeg detection stopped treating every non-null price as equally trustworthy and now routes ambiguous or catastrophic moves through explicit confirmation paths.
Impact Snapshot
- Cached, fallback, low-confidence, and stale primary prices now require confirmation before they can open or close live depeg state
- Extreme moves no longer get dropped just for crossing the old <0.5x or >2x peg guardrail; they enter a dedicated confirmation lane instead
- peg-summary now exposes price provenance and trust state, and the depeg page consumes backend freshness metadata plus real event-history pagination
v4.6Mar 10, 2026Confidence-aware depeg routing, extreme-move confirmation, and provenance surfacing
Depeg detection stopped treating every non-null price as equally trustworthy and now routes ambiguous or catastrophic moves through explicit confirmation paths.
- Cached, fallback, low-confidence, and stale primary prices now require confirmation before they can open or close live depeg state
- Extreme moves no longer get dropped just for crossing the old <0.5x or >2x peg guardrail; they enter a dedicated confirmation lane instead
- peg-summary now exposes price provenance and trust state, and the depeg page consumes backend freshness metadata plus real event-history pagination
DetailsHide details
Confidence-aware depeg routing, extreme-move confirmation, and provenance surfacing
Depeg detection stopped treating every non-null price as equally trustworthy and now routes ambiguous or catastrophic moves through explicit confirmation paths.
- Cached, fallback, low-confidence, and stale primary prices now require confirmation before they can open or close live depeg state
- Extreme moves no longer get dropped just for crossing the old <0.5x or >2x peg guardrail; they enter a dedicated confirmation lane instead
- peg-summary now exposes price provenance and trust state, and the depeg page consumes backend freshness metadata plus real event-history pagination
Impact Notes
- Cached, fallback, low-confidence, and stale primary prices now require confirmation before they can open or close live depeg state
- Extreme moves no longer get dropped just for crossing the old <0.5x or >2x peg guardrail; they enter a dedicated confirmation lane instead
- peg-summary now exposes price provenance and trust state, and the depeg page consumes backend freshness metadata plus real event-history pagination
v4.5Mar 9, 2026Trusted DEX-price gating for depeg suppression, confirmation, and UI checks
DEX cross-validation now shares an explicit trust policy so thin pools cannot suppress or confirm depegs, and low-confidence rows no longer surface on the public DEX Price Check UI.
- Depeg suppression/confirmation now requires fresh DEX rows with >= $1M aggregate source TVL
- UI-facing dexPriceCheck exposure now requires fresh data with >= $250K aggregate source TVL
- Thin DEX rows can no longer veto new depeg events or promote pending confirmations on their own
DetailsHide details
Trusted DEX-price gating for depeg suppression, confirmation, and UI checks
DEX cross-validation now shares an explicit trust policy so thin pools cannot suppress or confirm depegs, and low-confidence rows no longer surface on the public DEX Price Check UI.
- Depeg suppression/confirmation now requires fresh DEX rows with >= $1M aggregate source TVL
- UI-facing dexPriceCheck exposure now requires fresh data with >= $250K aggregate source TVL
- Thin DEX rows can no longer veto new depeg events or promote pending confirmations on their own
Impact Notes
- Depeg suppression/confirmation now requires fresh DEX rows with >= $1M aggregate source TVL
- UI-facing dexPriceCheck exposure now requires fresh data with >= $250K aggregate source TVL
- Thin DEX rows can no longer veto new depeg events or promote pending confirmations on their own
v4.4Mar 2, 2026ReconstructedNo-history coins now return null peg score
Peg score stopped treating coins with neither first-seen supply history nor depeg events as implicitly healthy.
- coinTrackingStart now returns null when both firstSeen and events are absent
- computePegScoreWithWindow now yields null pegScore for insufficient-history coins
- Prevents false perfect-score outcomes on sparse or incomplete datasets
DetailsHide details
No-history coins now return null peg score
Peg score stopped treating coins with neither first-seen supply history nor depeg events as implicitly healthy.
- coinTrackingStart now returns null when both firstSeen and events are absent
- computePegScoreWithWindow now yields null pegScore for insufficient-history coins
- Prevents false perfect-score outcomes on sparse or incomplete datasets
Impact Notes
- coinTrackingStart now returns null when both firstSeen and events are absent
- computePegScoreWithWindow now yields null pegScore for insufficient-history coins
- Prevents false perfect-score outcomes on sparse or incomplete datasets
- 71cc096
v4.3Mar 1, 2026ReconstructedYoung-coin fairness and stronger active penalties
Peg score became less permissive for young coins with recurring brief depegs and for currently depegged assets.
- Tracking start formalized as max(firstSeen, fourYearsAgo) with earliest-event fallback
- Per-event severity now applies max(duration penalty, magnitude floor)
- Active-depeg penalty steepened to max(5, absBps/50), capped at 50
DetailsHide details
Young-coin fairness and stronger active penalties
Peg score became less permissive for young coins with recurring brief depegs and for currently depegged assets.
- Tracking start formalized as max(firstSeen, fourYearsAgo) with earliest-event fallback
- Per-event severity now applies max(duration penalty, magnitude floor)
- Active-depeg penalty steepened to max(5, absBps/50), capped at 50
Impact Notes
- Tracking start formalized as max(firstSeen, fourYearsAgo) with earliest-event fallback
- Per-event severity now applies max(duration penalty, magnitude floor)
- Active-depeg penalty steepened to max(5, absBps/50), capped at 50
- fd83a46
v4.2Mar 1, 2026ReconstructedDEWS wave-2: yield signal + PSI amplifier
DEWS expanded beyond market microstructure signals by incorporating yield-warning telemetry and systemic PSI context.
- Added 8th DEWS sub-signal: yield anomaly (weight 0.05)
- Introduced systemic amplifier: DEWS boosted up to +30% when PSI < 75
- Cron now reads yield_data.warning_signals and latest PSI sample before scoring
DetailsHide details
DEWS wave-2: yield signal + PSI amplifier
DEWS expanded beyond market microstructure signals by incorporating yield-warning telemetry and systemic PSI context.
- Added 8th DEWS sub-signal: yield anomaly (weight 0.05)
- Introduced systemic amplifier: DEWS boosted up to +30% when PSI < 75
- Cron now reads yield_data.warning_signals and latest PSI sample before scoring
Impact Notes
- Added 8th DEWS sub-signal: yield anomaly (weight 0.05)
- Introduced systemic amplifier: DEWS boosted up to +30% when PSI < 75
- Cron now reads yield_data.warning_signals and latest PSI sample before scoring
- dcdefde
v4.1Mar 1, 2026ReconstructedDEWS pool stress calibration fix
Corrected pool-stress scaling error that was inflating DEWS pool signal values.
- avg_pool_stress is now consumed as native 0-100 (removed erroneous x100)
- Pool component returned to intended weighting and magnitude
- Reduced false high-band classifications caused by scale inflation
DetailsHide details
DEWS pool stress calibration fix
Corrected pool-stress scaling error that was inflating DEWS pool signal values.
- avg_pool_stress is now consumed as native 0-100 (removed erroneous x100)
- Pool component returned to intended weighting and magnitude
- Reduced false high-band classifications caused by scale inflation
Impact Notes
- avg_pool_stress is now consumed as native 0-100 (removed erroneous x100)
- Pool component returned to intended weighting and magnitude
- Reduced false high-band classifications caused by scale inflation
- 2d8f867
v4.0Mar 1, 2026ReconstructedDEWS launch (7-signal model + 15-minute cron)
Launched the Depeg Early Warning System with per-coin stress scoring and persisted 15-minute snapshots.
- Introduced DEWS base model with 7 sub-signals and weighted-redistribution scoring
- Threat bands established: CALM, WATCH, ALERT, WARNING, DANGER
- compute-dews cron writes rolling stress_signals and daily stress_signal_history snapshots
DetailsHide details
DEWS launch (7-signal model + 15-minute cron)
Launched the Depeg Early Warning System with per-coin stress scoring and persisted 15-minute snapshots.
- Introduced DEWS base model with 7 sub-signals and weighted-redistribution scoring
- Threat bands established: CALM, WATCH, ALERT, WARNING, DANGER
- compute-dews cron writes rolling stress_signals and daily stress_signal_history snapshots
Impact Notes
- Introduced DEWS base model with 7 sub-signals and weighted-redistribution scoring
- Threat bands established: CALM, WATCH, ALERT, WARNING, DANGER
- compute-dews cron writes rolling stress_signals and daily stress_signal_history snapshots
- a87876c
- 9bfe791
v3.2Feb 27, 2026ReconstructedTracking-window direction fix
Corrected tracking-start math to avoid diluting young-coin depeg severity across pre-launch periods.
- Lookback boundary corrected from min(firstSeen, fourYearsAgo) to max(...)
- Peg-time and severity now computed against realistic coin lifetime bounds
- Young-coin scores became less artificially inflated
DetailsHide details
Tracking-window direction fix
Corrected tracking-start math to avoid diluting young-coin depeg severity across pre-launch periods.
- Lookback boundary corrected from min(firstSeen, fourYearsAgo) to max(...)
- Peg-time and severity now computed against realistic coin lifetime bounds
- Young-coin scores became less artificially inflated
Impact Notes
- Lookback boundary corrected from min(firstSeen, fourYearsAgo) to max(...)
- Peg-time and severity now computed against realistic coin lifetime bounds
- Young-coin scores became less artificially inflated
- 74aa1cd
v3.1Feb 26, 2026ReconstructedConfirmation and detector hardening
Hardened confirmation and detection against invalid references, non-finite values, and partial-write edge cases.
- Pending rows with invalid peg_reference are dropped before confirmation math
- Detection now rejects non-finite peg references before bps computation
- Pending confirmation mutations are batched atomically for consistent state transitions
DetailsHide details
Confirmation and detector hardening
Hardened confirmation and detection against invalid references, non-finite values, and partial-write edge cases.
- Pending rows with invalid peg_reference are dropped before confirmation math
- Detection now rejects non-finite peg references before bps computation
- Pending confirmation mutations are batched atomically for consistent state transitions
Impact Notes
- Pending rows with invalid peg_reference are dropped before confirmation math
- Detection now rejects non-finite peg references before bps computation
- Pending confirmation mutations are batched atomically for consistent state transitions
- c2832ae
- 61e8f9b
- c868ba2
- 76aa8c6
v3.0Feb 25, 2026ReconstructedTwo-stage confirmation for large-cap depegs
Large-cap depeg detection moved from single-source trigger to a pending-confirmation pipeline with secondary-source validation.
- >= $1B coins now route through depeg_pending before promotion to depeg_events
- Secondary agreement uses CoinGecko and/or DEX with a 50% threshold bar
- sync-stablecoins now runs detectDepegEvents and confirmPendingDepegs sequentially each cycle
DetailsHide details
Two-stage confirmation for large-cap depegs
Large-cap depeg detection moved from single-source trigger to a pending-confirmation pipeline with secondary-source validation.
- >= $1B coins now route through depeg_pending before promotion to depeg_events
- Secondary agreement uses CoinGecko and/or DEX with a 50% threshold bar
- sync-stablecoins now runs detectDepegEvents and confirmPendingDepegs sequentially each cycle
Impact Notes
- >= $1B coins now route through depeg_pending before promotion to depeg_events
- Secondary agreement uses CoinGecko and/or DEX with a 50% threshold bar
- sync-stablecoins now runs detectDepegEvents and confirmPendingDepegs sequentially each cycle
- ece06dd
- c1adfa7
- 5fac720
- 9854efe
- 8c5a9b9
v2.1Feb 20, 2026ReconstructedFour-year peg-score lookback window
Peg scoring moved to an explicit rolling 4-year horizon instead of unbounded historical span.
- computePegScoreWithWindow introduced a 4-year tracking cap
- Detail-page peg scores became explicitly lookback-bounded
- Boundary logic was later corrected in v3.2 for firstSeen direction
DetailsHide details
Four-year peg-score lookback window
Peg scoring moved to an explicit rolling 4-year horizon instead of unbounded historical span.
- computePegScoreWithWindow introduced a 4-year tracking cap
- Detail-page peg scores became explicitly lookback-bounded
- Boundary logic was later corrected in v3.2 for firstSeen direction
Impact Notes
- computePegScoreWithWindow introduced a 4-year tracking cap
- Detail-page peg scores became explicitly lookback-bounded
- Boundary logic was later corrected in v3.2 for firstSeen direction
- 29c1bdc
v2.0Feb 20, 2026ReconstructedPeg-score severity rebalance + spread penalty
Peg score shifted to stronger magnitude sensitivity and penalized erratic event-size variance.
- Severity penalty changed from sqrt-based to linear (peakBps/100 scaling)
- Added spreadPenalty from event-magnitude standard deviation (cap 15)
- Composite became: 0.5*pegPct + 0.5*severity - activePenalty - spreadPenalty
DetailsHide details
Peg-score severity rebalance + spread penalty
Peg score shifted to stronger magnitude sensitivity and penalized erratic event-size variance.
- Severity penalty changed from sqrt-based to linear (peakBps/100 scaling)
- Added spreadPenalty from event-magnitude standard deviation (cap 15)
- Composite became: 0.5*pegPct + 0.5*severity - activePenalty - spreadPenalty
Impact Notes
- Severity penalty changed from sqrt-based to linear (peakBps/100 scaling)
- Added spreadPenalty from event-magnitude standard deviation (cap 15)
- Composite became: 0.5*pegPct + 0.5*severity - activePenalty - spreadPenalty
- d2954c3
v1.2Feb 20, 2026ReconstructedNon-USD thresholding + ongoing false-positive control
Depeg detection adopted peg-type-aware thresholds and began actively retiring stale false-positive open events.
- Non-USD depeg threshold raised to 150 bps (USD remained 100 bps)
- Cleanup migration removed legacy non-USD events below 150 bps
- Ongoing events auto-close after sustained DEX disagreement (30m+, >=$1M TVL)
DetailsHide details
Non-USD thresholding + ongoing false-positive control
Depeg detection adopted peg-type-aware thresholds and began actively retiring stale false-positive open events.
- Non-USD depeg threshold raised to 150 bps (USD remained 100 bps)
- Cleanup migration removed legacy non-USD events below 150 bps
- Ongoing events auto-close after sustained DEX disagreement (30m+, >=$1M TVL)
Impact Notes
- Non-USD depeg threshold raised to 150 bps (USD remained 100 bps)
- Cleanup migration removed legacy non-USD events below 150 bps
- Ongoing events auto-close after sustained DEX disagreement (30m+, >=$1M TVL)
- 9c0d1a6
- 7bc5361
- 8b01716
v1.1Feb 18, 2026ReconstructedEarly lifecycle hardening + active penalty floor
Early stability pass reduced under-penalization and fixed event-time accounting/state-lifecycle edge cases.
- Added active-depeg penalty to peg score, then introduced a minimum floor
- Merged overlapping depeg intervals to prevent pegPct double-counting
- Detection now closes orphan open events and tracks open state by event ID
DetailsHide details
Early lifecycle hardening + active penalty floor
Early stability pass reduced under-penalization and fixed event-time accounting/state-lifecycle edge cases.
- Added active-depeg penalty to peg score, then introduced a minimum floor
- Merged overlapping depeg intervals to prevent pegPct double-counting
- Detection now closes orphan open events and tracks open state by event ID
Impact Notes
- Added active-depeg penalty to peg score, then introduced a minimum floor
- Merged overlapping depeg intervals to prevent pegPct double-counting
- Detection now closes orphan open events and tracks open state by event ID
- cb67892
- c6c1391
- 4c818f5
- 8b0fe61
v1.0Feb 18, 2026ReconstructedInitial Depeg Tracker scoring + live event detection
First operational release of depeg scoring and event detection primitives.
- Launched computePegScore baseline (peg time + severity blend)
- Introduced detectDepegEvents cron pipeline with live open/close/update logic
- Added duplicate-open-event merge and new-event DEX disagreement suppression
DetailsHide details
Initial Depeg Tracker scoring + live event detection
First operational release of depeg scoring and event detection primitives.
- Launched computePegScore baseline (peg time + severity blend)
- Introduced detectDepegEvents cron pipeline with live open/close/update logic
- Added duplicate-open-event merge and new-event DEX disagreement suppression
Impact Notes
- Launched computePegScore baseline (peg time + severity blend)
- Introduced detectDepegEvents cron pipeline with live open/close/update logic
- Added duplicate-open-event merge and new-event DEX disagreement suppression
- f1ea0d8
- 2556ae4