Uh oh!
There was an error while loading. Please reload this page.
Minor updates to documentation and dependencies - #6
Merged
Conversation
Uh oh!
There was an error while loading. Please reload this page.
10 tasks
aram356 added a commit
that referenced
this pull request
Aug 2, 2026
Spec-alignment (findings #1, #6, #7): synthesised manifests now match the spec's normative baselines exactly, verified by per-adapter exact-content tests. - Cloudflare drops the `[build]` table; Fastly drops the empty `authors` array; Spin drops the `[component.<id>.build]` table. - Spin `allowed_outbound_hosts` becomes opt-in via `[adapters.spin.adapter].allowed_outbound_hosts`, defaulting to Spin's deny-all baseline. Both `edgezero new` and clean-clone read the same manifest, so the emitted file stays byte-identical. - Fastly cloud `provision` no longer auto-captures `service_id` from the gitignored, per-machine `fastly.toml`. Per the v1 contract the writeback is a documented one-time manual copy after `fastly compute deploy`; auto-capturing it let a stale local file overwrite the team's committed id. Correctness (findings #2, #3, #4, #8): - Cloudflare cloud `provision` reconciles namespace ids against the tracked `[adapters.cloudflare.deployed]` block: a local id that disagrees aborts with a conflict error instead of silently overwriting the committed one, and a fresh clone whose wrangler.toml lacks the id has it restored rather than creating a duplicate remote namespace. - Fastly typed-secret provisioning seeds the Viceroy `[[local_server.secret_stores.<name>]]` table under the resolved PLATFORM name (`TypedSecretEntry.platform`), the name the runtime opens, instead of the raw logical id -- an env override no longer points the runtime at a store the seed never created. - Symlink guards extended to the remaining provision/push write sites: `write_baseline_to_disk`, Axum's local-config JSON, and Spin's local KV SQLite db. `env_file::reject_symlinked_target` is now the shared final-component check. - Deployed-field ownership is enforced in core `Manifest` validation (canonical adapter map), so reduced-feature builds and non-CLI readers reject a field placed under an adapter that does not own it, not just the CLI's registry-based check. Also removes planning/review provenance markers (PR-round, Task, Stage, Phase, review-priority) from code comments, and corrects the CHANGELOG lock-path reference.
aram356 added a commit
that referenced
this pull request
Aug 19, 2026
…ects Two P0 blockers (both live-verified): - Spin build no longer TRUNCATES its own artifact. `refresh_declared_source` compared lexical paths, so the default `source` (`../../target/.../x.wasm`, a relative path with `..`) never matched the normalised artifact and `fs::copy` copied the file onto itself -> 0 bytes. Now guarded by a canonicalize-based same-file check (also for the conventional refresh), plus containment (refuse a `source` resolving outside the workspace or through a symlink) and single-component matching (#1, #5). - Fresh Cloudflare scaffolds can build/serve/deploy. The synthesised `wrangler.toml` now declares `[build] command = "worker-build --release"` (main points at the worker-build-generated shim), and the adapter drops its `[commands]` shell block so build/serve/deploy route through the registry dispatch, which passes `--config <manifest>` (also fixes custom manifest paths being ignored) (#2, #7). Spin: - `[adapters.spin.adapter].cloud = true` is the SOLE Fermyon Cloud selector; the legacy deploy-command heuristic and its `manifest_adapter_deploy_cmd` field are removed, and `config diff` threads the flag like `config push` (#3). - `edgezero serve` forwards parent-shell `EDGEZERO__*` overrides to the guest via `spin up --env` (highest precedence) so a shell override reaches the sandboxed component (#4). - deploy uses `spin cloud deploy` (bare `spin deploy` needs a plugin on Spin 3+/4) (#6). Cloudflare / Axum (via subagents): - typed secret keys are validated for `.dev.vars` round-trip (empty/=/#/ newline/whitespace) (#16); local push refuses a `.wrangler` symlink escape (#11); axum runtime honours `EDGEZERO_MANIFEST` when locating `.edgezero` (#8). Fastly: - cloud provision now writes the per-store `__NAME` runtime mappings into `edgezero_runtime_env` so a renamed cloud store is reachable (#10); the dry-run preflight redacts malformed-manifest parse errors and models the real writer's inline-toml rejection (#13). Convergence (via subagent): reprovisioning converges managed `__NAME` overlays across env_file + all four adapters via a new `upsert_lines_with_header` (#9). CLI: - dry-run staging refuses a TMPDIR inside the project (self-recursive copy) and no longer follows a symlinked live path into the diff output (#12); - cloud provision preflights manifest writability before mutating the account, so an unwritable manifest can't orphan a created resource (#15).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.