Skip to content

ci(cloudflare): fail a pull request whose vertical has no stage edge placement - #1035

Merged
BleedingDev merged 1 commit into
mainfrom
ci/cloudflare-placement-pr-gate
Sep 30, 2026
Merged

BleedingDev merged 1 commit into
mainfrom
ci/cloudflare-placement-pr-gate

Conversation

@BleedingDev

Copy link
Copy Markdown
Contributor

Why the change

A vertical merged without its Cloudflare placement (as #889 Inventory did) only failed the stage edge deploy after merge, so this moves the check onto every pull request.

Special things to note

  • The check runs inside the existing Repository Tooling Tests job and needs no secrets, so fork PRs get it too. The secret-gated Check the Cloudflare edge deploy configuration job is unchanged.
  • The CPU tier can't be missing: createModernConfig defaults every vertical to CLOUDFLARE_WORKER_CPU_MS.vertical, so the docs checklist covers picking it instead of a check.
  • The three shared build-variable names moved from the cut-over script into stage-edge-units.mts so both use one list.

Change outline

 scripts/ops/stage-edge-units.mts
+  placementGaps(topology, placement) -> string[]
+    "units: <id>"                       topology unit not placed
+    "buildEnvironment.<KEY>"            MF_DEV_ORIGIN / HYPERDRIVE_ID / SPICEDB_VPC_SERVICE_ID
+                                        or a placed unit's ULTRAMODERN_PUBLIC_URL_<UNIT> unset
 scripts/tests/cloudflare-stage-cutover.test.mts
+  real topology + placement -> []       (fails any PR that adds a vertical without placement)
+  fixture missing catalog/pricing/hyperdrive -> names all three
 docs/architecture/DEPLOYMENT.md
+  ### Adding a vertical: topology block, placement unit, public URL, CPU tier, worker-secrets

@semanticdiff-com

semanticdiff-com Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

Review changes with  SemanticDiff

Changed Files
File Status
  app/docs/architecture/DEPLOYMENT.md Unsupported file format
  app/scripts/ops/cloudflare-stage-cutover.mts  0% smaller
  app/scripts/ops/stage-edge-units.mts  0% smaller
  app/scripts/tests/cloudflare-stage-cutover.test.mts  0% smaller

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@coderabbitai

coderabbitai Bot commented Sep 30, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 35 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 8a14c57e-0411-4aa7-9ced-561145ae6a89

📥 Commits

Reviewing files that changed from the base of the PR and between 7e18af0 and ea5a66e.

📒 Files selected for processing (4)
  • app/docs/architecture/DEPLOYMENT.md
  • app/scripts/ops/cloudflare-stage-cutover.mts
  • app/scripts/ops/stage-edge-units.mts
  • app/scripts/tests/cloudflare-stage-cutover.test.mts
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@BleedingDev
BleedingDev merged commit c4d4ba7 into main Sep 30, 2026
21 checks passed
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