source: repo-manager reason: deterministic projection registration Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a06ed7-828d-7ca0-a8d4-0c3e5a0c4102
62 lines
2.2 KiB
Markdown
62 lines
2.2 KiB
Markdown
---
|
|
id: HUB-WP-0010
|
|
type: workplan
|
|
title: "State Hub inbox read projection pilot"
|
|
domain: infotech
|
|
repo: hub-core
|
|
status: finished
|
|
owner: codex
|
|
topic_slug: infotech
|
|
created: "2026-09-05"
|
|
updated: "2026-09-05"
|
|
related:
|
|
- STATE-WP-0079
|
|
quality_dod: DoD-Ok
|
|
quality_dod_at: "2026-09-05"
|
|
quality_dod_by: codex
|
|
quality_dod_note: "Frozen snapshot parity, auth, rollback and live verification passed; residual HUB-WP-0011 owns production cutover."
|
|
quality_dor: DoR-Ok
|
|
quality_dor_at: "2026-09-05"
|
|
quality_dor_by: codex
|
|
quality_dor_note: >-
|
|
STATE-WP-0079-T08 requests one read-only inbox parity proof. The runtime has
|
|
an empty agent_messages table and an operator token; named-port messages
|
|
are a distinct envelope contract. Scope excludes production message writers.
|
|
state_hub_workstream_id: "8c06208c-c84a-5001-8a57-47fb206c67ec"
|
|
---
|
|
|
|
## Deliver the opt-in receiver contract
|
|
|
|
```task
|
|
id: HUB-WP-0010-T01
|
|
status: done
|
|
priority: high
|
|
state_hub_task_id: "b61aaed1-710d-5d81-a2af-1193f5dafe09"
|
|
```
|
|
|
|
Add an authenticated, GET-only `/ports/projections/statehub-inbox` pilot for one
|
|
configured agent, preserving message payloads, broadcast inclusion, sender and
|
|
unread filters, archive exclusion, ordering and limits. Default disabled.
|
|
State Hub remains the writer. Existing `/ports/messaging/messages` is unchanged.
|
|
|
|
## Import and verify one consistent historical snapshot
|
|
|
|
```task
|
|
id: HUB-WP-0010-T02
|
|
status: done
|
|
priority: high
|
|
state_hub_task_id: "9266d98c-9f88-5184-920d-a5c498b40664"
|
|
```
|
|
|
|
Validate source/count/hash/thread closure before importing to an empty receiver.
|
|
Preserve all IDs/timestamps/flags. Exact retries are no-ops; different existing
|
|
rows refuse overwrite. Verify parity over a fixed source snapshot with read-only
|
|
queries, auth failures and rollback by disabling the pilot. Packaging/deployment
|
|
belongs to rapp-core-hub. Do not claim continuous freshness or switch clients
|
|
from the sole production message writer based on a one-time snapshot.
|
|
|
|
## Completion evidence and residual handoff
|
|
|
|
See `docs/evidence/statehub-inbox-pilot-20260905.md` and its JSON receipt.
|
|
HUB-WP-0011 was created before closure and owns freshness, caller identity and
|
|
production reader cutover; STATE-WP-0079-T09 tracks that gate.
|