Internals¶
Implementation details outside the scheduler and the protocol. The pages are covering Git host events, NAR storage and serving, SQL graph queries and request authentication. Paths are relative to backend/.
flowchart LR
githost[Git host] -->|webhook| hooks[Git Host Webhooks]
hooks --> eval[Evaluation]
worker[Worker] -->|NAR| storage[NAR Storage]
storage --> serving[Cache Serving]
serving --> nix[nix clients]
eval --> dag[(Graph)]
dag --> queries[Graph Queries]
-
Hook routes, signature checks and the chain from a push to a queued evaluation.
-
Object layout, idempotent writes, bucket requirements, closure rows and the deep GC.
-
Signing, narinfo, pull-through, debug info and the status codes under
/cache/. -
Recursive walks, the
OFFSET 0fence, indexes, counter updates, metrics and the graph API. -
Sessions, API keys, download tokens and OIDC.
Covered Elsewhere¶
| Topic | Page |
|---|---|
| Evaluation steps, fetch and walk | Jobs, Eval Worker Setup |
| Batch import, shared builds | Shared Builds |
| Queueing, start conditions, failure cascade | Queueing and Counters |
| Offers, assignment, scoring | Capabilities and Assignment, Scoring |
| Uploads and downloads | Transfer |
| Complete closures, cache access | Cache Closure |
| Worker registration and auth | Connection |
| Statuses | Evaluations and Builds |