Skip to content

Allow to use RequestContext extractor in action handlers - #11

Merged
aram356 merged 8 commits into
mainfrom
feature/action-request-ctx
Nov 7, 2025
Merged

aram356 merged 8 commits into
mainfrom
feature/action-request-ctx

Conversation

@aram356

@aram356 aram356 commented Nov 7, 2025

Copy link
Copy Markdown
Collaborator

Closes #10

@ChristianPavilonis ChristianPavilonis left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Looks good, but did you mean to do it off of my branch or off of main?

Maybe we should merge mine and rebase or just rebase your commit off of main as it is now.

@aram356

aram356 commented Nov 7, 2025

Copy link
Copy Markdown
Collaborator Author

Looks good, but did you mean to do it off of my branch or off of main?

Maybe we should merge mine and rebase or just rebase your commit off of main as it is now.

I branched off your changes for fastly so it should be good to merge this if you ok with it.

@aram356
aram356 merged commit 30f803f into main Nov 7, 2025
2 checks passed
@aram356
aram356 deleted the feature/action-request-ctx branch November 7, 2025 22:35
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).
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.

As developer I want to pass RequestContext to handlers that use #action macro

2 participants