Repository navigation
[miniflare] Enable local Flagship management without Worker bindings - #16489
dario-piotrowicz merged 3 commits into
Conversation
🦋 Changeset detectedLatest commit: 62fba53 The changes in this PR will be included in the next version bump. This PR includes changesets to release 8 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Hi @akshitsinha. Thanks for taking the time to contribute to Workers SDK. This PR has been automatically closed because you are not currently a registered (vouched) collaborator for this repository. AI tools now let our team generate proposed code changes quickly. Reviewing changes, checking that they solve the right problem, and maintaining code quality over time still take substantial care and effort. We therefore limit PRs to registered collaborators so we can focus that effort where it is most useful. For the majority of external contributors, the most effective way to help is through issues: describing a problem or use case, providing a minimal reproduction, investigating its cause, or helping us verify a fix. Those contributions help us understand what needs to change and are very welcome. We will take an initial look at this PR and decide whether it is something we want to invest time in reviewing and maintaining. We may reopen it if we decide to proceed, but we cannot guarantee that it will be reopened or receive a full review. |
|
Codeowners approval required for this PR:
Show detailed file reviewers |
|
✅ Approved — No issues found. The new The decision is advisory: this comment never approves, blocks or requests changes on the pull request. ✅ All checks passed🚀 Release: ✅ LGTMRisk: Low. Changesets cover the Miniflare, local-explorer-ui and Wrangler changes. 🔒 Security: ✅ LGTMThe Explorer gets access to any app's store through a separate Metadata validation rejects:
📖 AGENTS.md: ✅ LGTMThe change follows the repository conventions: generated files were regenerated from the bumped OpenAPI revision rather than edited by hand, the shared behaviour lives in Miniflare, and changesets are included. 📋 Code Quality: ✅ LGTMMoving the admin logic into The Explorer Flagship handlers in
Metadata is handled consistently:
Tests are included in Miniflare, the UI and Wrangler. ⚡ Performance: ✅ LGTMList pagination is done in memory over the app's flags. That is fine for a local store. Removing the per-request peer lookups for flag operations also cuts out extra fetches. 📝 Documentation: ✅ LGTMThe changesets and JSDoc describe the behaviour changes correctly. That includes the additive R2 Reviewed commit: |
|
clanker review |
@cloudflare/autoconfig
@cloudflare/build-output-utils
@cloudflare/codemods
@cloudflare/config
@cloudflare/containers-shared
create-cloudflare
@cloudflare/deploy-helpers
@cloudflare/kv-asset-handler
miniflare
@cloudflare/pages-functions
@cloudflare/pages-shared
@cloudflare/runtime-types
@cloudflare/unenv-preset
@cloudflare/vite-plugin
@cloudflare/vitest-plugin
@cloudflare/workers-auth
@cloudflare/workers-editor-shared
@cloudflare/workers-utils
wrangler
commit: |
workers-devprod
left a comment
There was a problem hiding this comment.
Codeowners reviews satisfied
780d71f to
eedef48
Compare
Follow-up to #15330.
cf flagship ... --localuses the Local Explorer API, but its Flagship implementation requires an app bound to a Worker and exposes routes and request shapes that differ from the public API. This prevents CLI commands from managing arbitrary local apps, with some reporting no local equivalent.This PR lets the Explorer open a Flagship store by app ID without a Worker binding or running dev server. A dedicated entrypoint provides that access while keeping Worker bindings scoped to their configured app. Existing CLI flag commands can use it once
cfupgrades to a Miniflare release containing this change.Flagship’s public endpoints now come from the published OpenAPI schema instead of separate local definitions.
OPENAPI_COMMITis bumped from45402b29to2d3b9ab6to include named rule and condition schemas,PATCH, metadata,has/not_has, andSTATIC. The filtered schema, validators, and client types are regenerated from that revision.Because the schema revision is shared across Explorer products, regeneration also requires two compatibility fixes outside Flagship:
result_info.total_countalongside the existingcount. This is additive: the bucket list and existing response fields are unchanged.body: null. Both UI call sites now omit it. Deletion behavior is unchanged, although TypeScript callers using the updated generated client must likewise omitbody.Neither change modifies storage behavior or the remote KV/R2 APIs.
The Flagship UI follows the updated endpoints: toggles use
PATCH, edits usePUT, and listing follows pagination. Local flags also store, validate, and return metadata in evaluation results. Wrangler’s update commands preserve metadata when replacing flags, andpullcopies it into the local store.