Rename e2b sandbox image, default install.sh to the published GHCR sandbox image#89
Merged
Merged
Conversation
parsar-daemon-claudecode was a legacy name carried over from the old infra/e2b-templates/parsar-daemon-claudecode/ directory. Now that the sandbox images are just "local" and "e2b" variants of one Dockerfile, parsar-sandbox-e2b matches parsar-sandbox:local's naming instead of an unrelated directory-derived name. Renamed everywhere: the GHCR image name in .github/workflows/sandbox-image-release.yml, the Dockerfile's own build/usage comments, and every reference in server Go code (comments, E2BProviderConfig.Template examples, and TemplateID test fixtures in sandbox_provider_test.go / sandbox_admin_test.go). All are placeholder/ example strings, not hardcoded config gating real behavior (the actual e2b template id an operator uses comes from AGENT_DAEMON_SANDBOX_TEMPLATE at runtime) — safe as a pure rename. gofmt -w on sandbox_provider.go / sandbox_admin_test.go: the shorter string shifted struct-literal field alignment: to reformat (also fixed a pre-existing import-order issue in sandbox_admin_test.go as a side effect of running gofmt, unrelated to this rename). Verified: go build + go vet + go test on both touched packages pass; repo-wide grep confirms no leftover "parsar-daemon-claudecode". Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
sandbox-image-release.yml now successfully publishes ghcr.io/minimax-ai-dev/parsar-sandbox on every push to main (verified: pulled it and confirmed all 4 agent CLIs work). Point install.sh / docker-compose.yml at it by default instead of requiring an operator to `docker build` locally first — this is the last piece of the original "sandbox does not start after ./install.sh" investigation: zero-command install now actually includes working sandbox mode. - install.sh: DEFAULT_SANDBOX_IMAGE -> ghcr.io/minimax-ai-dev/parsar-sandbox:latest - docker-compose.yml: AGENT_DAEMON_SANDBOX_DOCKER_IMAGE default -> same - INSTALL.md: drop the "no published default, build one first" note; document PARSAR_SANDBOX_IMAGE=parsar-sandbox:local as the opt-out for a local build instead Verified end to end: `./install.sh` with no --sandbox-image flag and no PARSAR_SANDBOX_IMAGE override writes the GHCR image into .env, and parsar-server's startup log confirms "agent_daemon docker sandbox provider wired" against ghcr.io/minimax-ai-dev/parsar-sandbox:latest. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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.
Summary
Two follow-ups after #88 merged and
sandbox-image-release.ymlsuccessfully published for the first time:Rename:
parsar-daemon-claudecode→parsar-sandbox-e2b. The old name was a leftover from the deletedinfra/e2b-templates/parsar-daemon-claudecode/directory; now that there are just two variants of one Dockerfile ("local" and "e2b"),parsar-sandbox-e2bmatchesparsar-sandbox:local's naming instead. Renamed everywhere: the GHCR image name in the workflow, the Dockerfile's own comments, and every Go reference (comments,E2BProviderConfig.Templateexamples,TemplateIDtest fixtures) — all placeholder/example strings, not hardcoded config gating real behavior, so this is a pure rename.(Note: this commit was originally on Fix arm64 sandbox image build: TARGETARCH default shadows BuildKit auto-injection #88 but got orphaned when that PR was merged one push cycle early — cherry-picked onto this branch.)
Point
install.sh/docker-compose.ymlat the published image:sandbox-image-release.ymlnow actually publishesghcr.io/minimax-ai-dev/parsar-sandbox:latest(confirmed — pulled it, all 4 CLIs work).DEFAULT_SANDBOX_IMAGE/AGENT_DAEMON_SANDBOX_DOCKER_IMAGEnow default to that instead of requiring a localdocker buildfirst — this is the last piece of the original "sandbox does not start after./install.sh" investigation from earlier in this chain of PRs.Test plan
go build+go vet+go testpass on both touched Go packages after the rename + agofmt -wre-alignment the shorter string requiredparsar-daemon-claudecodeghcr.io/minimax-ai-dev/parsar-sandbox:latestdirectly and confirmednode/claude/codex/pi/parsar-daemon/parsarall work./install.shfresh with no--sandbox-imageflag and noPARSAR_SANDBOX_IMAGEoverride: confirmed.envgets the GHCR image, andparsar-server's startup log reports"agent_daemon docker sandbox provider wired"againstghcr.io/minimax-ai-dev/parsar-sandbox:latestdocker compose config --quiet,bash -n install.shboth pass🤖 Generated with Claude Code