capsule_vm_kill() and capsule_vm_force_reap() never touched kernel-Hermes: a dead VM stayed a member of channel 0 and every channel it joined, its undelivered mail was never released, and anything published to it afterwards held heat forever. M-B's autonomous events would leak on every dead subscriber. Captain Bob: "Fix first, own commit." - sk_hermes_vm_departed(): unsubscribe from every channel, release + pop the pending queue (heat back to each funder, ledger exact), free the queue entry. Called from both kill and reap, with a HERMES departure line. Console evidence identical on amd64/aarch64/riscv64: wa with 2 pending -> "left 2 channel(s), released 2 pending", gone from .CHANNELS, PUBLISH to its channel delivers 0; acceptance ledger held=2048 (6144 without the release). Boot parity/dict_hash unchanged; acceptance passes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
experiments/
Design of Experiments (DoE) campaign data and analysis for the LithosAnanke kernel.
bare_metal/— the bare-metal DoE experiment: blind full-factorial 2⁴ runs measuring the L8 Jacquard mode selector's effect on the Steady-State Machine across amd64/aarch64/riscv64. Seeexperiments/bare_metal/README.mdfor the full directory layout (runs/,latest/,analysis/{charts,tables,report}).
Hosted-VM DoE campaigns (factorial/heartbeat/ablation studies) live under
docs/working/experiments/ instead — this top-level directory is
specifically the kernel/bare-metal side.