aboutsummaryrefslogtreecommitdiffstats
path: root/src/api/store.rs
Commit message (Collapse)AuthorAgeFilesLines
* signatures: changes signed by their nodetv4 days1-5/+27
| | | | | | | | | | Every node signs the changes it commits with its node key, an Ed25519 signature over the change's hash, kept beside the document. One signature on an actor's latest change vouches for its earlier ones. Protocol data and paths listed in _continuum/access/signed are signed, and writes with ?signed=true. Auth plan M5.
* access: the users endpointstv4 days1-65/+1
| | | | | | | | /admin/users: list, add (one or several), remove, disable, grant and revoke capabilities; each one change, refused if it would lock its writer out. Capabilities as the store's paths name them. Auth plan M1.
* access: keeping the swarm manageabletv4 days1-18/+96
| | | | | | | | | A write that would leave its own writer unable to manage users (deleting, disabling or narrowing its entry, removing the registry) is refused; --protocol-writers can set a registry right that nobody may manage any more. Auth plan M1.
* access: authorization at the APItv4 days1-30/+109
| | | | | | | | | Every request is judged by the registry the node holds: store reads pruned to what the user may read, writes refused where it may not, admin endpoints by protocol capabilities. Without a registry, as before (--protocol-writers for protocol data). Auth plan M1.
* fixup 700, 701, 702tv9 days1-3/+3
|
* add stream heartbeattv9 days1-1/+21
|
* api: /stream & dashboard send X-Accel-Bufferingtv9 days1-0/+5
|
* api: drop $float as JSON number is OKtv9 days1-7/+8
|
* api: add type caststv9 days1-5/+45
|
* api: types are stickytv9 days1-43/+80
|
* api: add application/vnd.continuum.typed+jsontv9 days1-58/+68
|
* api: add application/vnd.continuum.* scalar typestv9 days1-77/+287
|
* api: add x-continuum-heads to writestv10 days1-20/+35
|
* api: add support for counterstv10 days1-2/+25
|
* api: allow reading past versionstv10 days1-8/+54
|
* record node ID and API user for every writetv10 days1-3/+9
|
* rename AutoMerge to Documenttv11 days1-1/+1
|
* api: unify media-type strippingtv12 days1-8/+4
|
* unify hex builderstv12 days1-7/+2
|
* api: unify error responsestv12 days1-28/+23
|
* api: unify store readstv12 days1-36/+22
|
* move store helpers to store moduletv12 days1-3/+93
|
* move ChangeSet from swarm to documenttv12 days1-2/+1
|
* unify path deleterstv12 days1-1/+1
|
* api: support list indexes in pathtv12 days1-22/+81
|
* add support to insert values at list indextv12 days1-15/+61
|
* api: add support for shallow store readstv12 days1-0/+37
|
* make clippy happy againtv2026-10-261-4/+4
|
* replace utoipa by static openapi.yamltv2026-10-261-70/+4
|
* add GET /stream endpointtv2026-10-261-2/+16
|
* only protocol-writers may modify _continuumtv2026-10-241-3/+9
|
* add heads to readstv2026-10-211-4/+28
| | | | | | | | | | GET /store?heads=true and GET /store/{key}?heads=true add the header x-continuum-heads (sorted, comma-separated hex). The heads come from the same moment as the read. - It's opt-in because reading the heads takes the write lock. Reads without the flag don't change. - Stale reads during a rejoin never carry heads.
* reorganize all the modulestv2026-10-211-2/+2
|
* serve stale reads during rejointv2026-10-201-12/+28
|
* cargo fmttv2026-10-191-1/+4
|
* initial committv2026-10-191-0/+359