Skip to content

CLI Extensions — Stage 2: Manifest + runtime rewrite (atomic, all four adapters) #261

@aram356

Description

@aram356

Part of the EdgeZero CLI Extensions effort — stage 2 of 8. Largest stage; review hotspot.

Precondition: PR #253 (feat/spin-store-support) must be merged first — this stage wires SpinKvStore / SpinConfigStore / SpinSecretStore into the multi-store runtime.

Scope (atomic — manifest + runtime ship together under the hard cutoff): rewrite the [stores] / [adapters.*] manifest schema to the logical-id + per-adapter-mapping model with the capability matrix (legacy fields become hard load errors); make ConfigStore::get async; add KvError::Unsupported + KvError::LimitExceeded; introduce BoundKvStore / BoundConfigStore / BoundSecretStore and id-keyed RequestContext accessors + StoreRegistry; make Hooks / ConfigStoreMetadata / the app! macro id-keyed; refactor Kv / Secrets extractors to default() / named() and add Config; rewrite all four adapters' store impls (Cloudflare config [vars] → KV); remove [stores.config.defaults]; migrate examples/app-demo/edgezero.toml + handlers (store-accessor change only); publish docs/guide/manifest-store-migration.md.

Ship gate: multi-store handlers work on axum/cloudflare/fastly/spin; async config reads work; all four CI gates + the wasm32 spin gate green.

Design spec: §8, §6.6, §6.7, §6.9 — Implementation plan: Stage 2.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions