Fix/http app generation#75
Open
godronus wants to merge 9 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the documentation generation pipeline to better enforce “raw markdown only” output, refreshes/extends the HTTP example set (especially WASI/wstd examples), and regenerates/updates SDK docs to reflect the current workspace version (0.4.0).
Changes:
- Harden
fastedge-plugin-source/generate-docs.shprompting + add “salvage” stripping for model preambles, with failure artifact preservation. - Add new WASI HTTP examples (A/B testing, static assets, streaming, outbound modify response, diagnostic logging, bloom filter denylist) and expand fixtures/READMEs across examples.
- Regenerate/update
docs/*to referencefastedge0.4.0, plus small repo hygiene updates (.gitignore, instructions mapping).
Reviewed changes
Copilot reviewed 167 out of 184 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| fastedge-plugin-source/generate-docs.sh | Tighten doc-gen prompt constraints; add salvage + failure preservation |
| examples/README.md | Update example index and build/target guidance |
| examples/http/wasi/variables_and_secrets/README.md | Expand WASI env/secrets example docs |
| examples/http/wasi/variables_and_secrets/fixtures/missing-vars.test.json | Add missing-vars test fixture |
| examples/http/wasi/variables_and_secrets/fixtures/missing-vars.live.json | Add missing-vars expected output |
| examples/http/wasi/variables_and_secrets/fixtures/happy-path.live.json | Add happy-path expected output |
| examples/http/wasi/streaming/src/lib.rs | Add streaming response example implementation |
| examples/http/wasi/streaming/README.md | Add streaming example documentation |
| examples/http/wasi/streaming/fixtures/happy-path.test.json | Add streaming test fixture |
| examples/http/wasi/streaming/fixtures/happy-path.live.json | Add streaming expected output |
| examples/http/wasi/streaming/Cargo.toml | Add streaming example crate manifest |
| examples/http/wasi/streaming/Cargo.lock | Add streaming example lockfile |
| examples/http/wasi/static_assets/src/lib.rs | Add embedded static-assets handler |
| examples/http/wasi/static_assets/README.md | Add static-assets example documentation |
| examples/http/wasi/static_assets/fixtures/style-css.test.json | Add stylesheet test fixture |
| examples/http/wasi/static_assets/fixtures/style-css.live.json | Add stylesheet expected output |
| examples/http/wasi/static_assets/fixtures/not-found.test.json | Add 404 test fixture |
| examples/http/wasi/static_assets/fixtures/not-found.live.json | Add 404 expected output |
| examples/http/wasi/static_assets/fixtures/logo-svg.test.json | Add SVG test fixture |
| examples/http/wasi/static_assets/fixtures/logo-svg.live.json | Add SVG expected output |
| examples/http/wasi/static_assets/fixtures/index.test.json | Add index test fixture |
| examples/http/wasi/static_assets/fixtures/index.live.json | Add index expected output |
| examples/http/wasi/static_assets/Cargo.toml | Add static-assets example crate manifest |
| examples/http/wasi/static_assets/Cargo.lock | Add static-assets example lockfile |
| examples/http/wasi/static_assets/assets/style.css | Add embedded CSS asset |
| examples/http/wasi/static_assets/assets/logo.svg | Add embedded SVG asset |
| examples/http/wasi/static_assets/assets/index.html | Add embedded HTML asset |
| examples/http/wasi/simple_fetch/README.md | Update WASI simple fetch build/docs guidance |
| examples/http/wasi/simple_fetch/fixtures/happy-path.live.json | Add/update simple_fetch expected output |
| examples/http/wasi/simple_fetch/Cargo.lock | Add simple_fetch lockfile |
| examples/http/wasi/secret_rollover/README.md | Expand secret rollover docs + examples |
| examples/http/wasi/secret_rollover/fixtures/happy-path.test.json | Add secret_rollover test fixture |
| examples/http/wasi/secret_rollover/fixtures/happy-path.live.json | Add secret_rollover expected output |
| examples/http/wasi/secret_rollover/fixtures/.env | Add secret_rollover dotenv fixture |
| examples/http/wasi/outbound_modify_response/src/lib.rs | Add outbound fetch + JSON reshape example |
| examples/http/wasi/outbound_modify_response/README.md | Add outbound_modify_response docs |
| examples/http/wasi/outbound_modify_response/fixtures/happy-path.test.json | Add outbound_modify_response test fixture |
| examples/http/wasi/outbound_modify_response/fixtures/happy-path.live.json | Add outbound_modify_response expected output |
| examples/http/wasi/outbound_modify_response/Cargo.toml | Add outbound_modify_response crate manifest |
| examples/http/wasi/outbound_modify_response/Cargo.lock | Add outbound_modify_response lockfile |
| examples/http/wasi/outbound_fetch/src/lib.rs | Convert outbound_fetch to true pass-through streaming |
| examples/http/wasi/outbound_fetch/README.md | Update outbound_fetch docs to match pass-through behavior |
| examples/http/wasi/outbound_fetch/fixtures/happy-path.test.json | Add outbound_fetch test fixture |
| examples/http/wasi/outbound_fetch/fixtures/happy-path.live.json | Add outbound_fetch expected output |
| examples/http/wasi/outbound_fetch/Cargo.toml | Remove unused serde_json dep |
| examples/http/wasi/outbound_fetch/Cargo.lock | Remove serde_json from lock metadata |
| examples/http/wasi/large_env_variable/fixtures/happy-path.test.json | Add large_env_variable test fixture |
| examples/http/wasi/large_env_variable/fixtures/happy-path.live.json | Add large_env_variable expected output |
| examples/http/wasi/large_env_variable/fixtures/empty-config.test.json | Add empty-config test fixture |
| examples/http/wasi/large_env_variable/fixtures/empty-config.live.json | Add empty-config expected output |
| examples/http/wasi/large_env_variable/fixtures/.env | Add large_env_variable dotenv fixture |
| examples/http/wasi/key_value/README.md | Expand key_value docs + error table |
| examples/http/wasi/key_value/fixtures/missing-params.test.json | Add key_value missing-params fixture |
| examples/http/wasi/key_value/fixtures/missing-params.live.json | Add key_value missing-params expected output |
| examples/http/wasi/key_value/fixtures/kv-get.test.json | Add key_value get fixture |
| examples/http/wasi/key_value/fixtures/kv-get.live.json | Add key_value get expected output |
| examples/http/wasi/hello_world/README.md | Expand hello_world WASI docs |
| examples/http/wasi/hello_world/fixtures/path-and-params.live.json | Add hello_world path/params expected output |
| examples/http/wasi/hello_world/fixtures/happy-path.test.json | Add hello_world happy-path test |
| examples/http/wasi/hello_world/fixtures/happy-path.live.json | Add hello_world happy-path expected output |
| examples/http/wasi/headers/README.md | Expand headers example docs + tables |
| examples/http/wasi/headers/fixtures/no-env-var.test.json | Add headers no-env-var test |
| examples/http/wasi/headers/fixtures/no-env-var.live.json | Add headers no-env-var expected output |
| examples/http/wasi/headers/fixtures/happy-path.live.json | Add headers happy-path expected output |
| examples/http/wasi/headers/fixtures/.env | Update env var prefixing for fixtures |
| examples/http/wasi/geo_redirect/README.md | Expand geo_redirect docs + config matrix |
| examples/http/wasi/geo_redirect/fixtures/missing-config.test.json | Add geo_redirect missing-config test |
| examples/http/wasi/geo_redirect/fixtures/missing-config.live.json | Add geo_redirect missing-config expected output |
| examples/http/wasi/geo_redirect/fixtures/germany.live.json | Add geo_redirect DE expected output |
| examples/http/wasi/geo_redirect/fixtures/france.live.json | Add geo_redirect FR expected output |
| examples/http/wasi/geo_redirect/fixtures/default.live.json | Add geo_redirect default expected output |
| examples/http/wasi/diagnostic_logging/src/lib.rs | Add set_user_diag outcome tagging example |
| examples/http/wasi/diagnostic_logging/README.md | Add diagnostic_logging documentation |
| examples/http/wasi/diagnostic_logging/fixtures/no-origin-url.test.json | Add no-origin-url test fixture |
| examples/http/wasi/diagnostic_logging/fixtures/no-origin-url.live.json | Add no-origin-url expected output |
| examples/http/wasi/diagnostic_logging/fixtures/happy-path.test.json | Add happy-path test fixture |
| examples/http/wasi/diagnostic_logging/fixtures/happy-path.live.json | Add happy-path expected output |
| examples/http/wasi/diagnostic_logging/fixtures/.env | Add diagnostic_logging dotenv fixture |
| examples/http/wasi/diagnostic_logging/Cargo.toml | Add diagnostic_logging crate manifest |
| examples/http/wasi/cache/README.md | Add/expand WASI cache example docs |
| examples/http/wasi/bloom_filter_denylist/src/lib.rs | Add bloom-filter denylist handler |
| examples/http/wasi/bloom_filter_denylist/README.md | Add bloom-filter denylist docs |
| examples/http/wasi/bloom_filter_denylist/fixtures/missing-store-config.test.json | Add missing-store-config test |
| examples/http/wasi/bloom_filter_denylist/fixtures/missing-store-config.live.json | Add missing-store-config expected output |
| examples/http/wasi/bloom_filter_denylist/fixtures/missing-ip.test.json | Add missing-ip test fixture |
| examples/http/wasi/bloom_filter_denylist/fixtures/missing-ip.live.json | Add missing-ip expected output |
| examples/http/wasi/bloom_filter_denylist/fixtures/allowed-ip.test.json | Add allowed-ip test fixture |
| examples/http/wasi/bloom_filter_denylist/fixtures/allowed-ip.live.json | Add allowed-ip expected output |
| examples/http/wasi/bloom_filter_denylist/fixtures/.env | Add denylist dotenv fixture |
| examples/http/wasi/bloom_filter_denylist/Cargo.toml | Add bloom_filter_denylist crate manifest |
| examples/http/wasi/ab_testing/src/lib.rs | Add cookie-based A/B testing proxy example |
| examples/http/wasi/ab_testing/README.md | Add A/B testing example documentation |
| examples/http/wasi/ab_testing/fixtures/variant-b.test.json | Add variant-b fixture |
| examples/http/wasi/ab_testing/fixtures/variant-b.live.json | Add variant-b expected output |
| examples/http/wasi/ab_testing/fixtures/variant-a.test.json | Add variant-a fixture |
| examples/http/wasi/ab_testing/fixtures/variant-a.live.json | Add variant-a expected output |
| examples/http/wasi/ab_testing/fixtures/no-cookie.test.json | Add no-cookie fixture |
| examples/http/wasi/ab_testing/fixtures/no-cookie.live.json | Add no-cookie expected output |
| examples/http/wasi/ab_testing/fixtures/missing-env.test.json | Add missing-env fixture |
| examples/http/wasi/ab_testing/fixtures/missing-env.live.json | Add missing-env expected output |
| examples/http/wasi/ab_testing/fixtures/.env | Add A/B testing dotenv fixture |
| examples/http/wasi/ab_testing/Cargo.toml | Add ab_testing crate manifest |
| examples/http/wasi/ab_testing/Cargo.lock | Add ab_testing lockfile |
| examples/http/basic/watermark/src/lib.rs | Minor formatting change in watermark source |
| examples/http/basic/watermark/README.md | Expand watermark docs + behavior table |
| examples/http/basic/watermark/fixtures/missing-env-vars.test.json | Add watermark missing-env fixture |
| examples/http/basic/watermark/fixtures/missing-env-vars.live.json | Add watermark missing-env expected output |
| examples/http/basic/watermark/fixtures/method-not-allowed.test.json | Add watermark 405 fixture |
| examples/http/basic/watermark/fixtures/method-not-allowed.live.json | Add watermark 405 expected output |
| examples/http/basic/watermark/fixtures/empty-path.test.json | Add watermark empty-path fixture |
| examples/http/basic/watermark/fixtures/empty-path.live.json | Add watermark empty-path expected output |
| examples/http/basic/smart_switch/src/lib.rs | Add redirect depth limit to outbound helper |
| examples/http/basic/smart_switch/README.md | Rewrite smart_switch docs + expected behavior |
| examples/http/basic/smart_switch/fixtures/04-wrong-password.test.json | Add wrong-password fixture |
| examples/http/basic/smart_switch/fixtures/04-wrong-password.live.json | Add wrong-password expected output |
| examples/http/basic/smart_switch/fixtures/03-no-auth-header.test.json | Add no-auth-header fixture |
| examples/http/basic/smart_switch/fixtures/03-no-auth-header.live.json | Add no-auth-header expected output |
| examples/http/basic/smart_switch/fixtures/02-missing-password-env.test.json | Add missing-password-env fixture |
| examples/http/basic/smart_switch/fixtures/02-missing-password-env.live.json | Add missing-password-env expected output |
| examples/http/basic/smart_switch/fixtures/01-method-not-allowed.test.json | Add method-not-allowed fixture |
| examples/http/basic/smart_switch/fixtures/01-method-not-allowed.live.json | Add method-not-allowed expected output |
| examples/http/basic/smart_switch/fixtures/.env | Add smart_switch dotenv fixture |
| examples/http/basic/secret/README.md | Expand secret example docs + local testing notes |
| examples/http/basic/secret/fixtures/missing-secret.test.json | Add missing-secret fixture |
| examples/http/basic/secret/fixtures/missing-secret.live.json | Add missing-secret expected output |
| examples/http/basic/secret/fixtures/happy-path.test.json | Add happy-path test fixture |
| examples/http/basic/secret/fixtures/happy-path.live.json | Add happy-path expected output |
| examples/http/basic/secret/fixtures/.env | Add secret dotenv fixture |
| examples/http/basic/s3upload/src/lib.rs | Make Content-Type parsing more robust |
| examples/http/basic/s3upload/README.md | Expand S3 upload docs + notes |
| examples/http/basic/print/README.md | Expand print example docs + behavior notes |
| examples/http/basic/print/fixtures/post-with-path.test.json | Add POST fixture |
| examples/http/basic/print/fixtures/post-with-path.live.json | Add POST expected output |
| examples/http/basic/print/fixtures/get-request.test.json | Add GET fixture |
| examples/http/basic/print/fixtures/get-request.live.json | Add GET expected output |
| examples/http/basic/print/Cargo.lock | Add print example lockfile |
| examples/http/basic/outbound_fetch/README.md | Expand basic outbound_fetch docs |
| examples/http/basic/outbound_fetch/fixtures/happy-path.test.json | Add outbound_fetch happy-path test |
| examples/http/basic/outbound_fetch/fixtures/happy-path.live.json | Add outbound_fetch expected output |
| examples/http/basic/markdown_render/src/lib.rs | Add redirect depth limit; fix spelling in comment |
| examples/http/basic/markdown_render/README.md | Expand markdown_render docs + examples |
| examples/http/basic/markdown_render/fixtures/missing-path.test.json | Add missing-path fixture |
| examples/http/basic/markdown_render/fixtures/missing-path.live.json | Add missing-path expected output |
| examples/http/basic/markdown_render/fixtures/missing-base-env.test.json | Add missing-base-env fixture |
| examples/http/basic/markdown_render/fixtures/missing-base-env.live.json | Add missing-base-env expected output |
| examples/http/basic/markdown_render/fixtures/method-not-allowed.test.json | Add method-not-allowed fixture |
| examples/http/basic/markdown_render/fixtures/method-not-allowed.live.json | Add method-not-allowed expected output |
| examples/http/basic/markdown_render/fixtures/.env | Add markdown_render dotenv fixture |
| examples/http/basic/hello_world/README.md | Expand basic hello_world docs |
| examples/http/basic/hello_world/fixtures/path-and-params.live.json | Add basic hello_world expected output |
| examples/http/basic/cache/README.md | Add basic cache example docs |
| examples/http/basic/backend/README.md | Rewrite backend docs as URL proxy example |
| examples/http/basic/backend/fixtures/missing-url-param.test.json | Add missing-url-param fixture |
| examples/http/basic/backend/fixtures/missing-url-param.live.json | Add missing-url-param expected output |
| examples/http/basic/backend/fixtures/missing-query-string.test.json | Add missing-query-string fixture |
| examples/http/basic/backend/fixtures/missing-query-string.live.json | Add missing-query-string expected output |
| examples/http/basic/backend/fixtures/happy-path-url-proxy.test.json | Add happy-path URL proxy fixture |
| examples/http/basic/backend/fixtures/happy-path-url-proxy.live.json | Add happy-path URL proxy expected output |
| examples/http/basic/backend/Cargo.lock | Add backend example lockfile |
| examples/http/basic/api_wrapper/src/lib.rs | Add redirect depth limit; fix spelling in comment |
| examples/http/basic/api_wrapper/README.md | Expand api_wrapper docs + flow |
| examples/http/basic/api_wrapper/fixtures/wrong-password.test.json | Add wrong-password fixture |
| examples/http/basic/api_wrapper/fixtures/wrong-password.live.json | Add wrong-password expected output |
| examples/http/basic/api_wrapper/fixtures/no-auth-header.test.json | Add no-auth-header fixture |
| examples/http/basic/api_wrapper/fixtures/no-auth-header.live.json | Add no-auth-header expected output |
| examples/http/basic/api_wrapper/fixtures/missing-password-env.test.json | Add missing-password-env fixture |
| examples/http/basic/api_wrapper/fixtures/missing-password-env.live.json | Add missing-password-env expected output |
| examples/http/basic/api_wrapper/fixtures/method-not-allowed.test.json | Add method-not-allowed fixture |
| examples/http/basic/api_wrapper/fixtures/method-not-allowed.live.json | Add method-not-allowed expected output |
| examples/http/basic/api_wrapper/fixtures/happy-path.live.json | Add/update api_wrapper happy-path expected output |
| docs/SDK_API.md | Regenerate/update SDK API docs for 0.4.0 |
| docs/quickstart.md | Update quickstart dependency version + formatting |
| docs/INDEX.md | Update docs index version string |
| docs/CDN_APPS.md | Update CDN apps docs + dependency version snippet |
| .gitignore | Ignore wasm artifacts + doc-gen failure artifacts |
| .github/copilot-instructions.md | Update internal mapping for quickstart sources |
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 free
to 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.
Uh oh!
There was an error while loading. Please reload this page.