skidbladnir-probe — crate card
Reverse-engineered (from source — verify, don't trust the name)
- One-line pitch: The machine-injected introspection probe (plus a trivial test service) for skidbladnir's install matrix — a static-musl binary that reports install ground-truth as one JSON line.
- Does: Ships two std-only bins.
skidbladnir-probeis dropped into each KVM matrix guest, introspects the just-installed service and prints one JSON line{running?, pid, ports, health, logs}for the host to assert on; it carries mini per-backend status knowledge (systemd-system / systemd-user / openrc) plus a/procfallback (--service/--backend/--os/--exec/--port/--healthargs, hand-rolled JSON escaping, no serde).skidbladnir-testsvcis the trivial "product" the matrix installs as a real service — it binds a TCP port and answersGET /healthwith 200 so the probe has something to assert healthy. - Key deps: none but
std— deliberately dependency-free so it cross-compiles cleanly and statically tox86_64-unknown-linux-musl(the parent skidbladnir crate's ring/zbus/rcgen deps cannot). - Shape: bin only, 2 tiny binaries (src/bin/skidbladnir-probe.rs, skidbladnir-testsvc.rs). Own
[workspace],publish = false, release profile tuned for size (opt-level z, LTO, strip, panic=abort). - Observed role in the workspace: Consumed by skidbladnir's
matrixfeature — one artifact injected into every guest (glibc Ubuntu/Debian/Fedora and musl Alpine) to turn the install-matrix cells into machine-checkable pass/fail rows.
Fill in (one line each — only the human knows these)
- 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: