Repository navigation
Allow explicit local backends in hosted dev builds - #13129
Conversation
|
Warning Review limit reachedNext included review available in 2 minutes. View limit detailsLimit details: You’ve used all 10 included reviews currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Repository: manaflow-ai/cmux/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
All contributors have signed the CLA ✍️ ✅ |
|
| if [[ -f scripts/lib/dev-backend-origin.sh ]]; then | ||
| source scripts/lib/dev-backend-origin.sh | ||
| cmux_resolve_tagged_backend "$BUILD_TAG" "$GITHUB_WORKSPACE" "http://localhost:3777" >/dev/null | ||
| fi |
There was a problem hiding this comment.
When inputs.ref selects a revision without scripts/lib/dev-backend-origin.sh, this step succeeds without validating the backend selection. The tagged build then continues through setup before reload.sh fails while sourcing the missing helper, so the intended early validation becomes a later failure with less useful guidance. Require the helper or report an actionable error in this step.
There was a problem hiding this comment.
The conditional preserves builds of historical source refs. I checked the parent of the commit that introduced this helper: reload.sh at e42dc540df directly uses its local dev origin and never sources dev-backend-origin.sh. Its absence therefore does not cause the later missing-helper failure described here. The remote-URL presence check is unconditional; revisions that implement the backend resolver additionally run its URL/mode validation. Requiring that newer helper for every historical ref would reject otherwise buildable legacy sources. Keeping this compatibility path; no source change for this finding.
There was a problem hiding this comment.
You’re right. The historical reload.sh at e42dc540df does not source dev-backend-origin.sh, so its absence cannot cause the later failure described in the comment. The unconditional remote-URL guard still enforces the new hosted-runner policy, while resolver validation is correctly limited to refs that contain the helper. I’m withdrawing this finding; no source change is needed.
24c1cac Follow up Cloud startup latency and regression checks (manaflow-ai#13109) e0e77eb Cloud splits preserve remote placement under concurrent creates (manaflow-ai#13098) aa3e0e5 Fix persistent Cloud command deadline and cancellation races (manaflow-ai#12631) d11d23b ci: support explicit local backends for hosted dev builds (manaflow-ai#13129) 51173c6 Reduce plain-text paste startup while preserving provider isolation (manaflow-ai#13110) 03974a9 Move web to @hexclave/next 1.0.121 so server getTeam fetches one team (manaflow-ai#13012) 57939a8 Team picker: switch/create teams and scope Cloud (manaflow-ai#13051) fc7d002 fix(cloud): restore resource readings and reconcile resized capacity (manaflow-ai#13084)
The AWS tagged build for the paste-latency fix failed before compilation because
reload-build.ymlcannot invoke the local HQ backend helper whenbackend_urlis empty. Failed build.Expose the existing
remote/localbackend policy as a workflow input. Remote remains the default and requires an explicit registered URL on hosted runners; local is an explicit choice for a separately running local dev server. Validate the selection before dependency installation using the existing backend resolver. Checkout credentials no longer persist in the build workspace.This changes no paste or application runtime code. Follow-up to #13110, which Austin merged.
Validation: existing backend-resolver controls passed (missing helper, explicit local mode, conflicting/unknown modes, registered remote URL), workflow YAML parsed, Swift file budget and diff checks passed. A scheduled AWS M4 Pro tagged build is being rerun with explicit local mode; its artifact will be launched locally as requested. Local mode supports terminal/paste dogfood, while Cloud/sign-in requires a running local backend.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by cubic
Allows hosted dev builds to explicitly choose a local backend, so the AWS tagged build for the paste-latency fix can run against a separate local dev server instead of failing when
backend_urlis empty.backend_modeworkflow input (remotedefault,localfor a separate local dev server).backend_url; local mode validates the selection with the existing backend resolver.Written for commit bc13a6f. Summary will update on new commits.