Skip to content

Surface overridden sources in sources.list, split sidebar by scope#510

Draft
RhysSullivan wants to merge 1 commit intors/cloud-workspaces-09-scope-apifrom
rs/cloud-workspaces-10-sources-sidebar
Draft

Surface overridden sources in sources.list, split sidebar by scope#510
RhysSullivan wants to merge 1 commit intors/cloud-workspaces-09-scope-apifrom
rs/cloud-workspaces-10-sources-sidebar

Conversation

@RhysSullivan
Copy link
Copy Markdown
Owner

The cloud workspace sidebar now splits into a Workspace section and a
Global section, with global sources that a workspace shadows rendered as
muted entries with an Overridden badge.

To make this possible, executor.sources.list() no longer drops shadowed
outer rows. Both the inner (effective) and outer (shadowed) rows ship
back, and the shadowed row carries overriddenBy: <innerScopeId> so the
UI can render the Overridden state without re-deriving the precedence
rule. Tool invocation continues to pick the innermost row (covered by
the existing tools.invoke picks the innermost tool ... test).

The same split lands on the standalone sources page. Local hosts run a
single-scope stack so the bucket render is gated on the presence of a
workspace_* entry in the scope stack.

Adds a node test that creates a workspace source shadowing a global one
and asserts both rows are returned with correct scopeId + overriddenBy
fields.

The cloud workspace sidebar now splits into a Workspace section and a
Global section, with global sources that a workspace shadows rendered as
muted entries with an `Overridden` badge.

To make this possible, `executor.sources.list()` no longer drops shadowed
outer rows. Both the inner (effective) and outer (shadowed) rows ship
back, and the shadowed row carries `overriddenBy: <innerScopeId>` so the
UI can render the Overridden state without re-deriving the precedence
rule. Tool invocation continues to pick the innermost row (covered by
the existing `tools.invoke picks the innermost tool ...` test).

The same split lands on the standalone sources page. Local hosts run a
single-scope stack so the bucket render is gated on the presence of a
`workspace_*` entry in the scope stack.

Adds a node test that creates a workspace source shadowing a global one
and asserts both rows are returned with correct scopeId + overriddenBy
fields.
@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented May 4, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
executor-marketing 6bc443a Commit Preview URL

Branch Preview URL
May 04 2026, 05:11 PM

@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented May 4, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
executor-cloud 6bc443a May 04 2026, 05:13 PM

@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented May 4, 2026

Open in StackBlitz

@executor-js/codemode-core

npm i https://pkg.pr.new/@executor-js/codemode-core@510

@executor-js/runtime-quickjs

npm i https://pkg.pr.new/@executor-js/runtime-quickjs@510

@executor-js/cli

npm i https://pkg.pr.new/@executor-js/cli@510

@executor-js/config

npm i https://pkg.pr.new/@executor-js/config@510

@executor-js/execution

npm i https://pkg.pr.new/@executor-js/execution@510

@executor-js/sdk

npm i https://pkg.pr.new/@executor-js/sdk@510

@executor-js/storage-core

npm i https://pkg.pr.new/@executor-js/storage-core@510

@executor-js/plugin-file-secrets

npm i https://pkg.pr.new/@executor-js/plugin-file-secrets@510

@executor-js/plugin-google-discovery

npm i https://pkg.pr.new/@executor-js/plugin-google-discovery@510

@executor-js/plugin-graphql

npm i https://pkg.pr.new/@executor-js/plugin-graphql@510

@executor-js/plugin-keychain

npm i https://pkg.pr.new/@executor-js/plugin-keychain@510

@executor-js/plugin-mcp

npm i https://pkg.pr.new/@executor-js/plugin-mcp@510

@executor-js/plugin-onepassword

npm i https://pkg.pr.new/@executor-js/plugin-onepassword@510

@executor-js/plugin-openapi

npm i https://pkg.pr.new/@executor-js/plugin-openapi@510

executor

npm i https://pkg.pr.new/executor@510

commit: 6bc443a

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