docs: close classification publisher handoff

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a053ff-1d6f-7fe2-ac1c-a6eb40a42a0c
This commit is contained in:
tegwick 2026-09-01 02:33:10 +02:00
parent fd624021ec
commit 55002b6fc9
2 changed files with 30 additions and 20 deletions

View file

@ -3,9 +3,9 @@
## Scope ## Scope
This evidence covers the Repo Manager classification publisher and hub-core's This evidence covers the Repo Manager classification publisher and hub-core's
frozen `helixforge.repository-classification-projection` 1.0.0 consumer. It is frozen `helixforge.repository-classification-projection` 1.0.0 consumer. It
a live source/conformance proof from the workstation checkout fleet, not a includes both the original workstation conformance proof and the production
production deployment claim. Forgejo-backed deployment on railiance01.
## Registrar bootstrap ## Registrar bootstrap
@ -54,11 +54,20 @@ no database or private persistence model was shared.
- Hub-core focused tests cover cursor/token HTTP transport plus all frozen - Hub-core focused tests cover cursor/token HTTP transport plus all frozen
repository-navigation contract and ingestion behaviors repository-navigation contract and ingestion behaviors
## Remaining production gate ## Forgejo-backed production deployment
The code and cross-repository transport are ready. Production still needs an - Helm release `core-hub`, namespace `core-hub`, revision **24**
explicit placement/network decision because hub-core runs in the public Core - Repo Manager image digest:
Hub cluster while the authoritative checkout registry is host-local to the `sha256:a78fa953815b7abe78afb63ce43a29da9f09f609ace9aad2aeb98a746544e849`
Repo Manager worker. No broad host-path mount or implicit State Hub dependency - hub-core image digest:
was introduced to hide that boundary. `RMGR-WP-0013-T05` remains waiting for `sha256:6f9a0318349221a6db4e958383791f5bc9398c0df7bef4c8118d8a16b9ec6e4d`
that deployment handoff; `HUB-WP-0006-T06` must not switch traffic before it. - Source: private in-cluster Forgejo Service, no checkout mount or State Hub
runtime dependency
- Full anonymous scan: **3.45 seconds**, **114 accepted**, **9 bounded private
source errors**
- Live verification: passed through the admitted hub-core candidate to
publisher NetworkPolicy path
The residual production gate is recorded as `RAPPCOREHUB-WP-0003-T04`: mount a
dedicated Forgejo identity scoped exactly `read:repository`, prove all 123
repositories error-free, and only then enable `publisher.connectCandidate`.

View file

@ -4,7 +4,7 @@ type: workplan
title: "Repository classification projection publisher" title: "Repository classification projection publisher"
domain: infotech domain: infotech
repo: repo-manager repo: repo-manager
status: active status: finished
owner: codex owner: codex
topic_slug: infotech topic_slug: infotech
created: "2026-09-01" created: "2026-09-01"
@ -102,7 +102,7 @@ accepted as one current generation. Evidence:
```task ```task
id: RMGR-WP-0013-T05 id: RMGR-WP-0013-T05
status: progress status: done
priority: medium priority: medium
state_hub_task_id: "9dbdbcfc-f485-50fb-92b1-3e084563d276" state_hub_task_id: "9dbdbcfc-f485-50fb-92b1-3e084563d276"
``` ```
@ -111,13 +111,14 @@ Package the publisher runtime, document registry bootstrap and refresh, record
evidence, and hand the concrete endpoint/configuration to HUB-WP-0006-T06. evidence, and hand the concrete endpoint/configuration to HUB-WP-0006-T06.
**Update (2026-09-01):** placement is resolved to the `railiance01` Core Hub **Update (2026-09-01):** placement is resolved to the `railiance01` Core Hub
cluster. The publisher now uses a committed stable UUID-to-Forgejo registry, cluster. Helm revision 24 now runs the digest-pinned publisher from a committed
reads each classification at the exact default-branch commit, and has a stable UUID-to-Forgejo registry and reads each classification at the exact
digest-pinned, private ClusterIP deployment with constrained Forgejo HTTPS default-branch commit through the private in-cluster Forgejo Service. Live
egress. Live anonymous conformance accepts 114 public repositories and reports verification completes the full scan in 3.45 seconds, accepts 114 public
the nine private `rapp-*` repositories as errors. Final admission therefore repositories, and reports the nine private `rapp-*` repositories as bounded
waits only for a dedicated `read:repository` Forgejo token; reusing the errors. Final admission is handed to `RAPPCOREHUB-WP-0003-T04`, which waits for
operator/admin PAT or another workload's token is explicitly disallowed. a dedicated `read:repository` Forgejo identity; reusing the operator/admin PAT
or another workload's token is explicitly disallowed.
## Acceptance ## Acceptance
@ -125,4 +126,4 @@ operator/admin PAT or another workload's token is explicitly disallowed.
- [x] The output validates as contract 1.0.0 without hub-core coercion - [x] The output validates as contract 1.0.0 without hub-core coercion
- [x] Pages cannot be mixed across snapshots or page sizes - [x] Pages cannot be mixed across snapshots or page sizes
- [x] Invalid source state cannot replace hub-core's last accepted generation - [x] Invalid source state cannot replace hub-core's last accepted generation
- [ ] Runtime and deployment handoff are documented and reproducible - [x] Runtime and deployment handoff are documented and reproducible