updating-architecture-docs
Updating Architecture Docs
Purpose
The architecture/ directory is a bridge. It takes someone who already knows what Cog does and how to use it (that's what docs/ is for) to the point where they can navigate the source code with confidence. It answers "how does this work and why is it shaped this way" -- the 10,000 foot view of the project and its ecosystem.
The goal is to move a reader from fuzzy concepts to clarity:
- What are the components and what do they own?
- What's the vocabulary? (What does "slot" mean? What's the "envelope"?)
- Where are the boundaries between systems?
- What are the key design decisions and why were they made?
- Where do I look in the source to go deeper?
The architecture docs are not a substitute for reading code or a prose summary of the implementation. They give the reader enough context to make the code legible on first contact. Once someone understands that coglet uses a two-process model with slot-based IPC, reading orchestrator.rs makes sense. Without that context, it's just code.
Document structure
The docs are numbered to suggest a reading order. 00-overview.md orients the reader and points to everything else. Each subsequent doc builds on concepts from the ones before it -- someone reading about the container runtime should already understand the predictor class and the HTTP API.