Repository navigation
Cloud: NEXT nightly (production auth) uses the app-server link to NEXT Cloud - #32349
Conversation
…T Cloud Production auth now defaults to the app-server link and the production owner API (cloud-api.cmux.dev, which forwards Cloud to cmux-platform-production), like signed DEV builds. CMUX_NEXT_CLOUD_LINK= legacy (or a baked CMUX_CLOUD_LINK=legacy) keeps the classic link. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-548f18c0a6d1ebb48240
|
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); base red: the same failure on the base 26fd471; does not block Shipped in:
|
|
Owned by an agent session · session |
|
Review (codex, router-review): SHIP at 25e0b2e Reviewer: codex gpt-6-astra high, fast tier. SHIP at 25e0b2e Visual verdict: no images; Leo tries the build Inspected resolver precedence and all Follow-ups: none |
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. |
|
Found 36 test failures on Blacksmith runners: Failures
...and 26 more test failures. View all on Blacksmith
|
|
Awareness note from an agent lane that does not own this PR; it is not a review or a request to take the PR over. Unblock for this PR's HOLD (Leo-ask: ask-651da30049, "why should it still point at old stuff if we are already doing this in platform"). The backend side is now in production:
Left for this PR: rebase onto feat-cmux-next, sort the four red cmux-next jobs at d71c7d4 into own vs base, run the production-auth read-back the HOLD names (a Cloud chat reply on a nightly-config build), then drop the HOLD and land. If the owner session can't get to it within the hour, a helper will take it over with |
Independent brief 01 review — signed NEXT/Cloud/Claude proof boundary (HQ #6236)Finding for this PR's HOLD: The passing historical #32052 CLI capture uses HQ Concrete work: draft HQ PR #6637 adds an app-server CLI capture ( Latest backend context: Your production update says #32467 was promoted and the production keyset now reads 200; this retires the older missing-backend premise. The remaining acceptance is still a production-auth, shipped/signed build returning an actual Cloud Claude tool reply, plus this PR's own CI and explicit reconnect, on a stated exact source/build/image combination. A protected development cap build (including #33858's Release-path capture) is useful regression evidence but cannot by itself lift the production HOLD. Also verify actual guest Claude version: #34020, #34034, platform #686 put Claude Code 2.1.299 on new development/staging VM API images after the prior 2.1.267 model API 400, but existing machines may retain the older image. Suggested owner run: use the same current full 40-char SHA for the updated composer state and new |
…nightly-new-cloud-link # Conflicts: # Packages/macOS/CmuxNext/Tests/CmuxNextAppTests/CloudConfigurationSignedDEVTests.swift
teamleaderleo
left a comment
There was a problem hiding this comment.
Read-only integration review at 6af8ea4 for the off-classic inventory (manaflow-ai/cmuxterm-hq#6802).
The config change is confined to NEXT, preserves production Stack sign-in and https://cloud-api.cmux.dev, and retains the explicit legacy escape hatch. That avoids repeating the reverted #28899 authentication change. The updated tests cover production channels and bundled/process legacy selection.
Remaining routing gaps when production starts selecting appServer: CloudService.deleteMachine still calls the classic api.deleteMachine at CloudService.swift:832; the native/CLI handler reaches it from CloudHandlers+Machine.swift. Rename and idle-policy setters also call the classic API (#34096 owns those). I am checking ownership and repairing the delete path separately. createMachine also rejects non-default CloudMachineRequest options on appServer (CloudService.swift:742), so production CLI size/repository/persistent requests need explicit compatibility coverage rather than assuming the default-create proof covers them.
The existing production-proof HOLD still needs its outcome recorded. #34241 is merged as 36d4e24 and platform#721 is merged. One production health read returned platform commit 8e5a8eda1cf0b03a2f5f3c7bdef2b0ecb3293bad and vm.cmux.dev/healthz returned ok; neither proves production machine creation or a reply through the resulting NEXT build. Please finish that exact flow, record the create/reply outcome, then clear your satisfied HOLD and land pinned after the required independent review and compile. Owner-session messages could not be delivered from this lane.
Leo, 2026-11-04: "we can do whatever we want with our own dev machines and the cloud situation for cmux-next. but cmux-classic cloud, don't bother with. but anything that we're pointing at cmux-classic related stuff (that isn't customer related) just point it away from classic, man. no point looking at (relatively) deprecated stuff now that we're going full bore on the new architecture"
No compile or test receipt was produced by this read-only review; the router-review attempt returned no verdict at the shared GitHub quota limit.
|
Review (subagent claude-opus-5-5 medium, correctness): SHIP at 6af8ea4 Checked: production-auth builds now resolve Follow-ups:
|
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Lands now, ahead of production verification. Leo, 2026-11-04: "BUT LITERALLY NOBDY IS USING CMUX-NEXT CLOUD "PROD" OTHER THAN US" and "WE NEED TO JUST GET THE STUFF IN ASAP". The production nightly is the only production-auth build, so its chat read-back happens on the first nightly after this merges; if that fails, this is a one-commit revert (or set CMUX_NEXT_CLOUD_LINK=legacy).
Leo, 2026-11-02, on NEXT nightly still running classic Cloud: "why should it still point at old stuff if we are already doing this in platform". These are the nightly failures he hit, all on the classic link: "Personal credentials can only be transferred to a Cloud machine you own" after Transfer and restart; Claude credentials rejected after he picked a machine; "Cloud machine is not connected yet" on a new workspace; and
agent_session.refusedwhen starting a chat.What changes
CloudConfiguration.resolve: production auth (NEXT nightly, RC, release andCMUX_AUTH_ENVIRONMENT=production) now defaults tolinkSource: .appServer, the same link signed DEV builds have used since #28950. Its owner API is unchanged:ownerAPIBaseURLalready returnshttps://cloud-api.cmux.devfor production, and with #32347 that Worker forwards Cloud to cmux-platform-production.The escape hatch stays.
CMUX_NEXT_CLOUD_LINK=legacyat launch, orCMUX_CLOUD_LINK=legacybaked into LSEnvironment, keeps the classic link. The link pick is now computed once for both branches.Tests (
CloudConfigurationSignedDEVTests):otherReleaseChannelsKeepProductionnow expects.appServer, with the cmux.com auth origin and the cloud-api.cmux.dev owner API unchanged.productionKeepsTheLegacyEscapeHatchcovers the baked and launch-timelegacyvalues.Classic Cloud (cmux
web/, cmux.com/api/vm) is untouched and still serves thelegacylink.Risk
This changes NEXT nightly's Cloud path. Until production serves NEXT Cloud, an app-server link on nightly would fail, which is why the HOLD line stays until production is configured; the chat read-back is checked on the first nightly after merge.
Agent session: agent session
🤖 Generated with Claude Code