Adds Mermaid diagrams of how Apollo, ImageApi and FileViewer-React fit together, traced from the current code of all three repos and the live .env URLs.
.gitignore ignores /docs/* and allow-lists subdirectories, so this adds !/docs/architecture/ next to adr/ and agents/.
Contents: system context, data ownership, photo ingest (watcher → Apollo face/CLIP), one watcher tick, Apollo /api/photos/match, photo insight chat (FVR turn+SSE vs Apollo passthrough), plus cross-app conventions (time conventions, auth, shared llama-swap, smallest-radius-wins).
Evidence
Before: no architecture doc covering the three repos. After:mmdc -i docs/architecture/README.md (mermaid-cli 11.4.2) renders all 5 charts (arch-1.svg … arch-5.svg), so Gitea's renderer should accept them too.
Merge Danger
Door: two-way
Blast Radius: none
Docs only. The doc can go stale as routes change; it asks for diagram updates in the same PR as route/env changes.
## Summary
Adds Mermaid diagrams of how Apollo, ImageApi and FileViewer-React fit together, traced from the current code of all three repos and the live `.env` URLs.
```diff
docs/
├── adr/
├── agents/
+└── architecture/
+ └── README.md # 5 Mermaid diagrams + data-ownership table
```
`.gitignore` ignores `/docs/*` and allow-lists subdirectories, so this adds `!/docs/architecture/` next to `adr/` and `agents/`.
Contents: system context, data ownership, photo ingest (watcher → Apollo face/CLIP), one watcher tick, Apollo `/api/photos/match`, photo insight chat (FVR turn+SSE vs Apollo passthrough), plus cross-app conventions (time conventions, auth, shared llama-swap, smallest-radius-wins).
## Evidence
- **Before:** no architecture doc covering the three repos.
**After:** `mmdc -i docs/architecture/README.md` (mermaid-cli 11.4.2) renders all 5 charts (`arch-1.svg` … `arch-5.svg`), so Gitea's renderer should accept them too.
## Merge Danger
**Door:** two-way
**Blast Radius:** none
Docs only. The doc can go stale as routes change; it asks for diagram updates in the same PR as route/env changes.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Mermaid sources for the system context, data ownership, photo ingest,
watcher tick, Apollo photo matching and photo insight chat, traced from
the current code of all three repos. Allow-lists docs/architecture/
alongside docs/adr/ and docs/agents/.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
cameron
merged commit 4da2d4d0a8 into master2026-10-13 14:05:29 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Adds Mermaid diagrams of how Apollo, ImageApi and FileViewer-React fit together, traced from the current code of all three repos and the live
.envURLs..gitignoreignores/docs/*and allow-lists subdirectories, so this adds!/docs/architecture/next toadr/andagents/.Contents: system context, data ownership, photo ingest (watcher → Apollo face/CLIP), one watcher tick, Apollo
/api/photos/match, photo insight chat (FVR turn+SSE vs Apollo passthrough), plus cross-app conventions (time conventions, auth, shared llama-swap, smallest-radius-wins).Evidence
After:
mmdc -i docs/architecture/README.md(mermaid-cli 11.4.2) renders all 5 charts (arch-1.svg…arch-5.svg), so Gitea's renderer should accept them too.Merge Danger
Door: two-way
Blast Radius: none
Docs only. The doc can go stale as routes change; it asks for diagram updates in the same PR as route/env changes.
🤖 Generated with Claude Code