docs: advance remaining state hub workplans
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a053ff-1d6f-7fe2-ac1c-a6eb40a42a0c
This commit is contained in:
tegwick 2026-08-31 12:14:33 +02:00
parent 306a6e0ce8
commit 142c94287e
6 changed files with 241 additions and 337 deletions

View file

@ -0,0 +1,34 @@
# STATE-WP-0084 private Forge derivation cutover evidence
Date: 2026-08-31
The `railliance01` State Hub deployment is healthy on image
`main-a32112e`. Helm has `forgeRead.enabled: true`; the pod uses ServiceAccount
`state-hub`, a projected OpenBao Kubernetes token, and coordinate-only runtime
configuration. A non-secret in-pod check returned `available` from
`forge_read_token()`.
A transaction-rolled-back review derived all nine `rapp-*` repositories from
Forgejo before any projection write. It returned seven ordinary update sets and
two no-ops, with zero creations, retirements, refusals, or errors. The reviewed
commits were:
| Repository | Forge commit | Review result |
| --- | --- | --- |
| `rapp-core-hub` | `b322bf1531650a09a9ef0669d3c63091532ab078` | update |
| `rapp-issue-core` | `a78f38cfd8afb29ed23d150a4ea3e3dcd1f35381` | update |
| `rapp-openbao` | `89bc86b8aff549953ec744395ca47578aaac7591` | update |
| `rapp-policy-nexus` | `41c42e8d1a653af666da2e5e7e008a27464d9b87` | update |
| `rapp-postgres` | `2b7fe861f984f8539ca63ede662fe5719ace895a` | update |
| `rapp-qonto` | `240c462b9412a3932cc27dbbc13933378f4af07e` | update |
| `rapp-sbom-nexus` | `1566bcf69fc0757db5efc67f78b14af10d944c1b` | no-op |
| `rapp-tenant-engine` | `70a6dc3113b4da070690bf6e7a21c2bac67e2004` | no-op |
| `rapp-user-engine` | `608690d80d63cc373af17d387af29adec8a53c7b` | update |
Each commit was then reconciled through the guarded primary-only
`POST /repos/{slug}/work-record-projection/reconcile` API with
`acknowledge_retirements: false`. A second rolled-back review returned
`noop: 9`, with zero errors and every change count at zero.
No token value, credential-bearing URL, or private preflight artifact was
printed or stored in this evidence.

View file

@ -1,12 +1,109 @@
{
"captured_at": "2026-08-30T22:00:05.364069+00:00",
"captured_at": "2026-08-31T08:55:08.691404+00:00",
"api_base": "http://127.0.0.1:8000",
"workplan": "STATE-WP-0070",
"retired_interfaces": [],
"retired_interfaces": [
{
"id": "8051fb40-66c9-4dc4-a413-13e8573e04a3",
"interface_key": "event_subject:org.statehub.workstream.completed",
"interface_kind": "event_subject",
"legacy_since": "2026-06-04T06:09:42.198193Z",
"replacement_ref": "org.statehub.workplan.completed",
"owner_component": "state-hub.events",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:06.871333Z",
"created_at": "2026-06-04T06:09:42.198193Z",
"updated_at": "2026-08-31T08:55:06.756087Z"
},
{
"id": "cd9342fd-27e7-4a46-a1be-d41499e106a3",
"interface_key": "rest_api:DELETE /workstreams/{workstream_id}",
"interface_kind": "rest_api",
"legacy_since": "2026-06-06T17:28:13.052813Z",
"replacement_ref": "/workplans/{workplan_id}",
"owner_component": "state-hub.api",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.200322Z",
"created_at": "2026-06-06T17:28:13.052813Z",
"updated_at": "2026-08-31T08:55:08.089714Z"
},
{
"id": "d03ee274-cd6f-4cd5-8f22-e4d298416299",
"interface_key": "rest_api:GET /sbom/snapshots/{snapshot_id}",
"interface_kind": "rest_api",
"legacy_since": "2026-08-22T17:23:45.969876Z",
"replacement_ref": "sbom-nexus:/sbom/",
"owner_component": "state-hub.sbom-compat",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.470106Z",
"created_at": "2026-08-22T17:23:45.969876Z",
"updated_at": "2026-08-31T08:55:08.456139Z"
},
{
"id": "a6cb291e-8312-42f8-8a66-fde369482881",
"interface_key": "rest_api:GET /sbom/{repo_slug}",
"interface_kind": "rest_api",
"legacy_since": "2026-08-22T17:23:45.089542Z",
"replacement_ref": "sbom-nexus:/sbom/",
"owner_component": "state-hub.sbom-compat",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.754914Z",
"created_at": "2026-08-22T17:23:45.089542Z",
"updated_at": "2026-08-31T08:55:08.750826Z"
},
{
"id": "e4c140ec-7479-46f9-b185-4b533f19d639",
"interface_key": "rest_api:GET /workstreams/workplan-index",
"interface_kind": "rest_api",
"legacy_since": "2026-06-04T05:20:58.321869Z",
"replacement_ref": "/workplans/index",
"owner_component": "state-hub.api",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.939572Z",
"created_at": "2026-06-04T05:20:58.321869Z",
"updated_at": "2026-08-31T08:55:08.933482Z"
},
{
"id": "281fd706-b192-4194-8055-2d8733c115f9",
"interface_key": "rest_api:POST /workstreams/{workstream_id}/dependencies/",
"interface_kind": "rest_api",
"legacy_since": "2026-06-04T22:57:37.149207Z",
"replacement_ref": "/workplans/{workplan_id}/dependencies/",
"owner_component": "state-hub.api",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:09.130713Z",
"created_at": "2026-06-04T22:57:37.149207Z",
"updated_at": "2026-08-31T08:55:09.123888Z"
}
],
"weekly_review": {
"generated_at": "2026-08-30T22:00:09.083767Z",
"window_start": "2026-08-23T22:00:08.898813Z",
"window_end": "2026-08-30T22:00:08.898813Z",
"generated_at": "2026-08-31T08:55:09.323212Z",
"window_start": "2026-08-24T08:55:09.243515Z",
"window_end": "2026-08-31T08:55:09.243515Z",
"cadence": "weekly",
"activity_core_handoff": {
"activity_id": "statehub-legacy-interface-review",
@ -24,14 +121,14 @@
"legacy_since": "2026-06-04T06:09:42.198193Z",
"replacement_ref": "org.statehub.workplan.completed",
"owner_component": "state-hub.events",
"status": "legacy",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:06.871333Z",
"created_at": "2026-06-04T06:09:42.198193Z",
"updated_at": "2026-06-04T06:09:42.198193Z"
"updated_at": "2026-08-31T08:55:06.756087Z"
},
"all_time": {
"calls": 247,
@ -58,8 +155,8 @@
"components": {}
},
"last_seen_at": "2026-07-13T13:22:00.748140Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 48d (>= 30d required for 247 all-time call(s))"
"retirement_candidate": false,
"retirement_reason": "already retired"
},
{
"interface": {
@ -69,14 +166,14 @@
"legacy_since": "2026-06-06T17:28:13.052813Z",
"replacement_ref": "/workplans/{workplan_id}",
"owner_component": "state-hub.api",
"status": "legacy",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.200322Z",
"created_at": "2026-06-06T17:28:13.052813Z",
"updated_at": "2026-06-06T17:28:13.052813Z"
"updated_at": "2026-08-31T08:55:08.089714Z"
},
"all_time": {
"calls": 1,
@ -103,8 +200,8 @@
"components": {}
},
"last_seen_at": "2026-06-06T17:28:13.047529Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 85d (>= 7d required for 1 all-time call(s))"
"retirement_candidate": false,
"retirement_reason": "already retired"
},
{
"interface": {
@ -124,38 +221,38 @@
"updated_at": "2026-08-22T17:23:43.730661Z"
},
"all_time": {
"calls": 5,
"calls": 6,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 5
"unknown": 6
},
"users": {
"unknown": 5
"unknown": 6
},
"components": {
"unknown": 5
"unknown": 6
}
},
"window": {
"calls": 1,
"calls": 2,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 1
"unknown": 2
},
"users": {
"unknown": 1
"unknown": 2
},
"components": {
"unknown": 1
"unknown": 2
}
},
"last_seen_at": "2026-08-28T18:46:10.645377Z",
"last_seen_at": "2026-08-31T08:18:41.571768Z",
"retirement_candidate": false,
"retirement_reason": "1 call(s) in review window"
"retirement_reason": "2 call(s) in review window"
},
{
"interface": {
@ -267,14 +364,14 @@
"legacy_since": "2026-08-22T17:23:45.969876Z",
"replacement_ref": "sbom-nexus:/sbom/",
"owner_component": "state-hub.sbom-compat",
"status": "legacy",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.470106Z",
"created_at": "2026-08-22T17:23:45.969876Z",
"updated_at": "2026-08-22T17:23:45.969876Z"
"updated_at": "2026-08-31T08:55:08.456139Z"
},
"all_time": {
"calls": 1,
@ -301,8 +398,8 @@
"components": {}
},
"last_seen_at": "2026-08-22T17:23:45.967492Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 8d (>= 7d required for 1 all-time call(s))"
"retirement_candidate": false,
"retirement_reason": "already retired"
},
{
"interface": {
@ -312,14 +409,14 @@
"legacy_since": "2026-08-22T17:23:45.089542Z",
"replacement_ref": "sbom-nexus:/sbom/",
"owner_component": "state-hub.sbom-compat",
"status": "legacy",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.754914Z",
"created_at": "2026-08-22T17:23:45.089542Z",
"updated_at": "2026-08-22T17:23:45.089542Z"
"updated_at": "2026-08-31T08:55:08.750826Z"
},
"all_time": {
"calls": 1,
@ -346,8 +443,8 @@
"components": {}
},
"last_seen_at": "2026-08-22T17:23:45.670511Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 8d (>= 7d required for 1 all-time call(s))"
"retirement_candidate": false,
"retirement_reason": "already retired"
},
{
"interface": {
@ -453,14 +550,14 @@
"legacy_since": "2026-06-04T05:20:58.321869Z",
"replacement_ref": "/workplans/index",
"owner_component": "state-hub.api",
"status": "legacy",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:08.939572Z",
"created_at": "2026-06-04T05:20:58.321869Z",
"updated_at": "2026-06-04T05:20:58.321869Z"
"updated_at": "2026-08-31T08:55:08.933482Z"
},
"all_time": {
"calls": 39,
@ -487,8 +584,8 @@
"components": {}
},
"last_seen_at": "2026-07-08T05:20:33.378203Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 53d (>= 7d required for 39 all-time call(s))"
"retirement_candidate": false,
"retirement_reason": "already retired"
},
{
"interface": {
@ -668,7 +765,7 @@
},
"last_seen_at": "2026-08-16T01:03:41.093965Z",
"retirement_candidate": false,
"retirement_reason": "quiet 14d of 30d required for 811 all-time call(s)"
"retirement_reason": "quiet 15d of 30d required for 811 all-time call(s)"
},
{
"interface": {
@ -678,14 +775,14 @@
"legacy_since": "2026-06-04T22:57:37.149207Z",
"replacement_ref": "/workplans/{workplan_id}/dependencies/",
"owner_component": "state-hub.api",
"status": "legacy",
"status": "retired",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"notes": "Retired by STATE-WP-0069 closeout",
"retired_at": "2026-08-31T08:55:09.130713Z",
"created_at": "2026-06-04T22:57:37.149207Z",
"updated_at": "2026-06-04T22:57:37.149207Z"
"updated_at": "2026-08-31T08:55:09.123888Z"
},
"all_time": {
"calls": 4975,
@ -712,282 +809,11 @@
"components": {}
},
"last_seen_at": "2026-07-07T20:31:35.389791Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 54d (>= 30d required for 4975 all-time call(s))"
"retirement_candidate": false,
"retirement_reason": "already retired"
}
],
"retirement_candidates": [
{
"interface": {
"id": "8051fb40-66c9-4dc4-a413-13e8573e04a3",
"interface_key": "event_subject:org.statehub.workstream.completed",
"interface_kind": "event_subject",
"legacy_since": "2026-06-04T06:09:42.198193Z",
"replacement_ref": "org.statehub.workplan.completed",
"owner_component": "state-hub.events",
"status": "legacy",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"created_at": "2026-06-04T06:09:42.198193Z",
"updated_at": "2026-06-04T06:09:42.198193Z"
},
"all_time": {
"calls": 247,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 247
},
"users": {
"unknown": 247
},
"components": {
"state-hub.events": 247
}
},
"window": {
"calls": 0,
"tenant_count": 0,
"user_count": 0,
"component_count": 0,
"tenants": {},
"users": {},
"components": {}
},
"last_seen_at": "2026-07-13T13:22:00.748140Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 48d (>= 30d required for 247 all-time call(s))"
},
{
"interface": {
"id": "cd9342fd-27e7-4a46-a1be-d41499e106a3",
"interface_key": "rest_api:DELETE /workstreams/{workstream_id}",
"interface_kind": "rest_api",
"legacy_since": "2026-06-06T17:28:13.052813Z",
"replacement_ref": "/workplans/{workplan_id}",
"owner_component": "state-hub.api",
"status": "legacy",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"created_at": "2026-06-06T17:28:13.052813Z",
"updated_at": "2026-06-06T17:28:13.052813Z"
},
"all_time": {
"calls": 1,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 1
},
"users": {
"unknown": 1
},
"components": {
"unknown": 1
}
},
"window": {
"calls": 0,
"tenant_count": 0,
"user_count": 0,
"component_count": 0,
"tenants": {},
"users": {},
"components": {}
},
"last_seen_at": "2026-06-06T17:28:13.047529Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 85d (>= 7d required for 1 all-time call(s))"
},
{
"interface": {
"id": "d03ee274-cd6f-4cd5-8f22-e4d298416299",
"interface_key": "rest_api:GET /sbom/snapshots/{snapshot_id}",
"interface_kind": "rest_api",
"legacy_since": "2026-08-22T17:23:45.969876Z",
"replacement_ref": "sbom-nexus:/sbom/",
"owner_component": "state-hub.sbom-compat",
"status": "legacy",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"created_at": "2026-08-22T17:23:45.969876Z",
"updated_at": "2026-08-22T17:23:45.969876Z"
},
"all_time": {
"calls": 1,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 1
},
"users": {
"unknown": 1
},
"components": {
"unknown": 1
}
},
"window": {
"calls": 0,
"tenant_count": 0,
"user_count": 0,
"component_count": 0,
"tenants": {},
"users": {},
"components": {}
},
"last_seen_at": "2026-08-22T17:23:45.967492Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 8d (>= 7d required for 1 all-time call(s))"
},
{
"interface": {
"id": "a6cb291e-8312-42f8-8a66-fde369482881",
"interface_key": "rest_api:GET /sbom/{repo_slug}",
"interface_kind": "rest_api",
"legacy_since": "2026-08-22T17:23:45.089542Z",
"replacement_ref": "sbom-nexus:/sbom/",
"owner_component": "state-hub.sbom-compat",
"status": "legacy",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"created_at": "2026-08-22T17:23:45.089542Z",
"updated_at": "2026-08-22T17:23:45.089542Z"
},
"all_time": {
"calls": 1,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 1
},
"users": {
"unknown": 1
},
"components": {
"unknown": 1
}
},
"window": {
"calls": 0,
"tenant_count": 0,
"user_count": 0,
"component_count": 0,
"tenants": {},
"users": {},
"components": {}
},
"last_seen_at": "2026-08-22T17:23:45.670511Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 8d (>= 7d required for 1 all-time call(s))"
},
{
"interface": {
"id": "e4c140ec-7479-46f9-b185-4b533f19d639",
"interface_key": "rest_api:GET /workstreams/workplan-index",
"interface_kind": "rest_api",
"legacy_since": "2026-06-04T05:20:58.321869Z",
"replacement_ref": "/workplans/index",
"owner_component": "state-hub.api",
"status": "legacy",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"created_at": "2026-06-04T05:20:58.321869Z",
"updated_at": "2026-06-04T05:20:58.321869Z"
},
"all_time": {
"calls": 39,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 39
},
"users": {
"unknown": 39
},
"components": {
"unknown": 39
}
},
"window": {
"calls": 0,
"tenant_count": 0,
"user_count": 0,
"component_count": 0,
"tenants": {},
"users": {},
"components": {}
},
"last_seen_at": "2026-07-08T05:20:33.378203Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 53d (>= 7d required for 39 all-time call(s))"
},
{
"interface": {
"id": "281fd706-b192-4194-8055-2d8733c115f9",
"interface_key": "rest_api:POST /workstreams/{workstream_id}/dependencies/",
"interface_kind": "rest_api",
"legacy_since": "2026-06-04T22:57:37.149207Z",
"replacement_ref": "/workplans/{workplan_id}/dependencies/",
"owner_component": "state-hub.api",
"status": "legacy",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"created_at": "2026-06-04T22:57:37.149207Z",
"updated_at": "2026-06-04T22:57:37.149207Z"
},
"all_time": {
"calls": 4975,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 4975
},
"users": {
"unknown": 4975
},
"components": {
"unknown": 4975
}
},
"window": {
"calls": 0,
"tenant_count": 0,
"user_count": 0,
"component_count": 0,
"tenants": {},
"users": {},
"components": {}
},
"last_seen_at": "2026-07-07T20:31:35.389791Z",
"retirement_candidate": true,
"retirement_reason": "no usage in review window; quiet 54d (>= 30d required for 4975 all-time call(s))"
}
]
"retirement_candidates": []
},
"days": 7
}