Skip to content

Generate and ignore local manifests and load serve env files #295

Description

@aram356

Description

Section 7 of #288 covers scaffold ignore rules, smoke warm-up and adapter-scoped serve environment. PR #287 contains the proposed implementation but remains unmerged. Dependencies: #289, #291, #293, #294.

Steps to reproduce

Inspection steps (no tests executed):

  1. Inspect current scaffold ignore rules.
  2. Compare this section’s tasks in local-provision plan with the open branch.
  3. Confirm the local-provision contract is still absent from main rather than treating checked-off branch tasks as delivery.

Expected behavior

The section’s contract is present on main and composes with the other local-provision sections without cloud operations during local mode.

Impact

Tracked provider manifests and missing scoped env loading prevent the generated-state workflow.

Proposed fix

Review and merge this section through PR #287, preserving the tasks below and subsequent umbrella amendments. Reconcile with current main rather than reintroducing removed Fastly runtime-env descriptors.

Dependencies: #289, #291, #293, #294.

Done when

  • Task 32: Extend existing gitignore.hbs scaffold template with the all five manifest patterns (including axum.toml per the July amendment) + local-state paths (template + emit-list already exist)
  • Task 33: Gitignore + git rm --cached the in-tree app-demo manifests (regex covers all five .toml manifests + .dev.vars; portable guarded loop, no GNU xargs -r); sanity check uses identical regex to Task 37's CI gate
  • Task 34: Extend run_serve with adapter-scoped env-file load (axum → .edgezero/.env; spin → .env beside the resolved Spin manifest, including nested paths); lowercase adapter name once; conflict-value test
  • Task 35: Add scripts/lib/smoke_warmup.sh (consumes existing ROOT_DIR; canonicalises cf → cloudflare); wire into all four smoke scripts; drop obsolete backup_in_tree calls in same commit
  • Observe the spawned Spin child’s inherited environment for nested manifest paths and preserve parent-env precedence.

Required repository verification: cargo fmt --all -- --check; cargo clippy --workspace --all-targets --all-features -- -D warnings; cargo test --workspace --all-targets; cargo check --workspace --all-targets --features "fastly cloudflare spin"; cargo check -p edgezero-adapter-spin --target wasm32-wasip2 --features spin. These are acceptance requirements, not tests executed during this audit.

Related

#288; local-provision plan; PR #287 is the fully covering open PR. #289, #291, #293, #294

July amendment: all five generated manifests, including axum.toml, are gitignored.

Activity

  1. self-assigned this
    on Jun 30, 2026
  2. changed the title [-]Section 7 — Scaffold + gitignore + run_serve (Tasks 32–35)[/-] [+]Generate and ignore local manifests and load serve env files[/+] on Nov 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions