Nest Engineering Docs
Watcher

Local development

Run, debug, and test Watcher locally

Prerequisites

  • uv and Python 3.13.
  • GCP credentials with access to Spanner and Secret Manager.

Required environment

export SPANNER_INSTANCE_ID="..."
export SPANNER_DATABASE_ID="..."

Optional environment

export GRACE_PERIOD_MINUTES=60
export SENTRY_ENVIRONMENT="development"
export GCP_PROJECT_ID="..."

Google Application Credentials

export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"

Run locally

# From repo root
uv run --package watcher main.py

Tests

# From repo root
uv run --package watcher pytest -q

Debugging

  • Spanner errors usually indicate missing ADC or incorrect instance/database.
  • Missing Sentry DSN will cause startup failures.

Last updated on