Skip to main content

Stale Monitor

A liveness monitoring service that alerts operators if Merkle roots go stale (fall behind new commitments).

What it watches

  • Time since last root update on the CommitmentTree
  • Whether new commitments have been made without a corresponding root update
  • Root updater service health

Why it matters

If the root updater service goes down:

  1. New commitments are inserted but the root is not updated
  2. Proofs generated against the old root remain valid (within the 100-root history window)
  3. Once the history window is exceeded, older proofs become invalid
  4. Users who committed but haven't revealed yet may be unable to do so

The stale monitor detects this condition early and alerts operators to restart the root updater.

Configuration

ParameterValue
Process nameghost-stale-monitor
No portRuns as a background job

Alert conditions

  • Root hasn't been updated in more than 60 seconds despite new commitments
  • Root updater health endpoint is unreachable
  • Root updater process has restarted unexpectedly