generated from coulomb/repo-seed
Align ops-hub activity-core contract vocabulary
This commit is contained in:
@@ -8,7 +8,7 @@ status: active
|
||||
owner: codex
|
||||
topic_slug: inter_hub
|
||||
created: "2026-06-15"
|
||||
updated: "2026-06-16"
|
||||
updated: "2026-06-27"
|
||||
planning_priority: high
|
||||
planning_order: 22
|
||||
related_repos:
|
||||
@@ -94,20 +94,22 @@ closed.
|
||||
|
||||
## Proposed Evidence Vocabulary
|
||||
|
||||
Activity-core has already declared the event contracts it wants to send:
|
||||
The original activity-core suggestion used five evidence names. Production
|
||||
ops-hub now exposes a live seed vocabulary, so the Inter-Hub activation target
|
||||
is the compatibility mapping below rather than the early names verbatim:
|
||||
|
||||
| Event type | Suggested widget family | Purpose |
|
||||
|---|---|---|
|
||||
| `ops-service-observed` | service inventory | Record that a service exists and was observed. |
|
||||
| `ops-endpoint-verified` | endpoint inventory | Record endpoint reachability, auth challenge, or health verification. |
|
||||
| `ops-access-path-checked` | access path inventory | Record operator or service access path verification. |
|
||||
| `ops-backup-verified` | backup inventory | Record backup presence, recency, or restore-drill evidence. |
|
||||
| `ops-inventory-drift` | drift inventory | Record drift between expected and observed operations inventory. |
|
||||
| Original evidence intent | Live Inter-Hub target | Widget family | Purpose |
|
||||
|---|---|---|---|
|
||||
| `ops-service-observed` | `ops-service-discovered` | `ops-service` / `ops-service-catalog` | Record that a service exists and was discovered. |
|
||||
| `ops-endpoint-verified` | `ops-endpoint-verified` | `ops-endpoint` | Record endpoint reachability, auth challenge, or health verification. |
|
||||
| `ops-access-path-checked` | deferred | State Hub fallback until ops-hub adds access-path vocabulary or maps it to readiness/risk | Record operator or service access path verification without inventing unsupported registry names. |
|
||||
| `ops-backup-verified` | `ops-backup-verified` | `ops-backup-set` | Record backup presence, recency, or restore-drill evidence after a backup-set widget exists. |
|
||||
| `ops-inventory-drift` | `ops-drift-detected` | `ops-readiness-gate` / `ops-risk` | Record drift between expected and observed operations inventory. |
|
||||
|
||||
The first implementation should keep one stable widget per entity and evidence
|
||||
family where possible. If activity-core cannot know entity identity reliably,
|
||||
use one aggregate intake widget per family as a conservative first slice, then
|
||||
split into per-entity widgets after payload evidence proves stable.
|
||||
The first implementation should use existing seeded widgets where possible and
|
||||
seed only the missing backup/risk widgets that are needed for the attended
|
||||
smoke. If activity-core cannot know entity identity reliably, keep State Hub
|
||||
fallback evidence rather than submitting to a made-up aggregate widget.
|
||||
|
||||
## Tasks
|
||||
|
||||
@@ -179,6 +181,13 @@ versioned non-secret `OPS_HUB_WIDGET_MAPPING` JSON shape, aggregate-first
|
||||
fallback widgets, per-entity selector rules, stable `widgetRef` values, and
|
||||
Secret-only handling for `OPS_HUB_KEY`.
|
||||
|
||||
Compatibility note (2026-06-27): revised the mapping contract to match the
|
||||
live ops-hub seed vocabulary. The mapping now aliases `ops-service-observed`
|
||||
to `ops-service-discovered`, aliases `ops-inventory-drift` to
|
||||
`ops-drift-detected`, uses declared ops policy scopes instead of the old
|
||||
`ops-evidence` proposal, and defers access-path evidence until ops-hub has a
|
||||
supported event/widget target.
|
||||
|
||||
---
|
||||
|
||||
### T03 - Prepare manifest vocabulary and seed widgets
|
||||
@@ -218,6 +227,12 @@ environment with the `5101eb5` COUNT decode fix live and an authenticated
|
||||
operator/runtime key path. The required vocabulary is documented, but no live
|
||||
manifest or widget seed was performed in this implementation slice.
|
||||
|
||||
Progress note (2026-06-27): public production probes show an `ops-hub` row and
|
||||
the live seed registry vocabulary, and the contract docs now target that live
|
||||
vocabulary. T03 remains waiting because protected widget lookup, widget ids,
|
||||
any missing backup/risk seed widgets, and authenticated smoke evidence still
|
||||
require the operator/runtime key path.
|
||||
|
||||
---
|
||||
|
||||
### T04 - Provision the runtime API key outside Git
|
||||
@@ -289,6 +304,11 @@ Inter-Hub request envelope, shared validation rules, idempotency expectations,
|
||||
forbidden payload material, expected API errors, and one example for each
|
||||
activity-core event type.
|
||||
|
||||
Compatibility note (2026-06-27): revised payload examples to submit only live
|
||||
ops-hub event types. Access-path payloads are documented as deferred fallback
|
||||
evidence, and old event names are treated as aliases that should not be posted
|
||||
to Inter-Hub.
|
||||
|
||||
---
|
||||
|
||||
### T06 - Validate fallback-first intake
|
||||
|
||||
Reference in New Issue
Block a user