Repository navigation
demos/{sandbox,jupyter,multi-template}: fix tutorial prerequisites, walkthroughs, and counter volume - #3500
Merged
Zoe Zhao (zoez7) merged 3 commits intoNov 2, 2026
Conversation
Mofi Rahman (moficodes)
requested review from
Julian Gutierrez Oschmann (juli4n) and
Zoe Zhao (zoez7)
October 30, 2026 20:40
Zoe Zhao (zoez7)
previously approved these changes
Oct 30, 2026
Mofi Rahman (moficodes)
dismissed
Zoe Zhao (zoez7)’s stale review
via
October 31, 2026 04:12
9c85bd5
The counter binary writes its file counter to /home/counter/a.txt and returns -1 when that directory is missing. Mount a durableDir volume at /home/counter in demos/multi-template/counter-template.yaml.tmpl to match demos/counter/counter-template.yaml.tmpl, and update the multi-template walkthrough output for all three counters. Signed-off-by: Mofi Rahman <[email protected]>
…d walkthroughs The sandbox, jupyter, and multi-template tutorials linked to retired root README anchors and omitted the atenet-router SPIFFE allowlist and ko image repository needed to deploy and reach demo actors. Point those links to docs/get-started/quickstart.md and docs/guides/operator-install.md, and list the ingress, snapshot, and image settings in Prerequisites. Several walkthrough steps and descriptions also drifted from the code. The sandbox tutorial showed only interactive REPL prompts and did not explain per-request subprocess execution. The jupyter demo claimed unimplemented idle suspension, skipped step 3, and showed the old STATUS_SUSPENDED state name. The multi-template tutorial referenced retired actor DNS names and left background proxies running at cleanup. Update the three READMEs and the jupyter package comment to match current behavior. Signed-off-by: Mofi Rahman <[email protected]>
The interactive REPL step writes test.txt and suspends the actor on exit. Have the piped sandbox-client example read test.txt back instead of overwriting it so the walkthrough also verifies that rootfs state persisted across the snapshot. Signed-off-by: Mofi Rahman <[email protected]>
Mofi Rahman (moficodes)
force-pushed
the
fix/3494-core-tutorials-docs
branch
from
October 31, 2026 04:21
9c85bd5 to
bbaa81f
Compare
Zoe Zhao (zoez7)
approved these changes
Nov 2, 2026
1 of 2 tasks
Dmitry Berkovich (dberkov)
pushed a commit
that referenced
this pull request
Nov 3, 2026
Bring `release-1.0` up to `main` at 5a5b192 with the 19 changes merged since the previous batch in #3536. The final tree matches that commit exactly. **Please use Rebase and merge to preserve the individual commits and author attribution.** All 19 applied cleanly in upstream order. Original authors, author dates, co-author and sign-off trailers, and `-x` source references are retained. Upgrade notes: - #3533: old gVisor MEMORY snapshots, including goldens, no longer restore. Recreate them after upgrading. MicroVM MEMORY snapshots still resume with their old mounts until recreated. `/tmp` is now always tmpfs; ROOTFS snapshots no longer preserve its contents, and image-provided files there are hidden. MicroVM `/tmp` counts against actor memory and is capped at half the guest's memory. gVisor `/dev/shm` is now a 64 MiB tmpfs. Mount a `durableDir` at either path when persistence or more space is needed. `/run` now comes from the image rootfs. - #3447: remove `--actor-jwt-jwks-file` from custom credential-exchange sidecar configs. Set `--actor-jwt-issuer-ca-file` only when the issuer uses a private CA other than the service DNS CA. - #3450: do not reuse a deleted atespace name. See the updated atespace name-reuse guidance. Includes #3505, which overlaps the open backport in #3547. GKE provisioning and teardown now live in [substrate-gke](https://github.com/ai-on-gke/substrate-gke) rather than this repository. <details> <summary>Included PRs, in cherry-pick order</summary> 1. #3500: demos/{sandbox,jupyter,multi-template}: fix tutorial prerequisites, walkthroughs, and counter volume 2. #3498: demos/counter: inline gVisor walkthrough and fix setup commands 3. #3511: e2e tests: Extend the existing tests to cover tag actor. 4. #2775: Generate API reference documentation and publish it on Substrate website 5. #3119: Document how people, pods and CI jobs should authenticate to ate-api 6. #3505: tools: remove setup-gcp and hack/teardown.sh 7. #3147: e2e: resume fidelity after SandboxConfig version edits 8. #3370: ate-setup: reconcile ate-api-server ConfigMaps and roll out on config changes 9. #1607: hack: reject breaking proto changes across each proto package 10. #3415: docs: update and add security diagrams 11. #3485: Resuming a microVM actor on the same node no longer reads its rootfs upper back from disk 12. #3447: Verify actor JWTs in the credential exchange through OIDC discovery 13. #3533: ocispec: mount tmpfs at /dev/shm, and /tmp on both runtimes 14. #3450: docs: Document that atespace names must not be reused 15. #3410: Document using more than one egress credential provider 16. #3486: atelet: register the device plugin on a new socket each time 17. #3553: ate-setup: wait for the demo namespace in delete demo 18. #3560: Fix multiple issues in claude-code-multiplex demo 19. #3517: docs: remove inaccurate early-stage architecture documentation </details> Validation: every intermediate tree matches its upstream source commit, all 19 authorship records and original attribution trailers are preserved, and `git diff --check` passes. The original 18 backport commits are unchanged. AI use: AI-assisted cherry-picking, attribution checks, and review. - [ ] Tests pass - [x] Docs updated --------- Signed-off-by: Mofi Rahman <[email protected]> Signed-off-by: Eitan Yarmush <[email protected]> Signed-off-by: Nayana Bidari <[email protected]> Signed-off-by: Julian Gutierrez Oschmann <[email protected]> Signed-off-by: Max Thompson <[email protected]> Signed-off-by: Steven Shriver <[email protected]> Signed-off-by: Grant McCloskey <[email protected]> Signed-off-by: Shrutiya <[email protected]> Signed-off-by: Haiyan Meng <[email protected]> Signed-off-by: Greg Castle <[email protected]> Signed-off-by: Benjamin Elder <[email protected]> Signed-off-by: Anish Ramasekar <[email protected]> Signed-off-by: Shruti Nair <[email protected]> Signed-off-by: Haven Xia <[email protected]> Co-authored-by: Mofi Rahman <[email protected]> Co-authored-by: nybidari <[email protected]> Co-authored-by: Julian Gutierrez Oschmann <[email protected]> Co-authored-by: Max Thompson <[email protected]> Co-authored-by: Grant McCloskey <[email protected]> Co-authored-by: Steven Shriver <[email protected]> Co-authored-by: shrutiyam-glitch <[email protected]> Co-authored-by: haiyanmeng <[email protected]> Co-authored-by: Greg Castle <[email protected]> Co-authored-by: Benjamin Elder <[email protected]> Co-authored-by: Anish Ramasekar <[email protected]> Co-authored-by: Shruti Nair <[email protected]> Co-authored-by: Haven Xia <[email protected]> Co-authored-by: Adam Wathieu <[email protected]>
1 of 2 tasks
Dmitry Berkovich (dberkov)
pushed a commit
that referenced
this pull request
Nov 3, 2026
…alkthroughs, and counter volume (#3500) The `sandbox`, `jupyter`, and `multi-template` tutorials linked to retired root `README.md` anchors, omitted required ingress and `ko` settings, and had walkthrough steps out of sync with current CLI and runtime behavior. `demos/multi-template/counter-template.yaml.tmpl` also omitted the `/home/counter` volume mount, so `counter` printed `preserved file counter: -1`. - Mount a `durableDir` volume at `/home/counter` in `demos/multi-template/counter-template.yaml.tmpl` and update the expected `curl` output for all three counters. - List the `atenet-router` `--ingress-allowed-spiffe-ids`, `SNAPSHOT_LOCATION`, and `KO_DOCKER_REPO` (`ko.dockerRepo`) prerequisites in all three tutorials (including the `ATE_INSTALL_KIND=true` defaults on `kind`), and point their install links to `docs/get-started/quickstart.md` and `docs/guides/operator-install.md`. - Clarify per-request subprocess execution in `demos/sandbox/README.md` (`sandbox-client` sends `sh -c` to `/process`), add a non-interactive piped `sandbox-client` command, and remove the duplicate `go install ./cmd/kubectl-ate` step. - Update `demos/jupyter/README.md` and `cmd/ate-setup/internal/demos/jupyter/jupyter.go` to remove unimplemented idle-suspend claims, use `quay.io/jupyter/base-notebook` and `ACTOR_STATE_SUSPENDED`, add a `curl -s http://localhost:8888/api` check, fix step numbering, and document full teardown. - Drop the retired actor DNS routing claim and inaccurate delete-suspend note in `demos/multi-template/README.md`, and stop the background `kubectl ate proxy actor` processes during cleanup. Fixes #3494 AI use: AI-assisted, I reviewed and verified the changes on `kind` and Kubernetes clusters and built the docsite locally. - [x] Tests pass (`./hack/verify/gofmt.sh`, `./hack/verify/boilerplate.sh`, `go test -race ./cmd/ate-setup/...`, `./hack/site.sh build`, and live walkthrough verification) - [x] Docs updated --------- Signed-off-by: Mofi Rahman <[email protected]> (cherry picked from commit a2cc5e4) Signed-off-by: Eitan Yarmush <[email protected]>
1 of 2 tasks
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.
The
sandbox,jupyter, andmulti-templatetutorials linked to retired rootREADME.mdanchors, omitted required ingress andkosettings, and had walkthrough steps out of sync with current CLI and runtime behavior.demos/multi-template/counter-template.yaml.tmplalso omitted the/home/countervolume mount, socounterprintedpreserved file counter: -1.durableDirvolume at/home/counterindemos/multi-template/counter-template.yaml.tmpland update the expectedcurloutput for all three counters.atenet-router--ingress-allowed-spiffe-ids,SNAPSHOT_LOCATION, andKO_DOCKER_REPO(ko.dockerRepo) prerequisites in all three tutorials (including theATE_INSTALL_KIND=truedefaults onkind), and point their install links todocs/get-started/quickstart.mdanddocs/guides/operator-install.md.demos/sandbox/README.md(sandbox-clientsendssh -cto/process), add a non-interactive pipedsandbox-clientcommand, and remove the duplicatego install ./cmd/kubectl-atestep.demos/jupyter/README.mdandcmd/ate-setup/internal/demos/jupyter/jupyter.goto remove unimplemented idle-suspend claims, usequay.io/jupyter/base-notebookandACTOR_STATE_SUSPENDED, add acurl -s http://localhost:8888/apicheck, fix step numbering, and document full teardown.demos/multi-template/README.md, and stop the backgroundkubectl ate proxy actorprocesses during cleanup.Fixes #3494
AI use: AI-assisted, I reviewed and verified the changes on
kindand Kubernetes clusters and built the docsite locally../hack/verify/gofmt.sh,./hack/verify/boilerplate.sh,go test -race ./cmd/ate-setup/...,./hack/site.sh build, and live walkthrough verification)