Skip to content

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]
  • Git Host Webhooks

    Hook routes, signature checks and the chain from a push to a queued evaluation.

  • NAR Storage

    Object layout, idempotent writes, bucket requirements, closure rows and the deep GC.

  • Cache Serving

    Signing, narinfo, pull-through, debug info and the status codes under /cache/.

  • Graph Queries

    Recursive walks, the OFFSET 0 fence, indexes, counter updates, metrics and the graph API.

  • Authentication

    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