Adds a background demo user (`bruno`) plus two pg-boss jobs that generate public trekking routes and activities in inner Berlin and prune them after 14 days. Disabled by default everywhere; flip `DEMO_BOT_ENABLED` only in prod. - Schema: `synthetic` boolean on routes + activities - `ensureDemoUser()` idempotent insert + badge on /users/bruno - Generation gate: 07-21 Berlin local, p=0.12, 40-route cap in 14d - Initial 4-walk backfill on first enable; retention via daily prune - Prometheus gauges `demo_bot_synthetic_routes_total` / `_activities_total` - Unit + DB-gated integration + E2E tests Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
16 lines
583 B
Text
16 lines
583 B
Text
# trails.cool infrastructure environment variables
|
|
# Copy to .env and fill in values
|
|
|
|
DOMAIN=trails.cool
|
|
POSTGRES_PASSWORD=change-me
|
|
JWT_SECRET=change-me
|
|
S3_ACCESS_KEY=
|
|
S3_SECRET_KEY=
|
|
|
|
# Demo-activity-bot (Bruno). Only enable in prod. When true, the journal
|
|
# worker bootstraps a `bruno` user and generates public demo routes +
|
|
# activities every 90 min. Set DEMO_BOT_REGION to override the default
|
|
# Berlin bbox — JSON {"bbox":[w,s,e,n]}. Retention is in days (default 14).
|
|
# DEMO_BOT_ENABLED=true
|
|
# DEMO_BOT_RETENTION_DAYS=14
|
|
# DEMO_BOT_REGION={"bbox":[13.25,52.45,13.55,52.60]}
|