Always-on hardening for kai-desktop-tower-wsl k3s node (WSL lifecycle) #242
Labels
No labels
burndown-2026-06
coherence-core
consult
headless
interactive
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
coilyco-flight-deck/infrastructure#242
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
kai-desktop-tower-wslis a k3s agent running inside WSL2 on the Windows desktop tower. WSL's desktop-oriented lifecycle makes it goNotReadyin ways a normal Linux box never would - it caused a 2-day silent CI outage (coilysiren/inbox#65, root cause). CI no longer depends on this node (runners unpinned, infrastructure#241), but if we want it back as a reliable worker it needs four layers of always-on hardening. All steps run on the Windows tower itself.Hardening checklist
%UserProfile%\.wslconfig:[wsl2] vmIdleTimeout=-1AND[general] instanceIdleTimeout=-1(both required; needs WSL >= 2.4.4).wsl --shutdownto apply./etc/wsl.conf:[boot] systemd=true. Run k3s-agent (and tailscaled) as systemd units so they are supervised and restart on distro boot.wsl.exe -d <distro> -u root -e dbus-launch true. Boots the VM headless so systemd brings up k3s without a human shell.powercfg /change standby-timeout-ac 0,powercfg /change hibernate-timeout-ac 0,powercfg /hibernate off. BIOS "restore on AC power loss -> On". Disable Windows fast startup.networkingMode=mirrorednot needed given Tailscale-as-node-IP.)Sturdier alternative to evaluate
Running k3s in a Hyper-V Linux VM on the tower (real autostart, no desktop-lifecycle coupling) instead of WSL. More setup, far less fragility. Decide WSL-hardening vs Hyper-V-VM before investing in the checklist.
When resolved, fold the working recipe into
docs/k3s-deploy-notes.md§7.Design notes captured in chat 2026-06-05.
Backlog burndown 2026-06-17: closing low-priority (P3/P4) to bring the open count to a manageable level. Nothing lost — reopen if this resurfaces. Batch tag:
burndown-2026-06.