Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,17 @@ of the new YAML fields below until the version that ships them.

### Fixed

- **WASM extension docs corrected.** `CLAUDE.md` previously labeled the
WASM surface as "WASM stub" while marketing docs claimed
production-grade support; the runtime is real
(`wasmtime` + WASI preview-1 with sandboxed memory and CPU caps,
stderr capture, no FS or network). `llms.txt` also incorrectly
claimed "WASI networking with host allowlist" but `allowed_hosts` is
parsed-but-inert until WASI sockets land. CLAUDE.md and llms.txt now
match the shipped surface.
([CLAUDE.md], [llms.txt],
[crates/sbproxy-extension/src/wasm/mod.rs])

- **E2E proxy startup flake under CPU contention.** The e2e
`ProxyHarness` keeps its HTTP-level readiness probe, but now gives
release/debug proxy boots a 10-second window instead of 5 seconds so
Expand Down
5 changes: 3 additions & 2 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,9 @@ sbproxy-rust/
sbproxy-cache/ - response cache, KV stores (memory/file/memcached/redis)
sbproxy-ai/ - AI gateway path (providers, routing, guardrails,
streaming, budgets, cost tracking)
sbproxy-extension/ - scripting (CEL, Lua, JavaScript, WASM stub),
MCP server, feature flags
sbproxy-extension/ - scripting (CEL, Lua, JavaScript, WASM via
wasmtime + WASI preview-1), MCP server,
feature flags
sbproxy-observe/ - metrics (sbproxy_*), events, structured logging
sbproxy-security/ - WAF, PII redactor, certpin, hostfilter
sbproxy-tls/ - TLS config, mTLS
Expand Down
2 changes: 1 addition & 1 deletion llms.txt
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ Four engines, picked per use case:
- **CEL** via `cel-rust`. Compiled once, evaluates in microseconds. Best for routing decisions and quick predicates. Custom functions for HTTP request inspection, hashing, time, and IP utilities.
- **Lua** via `mlua` with the Luau runtime. Sandboxed. Best for request and response body transforms.
- **JavaScript** via QuickJS (`rquickjs`). V8-compatible API surface. Best for teams already invested in JS tooling.
- **WebAssembly** via `wasmtime`. WASI networking with host allowlist. Best for sandboxed plugins from any source language.
- **WebAssembly** via `wasmtime` against WASI preview-1. Modules read input on stdin and write output to stdout; no filesystem, no network. Memory and CPU bounded per-call. Best for response-body transforms in any language with a `wasm32-wasi` target (Rust, TinyGo, AssemblyScript, Zig).

Every engine sees the same context namespaces: `request`, `session`, `origin`, `server`, `vars`, `ctx`, `response`.

Expand Down
Loading