Pre-launch — Gluecron is in final validation. Public signups and git hosting for non-owner users open after launch review.
Commitd24a155

docs(claude): correct prod DB — it's Neon, not the local postgres container

docs(claude): correct prod DB — it's Neon, not the local postgres container

Verified 2026-07-13: the app's DATABASE_URL points at Neon
(ep-solitary-fog-...aws.neon.tech). All reads/writes + migrations go to Neon
(confirmed: migration 0111 applied there, owner_id nullable). The compose's
local postgres container is unused leftover (the app ignores it) — do NOT
back it up or query it as production. Earlier commits in this session wrongly
claimed the local container was prod.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
ccanty labs committed on July 13, 2026Parent: 4c27627
1 file changed+105d24a155260bb05e65795346ba8034974043c9683
1 changed file+10−5
ModifiedCLAUDE.md+10−5View fileUnifiedSplit
5454**Runtime layout on the box (verified 2026-07-12):**
5555- App runs via `docker compose -f docker-compose.standalone.yml` in
5656 `/opt/gluecron` (services: `gluecron`, `postgres`, `autoheal`).
57- **Database is the local `postgres` container (pgvector/pg16)** — NOT Neon.
58 Any doc claiming Neon in production is stale.
57- **Database is Neon** (managed Postgres, `ep-solitary-fog-...aws.neon.tech`).
58 The app's `DATABASE_URL` (in `/opt/gluecron/.env`) points at Neon, so ALL
59 reads/writes and migrations go there — Neon provides PITR. NOTE: the compose
60 also starts a local `postgres` (pgvector/pg16) container, but the app IGNORES
61 it (it's leftover/unused dead weight, like the caddy service). Do NOT back up
62 or query the local container thinking it's production — target Neon via the
63 app's `DATABASE_URL`. (Verified 2026-07-13.)
5964- Bare repos live in the docker volume `gluecron_git-repos`
6065 (host path `/var/lib/docker/volumes/gluecron_git-repos/_data`), mounted
6166 into the container at `/data/repos`. The host-side `/data/repos` dir is
105110
106111- **Runtime:** Bun
107112- **Framework:** Hono (with JSX for server-rendered views)
108- **Database:** Drizzle ORM + PostgreSQL (local pgvector/pg16 container in prod; Neon works for dev)
113- **Database:** Drizzle ORM + Neon (managed Postgres) in prod
109114- **Git:** Smart HTTP protocol via git CLI subprocesses
110115
111116## Development
190195## Environment Variables
191196
192197See `.env.example` for required variables. Key ones:
193- `DATABASE_URL` — PostgreSQL connection string (prod: local postgres container)
198- `DATABASE_URL` — PostgreSQL connection string (prod: Neon; set in `/opt/gluecron/.env`)
194199- `GIT_REPOS_PATH` — directory for bare git repos (default: `./repos`)
195200- `PORT` — HTTP port (default: 3000)
196201
200205- **Deploy trigger:** `git push gluecron main``post-receive.ts``scripts/self-deploy.sh` → systemd reload.
201206- **Fly.io:** decommissioned (fly.toml kept for reference, not active).
202207- **Vercel:** disconnected — do not reconnect.
203- **Database:** PostgreSQL via `DATABASE_URL` (prod: pgvector/pg16 container on the box).
208- **Database:** Neon (managed Postgres) via `DATABASE_URL`; has built-in PITR.
204209- **Logs:** `/var/log/gluecron-self-deploy.log` on the server; live stream at `/admin/deploys`.
205210
206211## Skills available for this project
207212