kcode-k1-http-persons 0.1.0

Authenticated Axum routes for access-controlled K1 Persons
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# kcode-k1-http-persons

Authenticated Axum routes for access-controlled K1 Persons. The adapter is intended to be nested below `K1Http`'s `/api` router and requires its `kcode_k1_http::Principal` extension on every request.

## Public API

```rust
pub fn authenticated_routes(
    persons: Arc<K1AccessPersons>,
    access: Arc<K1Access>,
    model: ModelId,
) -> Result<axum::Router<()>, String>;
```

The configured model is server configuration, never request input. Routes create saved-profile Persons, read universally viewable Persons, update only currently manageable canonical Persons, and list only directly discovered manageable `k1-person` targets for the authenticated user.

All facade calls run in `tokio::task::spawn_blocking`. JSON success and adapter error responses carry `Cache-Control: no-store`. Error JSON is `{ "error", "message" }`; messages are fixed, safe, and never expose dependency details.