Repository navigation
feat(sandbox): mount extra virtiofs tags from mounts.json in the guest - #234
Closed
quickbeard wants to merge 1 commit into
Closed
quickbeard wants to merge 1 commit into
quickbeard wants to merge 1 commit into
Conversation
codev-init now reads /codev-config/mounts.json (written by the vz provider every start) and mounts each listed tag, non-fatally per entry so one bad share cannot brick the boot. This is the one-time image change: all future mount-list changes are host-side manifest writes. Compatibility is safe in both directions — an old image ignores the extra shares (they sit unmounted and inert), and a new image without a manifest skips the block. Existing macOS sandboxes pick the new init up via Reset, which re-provisions from the current image. e2e-vz.ts gains a mounts probe: the guest reads a marker from /mnt/extra and writes back into it, exercising both directions. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
quickbeard
force-pushed
the
sandbox-mounts-image
branch
from
August 14, 2026 06:30
82c0320 to
abbc898
Compare
quickbeard
force-pushed
the
sandbox-mounts-core
branch
from
August 14, 2026 06:30
40e78e1 to
027741a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Second of three stacked PRs (on #233). The one-time guest image change for extra sandbox mounts on macOS.
What
image/guest/codev-initreads/codev-config/mounts.json(written by the vz provider every start) and mounts each listed tag as root before the setpriv drop, non-fatally per entry — one bad share logs and skips rather than bricking the boot. After this single image change, every future mount-list change is a host-side manifest write.script/e2e-vz.tsgains a mounts probe: an extra host folder ridesconfig.mounts, the guest reads a marker from/mnt/extraand writes a file back into it, proving both directions through the new tag; the run fails if either side is missing.Compatibility
Safe in both ship orders: an old image with a new desktop leaves the extra shares unmounted and inert (old init only mounts the three hardcoded tags); a new image without a manifest skips on the
[ -f ]guard. Existing macOS sandboxes pick the new init up via Reset (re-provisions from the current image) — the UI PR carries the user-facing hint and CHANGELOG caveat.Release step (mac host)
bun script/build-image.ts, verify withbun script/e2e-vz.ts --image … --bundle ../opencode/dist/node, thenbun script/publish-image.ts --version <YYYY.MM.N>.🤖 Generated with Claude Code