docs: rewrite the agent context layer to match the live system #81
No reviewers
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: Jinemi/thermograph#81
Loading…
Reference in a new issue
No description provided.
Delete branch "worktree-docs+context-layer-truth"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Phase 1 of the architecture simplification plan: make the files an agent reads before every change actually true.
Why
Four of the five domain
CLAUDE.mdfiles described the pre-monorepo split-repo world, and several statements were the exact inverse of reality. Verified against the tree:infra/CLAUDE.mdemi/thermograph) is archived — do not point anything at it"infra/CLAUDE.mdinfra/README.mddeploy/stack/thermograph-stack.yml.backend/CLAUDE.mdbackend/Makefileexists.backend/CLAUDE.mdemi/thermograph-backend/app, workflowsbuild-push.yml/deploy.ymlemi/thermograph/backend,backend-*.ymlfrontend/CLAUDE.mdthermograph-repos/"; norequirements-dev.txt; noMakefileobservability/CLAUDE.mdmainbranch, no protection"dev/main/release.These files are load-bearing input to every change, so staleness here is a correctness problem, not a documentation one. The root
CLAUDE.mddid warn that domain files used repo-era wording — but each domain file still reads as authoritative on its own.What changed
CLAUDE.mdnow owns cross-cutting truth once: branch model, theSERVICE+*_IMAGE_TAGdeploy contract, image names, which orchestrator each environment runs, and that everything is a PR. Domain files carry only what differs and are capped at ~70 lines.infra/docker-stack.yml. It defineddb/app/worker, was referenced by nothing that deploys, and was described in prose as a design record for a "possible future" Swarm deploy — while the real 8-service prod stack already lives underdeploy/stack/. A file that looks authoritative and affects nothing is the worst case for someone asked to change the prod stack.*-deploy-dev.ymlworkflows are inert, rather than leaving a reader to discover it.infra/README.md: corrected the orchestrator claim and recordedinfra-sync.yml, replacing "there is no separate infra deploy trigger".deploy-stack.shactually resolves the digest from the running container (including the composethermograph-db-1name).Adopts one rule going forward, stated at the top of the root file: a
CLAUDE.mdmay only contain statements that would break CI if they became false, or that name a file that exists. Everything else belongs inthermograph-docs.Net −305 lines. No behaviour change; the only non-markdown edits are the deleted decoy file and a comment.
Verification
CLAUDE.mdfiles plus both READMEs.infra/docker-compose.yml,docker-compose.openmeteo.ymlanddeploy/stack/thermograph-stack.ymlall still parse;docker compose configfails only on the expected unsetPOSTGRES_PASSWORD.deploy/forgejo/, which legitimately has its own.deploy.sh's sibling service, which is correct usage.