thermograph/CLAUDE.md

27 lines
1.5 KiB
Markdown

# thermograph monorepo — agent instructions
Reunified monorepo (2026-07-22): `backend/`, `frontend/`, `infra/`,
`observability/` — each a former split repo subtree-merged with history.
`thermograph-docs` remains a separate repo; cross-cutting decision docs and
operator runbooks belong there, not here.
- **Each domain keeps its own `CLAUDE.md`** — read the one for the domain you
touch. They still use repo-era wording ("this repo", sibling-repo names);
mentally map `thermograph-backend``backend/` etc., and fix wording as you
touch files near it.
- **CI lives only in root `.forgejo/workflows/`**, path-filtered per domain
(see README). Never re-add workflows under a domain's own `.forgejo/` — they
are inert there and become a trap.
- Images are `emi/thermograph/backend` and `emi/thermograph/frontend`
(`sha-<12hex>`). Deploy = `infra/deploy/deploy.sh` over SSH, per-service.
- The compose project name is pinned (`name: thermograph` in
`infra/docker-compose.yml`); LAN dev overrides via
`COMPOSE_PROJECT_NAME=thermograph-dev`. Don't remove either half.
- Cross-domain rules that still bind: FE/BE ship independently → keep the
`/api/version` contract and `PAYLOAD_VER` discipline (see
`backend/CLAUDE.md`); anything named "prefetch" must never spend the
Open-Meteo quota; Nominatim ≤ 1 req/s; secrets only via the SOPS vault
(`infra/deploy/secrets/`).
- `CUTOVER-NOTES.md` is the source of truth for what is and isn't live yet.
- Commits/PRs: concise and technical; never mention AI/assistants/automated
authorship.