feat: ingest State Hub session tokens without booking them

Store mixed measured/estimated/superseded aggregates as session-token
evidence. Map kinds onto the evidence-basis vocabulary, keep unknown
months unknown, and refuse to post the snapshot as booked spend or
resource-control usage.
This commit is contained in:
tegwick 2026-08-15 19:21:41 +02:00
parent 22b21be552
commit d343888a41
10 changed files with 578 additions and 1 deletions

View file

@ -237,7 +237,7 @@ matched series. No session logs are read.
```task
id: FIN-WP-0007-T04
status: todo
status: done
priority: high
state_hub_task_id: "29f1804f-a5ad-46b6-b9d7-8f074e31b04e"
```
@ -263,6 +263,14 @@ Done when a recorded fixture of mixed measured/estimated/superseded
aggregates stores as session-token evidence, reconciles by kind, and
cannot be posted as booked spend or as resource-control usage.
Completed 2026-08-15: `ledger ingest-session-tokens` stores a State Hub
aggregate snapshot in `session_token_evidence`. Kinds map to
measured/derived/estimated; superseded is excluded. Empty months are
`unknown_residual`, not zero. The snapshot cannot be posted as
`booked_cost` or as resource-control `usage_observation`. Allocated
slices require a method. No session files are parsed and no
`resource_id` is minted.
## Reporting-allocate booked plan cost across work
```task