One commit from the clone to the host
On the left, the host repository at $CAPTURE/fixtures/repo-clone with main at c7dfd56. A read-only virtiofs mount carries it into the sandbox m101-clone at /run/sandbox/source. The agent works in a private clone on an ext4 volume whose origin is that mount, and commits 81e11df. A git push to origin is refused by the read-only mount. git-daemon serves the clone on port 9418, published on a loopback port, and the host remote sandbox-m101-clone fetches it into refs/remotes/sandbox-m101-clone/main and refs/sandboxes/m101-clone/main. After sbx rm, the remote is gone and the refs/sandboxes entry survives.
HOST · $CAPTURE/FIXTURES/REPO-CLONE
SANDBOX M101-CLONE
.git and working tree
main at c7dfd56 second
/run/sandbox/source
virtiofs ro · Read-only file system
bind mount, ro
private clone, same path
/dev/vde ext4 rw · origin = the mount
81e11df from sandbox
git clone
git push: unpacker error
git-daemon :9418
published as 127.0.0.1:<port>->9418/tcp4
serves the clone
remote sandbox-m101-clone
git://127.0.0.1:<port>/repo-clone
two fetch refspecs in .git/config
git fetch sandbox-m101-clone
after the fetch
sandbox-m101-clone/main 81e11df
refs/sandboxes/m101-clone/main 81e11df
sbx rm: remote and daemon removed, refs/sandboxes/m101-clone/main survives