← Back to Daily Builds

Daily build note · June 12, 2026

Data Center Moratorium Watchboard

A local deterministic packaging layer over Data Center Docket Delta Watch that ingests multiple single-jurisdiction delta-watch outputs and turns them into a regional political watchboard...

Civic / Political Tracking Tools Build note published Public demo coming soon

What shipped

This build adds a local multi-jurisdiction watchboard layer to the existing Data Center Docket Watch package. It reads local monthly-watch/delta-watch.json files, optionally reads watchboard-profile.json, scores each jurisdiction, and writes:

  • watchboard/regional-watchboard.md
  • watchboard/jurisdiction-scorecard.csv
  • watchboard/jurisdiction-scorecard.json
  • watchboard/weekly-client-brief.md
  • watchboard/source-gaps.md
  • watchboard/prospect-shortlist.md
  • watchboard/outreach-email.md
  • watchboard/watchboard.json

The new CLI commands are:

``bash python -m data_center_docket_watch watchboard --path /tmp/data-center-watchboard-demo --jurisdictions /tmp/data-center-watchboard-demo/jurisdictions python -m data_center_docket_watch validate-watchboard --path /tmp/data-center-watchboard-demo ``

The watchboard command seeds three local demo jurisdictions when the supplied jurisdictions directory is empty:

  • Illinois tax incentive pause
  • Charlotte 150-day moratorium
  • New York statewide moratorium bill

Architecture

  • Reused the parent build's Python package, CLI style, standard-library-only implementation, JSON writer, disclaimer language, and validation pattern.
  • Added data_center_docket_watch/watchboard.py as the focused packaging layer.
  • Added write_watchboard_demo_jurisdictions in samples.py to keep the demo fixture local, inspectable, and deterministic.
  • Kept monthly-watch/delta-watch.json as the main input contract so this build compounds the prior Delta Watch product instead of replacing it.
  • Used explicit validation checks rather than implicit assumptions. validate-watchboard checks files, JSON keys, source links, source gaps, prospects, service language, disclaimer language, and required policy signals.

Trimmed scope

This MVP deliberately does not include a hosted dashboard, database, source scraper, CRM, email sender, browser automation, or provider-backed enrichment. It is a local packet generator for manually refreshed jurisdiction folders.

The scoring model is simple and explainable. It prioritizes moratorium or pause signals, public hearing/comment/vote/next-action signals, incentive or tax signals, utility and water signals, source gaps, and buyer fit from local profiles.

Limitations

  • The seeded demo URLs and facts are local fixtures from the incubator brief context. They must be replaced or confirmed against official sources before client use.
  • generatedAt reflects the local run time, so the JSON export is deterministic in structure but not byte-identical across runs.
  • The tool does not determine whether a law, moratorium, hearing notice, tax rule, or utility filing is legally effective.
  • The watchboard does not scrape or refresh sources. It flags source gaps for a human operator.
  • Prospect entries are packaging aids, not CRM records.

Verification

bash verify.sh passes locally. The verifier runs unit tests, creates /tmp/data-center-watchboard-demo, generates and validates the watchboard, checks seeded jurisdiction delta files, parses JSON outputs, checks required Markdown language, and confirms README coverage plus the local-only/no-provider-call constraints.

Suggested next steps

  • Add a richer watchboard-profile.json template command for operators.
  • Add a comparison mode that diffs two watchboard runs week over week.
  • Add optional CSV import for source gaps and prospects.
  • Add stronger date parsing for urgency windows while keeping the no-network constraint.
  • Add a narrow HTML view only after the Markdown and JSON packet workflow is validated with buyers.