banger/internal
Thales Maciel 787b234029
Fix VM startup regressions after shell-out cleanup
The shell-out reduction pass introduced two linked startup regressions in the hot path for vm create.

Make flattenNestedWorkHome repair the temporary nested /root tree without trying to read a root-owned 0700 directory as the calling user: chmod the scratch directory under sudo, then copy each child entry individually before removing it. Add a regression test for that overlap/permission case.

Restore the Firecracker launch wrapper that sets umask 000 before exec. Firecracker was creating the API socket, but the SDK could not use it during machine.Start after the direct sudo launch, so vm create timed out waiting on a socket that already existed.

Validated with go test ./... and make build.
2026-03-18 12:18:34 -03:00
..
api Reject invalid VM CPU and memory values 2026-03-16 16:28:17 -03:00
cli Replace mapdns with daemon DNS 2026-03-17 15:49:35 -03:00
config Replace mapdns with daemon DNS 2026-03-17 15:49:35 -03:00
daemon Fix VM startup regressions after shell-out cleanup 2026-03-18 12:18:34 -03:00
firecracker Fix VM startup regressions after shell-out cleanup 2026-03-18 12:18:34 -03:00
guest Move avoidable daemon shell-outs into Go 2026-03-17 17:13:07 -03:00
hostnat Move helper NAT management into Go 2026-03-17 15:07:49 -03:00
model Replace mapdns with daemon DNS 2026-03-17 15:49:35 -03:00
paths Make runtime defaults portable 2026-03-16 15:30:08 -03:00
policy Move avoidable daemon shell-outs into Go 2026-03-17 17:13:07 -03:00
rpc Propagate RPC cancellation to daemon requests 2026-03-16 18:28:33 -03:00
runtimebundle Replace mapdns with daemon DNS 2026-03-17 15:49:35 -03:00
store Add regression coverage for VM failure paths 2026-03-16 15:46:54 -03:00
system Move avoidable daemon shell-outs into Go 2026-03-17 17:13:07 -03:00
vmdns Replace mapdns with daemon DNS 2026-03-17 15:49:35 -03:00