You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- README Quick Start: add cargo test-spin
- README Development: replace broad workspace clippy with target-matched
aliases and note why; add cargo test-spin to test list
- architecture.md: mention Cloudflare/Spin in the high-level overview;
add trusted-server-adapter-spin section with build/test/lint commands
and known MVP limits; expand Runtime Targets table to include all four
adapters; add note on target-matched clippy requirement
Copy file name to clipboardExpand all lines: docs/guide/architecture.md
+35-6Lines changed: 35 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ Understanding the architecture of Trusted Server.
4
4
5
5
## High-Level Overview
6
6
7
-
Trusted Server is built as a Rust-based edge computing application. The core logic lives in a platform-agnostic library; platform-specific adapters target different runtimes (Fastly Compute, native Axum).
7
+
Trusted Server is built as a Rust-based edge computing application. The core logic lives in a platform-agnostic library; platform-specific adapters target different runtimes (Fastly Compute, Cloudflare Workers, Fermyon Spin, native Axum).
| Auction fan-out ordering | Requests run concurrently via `tokio::spawn`; `select` returns first-to-complete but does not replicate Fastly's priority-queue tie-breaking |
63
63
64
+
### trusted-server-adapter-spin
65
+
66
+
Fermyon Spin adapter (`wasm32-wasip1` component):
67
+
68
+
- Production-capable deployment target for the Spin runtime
69
+
- Platform services (config store, secret store, KV) backed by Spin component variables and the EdgeZero KV handle
70
+
- Outbound HTTP via `spin_sdk::http::send` — no configurable per-request timeout (see rustdoc)
71
+
- Single auction provider only; multi-provider fan-out requires the Fastly adapter
|`trusted-server-adapter-fastly`|`wasm32-wasip1`| Production on Fastly Compute |
157
+
|`trusted-server-adapter-cloudflare`|`wasm32-unknown-unknown`| Production on Cloudflare Workers |
158
+
|`trusted-server-adapter-spin`|`wasm32-wasip1` component | Production on Fermyon Spin |
159
+
|`trusted-server-adapter-axum`| native | Local development and integration testing (see limitations above) |
131
160
132
-
The Fastly adapter compiles to WebAssembly for sandboxed, low-cold-start edge execution. The Axum adapter is a standard native binary — no WASM toolchain required for local development.
161
+
The workspace has multiple WASM runtimes with runtime-specific SDKs. Use target-matched clippy aliases (`cargo clippy-fastly`, `cargo clippy-spin-native`, etc.) rather than broad `--all-features` workspace clippy — the latter is not a reliable gate across adapters.
0 commit comments