Skip to content

chore(ci): rebuild the internal-slack-agent sandbox template on push - #327

Open
OndrejDrapalik wants to merge 1 commit into
mainfrom
chore/rebuild-internal-slack-agent-template
Open

chore(ci): rebuild the internal-slack-agent sandbox template on push#327
OndrejDrapalik wants to merge 1 commit into
mainfrom
chore/rebuild-internal-slack-agent-template

Conversation

@OndrejDrapalik

Copy link
Copy Markdown
Contributor

What

Adds .github/workflows/rebuild-sandbox-template.yml — a copy of the workflow e2b-dev/product-harness already runs, retargeted at this repository. One file, no other changes.

Why

This repo is now the third harness of our internal Slack assistant (e2b-dev/internal-slack-agent). Every Slack thread gets an E2B sandbox with a clone of these docs baked in at /home/user/workspace/docs, so the bot answers questions about the public docs by searching the real MDX tree and openapi-public.yml instead of from memory.

Because the checkout is baked into the sandbox image, a commit here does not reach an agent until that image is rebuilt. This workflow is the trigger: POST /template/rebuild stages a fresh build context in a sandbox and starts the build. Staging is awaited, so a commit that breaks it fails this job; the minutes-long image build is followed at GET /template/status on the deployment.

What it does not touch

This repo ships no agent skills and publishes no record IDs, so it contributes nothing to the deployment's skill registry or entity-link map. A push here changes the sandbox image and nothing else. Each rebuild restages every harness, so it also picks up whatever the other two have on main.

Before merging: four Actions secrets

The workflow is inert until these are set at Settings → Secrets → Actions — the same four values e2b-dev/product-harness already holds:

secret value
TEMPLATE_REBUILD_URL_STAGING https://internal-slack-agent.e2b-dev.workers.dev
TEMPLATE_BUILD_SECRET_STAGING staging's TEMPLATE_BUILD_SECRET
TEMPLATE_REBUILD_URL_PROD https://internal-slack-agent-prod.e2b-dev.workers.dev
TEMPLATE_BUILD_SECRET_PROD production's TEMPLATE_BUILD_SECRET

Wiring only the staging pair is a valid choice — then delete the rebuild-prod job rather than leaving it to fail against an empty URL. Without the secrets set, both jobs fail on every push to main, so either set them or merge with the jobs removed.

Notes

  • permissions: {} — the job takes no checkout and touches no GitHub API, so it needs no token scopes at all.
  • Concurrency is grouped per deployment, so two pushes queue instead of racing for the same template tag.
  • Authoritative source is handoff/e2b-dev-docs/ in e2b-dev/internal-slack-agent; edit it there and re-copy.
  • Heads up on volume: sdk-reference-sync bot commits will each start a rebuild. Each is cheap and idempotent, but a rebuild landing while another is in flight is refused with a 409 and a red job. Add a paths-ignore for docs/sdk-reference/** if that gets noisy, accepting that the baked reference tree then lags until the next real push.

This repository is now the third harness of the internal Slack assistant
(e2b-dev/internal-slack-agent): every Slack thread's sandbox bakes a clone of
it at /home/user/workspace/docs, so the bot answers questions about the public
docs by reading them off disk rather than guessing.

The image is built from a clone, so a commit here only reaches an agent after a
template rebuild. This workflow is that trigger: POST /template/rebuild stages a
fresh build context in a sandbox and starts the image build. Staging is awaited,
so a commit that breaks it fails this job; the build itself is followed at
GET /template/status on the deployment.

This repo ships no skills, so it contributes nothing to the deployment's skill
registry and nothing to its entity-link map. What a push here changes is the
image, and nothing else.

Copied from handoff/e2b-dev-docs/ in e2b-dev/internal-slack-agent, which is
where the authoritative version lives. Inert until the four Actions secrets it
reads are set; wiring only the staging pair means deleting the rebuild-prod job.
@mintlify

mintlify Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
e2b 🟢 Ready View Preview Aug 3, 2026, 9:26 PM

@cla-bot cla-bot Bot added the cla-signed label Aug 3, 2026
@OndrejDrapalik

Copy link
Copy Markdown
Contributor Author

All four Actions secrets are now set on this repository (TEMPLATE_REBUILD_URL_STAGING, TEMPLATE_BUILD_SECRET_STAGING, TEMPLATE_REBUILD_URL_PROD, TEMPLATE_BUILD_SECRET_PROD), so the "before merging" step above is done and both jobs are wired.

Note it cannot be exercised until this lands: the trigger is push to main, and workflow_dispatch only offers workflows that already exist on the default branch. The endpoint itself is verified though — a manual rebuild against staging staged all three harnesses (product@680025b architect@bbacd52 docs@c35d7d9) and the image built green with the docs checkout at /home/user/workspace/docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant