Replace :key with *key pattern to avoid axum route conflict.
Adds wildcard handler functions for GET/PUT/DELETE that properly
handle both simple keys and namespaced keys with slashes.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Axum 0.7 route registration requires chaining handlers for the same
path. Multiple .route() calls for "/api/v1/kv/{key}" overwrote each
other, leaving only DELETE accessible. Changed to chain all methods:
.route("/path", get(h).put(h).delete(h))
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Includes all pending changes needed for nixos-anywhere:
- fiberlb: L7 policy, rule, certificate types
- deployer: New service for cluster management
- nix-nos: Generic network modules
- Various service updates and fixes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>