Repository navigation
feat(agent-chat): serve artifacts in the shared CEF page host - #26224
Conversation
Regression command for hosted runner: scripts/cmux-next/test-cmux-page-path-cpp.sh. The first two new cases are statically red on the base because PageRequestAllowed accepts the artifact URL as the same page host. Native test execution intentionally deferred by task scope. Agent-Session: https://cmux.com/deeplink/agent?id=aid-ecd03ea7c2f13c412b34
Serve exact cmux-page://cmux.agent/__artifact with an opaque sandbox CSP and the one-shot render protocol. Gate artifact/srcdoc navigation before the main-frame fast return, deny network/file/page subresources throughout descendant frames, and retain normal page navigation. Observed: scoped verify-local checks passed (localization-defaults, package-groups, feature-flags), git diff --check passed, bootstrap node --check passed. Not run: native CEF compilation, browser probe, and C++ tests, per task scope. Hosted regression: scripts/cmux-next/test-cmux-page-path-cpp.sh. Test-first parent b71fd15 contains two statically failing page-authority cases; hosted red/green still required. Agent-Session: https://cmux.com/deeplink/agent?id=aid-ecd03ea7c2f13c412b34
Bugbot needs on-demand usage enabledBugbot uses usage-based billing for this team and requires on-demand usage to be enabled. A team admin can enable on-demand usage in the Cursor dashboard. |
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
red: cmux-next checks (god files, concurrency, crash safety, l10n); NEW: green on the base 8acb82a; do not merge until green; see lane-rules |
|
Owned by an agent session · session |
|
Found 6 test failures on Blacksmith runners: Failures
|
|
Bead |
|
|
|
Review (codex gpt-6-astra xhigh, next-review): SHIP at a47a65d No blocking findings. |
Bugbot needs on-demand usage enabledBugbot uses usage-based billing for this team and requires on-demand usage to be enabled. A team admin can enable on-demand usage in the Cursor dashboard. |
|
Orphaned: no activity for 13 h, and no lane holds a lease on it. Adopted by the orphan sweep: merged |
|
Review (codex gpt-6-astra high, next-review): SHIP at 3fee9f8 No blocking findings. The route gating, CSP sandbox, ancestry checks, resource allowlist, and one-shot render flow are consistent with the stated behavior. |
|
Review (codex gpt-6-astra high, next-review): SHIP at c9911a6 No blocking findings. |
A newer verdict blocks 5c7ebe0 (no independent SHIP at the head).
|
Review (codex gpt-6-astra high, next-review): SHIP at 5c7ebe0 No blocking findings. Static review only; native CEF execution and browser integration remain unverified. |
|
Shipped in:
|
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
The default cmux NEXT agent tab uses the shared CEF
cmux-page://cmux.agent/host. This prerequisite adds the artifact document routecmux-page://cmux.agent/__artifactwith the same one-shot render protocol as the native artifact endpoint, an opaque sandbox policy (default-src 'none', inline styles/scripts only, data/blob media), and refusal of artifact/srcdoc subframe, refresh and resource escapes.Leo: "the /side thing i heard somebody really liked in codex... and i think html/html artifacts and that kinda good viewing and good support for it would be cool" / "like the claude.ai artifacts but imagien you didnt need to only have it on claude.ai...".
The CEF-only change is intentionally separate from the web capability/URL seam: the agent page descriptor must allow this exact frame source, and the web Run path will select
/__artifactonly oncmux-page://cmux.agent/; passive previews remainsandbox=""srcdoc. It does not alter ordinary page files, Chief, or performance behavior.Red first / static evidence
b71fd15fede.a47a65d01ca5b1a4e8168c520164ec37d15988d4; treece42ffd5aa6736d8f723dfb0acfed05cd3fc2fa6.scripts/cmux-next/test-cmux-page-path-cpp.shon both commits, then probes first load, refresh/self-navigation, nested frames, network/file access and bridge refusal.Agent session: agent session
Astra xhigh SHIP at exact head
a47a65d01ca5b1a4e8168c520164ec37d15988d4: exact bare artifact factory, opaque CSP, ancestor/resource denial and ordinary page preservation reviewed with no static findings. Native CEF build/browser/C++ execution and the web descriptor seam remain hosted integration evidence.Performance
No perf numbers: this adds a CEF page route for artifact documents and changes no hot path; nothing here is a performance change.