Skip to content

fix(platform): repair failures found in Cloudflare acceptance - #569

Open
Brooooooklyn wants to merge 11 commits into
mainfrom
codex/platform-e2e-20261023
Open

Brooooooklyn wants to merge 11 commits into
mainfrom
codex/platform-e2e-20261023

Conversation

@Brooooooklyn

@Brooooooklyn Brooooooklyn commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

Live Cloudflare acceptance exposed failures in interrupted platform updates, slow application requests, usage reporting, page revalidation and account prerequisite guidance. This change fixes those paths and preserves the provider resources used by repeatable live tests.

Changes

  • Explain R2 activation, the paid Workers for Platforms subscription, and Analytics Engine activation with direct account dashboard links and recovery instructions. Report both known R2/WfP blockers from the existing read-only planning checks without adding probes. Preserve genuine permission failures and provider diagnostic causes. Replace misleading token-permission advice for Analytics Engine code 10089 and document its dashboard Enable action and Workers Free availability.
  • Resume interrupted credential updates without trying to reactivate immutable Worker versions bound to old secrets. Keep traffic closed, retain update authority across checkpoints, and reject concurrent Worker replacement. Retry transient health-check transport errors only.
  • Await foreground application responses by default. Keep explicit operator deadlines and bounded storage/background work. A real Sandbox request completes after 44.9 seconds instead of hitting the previous ten-second timeout.
  • Use the current AI Gateway analytics query and scope the optional managed-build gate to GitHub connection routes, allowing ordinary project usage requests when managed builds are disabled.
  • Store managed ISR entries in the existing R2 bucket so an eventually consistent KV read cannot restore purged HTML for its full TTL. Keep legacy KV discovery/cleanup; log legacy deletion failures without blocking the HTML/JSON edge purge after successful R2 deletion. Authoritative R2 errors still propagate. Native deployment behavior and bindings are unchanged.
  • Retain native live-test resources under an explicit namespace, verify data/resource reuse, and serialize the shared CI target. Document connection-pool budgeting for platforms sharing a PostgreSQL server.

Validation

Final local verification on 21bb87ef0: vp test run passed 736 files and 14,547 tests (31 tests skipped, zero unhandled errors), and all 33 package typechecks passed. The prerequisite-message tests pass 184 focused cases; the legacy-KV follow-up passes 39 focused cases. Both path-specific and full-purge endpoint regressions failed before that fix and pass afterward. Affected verification passed 10,974 tests for the CLI changes and 4,907 for the cache follow-up. Core runtime/package and documentation builds, formatting and lint passed. Independent reviews found no remaining actionable issues in these changes.

A rebuilt CLI was tested against the unpaid account: the real installation plan reports R2 code 10042 and Workers for Platforms code 10121 together, with account-specific links and retry instructions. It exits before creating installation files, and the existing platform registry is unchanged. The captured real Analytics Engine code 10089 failure was replayed through the updated formatter and now directs the operator to Enable and the appropriate recovery command.

The free-account comparison also verified a native static app and stock Void AI Gateway creation. Analytics Engine binding upload failed with 10089 before activation and passed after zero-price dashboard activation while Workers Free remained selected. R2 was not activated and WfP was not purchased; a fresh managed platform cannot complete installation on that account until those prerequisites are satisfied. Airwallex’s generic AI Gateway 500/code 7000 was not reproduced.

Both paid-account Cloudflare installations were deployed and independently verified on 852341fc6 with packaged manifest 34f1cea97be8251055b5002ec9eb2cdaa83393be73b81cd6f23532daafb00a25. Provider readback verified all five active Worker versions at 100% traffic, all 19/15 retained resource IDs, settings and migration history. Three 600-second page-action purges and one all-project purge returned fresh first-load MISS content in the same Cloudflare location, with independent R2 before/deleted/replacement readback. Project usage returns HTTP 200; AI usage matches the provider aggregate after whole-neuron rounding. All 24 managed apps passed final reachability; the kitchen smoke passed 14/14.

That live acceptance covered an upgraded and a fresh installation, 24 managed apps (239 functional checks; 81 browser checks across 16 apps), four native app classes, two PostgreSQL variants, two genuine users, teams and ownership, admin/user settings, quota/suspension controls, protected apps, connected-app publishing/private preview, inbound/outbound email, queues, cron, AI, Live SSE, WebSockets and Sandbox. Earlier local acceptance also covered 243 real PostgreSQL checks, playground builds and packed npm/pnpm consumers for four adapters.

Remote CI, Platform CI, Prepublish Test, and Security Analysis completed successfully on 21bb87ef0: 19 successful checks, one skipped, none failing or pending. The skipped credentialed live-e2e job is separate from the provider-backed acceptance above. Automated review completed on this head with no findings; the legacy-KV review thread is resolved.

Known limitations

The legacy-KV cleanup follow-up has local endpoint regression coverage and has not been redeployed to the acceptance installations; their runtime remains 852341fc6. No existing MySQL service was available, so MySQL has local wire-protocol coverage only. Verified-email invitation acceptance, direct Google/GitHub account linking, optional GitHub build services and third-party AI BYOK were not configured. Successful project custom-domain attachment remains unverified: the test installation disables that capability, and its denial path preserves DNS and the existing app. Destructive remote teardown is excluded by the retained-resource test policy. An ambiguous pre-fix email receipt remains preserved; recovery and a duplicate send have not been attempted. No additional paid plan was purchased.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

🚀 Deploying Preview to Cloudflare 🚀

Preview URL: https://codex-platform-e2e-20261023-void-cloud.voidzero-docs.workers.dev (commit 21bb87e)

This URL reflects your latest Preview deployment

Preview Deployments by commit

Status Deployment URL Commit Updated (UTC) See this deployment's details
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://c4a8b309-void-cloud.voidzero-docs.workers.dev 21bb87e 2026-10-23T17:36:10.819Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://04bafc83-void-cloud.voidzero-docs.workers.dev 723240e 2026-10-23T17:17:31.404Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://84a87fea-void-cloud.voidzero-docs.workers.dev 852341f 2026-10-23T11:15:17.394Z Visit the dashboard ↗

@Brooooooklyn
Brooooooklyn marked this pull request as ready for review October 23, 2026 11:29
@Brooooooklyn
Brooooooklyn requested a review from a team as a code owner October 23, 2026 11:29
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-23T17:38:06.659258Z 21bb87e New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 723240e248

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread platform/packages/api/src/isr-store.ts Outdated

This branch has not been deployed

No deployments
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