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
This evidence covers the Repo Manager classification publisher and hub-core's
frozen `helixforge.repository-classification-projection` 1.0.0 consumer. It is
a live source/conformance proof from the workstation checkout fleet, not a
production deployment claim.
frozen `helixforge.repository-classification-projection` 1.0.0 consumer. It
includes both the original workstation conformance proof and the production
Forgejo-backed deployment on railiance01.
## 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
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
explicit placement/network decision because hub-core runs in the public Core
Hub cluster while the authoritative checkout registry is host-local to the
Repo Manager worker. No broad host-path mount or implicit State Hub dependency
was introduced to hide that boundary. `RMGR-WP-0013-T05` remains waiting for
that deployment handoff; `HUB-WP-0006-T06` must not switch traffic before it.
- Helm release `core-hub`, namespace `core-hub`, revision **24**
- Repo Manager image digest:
`sha256:a78fa953815b7abe78afb63ce43a29da9f09f609ace9aad2aeb98a746544e849`
- hub-core image digest:
`sha256:6f9a0318349221a6db4e958383791f5bc9398c0df7bef4c8118d8a16b9ec6e4d`
- 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"
domain: infotech
repo: repo-manager
status: active
status: finished
owner: codex
topic_slug: infotech
created: "2026-09-01"
@ -102,7 +102,7 @@ accepted as one current generation. Evidence:
```task
id: RMGR-WP-0013-T05
status: progress
status: done
priority: medium
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.
**Update (2026-09-01):** placement is resolved to the `railiance01` Core Hub
cluster. The publisher now uses a committed stable UUID-to-Forgejo registry,
reads each classification at the exact default-branch commit, and has a
digest-pinned, private ClusterIP deployment with constrained Forgejo HTTPS
egress. Live anonymous conformance accepts 114 public repositories and reports
the nine private `rapp-*` repositories as errors. Final admission therefore
waits only for a dedicated `read:repository` Forgejo token; reusing the
operator/admin PAT or another workload's token is explicitly disallowed.
cluster. Helm revision 24 now runs the digest-pinned publisher from a committed
stable UUID-to-Forgejo registry and reads each classification at the exact
default-branch commit through the private in-cluster Forgejo Service. Live
verification completes the full scan in 3.45 seconds, accepts 114 public
repositories, and reports the nine private `rapp-*` repositories as bounded
errors. Final admission is handed to `RAPPCOREHUB-WP-0003-T04`, which waits for
a dedicated `read:repository` Forgejo identity; reusing the operator/admin PAT
or another workload's token is explicitly disallowed.
## 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] Pages cannot be mixed across snapshots or page sizes
- [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