3.5 KiB
Ops Hub Activity-Core Fallback Validation
Date: 2026-06-15
Workplan: IHUB-WP-0022
Validation Result
The State Hub fallback path is implemented and tested in activity-core, but no live fallback event exists in State Hub yet.
Direct query:
GET http://127.0.0.1:8000/progress/?event_type=ops_inventory_probe&limit=20
Observed result on 2026-06-15:
[]
This means Inter-Hub can accept the fallback-first design, but cannot yet cite
live ops_inventory_probe evidence as a closure artifact.
What Is Validated
Activity-core local tests validate the fallback sink shape:
state-hub-progressposts one compactops_inventory_probeprogress event per run.- The fallback idempotency key is stable:
activity_core_run_id:context_key:ops_inventory_probe. - The posted summary is compact, for example:
Ops inventory probe: 1 ok, 0 degraded, 0 down, 1 skipped. - The detail includes
activity_id,activity_core_run_id,scheduled_for,source_type,context_key,idempotency_key, and a compactprobepayload. - The compact probe strips response bodies, authorization headers, credentials, URL query strings, and token-like values.
- Inter-Hub sink config absence is a clean skip with
reason = missing_inter_hub_config. - When config is present but submission is not implemented, the result is a
clean skip with
reason = inter_hub_sink_deferred.
What Is Not Yet Validated
- No live activity-core worker has posted an
ops_inventory_probeevent to the local State Hub instance. - No live Inter-Hub event has been submitted from activity-core.
- No production
OPS_HUB_KEYhandoff has been verified. - No
OPS_HUB_WIDGET_MAPPINGhas been deployed into the activity-core runtime. - No per-entity widget mapping has been smoke-tested against production ops-hub widgets.
Gaps Compared With Inter-Hub Submission
State Hub fallback is useful as continuity evidence, but it is not a full replacement for Inter-Hub submission:
- It records one compact run summary, not one governed widget event per entity.
- It cannot attach annotations directly to the affected service or endpoint widget.
- It does not prove ops-hub manifest vocabulary enforcement.
- It does not prove API consumer, key, rate-limit, or widget mapping behavior.
- It does not populate Inter-Hub event lists for hub dashboards or downstream widget governance workflows.
Closure Recommendation
ACTIVITY-WP-0007/T06 should not close as fully activated based on the current
State Hub state, because no live ops_inventory_probe progress event exists.
Two acceptable closure paths remain:
- Fallback-deferred closure: run one disabled/manual activity-core probe,
confirm a live non-secret
ops_inventory_probeprogress event in State Hub, and explicitly record that Inter-Hub submission is deferred untilIHUB-WP-0022-T03/T04/T07complete. - Full Inter-Hub closure: provision
OPS_HUB_KEY, deployOPS_HUB_WIDGET_MAPPING, seed/verify the ops-hub widgets, and submit one accepted Inter-Hub event per activity-core event type.
Until one of those paths is satisfied, Inter-Hub should keep the activity-core closure gate open.
Next Evidence To Capture
- Progress id for the first live
ops_inventory_probeevent. - Non-secret summary counts from that progress detail.
- Confirmation that Inter-Hub sink remains skipped cleanly while config is absent or deferred.
- After ops-hub activation, event ids for one accepted Inter-Hub submission per event type.