Gunnar

nordisk/Skidbladnir

.nornir/skidbladnir-card-unsorted.md

<!-- nornir:class: unsorted -->
# skidbladnir — crate card

> **TRIAGED 2026-07-27.** The reverse-engineered half of this card has been **superseded** —
> it was a scout's guess at the crate from reading source, and the real thing is now written
> down properly in [`design.md`](design.md) (the pipeline + the ten AIRGAP functions), with a
> `*-design.md` chapter per function. Read those instead; a summary that drifts is worse than
> no summary, so it is not reproduced here.
>
> What is left below is the part **no amount of source-reading can answer** — the questions
> only Rickard can settle. That is what keeps this file in the holding pen. It is not work
> anyone can pick up.

## Open — human-only (the reason this card still exists)

- Primary consumer(s):
- Why it exists (vs the obvious alternative):
- Hard constraint (airgap / no-C-deps / no-FFI / pure-Rust / etc.):
- Release cadence & independence (rides a parent? own repo someday?):
- Status (production / prototype / experimental / stubbed):
- Must-NOT-change invariant:
- Biggest known gap or TODO:
- Anything a newcomer would get wrong about it:

## Answered elsewhere — do NOT re-derive here

| Question | Where it is now |
|---|---|
| what the pipeline is, module by module | [`design.md`](design.md) |
| why, and the alternatives rejected | [`reasoning.md`](reasoning.md) |
| the archive format (incl. the real-znippy adapter) | [`archive-design.md`](archive-design.md) |
| install / unfold / pki / openbao / matrix / k8s / talos | the matching `*-design.md` |
| the socket deployment system | [`socket-deployment.md`](socket-deployment.md) |

## Explicitly NOT doing

- Maintaining a hand-written crate summary in parallel with `design.md`. One of the two would
  rot, and it would be this one. `README.md` is **generated** from these docs — that is the
  summary, and it cannot drift.