If a term is unfamiliar, check the shared glossary first:
docs/glossary.md
This page is the map of the documentation itself: what each document is for, who should read it, and in what order.
The documentation in this repo is intentionally written for someone who is learning these build, packaging, and GitHub workflow concepts while reading. When practical, terms are explained where they first appear, and the glossary fills in the rest.
README.md
CONTRIBUTING.md <- how to submit a change: tests, ruff, coverage floors, the safety-critical statement
AGENTS.md / CLAUDE.md / GEMINI.md <- rules for AI agents; section 0 (production) applies to everyone
docs/
documentation-guide.md <- this file (doc map + reading paths)
glossary.md <- shared term and command definitions
install-and-verify.md <- switching a machine onto the image, post-boot checks, signature verification
safety-model.md <- what the pipeline promises, what it does not, and the rollback recovery policy
building-locally.md <- native build flow, local podman build, running the workflows in a fork, changing the base image
licensing.md <- CDDL/GPLv2 position on the published binary module
code-reading-guide.md <- repository layout, workflow map, step-by-step code reading order
architecture-overview.md <- high-level design and flow
signing-and-bootc.md <- image signing, bootc policy, and cosign compatibility
upstream-change-response.md <- incident triage and recovery actions
design-deep-dive.md <- deep technical design + issue history
akmods-fork-maintenance.md <- how akmods source refs are selected and pinned
maintenance-watchlist.md <- pins and decisions on a clock that no automation watches
production-boundary-proposal.md <- main protection and signing-key isolation (adopted)
runtime-validation-proposal.md <- boot/pool testing in CI (declined; rollback is the mitigation)
risk-tiers.md <- Tier 3/2/1/0: how much scrutiny a path gets, and the area/* labels
review-rubric.md <- what a review checks, in the order things go wrong
quality.md <- what each badge, gate and refusal means, and what none of them proves
metrics.md <- how to get the numbers (gh commands) and what they are worth
metrics/ <- dated readings of metrics.md, one file per day, left as read
reflections/ <- retrospective lessons; README.md says what earns an entry
SECURITY-AI.md <- what an AI agent may do unattended, and which inputs are hostile
agent-boundaries.md <- the agent permission boundary: what is enforced and what is only asked
branch-protection.md <- the ruleset on main and how to check it is still applied
multi-agent.md <- which agents appear, how work reaches them, who merges
agent-tasks/ <- README.md: tracing a change back to its task
ai-ops-runbook.md <- a signal or an agent's output looks wrong: what to do first
strategy.md <- the goal, and the commands that show progress toward it
.github/
pull_request_template.md <- the risk tier, safety-critical statement and verification a pull request fills in
copilot-instructions.md <- GitHub Copilot's pointer at AGENTS.md section 0
.github/scripts/
README.md <- workflow step -> command-line interface (CLI) command -> Python module map
.github/prompts/
README.md <- reusable agent prompts: diagnose a build, replay a build, review a safety-critical change
.claude/commands/
README.md <- the same procedures as Claude Code slash commands
.claude/memory/
README.md <- corrected beliefs (corrections.md): what someone believed that was false
.claude/
session-summary.md <- state carried between agent sessions; not a changelog
tests/e2e/
README.md <- the CLI run as a real subprocess: what it covers and what it does not
docs/install-and-verify.mddocs/safety-model.md-- especially the recovery policydocs/licensing.mdif you intend to redistribute
docs/building-locally.mddocs/akmods-fork-maintenance.mdAGENTS.mdsection 0 -- a fork's workflows can publish and sign
CONTRIBUTING.mdAGENTS.mdsection 0 -- this is productiondocs/risk-tiers.mdto see how much scrutiny your paths getdocs/review-rubric.mdfor what a reviewer will checktests/e2e/README.mdif you are changing a CLI command
docs/quality.md-- what each signal means and what none provesdocs/metrics.md-- the commands, and what the numbers are worthdocs/metrics/-- dated readingsdocs/strategy.md-- the goal, and how far along it is
AGENTS.mdsection 0, thenCLAUDE.mddocs/SECURITY-AI.md-- what an agent may do unattendeddocs/agent-boundaries.md-- what is enforced, what is only askeddocs/risk-tiers.md.github/prompts/README.mdand.claude/commands/README.md-- the recurring proceduresdocs/multi-agent.md-- which agents appear, and who mergesdocs/agent-tasks/README.md-- tracing a change to its task
docs/ai-ops-runbook.md-- the first thing to do, per signaldocs/review-rubric.mddocs/branch-protection.md-- what the ruleset onmaindoes and does not stop
docs/reflections/README.md-- lessons from things that went wrongdocs/production-boundary-proposal.mddocs/runtime-validation-proposal.md
- Put shared term definitions in
docs/glossary.md. - Put newcomer overview content in
README.md. Keep it short: the README is an entry point and a router, not a manual. Long-form content belongs in one of the documents below. - Put operator steps (install, validate, verify) in
docs/install-and-verify.md. - Put design reasoning in
docs/architecture-overview.md. - Put signing and bootc trust details in
docs/signing-and-bootc.md. - Put runbook and incident-response steps in
docs/upstream-change-response.md. Put the lookup from an automated signal or an agent's output to "what to do first" indocs/ai-ops-runbook.md, which links to the steps rather than copying them. - Put deeper workflow history and validation notes in
docs/design-deep-dive.md. - Put workflow-step-to-code mapping in
.github/scripts/README.md. - Put pins or decisions that will need a future human call, and that no automation
will surface, in
docs/maintenance-watchlist.md. - Put how to submit and test a change in
CONTRIBUTING.md, and what a reviewer checks indocs/review-rubric.md. - Put which paths carry which scrutiny in
docs/risk-tiers.md, and what an agent may do indocs/SECURITY-AI.mdanddocs/agent-boundaries.md. Put the ruleset onmainindocs/branch-protection.md. - Put what a signal means in
docs/quality.md, how to get a number indocs/metrics.md, and a dated reading indocs/metrics/(one file per day; leave it as it was read). - Put a lesson learned from something that went wrong in
docs/reflections/, as a new dated file (README.mdthere says what earns one). Put a short corrected belief in.claude/memory/corrections.mdinstead. - Put which agents appear, and who merges, in
docs/multi-agent.md; how to trace a change to its task indocs/agent-tasks/README.md; and the project's goal and how to read progress indocs/strategy.md. - Add every new document to the tree above and to the router table in
README.mdin the same change.