Skip to content

About this site

This is a build journal — a transparency tracker for the autonomous build of the Smart Gate Trigger Service. It is not the product's own documentation; the service ships its own docs/runbooks.md and docs/security.md inside the repo (delivered by US-020).

The Smart Gate Trigger Service is a self-hosted decision/orchestration service that decides when and how often to pulse a gate-open MQTT command based on phone location, so the gate is already open before a Full Self-Driving vehicle reaches it. It runs as a single hardened Docker / docker-compose service on a home-lab VM.

The plan: Craig hands the critic-blessed PRD to a Ralph loop, walks away, and comes back to a finished v1 — with this site explaining what each loop did, when, and why.

How the loop works

Each Ralph iteration runs claude --print against the repo. The iteration AI:

  1. Reads prd.json, picks the highest-priority story where passes == false.
  2. Implements it, runs local lint + typecheck + pytest.
  3. Commits and appends a note to progress.txt.
  4. The wrapper pushes, watches GitHub Actions CI, and only flips the story's passes flag to true when CI is green against a mock MQTT broker (no hardware).

Completion gate for every story: lint + typecheck + pytest green on GitHub Actions.

How this site updates

The scripts/update.sh script in this site directory:

  1. Reads the repo's git log for chronology and commit messages.
  2. Reads prd.json for per-story passes state (the schema is a boolean passes flag, not a status enum — a story is complete when passes == true).
  3. Reads metrics.json + metrics-report.md for per-iteration Ralph telemetry (if present).
  4. Reads progress.txt for the loop's own per-iteration journal (if present).
  5. Reads tasks/prd-smart-gate-trigger-service.critic-log.md for the 4-pass critic audit.
  6. Regenerates the pages below and runs mkdocs build --clean --strict.
  7. Runs wrangler pages deploy site/ --project-name smart-gate-trigger.

Cloudflare Pages serves the result.

Source files

Source Used by
git log (repo) Build Journal, Timeline
prd.json (boolean passes schema) Overview, PRD Status, Build Journal
metrics.json / metrics-report.md (telemetry) Overview, Loop Stats, Build Journal
progress.txt (per-iteration loop journal) Build Journal narratives
tasks/*.critic-log.md Critic Log, PRD Status

Until the loop has run, metrics.json, metrics-report.md, and progress.txt may not exist yet — the site handles that gracefully and shows a "loop not started" state.

Brand

Spectro Cloud 2025 palette. Tranquil Teal #1F7A78 primary, Sunset Orange #B94B01 accent. Plus Jakarta Sans typography. All timestamps render in your local timezone (hover for the canonical UTC value).