Tidewater: project overview

Tidewater syncs tide-gauge readings from coastal sensors into one queryable store, so the harbor team can plan around the water instead of guessing. It replaces the old nightly cron scripts.

Goals

Heads up: gauge T-07 reports in feet. Conversion happens at ingest, not at query time.

Status

AreaStateOwner
Ingest pipelineDoneAna
Query APIIn reviewBen
AlertingNot startedunassigned

Design

Waves diagram
Sensors feed a queue; workers write to the store.

Each worker runs a loop like this:

for reading in queue.drain():
    row = convert(reading)      # feet -> meters happens here
    if row.valid:
        store.insert(row)
    else:
        log.warn("bad reading", reading.id)

See the runbook for deployment, or the missing page to check how 404s look.