Files
railiance-infra/state-hub-inbox

state-hub-inbox

Offline event queue for State Hub sessions run without an active reverse tunnel.

When the State Hub MCP server is unreachable, Claude writes pending events here as YAML files instead of dropping them. On the next connected session, these are drained by calling the appropriate State Hub write tools and marking each file status: ingested.

File format

type: progress_event          # or: decision, task_status_update
topic_id: <uuid>
workstream_id: <uuid>
event_type: milestone
summary: "..."
detail: {}
status: pending               # → ingested after processing
recorded_at: "YYYY-MM-DD"
source_repo: railiance-hosts

Drain procedure (manual until automated)

At session start, if get_domain_summary() succeeds, check for pending files:

grep -l "status: pending" state-hub-inbox/*.yaml

For each, call add_progress_event() with the file's fields, then update status: pendingstatus: ingested and commit.

See also: contrib/feature-requests/fr-2026-03-08--threephoenix--state-hub--offline-inbox-ingest.md