generated from coulomb/repo-seed
docs: close ops-hub evidence intake T06 and T08 with live validation
Record live ops_inventory_probe fallback evidence from activity-core and mark IHUB-WP-0022 T06/T08 done with the activity-core closure handoff on the fallback-deferred path.
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
# Ops Hub Activity-Core Fallback Validation
|
||||
|
||||
Date: 2026-06-15
|
||||
Date: 2026-06-16
|
||||
|
||||
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.
|
||||
The State Hub fallback path is implemented, locally tested in activity-core,
|
||||
and now verified through a live Railiance01 activity-core manual trigger.
|
||||
|
||||
Direct query:
|
||||
|
||||
@@ -15,18 +15,41 @@ Direct query:
|
||||
GET http://127.0.0.1:8000/progress/?event_type=ops_inventory_probe&limit=20
|
||||
```
|
||||
|
||||
Observed result on 2026-06-15:
|
||||
Observed result on 2026-06-16:
|
||||
|
||||
```json
|
||||
[]
|
||||
[
|
||||
{
|
||||
"id": "db408146-0310-4ac3-ac77-f73c5a41e070",
|
||||
"event_type": "ops_inventory_probe",
|
||||
"summary": "Ops inventory probe: 0 ok, 4 degraded, 0 down, 5 skipped",
|
||||
"author": "activity-core",
|
||||
"created_at": "2026-06-16T05:34:02.711888Z"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
This means Inter-Hub can accept the fallback-first design, but cannot yet cite
|
||||
live `ops_inventory_probe` evidence as a closure artifact.
|
||||
Railiance also posted verifier evidence note
|
||||
`60256e9a-9d1b-44db-8999-738cf03bca2e`, proving that the progress event was
|
||||
matched to the exact manual activity-core trigger run:
|
||||
|
||||
- manual workflow:
|
||||
`activity-40d15a87-7ff6-4d8e-992c-37df15f95110:manual-d2daa0e4-2d54-430e-a957-dca0ec9f469d`
|
||||
- matched activity-core run id:
|
||||
`90e3b112-d1e3-51af-8fb2-cb61f26add17`
|
||||
- matched fallback progress:
|
||||
`db408146-0310-4ac3-ac77-f73c5a41e070`
|
||||
- immutable runtime evidence:
|
||||
`api_image_id=sha256:5ff92a8217c450ae06075d00862b6e2a92a83ca09eea18b5a5e96b5d2d728b35`
|
||||
|
||||
This means Inter-Hub can cite live fallback evidence as the continuity
|
||||
artifact for activity-core while the governed Inter-Hub widget/API-key path
|
||||
remains explicitly deferred.
|
||||
|
||||
## What Is Validated
|
||||
|
||||
Activity-core local tests validate the fallback sink shape:
|
||||
Activity-core local tests and the Railiance01 verifier now validate the
|
||||
fallback sink shape:
|
||||
|
||||
- `state-hub-progress` posts one compact `ops_inventory_probe` progress event
|
||||
per run.
|
||||
@@ -43,11 +66,14 @@ Activity-core local tests validate the fallback sink shape:
|
||||
`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`.
|
||||
- Railiance verifier evidence correlates the State Hub progress event to the
|
||||
exact manual activity-core trigger run id instead of accepting any fresh
|
||||
`ops_inventory_probe`.
|
||||
- The verifier evidence includes immutable runtime identity through the live
|
||||
`actcore-api` container image digest.
|
||||
|
||||
## What Is Not Yet Validated
|
||||
|
||||
- No live activity-core worker has posted an `ops_inventory_probe` event to the
|
||||
local State Hub instance.
|
||||
- No live Inter-Hub event has been submitted from activity-core.
|
||||
- No production `OPS_HUB_KEY` handoff has been verified.
|
||||
- No `OPS_HUB_WIDGET_MAPPING` has been deployed into the activity-core runtime.
|
||||
@@ -69,27 +95,24 @@ replacement for Inter-Hub submission:
|
||||
|
||||
## 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.
|
||||
`ACTIVITY-WP-0007/T06` may remain closed using fallback-deferred closure.
|
||||
The live fallback path now has non-secret State Hub evidence, and the
|
||||
Inter-Hub submission path is explicitly deferred until `IHUB-WP-0022-T03`,
|
||||
`IHUB-WP-0022-T04`, and `IHUB-WP-0022-T07` complete.
|
||||
|
||||
Two acceptable closure paths remain:
|
||||
This is not full Inter-Hub activation. The remaining full activation path is:
|
||||
|
||||
1. Fallback-deferred closure: run one disabled/manual activity-core probe,
|
||||
confirm a live non-secret `ops_inventory_probe` progress event in State Hub,
|
||||
and explicitly record that Inter-Hub submission is deferred until
|
||||
`IHUB-WP-0022-T03/T04/T07` complete.
|
||||
2. Full Inter-Hub closure: provision `OPS_HUB_KEY`, deploy
|
||||
`OPS_HUB_WIDGET_MAPPING`, seed/verify the ops-hub widgets, and submit one
|
||||
accepted Inter-Hub event per activity-core event type.
|
||||
1. Provision `OPS_HUB_KEY`.
|
||||
2. Deploy `OPS_HUB_WIDGET_MAPPING`.
|
||||
3. Seed and verify the ops-hub widgets.
|
||||
4. 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.
|
||||
Until that path is satisfied, Inter-Hub should keep its own per-entity intake
|
||||
tasks open, but it does not need to hold the activity-core closure gate open.
|
||||
|
||||
## Next Evidence To Capture
|
||||
|
||||
- Progress id for the first live `ops_inventory_probe` event.
|
||||
- Non-secret summary counts from that progress detail.
|
||||
- Confirmation that Inter-Hub sink remains skipped cleanly while config is
|
||||
absent or deferred.
|
||||
absent or deferred in the deployed runtime.
|
||||
- After ops-hub activation, event ids for one accepted Inter-Hub submission per
|
||||
event type.
|
||||
|
||||
@@ -8,7 +8,7 @@ status: active
|
||||
owner: codex
|
||||
topic_slug: inter_hub
|
||||
created: "2026-06-15"
|
||||
updated: "2026-06-15"
|
||||
updated: "2026-06-16"
|
||||
planning_priority: high
|
||||
planning_order: 22
|
||||
related_repos:
|
||||
@@ -295,7 +295,7 @@ activity-core event type.
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0022-T06
|
||||
status: wait
|
||||
status: done
|
||||
priority: medium
|
||||
depends_on: T01
|
||||
state_hub_task_id: "38b54991-bed2-4f9d-bede-bea35821b1ef"
|
||||
@@ -325,6 +325,17 @@ for `event_type=ops_inventory_probe` returned no live events. This task remains
|
||||
waiting on a disabled/manual activity-core probe or other live fallback
|
||||
evidence before it can close.
|
||||
|
||||
Implementation note (2026-06-16): completed fallback-first validation using
|
||||
Railiance cluster-owned verifier evidence. State Hub progress
|
||||
`db408146-0310-4ac3-ac77-f73c5a41e070` records a live
|
||||
`ops_inventory_probe` summary from activity-core:
|
||||
`0 ok, 4 degraded, 0 down, 5 skipped`. Railiance evidence note
|
||||
`60256e9a-9d1b-44db-8999-738cf03bca2e` proves the progress event matched the
|
||||
manual trigger run id `90e3b112-d1e3-51af-8fb2-cb61f26add17` and includes the
|
||||
live `actcore-api` image digest. Updated the validation document with the
|
||||
evidence, gaps, and closure recommendation. Inter-Hub per-entity submission
|
||||
remains deferred to T03/T04/T07.
|
||||
|
||||
---
|
||||
|
||||
### T07 - Run end-to-end Inter-Hub submission smoke
|
||||
@@ -367,9 +378,9 @@ Inter-Hub submission beyond its current deferred sink.
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0022-T08
|
||||
status: wait
|
||||
status: done
|
||||
priority: medium
|
||||
depends_on: T06,T07
|
||||
depends_on: T06
|
||||
state_hub_task_id: "4a7ed0ed-552e-42d3-a90f-1efd52b8851e"
|
||||
```
|
||||
|
||||
@@ -393,6 +404,15 @@ Current wait reason (2026-06-15): closure handoff depends on either a live
|
||||
State Hub fallback event plus an explicit Inter-Hub deferral decision, or a
|
||||
successful Inter-Hub submission smoke.
|
||||
|
||||
Implementation note (2026-06-16): completed the activity-core closure handoff
|
||||
on the fallback-deferred path. `ACTIVITY-WP-0007/T06` is already closed in
|
||||
activity-core and State Hub. Inter-Hub accepts that closure on live State Hub
|
||||
fallback evidence (`ops_inventory_probe`
|
||||
`db408146-0310-4ac3-ac77-f73c5a41e070`) with explicit deferral of governed
|
||||
Inter-Hub submissions until the ops-hub manifest/widget path, runtime key, and
|
||||
end-to-end smoke are complete under T03, T04, and T07. No secret values or
|
||||
runtime key material are required for this handoff.
|
||||
|
||||
## Exit Criteria Summary
|
||||
|
||||
| Task | Deliverable | Status |
|
||||
@@ -402,9 +422,9 @@ successful Inter-Hub submission smoke.
|
||||
| T03 | Active ops-hub manifest and seed widgets | wait |
|
||||
| T04 | `OPS_HUB_KEY` stored outside Git and smokeable | wait |
|
||||
| T05 | `docs/contracts/ops-hub-activity-core-event-payloads.md` | done |
|
||||
| T06 | `docs/evidence/ops-hub-activity-core-fallback-validation.md` | wait |
|
||||
| T06 | `docs/evidence/ops-hub-activity-core-fallback-validation.md` | done |
|
||||
| T07 | End-to-end Inter-Hub submission smoke evidence | wait |
|
||||
| T08 | activity-core closure handoff | wait |
|
||||
| T08 | activity-core closure handoff | done |
|
||||
|
||||
## Binding Principles
|
||||
|
||||
|
||||
Reference in New Issue
Block a user