Skip to content

feat(cloud-agent-next): route bots, security, webhook and scheduled sessions to the control plane - #7289

Merged
eshurakov merged 6 commits into
mainfrom
eshurakov/beaming-albatross
Oct 12, 2026
Merged

eshurakov merged 6 commits into
mainfrom
eshurakov/beaming-albatross

Conversation

@eshurakov

@eshurakov eshurakov commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Makes the control plane the default for new sessions and routes the Kilo bot, Security Agent and webhook-ingest workloads there too. CONTROL_PLANE_IDS is removed; the routing decision is now purely origin-based (plus the existing CODE_REVIEW_CONTROL_PLANE_IDS gate, now set to *).

Routing is owned by sessionPlaneForNewOwner in services/cloud-agent-next/src/session-plane.ts.

Moved to the control plane (workspace_*)

  • Interactive web (cloud-agent-web) — previously gated by CONTROL_PLANE_IDS; now unconditional.
  • Kilo bot: slack, github, linear, discord.
  • Security Agent: security-agent, security-remediation.
  • Webhook ingest: webhook.
  • Scheduled runs: scheduled.
  • Code Reviewer (billingOrigin: 'code-review') via CODE_REVIEW_CONTROL_PLANE_IDS=*.

Still legacy (agent_*)

auto-triage, autofix, app-builder, cli, agent-manager, omitted/unknown origins, and all existing agent_* sessions.

Config / types

  • wrangler.jsonc: removed CONTROL_PLANE_IDS; added CODE_REVIEW_CONTROL_PLANE_IDS: "*" to production and dev.
  • Removed CONTROL_PLANE_IDS from .dev.vars.example, types.ts, persistence/types.ts; regenerated worker-configuration.d.ts (pnpm --filter cloud-agent-next run types).
  • Updated ENVIRONMENT.md, sandbox-allocation.ts and repo-key.ts comments.

Behavior notes

  • The moved origins now run as workspace_* sessions, so isolated-standard (Dedicated Standard) is rejected for them, matching the existing control-plane rule. Bots/security/webhook do not pass that allocation today, so no live path is affected.
  • Because CODE_REVIEW_CONTROL_PLANE_IDS is now in wrangler.jsonc, a deploy pins it to *; the Cloudflare dashboard can still narrow it between deploys, but the next deploy resets it to *.
  • Control-plane selection remains spoof-resistant for privileged origins: the code-review allowlist is only honored for the worker-trusted billingOrigin, and control-plane access itself was already available to every user via cloud-agent-web.

Tests

  • pnpm --filter cloud-agent-next run typecheck: pass
  • pnpm --filter cloud-agent-next run test: 6034 passed / 3 skipped (rebased onto latest main)
  • pnpm --filter cloud-agent-next run lint: clean
  • Root pnpm typecheck and pnpm lint: pass

Unit and e2e fixtures that only asserted the old CONTROL_PLANE_IDS allowlist were updated; format:check still flags four pre-existing generated Drizzle snapshot JSONs untouched by this change.

@kilo-code-bot

kilo-code-bot Bot commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Executive Summary

Incremental review of the single commit after 6c045b12 (8eb73d1cb) found only a one-line test-assertion fix that matches the current apps/mobile/src/app/(app)/(tabs)/_layout.tsx source; no new defect.

Files Reviewed (1 file)
  • dev/local/mobile-workflow.test.ts
Previous Review Summaries (7 snapshots, latest commit 6c045b1)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit 6c045b1)

Status: No Issues Found | Recommendation: Merge

Executive Summary

Incremental review of the two commits after cf1d3f2b (keeping the Bitbucket review skill on control-plane sessions, and rejecting CLI-enforced human-only approvals on unattended control-plane sessions); both changes are internally consistent, covered by tests, and introduce no new defect.

Files Reviewed (5 files)
  • services/cloud-agent-next/src/control-plane/session/registration.ts
  • services/cloud-agent-next/src/control-plane/session/registration.test.ts
  • services/cloud-agent-next/src/shared/control-plane-permission.ts
  • services/cloud-agent-next/wrapper/src/control-plane/turn.ts
  • services/cloud-agent-next/wrapper/src/control-plane/turn.test.ts

Previous review (commit cf1d3f2)

Status: No Issues Found | Recommendation: Merge

Executive Summary

Full review of the current head (cf1d3f2b); the previously reviewed SHA was force-pushed away, so this run re-reviewed the whole PR. The origin-based control-plane routing, worker-owned permission preservation, and trusted review-publication changes are internally consistent, and the two earlier critical findings (isolated-standard allocation for webhook/scheduled, and the security-remediation command guard) are verified fixed in current code. No new defect was found in the changed lines.

Files Reviewed (56 files)
  • .github/workflows/cloud-agent-e2e-deploy.yml
  • ENVIRONMENT.md
  • packages/worker-utils/src/sandbox-allocation.ts
  • services/cloud-agent-next/.dev.vars.example
  • services/cloud-agent-next/src/callbacks/queue-config.test.ts
  • services/cloud-agent-next/src/control-plane/sandbox/repo-key.ts
  • services/cloud-agent-next/src/control-plane/sandbox/sandbox-do.ts
  • services/cloud-agent-next/src/control-plane/session/callbacks.ts
  • services/cloud-agent-next/src/control-plane/session/registration.test.ts
  • services/cloud-agent-next/src/control-plane/session/registration.ts
  • services/cloud-agent-next/src/control-plane/session/reports.ts
  • services/cloud-agent-next/src/control-plane/session/session-do.ts
  • services/cloud-agent-next/src/persistence/session-metadata.test.ts
  • services/cloud-agent-next/src/persistence/session-metadata.ts
  • services/cloud-agent-next/src/persistence/types.ts
  • services/cloud-agent-next/src/router/handlers/session-worktree-changes.test.ts
  • services/cloud-agent-next/src/router/handlers/session-worktree.test.ts
  • services/cloud-agent-next/src/sandbox-control/session-credentials.ts
  • services/cloud-agent-next/src/sandbox-id.test.ts
  • services/cloud-agent-next/src/sandbox-selection.test.ts
  • services/cloud-agent-next/src/session-plane.test.ts
  • services/cloud-agent-next/src/session-plane.ts
  • services/cloud-agent-next/src/session-prepare.test.ts
  • services/cloud-agent-next/src/session-service.ts
  • services/cloud-agent-next/src/session/queue-message.test.ts
  • services/cloud-agent-next/src/session/session-prepare.test.ts
  • services/cloud-agent-next/src/session/session-registration.ts
  • services/cloud-agent-next/src/shared/control-plane-protocol.ts
  • services/cloud-agent-next/src/shared/kilo-event-properties.ts
  • services/cloud-agent-next/src/types.ts
  • services/cloud-agent-next/test/e2e/README.md
  • services/cloud-agent-next/test/e2e/SESSION-CONTINUITY.md
  • services/cloud-agent-next/test/e2e/deploy/README.md
  • services/cloud-agent-next/test/e2e/deploy/deploy-e2e-worker.sh
  • services/cloud-agent-next/test/e2e/deploy/render-e2e-worker-config.mjs
  • services/cloud-agent-next/test/e2e/run.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-continuity.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-conversations.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-faults.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-load.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-parallel.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-worktrees.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared.ts
  • services/cloud-agent-next/test/unit/e2e/run.test.ts
  • services/cloud-agent-next/test/unit/e2e/scenarios-shared.test.ts
  • services/cloud-agent-next/test/unit/render-e2e-worker-config.test.ts
  • services/cloud-agent-next/worker-configuration.d.ts
  • services/cloud-agent-next/wrangler.jsonc
  • services/cloud-agent-next/wrapper/src/connection.ts
  • services/cloud-agent-next/wrapper/src/control-plane/prepare.test.ts
  • services/cloud-agent-next/wrapper/src/control-plane/prepare.ts
  • services/cloud-agent-next/wrapper/src/control-plane/review-publication.ts
  • services/cloud-agent-next/wrapper/src/control-plane/turn.test.ts
  • services/cloud-agent-next/wrapper/src/control-plane/turn.ts
  • services/cloud-agent-next/wrapper/src/control/worktree-runtime.ts

Previous review (commit 12db5b4)

Status: No Issues Found | Recommendation: Merge

Executive Summary

The incremental control-plane permission and GitHub-review plumbing is consistent: the legacy command guard now reaches control-plane sessions, worker-owned permissions survive route projection and credential refresh, and the trusted publisher target is derived worker-side. No new security or correctness defect was found in the changed lines, and both prior review findings (isolated-standard allocation and the security-remediation command guard) are re-verified as resolved.

Files Reviewed (20 files)
  • services/cloud-agent-next/src/control-plane/sandbox/sandbox-do.ts
  • services/cloud-agent-next/src/control-plane/session/callbacks.ts
  • services/cloud-agent-next/src/control-plane/session/registration.test.ts
  • services/cloud-agent-next/src/control-plane/session/registration.ts
  • services/cloud-agent-next/src/control-plane/session/reports.ts
  • services/cloud-agent-next/src/control-plane/session/session-do.ts
  • services/cloud-agent-next/src/sandbox-control/session-credentials.ts
  • services/cloud-agent-next/src/session-service.ts
  • services/cloud-agent-next/src/shared/control-plane-protocol.ts
  • services/cloud-agent-next/src/shared/kilo-event-properties.ts
  • services/cloud-agent-next/test/integration/control-plane-session-v2-reports.test.ts
  • services/cloud-agent-next/test/integration/helpers/fake-credentials.ts
  • services/cloud-agent-next/test/integration/sandbox-control-v2-credentials.test.ts
  • services/cloud-agent-next/wrapper/src/connection.ts
  • services/cloud-agent-next/wrapper/src/control-plane/prepare.test.ts
  • services/cloud-agent-next/wrapper/src/control-plane/prepare.ts
  • services/cloud-agent-next/wrapper/src/control-plane/review-publication.ts
  • services/cloud-agent-next/wrapper/src/control-plane/turn.test.ts
  • services/cloud-agent-next/wrapper/src/control-plane/turn.ts
  • services/cloud-agent-next/wrapper/src/control/worktree-runtime.ts

Previous review (commit 669706e)

Status: 1 Issue Found | Recommendation: Address before merge

Executive Summary

The isolated-standard regression for webhook/scheduled triggers is resolved by this commit, but security-remediation sessions still lose their sandbox command guard once routed to the control plane.

Overview

Severity Count
CRITICAL 1
WARNING 0
SUGGESTION 0
Issue Details (click to expand)

CRITICAL

File Line Issue
services/cloud-agent-next/src/session-plane.ts 23 Adding security-remediation to CONTROL_PLANE_ORIGINS routes those sessions to the control plane, which never applies the security-remediation-pr command guard (restricted bash allowlist, webfetch/websearch/codesearch denied). The guard is built only in src/session-service.ts:487-497 and wired only into the legacy env path (lines 1264-1293); control-plane sessions run with the permissive CONTROL_PLANE_SANDBOX_PERMISSION (bash: 'allow', webfetch: 'allow'), which the wrapper hardcodes (wrapper/src/control/worktree-runtime.ts:326-329). services/security-auto-analysis/src/remediation.ts:555 creates these sessions with createdOnPlatform: 'security-remediation' via /trpc/prepareSession, so an automated agent that consumes untrusted vulnerability content and can push commits/PRs gains unrestricted shell and network access.
Files Reviewed (5 files)
  • services/cloud-agent-next/src/persistence/session-metadata.ts
  • services/cloud-agent-next/src/persistence/session-metadata.test.ts
  • services/cloud-agent-next/src/session/session-registration.ts
  • services/cloud-agent-next/src/session/session-prepare.test.ts
  • services/cloud-agent-next/src/session-plane.ts - 1 issue

Fix these issues in Kilo Cloud

Previous review (commit 5f30611)

Status: 2 Issues Found | Recommendation: Address before merge

Executive Summary

Two CRITICAL regressions from origin-based control-plane routing remain: security-remediation sessions lose their sandbox command guard, and webhook/scheduled triggers configured with isolated-standard are now rejected at session creation.

Overview

Severity Count
CRITICAL 2
WARNING 0
SUGGESTION 0
Issue Details (click to expand)

CRITICAL

File Line Issue
services/cloud-agent-next/src/session-plane.ts 23 Adding security-remediation to CONTROL_PLANE_ORIGINS routes those sessions to the control plane, which never applies the security-remediation-pr command guard (restricted bash allowlist, webfetch/websearch/codesearch denied). The guard is built only in src/session-service.ts:487-497 and wired only into the legacy env path (lines 1264-1293); control-plane sessions run with the permissive CONTROL_PLANE_SANDBOX_PERMISSION (bash: 'allow', webfetch: 'allow'), and the wrapper overwrites any passed KILO_CONFIG_CONTENT. services/security-auto-analysis/src/remediation.ts:555 creates these sessions with createdOnPlatform: 'security-remediation' via /trpc/prepareSession, so an automated agent that consumes untrusted vulnerability content and can push commits/PRs gains unrestricted shell and network access.
services/cloud-agent-next/src/session-plane.ts 24 Adding webhook/scheduled to CONTROL_PLANE_ORIGINS makes assertSupportedSandboxAllocation reject isolated-standard with BAD_REQUEST. Webhook/scheduled triggers can be configured with sandboxAllocation: 'isolated-standard' (services/webhook-agent-ingest/src/routes/api.ts:191,302, and the web trigger form offers it) and forward it (services/webhook-agent-ingest/src/queue-consumer.ts:455-456), so those creates worked on the legacy plane and now fail; the related test was switched from ['webhook','scheduled'] to ['auto-triage','autofix'] (src/session-prepare.test.ts:459), removing coverage of this path.
Files Reviewed (36 files)
  • ENVIRONMENT.md
  • packages/worker-utils/src/sandbox-allocation.ts
  • services/cloud-agent-next/.dev.vars.example
  • services/cloud-agent-next/src/callbacks/queue-config.test.ts
  • services/cloud-agent-next/src/control-plane/sandbox/repo-key.ts
  • services/cloud-agent-next/src/persistence/types.ts
  • services/cloud-agent-next/src/router/handlers/session-worktree-changes.test.ts
  • services/cloud-agent-next/src/router/handlers/session-worktree.test.ts
  • services/cloud-agent-next/src/sandbox-id.test.ts
  • services/cloud-agent-next/src/sandbox-selection.test.ts
  • services/cloud-agent-next/src/session-plane.test.ts
  • services/cloud-agent-next/src/session-plane.ts - 2 issues
  • services/cloud-agent-next/src/session-prepare.test.ts
  • services/cloud-agent-next/src/session/queue-message.test.ts
  • services/cloud-agent-next/src/session/session-prepare.test.ts
  • services/cloud-agent-next/src/session/session-registration.ts
  • services/cloud-agent-next/src/types.ts
  • services/cloud-agent-next/test/e2e/README.md
  • services/cloud-agent-next/test/e2e/SESSION-CONTINUITY.md
  • services/cloud-agent-next/test/e2e/deploy/README.md
  • services/cloud-agent-next/test/e2e/deploy/deploy-e2e-worker.sh
  • services/cloud-agent-next/test/e2e/deploy/render-e2e-worker-config.mjs
  • services/cloud-agent-next/test/e2e/run.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-continuity.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-conversations.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-faults.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-load.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-parallel.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared-worktrees.ts
  • services/cloud-agent-next/test/e2e/scenarios-shared.ts
  • services/cloud-agent-next/test/unit/e2e/run.test.ts
  • services/cloud-agent-next/test/unit/e2e/scenarios-shared.test.ts
  • services/cloud-agent-next/test/unit/render-e2e-worker-config.test.ts
  • services/cloud-agent-next/worker-configuration.d.ts (generated)
  • services/cloud-agent-next/wrangler.jsonc
  • .github/workflows/cloud-agent-e2e-deploy.yml

Fix these issues in Kilo Cloud

Previous review (commit 73aff14)

Status: 2 Issues Found | Recommendation: Address before merge

Executive Summary

Two CRITICAL regressions from origin-based control-plane routing: security-remediation sessions lose their sandbox command guard, and webhook/scheduled triggers configured with isolated-standard are now rejected at session creation.

Overview

Severity Count
CRITICAL 2
WARNING 0
SUGGESTION 0
Issue Details (click to expand)

CRITICAL

File Line Issue
services/cloud-agent-next/src/session-plane.ts 23 Adding security-remediation to CONTROL_PLANE_ORIGINS routes those sessions to the control plane, which never applies the security-remediation-pr command guard (restricted bash allowlist, webfetch/websearch/codesearch denied). The guard is built only in src/session-service.ts:487-497 and wired only into the legacy env path (lines 1264-1293); control-plane sessions run with the permissive CONTROL_PLANE_SANDBOX_PERMISSION (bash: 'allow', webfetch: 'allow'), and the wrapper overwrites any passed KILO_CONFIG_CONTENT. services/security-auto-analysis/src/remediation.ts:555 creates these sessions via /trpc/prepareSession, so an automated agent that consumes untrusted vulnerability content and can push commits/PRs gains unrestricted shell and network access.
services/cloud-agent-next/src/session-plane.ts 24 Adding webhook/scheduled to CONTROL_PLANE_ORIGINS makes assertSupportedSandboxAllocation reject isolated-standard with BAD_REQUEST. Webhook/scheduled triggers can be configured with sandboxAllocation: 'isolated-standard' (services/webhook-agent-ingest/src/routes/api.ts:191,302) and forward it (services/webhook-agent-ingest/src/queue-consumer.ts:455-456), so those creates worked on the legacy plane and now fail; the related test was switched from ['webhook','scheduled'] to ['auto-triage','autofix'] (src/session-prepare.test.ts:462), hiding the regression.
Files Reviewed (25 files)
  • ENVIRONMENT.md - 0 issues
  • packages/worker-utils/src/sandbox-allocation.ts - 0 issues
  • services/cloud-agent-next/.dev.vars.example - 0 issues
  • services/cloud-agent-next/src/callbacks/queue-config.test.ts - 0 issues
  • services/cloud-agent-next/src/control-plane/sandbox/repo-key.ts - 0 issues
  • services/cloud-agent-next/src/persistence/types.ts - 0 issues
  • services/cloud-agent-next/src/router/handlers/session-worktree-changes.test.ts - 0 issues
  • services/cloud-agent-next/src/router/handlers/session-worktree.test.ts - 0 issues
  • services/cloud-agent-next/src/sandbox-id.test.ts - 0 issues
  • services/cloud-agent-next/src/sandbox-selection.test.ts - 0 issues
  • services/cloud-agent-next/src/session-plane.test.ts - 0 issues
  • services/cloud-agent-next/src/session-plane.ts - 2 issues
  • services/cloud-agent-next/src/session-prepare.test.ts - 0 issues
  • services/cloud-agent-next/src/session/queue-message.test.ts - 0 issues
  • services/cloud-agent-next/src/session/session-prepare.test.ts - 0 issues
  • services/cloud-agent-next/src/types.ts - 0 issues
  • services/cloud-agent-next/test/e2e/README.md - 0 issues
  • services/cloud-agent-next/test/e2e/deploy/README.md - 0 issues
  • services/cloud-agent-next/test/e2e/deploy/deploy-e2e-worker.sh - 0 issues
  • services/cloud-agent-next/test/e2e/deploy/render-e2e-worker-config.mjs - 0 issues
  • services/cloud-agent-next/test/e2e/run.ts - 0 issues
  • services/cloud-agent-next/test/e2e/scenarios-shared.ts - 0 issues
  • services/cloud-agent-next/test/unit/render-e2e-worker-config.test.ts - 0 issues
  • services/cloud-agent-next/worker-configuration.d.ts - 0 issues (generated)
  • services/cloud-agent-next/wrangler.jsonc - 0 issues

Fix these issues in Kilo Cloud

Previous review (commit eb0efbc)

Status: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 1
WARNING 0
SUGGESTION 0
Issue Details (click to expand)

CRITICAL

File Line Issue
services/cloud-agent-next/src/session-plane.ts 24 Adding webhook/scheduled to CONTROL_PLANE_ORIGINS makes sessionPlaneForCreate force the control plane for those origins, so assertSupportedSandboxAllocation now rejects isolated-standard with BAD_REQUEST. Webhook/scheduled triggers can be configured with sandboxAllocation: 'isolated-standard' and are forwarded with createdOnPlatform webhook/scheduled, so those creates worked on the legacy plane and will now fail. The related test was switched from ['webhook','scheduled'] to ['auto-triage','autofix'], hiding the regression.
Files Reviewed (25 files)
  • ENVIRONMENT.md - 0 issues
  • packages/worker-utils/src/sandbox-allocation.ts - 0 issues
  • services/cloud-agent-next/.dev.vars.example - 0 issues
  • services/cloud-agent-next/src/callbacks/queue-config.test.ts - 0 issues
  • services/cloud-agent-next/src/control-plane/sandbox/repo-key.ts - 0 issues
  • services/cloud-agent-next/src/persistence/types.ts - 0 issues
  • services/cloud-agent-next/src/router/handlers/session-worktree-changes.test.ts - 0 issues
  • services/cloud-agent-next/src/router/handlers/session-worktree.test.ts - 0 issues
  • services/cloud-agent-next/src/sandbox-id.test.ts - 0 issues
  • services/cloud-agent-next/src/sandbox-selection.test.ts - 0 issues
  • services/cloud-agent-next/src/session-plane.test.ts - 0 issues
  • services/cloud-agent-next/src/session-plane.ts - 1 issue
  • services/cloud-agent-next/src/session-prepare.test.ts - 0 issues
  • services/cloud-agent-next/src/session/queue-message.test.ts - 0 issues
  • services/cloud-agent-next/src/session/session-prepare.test.ts - 0 issues
  • services/cloud-agent-next/src/types.ts - 0 issues
  • services/cloud-agent-next/test/e2e/README.md - 0 issues
  • services/cloud-agent-next/test/e2e/deploy/README.md - 0 issues
  • services/cloud-agent-next/test/e2e/deploy/deploy-e2e-worker.sh - 0 issues
  • services/cloud-agent-next/test/e2e/deploy/render-e2e-worker-config.mjs - 0 issues
  • services/cloud-agent-next/test/e2e/run.ts - 0 issues
  • services/cloud-agent-next/test/e2e/scenarios-shared.ts - 0 issues
  • services/cloud-agent-next/test/unit/render-e2e-worker-config.test.ts - 0 issues
  • services/cloud-agent-next/worker-configuration.d.ts - 0 issues (generated)
  • services/cloud-agent-next/wrangler.jsonc - 0 issues

Fix these issues in Kilo Cloud


Reviewed by deepseek-v4.1-flash · Input: 43.4K · Output: 8.3K · Cached: 493.2K

Review guidance: REVIEW.md from base branch main

@eshurakov
eshurakov force-pushed the eshurakov/beaming-albatross branch from eb0efbc to 73aff14 Compare October 8, 2026 14:39
@eshurakov
eshurakov force-pushed the eshurakov/beaming-albatross branch from 73aff14 to 5f30611 Compare October 8, 2026 20:47
@eshurakov
eshurakov force-pushed the eshurakov/beaming-albatross branch from 12db5b4 to cf1d3f2 Compare October 11, 2026 10:59
…essions to the control plane

Remove the CONTROL_PLANE_IDS allowlist and make the control plane the default
for interactive web creates, which already admitted everyone. Add slack, github,
linear, discord, security-agent, security-remediation, webhook and scheduled
origins to the control-plane origin set; auto-triage, autofix, app-builder, CLI,
agent-manager and unknown origins stay legacy. Set CODE_REVIEW_CONTROL_PLANE_IDS
to * in wrangler so Code Reviewer sessions run on the control plane.

Because Isolated Standard allocation is control-plane-incompatible, the
Dedicated Standard tests now use legacy origins. Drop the now-inert
CONTROL_PLANE_IDS assertions from unit and e2e tests and remove the flag from
Env types, wrangler dev vars, .dev.vars.example and ENVIRONMENT.md.

Fold first-worktree creation into that routing: remove the separate
WORKTREE_CREATION_ENABLED_IDS allowlist and the e2e enrollment precheck.
worktreeEnabledForCreate now follows the plane decision alone, so the new-session
page no longer needs per-owner enrollment. Drop the flag and its assertions from
Env types, wrangler dev vars, .dev.vars.example, ENVIRONMENT.md and the e2e
deploy/render tooling.
…plane sessions

Webhook and scheduled triggers can carry sandboxAllocation 'isolated-standard'
and now route to the control plane. Drop the legacy-only guard at registration
and in session metadata validation: SandboxDO resolves the istd- namespace via
getSandboxNamespace and billing already accepts isolated-standard.
…ne sessions

Control-plane registration replaced the whole profile with {} for a
read-only Bitbucket review. That also removed the runtime skills, which
carry the trusted bitbucket-cloud-review skill that the Code Reviewer
attaches, so the review lost its reconciliation and publication rules.

Keep runtime skills and withhold only profile agents and commands, as the
legacy plane does. Profile env, secrets and MCP stay withheld.
…ntrol-plane sessions

Bot, Security Agent, webhook and scheduled sessions now run on the control
plane. The wrapper forwarded their skillShell and sandboxEscalation
permission requests to the client, where nobody answers. The turn then
waited until the 120-minute execution limit.

Give the interactive-origin decision one owner, isInteractiveSessionOrigin,
used for both question denial at registration and permission handling in
the wrapper. Only cloud-agent-web sessions wait for a person. Unattended
sessions reject a CLI-enforced human approval so the agent can continue
another way, and fail the turn at once if the rejection cannot be
delivered. Ordinary permissions are still approved automatically.
@eshurakov
eshurakov force-pushed the eshurakov/beaming-albatross branch from 6c045b1 to 54e049a Compare October 12, 2026 08:31
fb3809c removed the Chat feature flag, so visibleTabCount takes only
showKiloClawTab. The main CI test job skipped that mobile-only commit, so
the stale assertion fails on every backend PR.
@eshurakov
eshurakov merged commit 5e71a04 into main Oct 12, 2026
56 checks passed
@eshurakov
eshurakov deleted the eshurakov/beaming-albatross branch October 12, 2026 09:33
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.

2 participants