Skill · axum/axum-0-8 · v1.0.0 · MIT
axum 0.8 Services
Rust HTTP services on axum 0.8 that keep body limits, JSON errors, cancellation and shutdown right, plus the 0.7 to 0.8 upgrade.
Current knowledge for axum 0.8.9 on tokio 1.54, hyper 1.12 and tower-http 0.7: the 0.7 to 0.8 changes ({id} paths, native async extractors, OptionalFromRequestParts, moved and removed APIs) and, above all, the behaviours that never fail a build: the 2 MB DefaultBodyLimit that RequestBodyLimitLayer cannot raise, raw Body extractors with no limit, plain-text 400/413/415/422 rejections that bypass the app's error type, layers that skip later routes, Query and repeated keys, handler futures dropped on client disconnect or timeout so cleanup after .await never runs, and graceful shutdown that waits forever. Includes one error type for every failure path that never leaks internals, per-key limits with Drop guards, SIGTERM-aware shutdown with a drain deadline, and in-process tests for all of it. Every behaviour claim was reproduced on axum 0.8.9.
- Backend
- Security
- Migration
- build
- maintain
- operate
- rust
- axum
- tokio
uplift
No runs exist for this digest.
Not measured for this digest.
Untested is not the same as useless: nobody has measured it yet. Proof comes from A/B runs on hidden tests:
npx sigil prove catalog/skills/axum/axum-0-8 --suite <suite> --runs 6trust level · submitted
- in the catalog: met
- structure check: not met
- static scan, no high findings: not met
- canary sandbox passed: not met
- maintainer approved: not met
canary sandbox
Not run for this digest.
static scan
Not run for this digest.
compatibility · targeted, compiled and evaluated are separate claims
| agent | targeted by author | compiled | evaluated in the lab | notes |
|---|---|---|---|---|
| Claude Code | targeted: yes | no record for compiled | no record for evaluated | |
| Codex | targeted: yes | no record for compiled | no record for evaluated | |
| Cursor | targeted: yes | no record for compiled | no record for evaluated | |
| GitHub Copilot | targeted: yes | no record for compiled | no record for evaluated | |
| Gemini CLI | targeted: yes | no record for compiled | no record for evaluated | |
| OpenCode | targeted: yes | no record for compiled | no record for evaluated |
declared permissions
- network
- none
- shell
- cargo, rg
- filesystem
- write
- env
- none
Undeclared access is a finding in the scan and a tripwire in the canary.
source
- path
- catalog/skills/axum/axum-0-8
- authors
- dgesteves
- entry
- SKILL.md (agent-skill)
- registry
- 2026-11-02 · 5cb851d
install
$ npx sigil add axum/axum-0-8 --agent claude-codeNo compile record for Claude Code on this digest. Install never runs capability scripts, and refuses on any digest mismatch.
known limitations
- Written and verified against axum 0.8.9, tower-http 0.7.1, tokio 1.54.1 and hyper 1.12.0. The unreleased axum main branch already changes serve's output type and timeouts; check the CHANGELOG when a 0.9 ships.
- Covers HTTP/1.1 and JSON APIs. WebSockets, SSE, gRPC (tonic) and multipart parsing are mentioned only where limits or shutdown affect them.
- Does not cover authentication libraries, OpenAPI generation, database pools or tracing setup beyond logging errors.
- The proof suite runs handlers in-process with tower's oneshot; client disconnects are simulated by dropping the request future, which matches what hyper does but is not a real socket test.
- Rejection message texts are quoted from 0.8.9 and may change in patch releases; the status codes are part of axum's documented behaviour.