Skip to content

feat: add a dedicated tainted node pool for sandbox workers#13

Merged
stxkxs merged 1 commit into
mainfrom
feat/sandbox-nodepool
May 22, 2026
Merged

feat: add a dedicated tainted node pool for sandbox workers#13
stxkxs merged 1 commit into
mainfrom
feat/sandbox-nodepool

Conversation

@stxkxs
Copy link
Copy Markdown
Member

@stxkxs stxkxs commented May 22, 2026

Summary

  • Adds a sandbox Karpenter NodePool to karpenter-resources — the node substrate for the Managed Agents self-hosted sandbox workers.
  • The pool carries an agents.stxkxs.io/sandbox taint + label, so sandbox worker pods land on dedicated nodes, kept off the shared default pool.
  • Consolidation is WhenEmpty — a node is reclaimed once it drains its last session, never disrupted mid-session. Reuses the default EC2NodeClass; sized for bursty ephemeral work.
  • Second unit of the Phase 2 per-session self-hosted sandbox substrate.

Test plan

  • task validate — yamllint clean; kustomize build succeeds for the karpenter-resources dev / staging / production overlays

Adds a `sandbox` Karpenter NodePool to karpenter-resources, the node
substrate for the Managed Agents self-hosted sandbox workers.

The pool carries an `agents.stxkxs.io/sandbox` taint and label, so
sandbox worker pods land on dedicated nodes — agent tool execution is
kept off the shared `default` pool. Consolidation is `WhenEmpty` (not
`WhenEmptyOrUnderutilized`): a node is reclaimed once it drains its last
session, never disrupted while a session is still running. It reuses the
`default` EC2NodeClass and is sized for bursty, ephemeral work (`c`/`m`
instances, fast 30s empty-node consolidation).

The default NodePool and the per-environment overlays are unchanged —
the overlays patch the `default` pool by name, so `sandbox` passes
through untouched.
@stxkxs stxkxs merged commit bd8b828 into main May 22, 2026
4 checks passed
@stxkxs stxkxs deleted the feat/sandbox-nodepool branch May 22, 2026 02:30
@github-actions
Copy link
Copy Markdown

CI Results

Check Status
YAML Lint
Environment Kustomize Build
dev
staging
production

All validations passed.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant