carlos / todomvc-bakeoff Public
docs(rust): STATUS: live at 4c742de
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 file changed,
+26
−0
apps/rust/STATUS.md+26 −0
diff --git a/apps/rust/STATUS.md b/apps/rust/STATUS.md| new file mode 100644 |
| index 0000000..8cc8377 |
| --- /dev/null |
| +++ b/apps/rust/STATUS.md |
| @@ -0,0 +1,26 @@ |
| +LIVE https://todo-rust.bfj.oncarlos.com 4c742de |
| + |
| +## What's there |
| + |
| +- Rust: axum 0.8 on tokio, maud templates, rusqlite with bundled SQLite, |
| + mimalloc. A static linux-arm64 musl binary of about 3 MB, built with |
| + `cargo zigbuild`. |
| +- `make test`: 10 in-process HTTP tests, all passing. |
| +- Shared suite on a local run: 67 passed, 3 skipped (the skips are the |
| + JS-only tests in the JS-off run). Against |
| + [https://todo-rust.bfj.oncarlos.com](https://todo-rust.bfj.oncarlos.com), |
| + two full runs after the last deploy: 67 passed, 3 skipped each time. |
| +- `scripts/boot-check.sh dist/app-linux-arm64`: healthz 200, version 200, |
| + clean exit on SIGTERM. |
| + |
| +## Worth knowing |
| + |
| +On the first live run, one test failed: a cross-origin POST got 502 |
| +from the edge instead of 403. It reproduced reliably: 19 of 60 |
| +cross-origin POSTs and 13 of 40 POSTs to an unknown path came back 502. |
| +Both responses were sent before the app had read the request body, and |
| +that drops the connection to the edge. The app now reads the whole body |
| +(up to 1 MiB) before it answers anything. Afterwards, 120 of 120 of |
| +those requests answered correctly (403 and 404). Any other app that |
| +rejects a request without reading its body may hit the same thing on |
| +Carloku. |