Skip to content

fix(box): fix shared artifact mounts and host process cleanup - #183

Merged
BiFangKNT merged 3 commits into
mainfrom
fix/box-artifact-cache-mount
Oct 20, 2026
Merged

BiFangKNT merged 3 commits into
mainfrom
fix/box-artifact-cache-mount

Conversation

@BiFangKNT

Copy link
Copy Markdown
Member

Summary

Containerized Box creates artifact caches in its private /tmp, so the host Docker daemon cannot resolve their bind-mount sources. Place Docker/Podman caches under the existing box.local.host_root to work with existing same-path Compose mounts, while preserving read-only artifacts and session cleanup.

Host timeout/cancellation cleanup now waits for the original process group rather than treating shell exit as completion. Surviving descendants receive SIGKILL after the existing two-second grace period, including when the shell has already exited or descendants close their output pipes.

Add regression coverage and a real Docker socket acceptance workflow that runs on main pushes or manual dispatch using a GitHub-hosted Ubuntu runner.

Validation

  • All 489 Box tests passed in WSLC with tini; the four new Host regressions fail on the old implementation and pass with the fix.
  • All eight Host process probes completed without surviving descendants or hung timeout/cancellation operations.
  • Real Docker socket acceptance on NAS passed: empty session creation, late artifact materialization, retained session state, read-only mounts, and cache cleanup.
  • Acceptance image built successfully with WSLC; Ruff checks, formatting, and workflow shell checks passed.

Reuse box.local.host_root for Docker/Podman artifact caches so
containerized Box works with existing same-path bind mounts.

Add regression tests and Docker socket acceptance CI.
Check process-group liveness independently of shell exit and send
SIGKILL after the grace period when descendants ignore SIGTERM.

Add timeout and cancellation regressions for closed output pipes
and an exited parent shell.
@BiFangKNT
BiFangKNT merged commit db95fa0 into main Oct 20, 2026
8 checks passed
@github-actions github-actions Bot locked and limited conversation to collaborators Oct 20, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant