Reconcile deployed pilot and published browser discovery progress

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a13590-a16f-7f60-be60-fd71627bc99d
This commit is contained in:
tegwick 2026-10-13 21:43:20 +02:00
parent 70268154c0
commit 3a30ef159a
8 changed files with 661 additions and 28 deletions

View file

@ -3,7 +3,7 @@
A bounded Playwright/Chromium job service for responsive screenshots and keyboard
journeys, with a standalone Python client and a private Railiance workload package.
**Implemented, verified locally and published. Managed activation awaits platform admission.**
**Published and running as a Railiance pilot. Self-service consumer access remains pending.**
The independent agent trial and pinned OnCo home-page pilot passed. The service
uses Playwright 1.64.0 and Chromium 156.0.8078.4; consumers need Python 3.10+ and
no browser installation.

View file

@ -1,10 +1,11 @@
# Scope — rapp-playwright
As of 2026-10-13, the service, standalone Python client, browser trial and
Railiance package are implemented and verified locally. **Managed Railiance
availability is not established.** Release 0.1.0 is published and verified by a
cluster pull; platform admission has not been confirmed. The founder selected `railiance-platform` as lifecycle
owner; service implementation remains here.
As of 2026-10-13 21:42 Europe/Berlin, release 0.1.0 is published and the
**Railiance pilot is deployed, with 1/1 Ready replica and a Bound 2Gi PVC**.
Platform recorded operator-driven browser, permission, cancellation and restart
proof. **Self-service managed availability is not yet established:** real human
and coding-agent authentication and per-caller connectivity remain pending.
Lifecycle ownership is railiance-platform; service implementation remains here.
## Implemented and evidenced
@ -21,6 +22,11 @@ owner; service implementation remains here.
browser negative passed. Independent initial and final-image trials verified
screenshots, keyboard results, artifact hashes and failure categories. Final
image restart preserved completed receipt/artifact retrieval.
- Platform pilot on railiance01 passed 14 responsive/keyboard steps, six negative/health
checks and same-image restart with four preserved screenshots. Fresh readback
confirmed Ready, the exact release image, PVC binding and consumer group binding.
All four retained PNG hashes match original and post-restart download receipts.
Access used administrator impersonation; this does not prove consumer login.
- Pinned OnCo home-page pilot passed at desktop and narrow widths with skip-link
keyboard assertions. Evidence was handed to content-explorer; its T04 and
visual/route acceptance remain consumer-owned.
@ -42,23 +48,29 @@ artifacts expire; sanitized evidence under `docs/evidence/` is retained.
| --- | --- |
| WP-0002 | Finished: consumption contract, lifecycle and trial/pilot design |
| WP-0003 | Finished: tested image published at its exact digest and pulled on railiance01; ingress upload deadline fixed. |
| WP-0004 | T02 provider trial/pilot done. T01 waits on platform admission/access; T03 waits on reuse-surface's maintained/published discovery update. |
| WP-0004 | T02 provider trial/pilot done. T01 awaits actual consumer identity/access and remaining recovery evidence. T03 has published A5 local-provider discovery; final managed availability update awaits T01. |
Fresh resumed readback confirmed the `playwright` namespace is absent. No browser workload was created. Server
admission, private consumer binding, live target reachability, managed independent
trial, restart/cancellation and cross-version rollback remain unverified.
[Release 0.1.0](releases/0.1.0.json) is now published; see the
[publication fix and pull evidence](docs/evidence/2026-10-13-publication.md). Package validation/rendering
and Kubernetes client dry-run passed; they do not imply server admission.
Platform admitted and deployed the reviewed package under RPF-WP-0056. The
`playwright-consumers` group is bound to the namespace consumer Role. Initial
eligibility includes all identified platform humans and coding agents; no further
membership decision is needed. Registration, native JWT authentication,
per-caller API transport, renewal/revocation and real consumer receipts are still
open in RPF-WP-0056-T03. Custodian coordination is requested in T06.
Existing capability `capability.infotech.headless-browser` was still D3/A2/C2/R2
with source-reuse/planned-provider wording at readback. The owner received actual
local evidence and the usable client path; registry publication is pending.
The [fresh readback](docs/evidence/2026-10-13-2031-resumed-readback.json) also
confirmed local preflight availability at the checked time. The
[admission review packet](docs/platform-admission.md) identifies the exact package
and remaining platform decisions. Publication updates were sent in both existing
owner threads. Open workplan tasks retain blocker messages and exact resume steps.
Existing capability `capability.infotech.headless-browser` is now published at
D3/A5/C2/R2 with pinned client/contract/release links and runnable local guidance.
REUSE-WP-0024 completed the local-provider discovery and relevance work. General
managed availability must remain unclaimed until real consumer acceptance.
The published summary still says managed admission is pending; its next update
should distinguish the running operator pilot from incomplete consumer access.
The [owner progress readback](docs/evidence/2026-10-13-owner-progress-readback.json)
retains current cluster/discovery observations and platform runtime receipts.
Platform's [consumer access instructions](https://forgejo.coulomb.social/coulomb/railiance-platform/src/commit/d303c99e3be993ffa989bc9ba3d7b471903858ce/docs/playwright-consumer-access.md)
are prepared but conditional on identity-owner activation. The earlier
[admission review](docs/platform-admission.md) is retained as history; package
admission, deployment and the binding are no longer the outstanding decision.
Abrupt-interruption recovery and actual cross-version rollback remain unverified.
## Deliberate limits
@ -69,5 +81,5 @@ sandbox is disabled; hostile pages and mutually untrusted tenants are unsupporte
Target failures identify the category but not detailed DNS/TLS/HTTP causes.
The OnCo pilot covers the home page, not all consumer routes or accessibility.
See the [timestamped intent assessment](history/2026-10-13-2033-intent-scope-assessment.md)
See the [timestamped intent assessment](history/2026-10-13-2142-intent-scope-assessment.md)
for the prioritized gaps and their acceptance evidence.

View file

@ -12,7 +12,7 @@ workload_identity:
service_account: playwright
notes:
- Service implementation and consumer contract remain in rapp-playwright.
- Founder selected railiance-platform as lifecycle owner on 2026-10-13; admission confirmation remains requested in State Hub c82d75f3-3191-410d-a8c8-fd647bf7f3ef.
- Platform admitted and deployed the pilot under RPF-WP-0056 on 2026-10-13; real consumer access and managed availability acceptance remain pending.
data_classification: internal
criticality: low
primary_rail: rail-kubernetes

View file

@ -0,0 +1,532 @@
{
"observed_at": "2026-10-13T19:41:22.769643+00:00",
"cluster": [
{
"kind": "Deployment",
"name": "playwright",
"ready_replicas": 1,
"desired_replicas": 1,
"images": [
"forgejo.coulomb.social/coulomb/rapp-playwright@sha256:8d6fd5a8172cf906bb503642ed620761945c5138b86f6396c36f65cbe6def441"
]
},
{
"kind": "PersistentVolumeClaim",
"name": "playwright-artifacts",
"phase": "Bound",
"capacity": {
"storage": "2Gi"
}
},
{
"kind": "RoleBinding",
"name": "playwright-consumers",
"role_ref": {
"apiGroup": "rbac.authorization.k8s.io",
"kind": "Role",
"name": "playwright-consumer"
},
"subjects": [
{
"apiGroup": "rbac.authorization.k8s.io",
"kind": "Group",
"name": "playwright-consumers"
}
]
}
],
"discovery": {
"url": "https://reuse.coulomb.social/v1/federated",
"composed_at": "2026-10-13T18:49:02+00:00",
"matches": [
{
"id": "capability.infotech.headless-browser",
"name": "Headless Browser Automation",
"summary": "Headless browser automation, screenshots and keyboard trials through rapp-playwright 0.1.0 (Playwright 1.64.0, Chromium 156.0.8078.4). Published A5 local container; managed Railiance admission is pending. Download the Python 3.10+ standalone client from https://forgejo.coulomb.social/coulomb/rapp-playwright/raw/commit/8831a05aeba5ce588f3b395ade676dde2a151c5d/client/rapp_playwright.py and run `python3 rapp_playwright.py --url http://127.0.0.1:18083 preflight`, then `python3 rapp_playwright.py --url http://127.0.0.1:18083 trial --out trial-01` with a fresh output directory. This endpoint was verified locally on 2026-10-13 and is ephemeral; it installs no browser for the caller. If unreachable, follow the local container setup in the capability card or adapt its A2 source examples; this is an availability gap on the existing capability. Contract: https://forgejo.coulomb.social/coulomb/rapp-playwright/src/commit/8831a05aeba5ce588f3b395ade676dde2a151c5d/docs/consumer-contract.md.",
"vector": "D3 / A5 / C2 / R2",
"domain": "infotech",
"status": "reviewed",
"owner": "reuse-surface",
"path": "registry/capabilities/capability.infotech.headless-browser.md",
"tags": [
"headless",
"browser",
"automation",
"playwright",
"chromium",
"testing",
"screenshots",
"extraction",
"firefox",
"webkit",
"selenium",
"puppeteer"
],
"consumption_modes": [
"informational",
"source adaptation",
"JavaScript library",
"Python library",
"cli",
"service API",
"container"
],
"source_repo": "reuse-surface",
"source_url": "https://forgejo.coulomb.social/coulomb/reuse-surface/raw/branch/main/registry/indexes/capabilities.yaml",
"source_index": "/data/cache/reuse-surface.yaml"
}
]
},
"railiance-platform_commit": "d303c99e3be993ffa989bc9ba3d7b471903858ce",
"reuse-surface_commit": "a6da9f2c5c0cb8a69ddf4ea2386e79699a90c2e1",
"runtime.json": {
"observed_at": "2026-10-13T18:52:58.325239+00:00",
"image": "forgejo.coulomb.social/coulomb/rapp-playwright@sha256:8d6fd5a8172cf906bb503642ed620761945c5138b86f6396c36f65cbe6def441",
"replica_ready": true,
"pvc_phase": "Bound",
"pvc_uid": "da36929a-1d69-457a-ad99-7580ef86ab18",
"pvc_size": "2Gi",
"initial_pod_uid": "3475ad46-d9d8-4b97-99b7-54b4d984d2f2",
"restarted_pod_uid": "a22030a4-c12d-4e97-be8d-98a8d80808c2",
"same_image_restart_completed_artifacts_verified": true,
"preflight_after_restart": {
"available": true,
"error": null,
"checked_at": "2026-10-13T18:51:59.595Z",
"browser_version": "156.0.8078.4",
"api_version": "1",
"service_version": "0.1.0",
"playwright_version": "1.64.0",
"execution_location": "railiance01/playwright",
"release": "forgejo.coulomb.social/coulomb/rapp-playwright@sha256:8d6fd5a8172cf906bb503642ed620761945c5138b86f6396c36f65cbe6def441",
"allowed_origins": [
"https://onco.cc"
],
"fixture": true,
"active": 0,
"queued": 0,
"limits": {
"concurrency": 1,
"max_queue": 4,
"max_timeout_ms": 120000,
"retention_ms": 3600000,
"max_runs": 64
}
},
"access_path": "Existing authenticated operator SSH; administrator impersonation of playwright-consumers; loopback-only port-forward",
"actual_consumer_authentication_proven": false,
"cross_version_rollback_proven": false,
"abrupt_interruption_recovery_proven": false,
"source_workload_sha256": "d5d3f3d816dd4320059b4fcdc8409fb84d6075aeb1f409f4d112263d7e14191d"
},
"negative-checks.json": {
"wrong_token": true,
"wrong_artifact_token": true,
"ui_failure_distinguished": true,
"bounded_cancellation": true,
"private_target_refused": true,
"preflight_healthy": true
},
"receipt.json": {
"id": "6a51e164-cec5-46ed-89b1-92b93dd16d23",
"api_version": "1",
"status": "passed",
"error": null,
"label": "independent-browser-trial",
"target": "fixture",
"viewports": [
{
"name": "desktop",
"width": 1280,
"height": 800
},
{
"name": "narrow",
"width": 390,
"height": 844
}
],
"timeout_ms": 60000,
"created_at": "2026-10-13T18:50:40.554Z",
"expires_at": "2026-10-13T19:50:40.554Z",
"service_version": "0.1.0",
"playwright_version": "1.64.0",
"release": "forgejo.coulomb.social/coulomb/rapp-playwright@sha256:8d6fd5a8172cf906bb503642ed620761945c5138b86f6396c36f65cbe6def441",
"execution_location": "railiance01/playwright",
"browser_version": "156.0.8078.4",
"completed_steps": 14,
"steps": [
{
"viewport": "desktop",
"index": 0,
"action": "visible",
"status": "passed",
"at": "2026-10-13T18:50:42.655Z",
"selector": "h1"
},
{
"viewport": "desktop",
"index": 1,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:50:42.815Z",
"selector": "#count"
},
{
"viewport": "desktop",
"index": 2,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:50:42.851Z",
"key": "Tab"
},
{
"viewport": "desktop",
"index": 3,
"action": "focused",
"status": "passed",
"at": "2026-10-13T18:50:42.911Z",
"selector": "#increment"
},
{
"viewport": "desktop",
"index": 4,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:50:42.924Z",
"key": "Enter"
},
{
"viewport": "desktop",
"index": 5,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:50:42.937Z",
"selector": "#count"
},
{
"viewport": "desktop",
"index": 6,
"action": "screenshot",
"status": "passed",
"at": "2026-10-13T18:50:42.949Z"
},
{
"viewport": "narrow",
"index": 0,
"action": "visible",
"status": "passed",
"at": "2026-10-13T18:50:43.919Z",
"selector": "h1"
},
{
"viewport": "narrow",
"index": 1,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:50:44.063Z",
"selector": "#count"
},
{
"viewport": "narrow",
"index": 2,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:50:44.180Z",
"key": "Tab"
},
{
"viewport": "narrow",
"index": 3,
"action": "focused",
"status": "passed",
"at": "2026-10-13T18:50:44.228Z",
"selector": "#increment"
},
{
"viewport": "narrow",
"index": 4,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:50:44.260Z",
"key": "Enter"
},
{
"viewport": "narrow",
"index": 5,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:50:44.275Z",
"selector": "#count"
},
{
"viewport": "narrow",
"index": 6,
"action": "screenshot",
"status": "passed",
"at": "2026-10-13T18:50:44.314Z"
}
],
"artifacts": [
{
"name": "desktop-6-keyboard-result.png",
"bytes": 26622
},
{
"name": "desktop-final.png",
"bytes": 26622
},
{
"name": "narrow-6-keyboard-result.png",
"bytes": 24280
},
{
"name": "narrow-final.png",
"bytes": 24280
}
],
"started_at": "2026-10-13T18:50:40.557Z",
"blocked_requests": 12,
"finished_at": "2026-10-13T18:50:44.840Z",
"downloads": [
{
"name": "desktop-6-keyboard-result.png",
"bytes": 26622,
"sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad"
},
{
"name": "desktop-final.png",
"bytes": 26622,
"sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad"
},
{
"name": "narrow-6-keyboard-result.png",
"bytes": 24280,
"sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8"
},
{
"name": "narrow-final.png",
"bytes": 24280,
"sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8"
}
]
},
"after-restart-receipt.json": {
"id": "b11fd28b-58fe-4b20-a15e-32b18ea76f2b",
"api_version": "1",
"status": "passed",
"error": null,
"label": "independent-browser-trial",
"target": "fixture",
"viewports": [
{
"name": "desktop",
"width": 1280,
"height": 800
},
{
"name": "narrow",
"width": 390,
"height": 844
}
],
"timeout_ms": 60000,
"created_at": "2026-10-13T18:52:59.076Z",
"expires_at": "2026-10-13T19:52:59.076Z",
"service_version": "0.1.0",
"playwright_version": "1.64.0",
"release": "forgejo.coulomb.social/coulomb/rapp-playwright@sha256:8d6fd5a8172cf906bb503642ed620761945c5138b86f6396c36f65cbe6def441",
"execution_location": "railiance01/playwright",
"browser_version": "156.0.8078.4",
"completed_steps": 14,
"steps": [
{
"viewport": "desktop",
"index": 0,
"action": "visible",
"status": "passed",
"at": "2026-10-13T18:53:01.091Z",
"selector": "h1"
},
{
"viewport": "desktop",
"index": 1,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:53:01.214Z",
"selector": "#count"
},
{
"viewport": "desktop",
"index": 2,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:53:01.323Z",
"key": "Tab"
},
{
"viewport": "desktop",
"index": 3,
"action": "focused",
"status": "passed",
"at": "2026-10-13T18:53:01.360Z",
"selector": "#increment"
},
{
"viewport": "desktop",
"index": 4,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:53:01.393Z",
"key": "Enter"
},
{
"viewport": "desktop",
"index": 5,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:53:01.407Z",
"selector": "#count"
},
{
"viewport": "desktop",
"index": 6,
"action": "screenshot",
"status": "passed",
"at": "2026-10-13T18:53:01.454Z"
},
{
"viewport": "narrow",
"index": 0,
"action": "visible",
"status": "passed",
"at": "2026-10-13T18:53:02.526Z",
"selector": "h1"
},
{
"viewport": "narrow",
"index": 1,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:53:02.786Z",
"selector": "#count"
},
{
"viewport": "narrow",
"index": 2,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:53:02.877Z",
"key": "Tab"
},
{
"viewport": "narrow",
"index": 3,
"action": "focused",
"status": "passed",
"at": "2026-10-13T18:53:02.891Z",
"selector": "#increment"
},
{
"viewport": "narrow",
"index": 4,
"action": "press",
"status": "passed",
"at": "2026-10-13T18:53:02.896Z",
"key": "Enter"
},
{
"viewport": "narrow",
"index": 5,
"action": "text",
"status": "passed",
"at": "2026-10-13T18:53:02.905Z",
"selector": "#count"
},
{
"viewport": "narrow",
"index": 6,
"action": "screenshot",
"status": "passed",
"at": "2026-10-13T18:53:02.915Z"
}
],
"artifacts": [
{
"name": "desktop-6-keyboard-result.png",
"bytes": 26622
},
{
"name": "desktop-final.png",
"bytes": 26622
},
{
"name": "narrow-6-keyboard-result.png",
"bytes": 24280
},
{
"name": "narrow-final.png",
"bytes": 24280
}
],
"started_at": "2026-10-13T18:52:59.078Z",
"blocked_requests": 12,
"finished_at": "2026-10-13T18:53:03.351Z",
"downloads": [
{
"name": "desktop-6-keyboard-result.png",
"bytes": 26622,
"sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad"
},
{
"name": "desktop-final.png",
"bytes": 26622,
"sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad"
},
{
"name": "narrow-6-keyboard-result.png",
"bytes": 24280,
"sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8"
},
{
"name": "narrow-final.png",
"bytes": 24280,
"sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8"
}
]
},
"artifact_checks": [
{
"name": "desktop-6-keyboard-result.png",
"sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad",
"recorded_sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad",
"size": 26622,
"matches_receipt": true,
"matches_after_restart": true
},
{
"name": "desktop-final.png",
"sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad",
"recorded_sha256": "b15998824256b86c74f2bbb75f061061be65db0b4f3bb5444529ac69a723cdad",
"size": 26622,
"matches_receipt": true,
"matches_after_restart": true
},
{
"name": "narrow-6-keyboard-result.png",
"sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8",
"recorded_sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8",
"size": 24280,
"matches_receipt": true,
"matches_after_restart": true
},
{
"name": "narrow-final.png",
"sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8",
"recorded_sha256": "49d27cb169b8e180ce93969c6d2b8619a7684cf035bb9dcae9cd91d8bd9952e8",
"size": 24280,
"matches_receipt": true,
"matches_after_restart": true
}
]
}

View file

@ -1,8 +1,10 @@
# Managed admission review — release 0.1.0
Publication is complete. The remaining WP-0004-T01 decision is platform
admission and a scoped consumer binding, owned by railiance-platform. This
review packet does not claim approval or create a cluster workload.
Update: platform admitted and deployed the pilot and installed the
`playwright-consumers` binding under RPF-WP-0056. The review below is the original
pre-admission packet. Its package/binding decisions are resolved; real consumer
authentication and transport remain open. See [current scope](../SCOPE.md) and
[owner evidence](evidence/2026-10-13-owner-progress-readback.json).
## Package to review

View file

@ -0,0 +1,62 @@
# INTENT against SCOPE — 2026-10-13 21:42 Europe/Berlin
There is substantial new progress since the previous assessment. The release is
now deployed as a Railiance pilot, and discovery publishes the verified local
provider. The largest remaining gap has narrowed from deployment/admission to
**real self-service consumer access**. Full INTENT is still not met.
## Verified progress
- Fresh cluster readback: `playwright` Deployment 1/1 Ready on the published
immutable 0.1.0 image; artifact PVC Bound at 2Gi; `playwright-consumers` bound
to the namespace Role.
- Platform runtime evidence: 14 responsive/keyboard steps passed, four PNGs,
six negative/health checks, and same-image restart. Recomputed all four retained
PNG hashes and matched both original and post-restart download receipts.
- Thirteen native RBAC checks are recorded by platform. The access path used
administrator impersonation, so these prove permission/runtime behavior and
do not prove a real consumer can authenticate.
- Live federation now publishes one browser capability at D3/A5/C2/R2 with
immutable client/contract/release links and executable local instructions.
REUSE-WP-0024 is finished; its recorded relevance fix returns browser first
with a reuse recommendation. The former source-only discovery gap is resolved.
The [retained readback](../docs/evidence/2026-10-13-owner-progress-readback.json)
contains current cluster/federation observations and reviewed platform receipts.
Platform source is commit `d303c99e3be993ffa989bc9ba3d7b471903858ce`; reuse source
is `a6da9f2c5c0cb8a69ddf4ea2386e79699a90c2e1`. Older assessments remain dated evidence.
## Most important gaps
1. **Human and coding-agent onboarding is not operational.** Group eligibility
is decided and the binding exists, but dedicated registrations, native JWT
authentication, per-caller API transport and governed credential delivery
remain pending. Platform prepared a setup/verification helper and owner
handoffs. RPF-WP-0056-T03 owns actual identity integration and live receipts;
T06 awaits Custodian coordination. No further membership choice is needed.
Completion requires real human and agent trials without administrator
impersonation, plus renewal/revocation and native authentication negatives.
2. **Managed acceptance and operational proof remain incomplete.** The running
pilot passes operator tests and completed-artifact recovery. It has no real
consumer-network acceptance, abrupt-interruption recovery evidence or actual
cross-version rollback. Only one release exists; same-image restart must not
be called version rollback. These stay in RAPP-PLAYWRIGHT-WP-0004-T01.
3. **Discovery needs the final managed-availability update.** A5 local-provider
publication is verified. Its summary still says admission is pending even
though the pilot is now admitted; it should distinguish deployed pilot from
incomplete consumer access. T03 awaits accepted native consumer receipts
before any general managed-availability promotion.
4. **Consumer-specific acceptance remains with content-explorer.** The pinned
OnCo home/skip-link smoke is demonstrated locally. Broader routes, graph/search
behavior and visual acceptance remain outside that evidence. Provider progress
does not close CONTENT-WP-0000-T04.
## Workplan and scope disposition
WP-0001–0003 remain finished. WP-0004-T02 is done; T01 and T03 retain explicit
waits for the narrower remaining owner outcomes. [SCOPE.md](../SCOPE.md), README,
the declaration note and workplan records now reflect the deployed pilot and
published A5 capability. The declaration remains draft pending full managed
consumer acceptance. No browser implementation or running workload was changed
in this reconciliation, and no additional browser tests were necessary to
verify these documentation changes.

View file

@ -67,7 +67,7 @@ content-explorer assesses its own completion. A health response alone cannot pas
```task
id: RAPP-PLAYWRIGHT-WP-0004-T03
status: wait
blocked_on: message-from:reuse-surface
blocked_on: message-from:railiance-platform
priority: high
state_hub_task_id: "c8642437-27c5-5e58-b0f8-847c285fb4e6"
```
@ -122,3 +122,28 @@ prepares that decision without inferring approval. Reuse follow-up
T01 and T03 remain wait until their owner outcomes can be verified. Actual
cross-version rollback remains unproven with only one release; same-image
recovery must be labeled accurately.
## Owner progress accepted — 2026-10-13 21:42 Europe/Berlin
Platform reply `8d1de2a9-5209-4f82-a2cd-80d8c2e07001` and RPF-WP-0056
resolve package admission, deployment and the consumer group binding. Fresh
readback confirms 1/1 Ready on the published digest and a Bound 2Gi PVC.
Platform operator-driven evidence passes 14 fixture steps, six negative/health
checks, and same-image restart with all four artifact hashes retained. Evidence:
[readback and reviewed receipts](../docs/evidence/2026-10-13-owner-progress-readback.json).
This supersedes the earlier absent-namespace observations.
T01 remains wait specifically for real human/agent authentication, per-caller
API transport and native consumer receipts under RPF-WP-0056-T03, plus remaining
abrupt-interruption/recovery evidence. Initial eligibility is already decided;
no further membership approval is needed. RPF-WP-0056-T06 tracks Custodian
coordination. Administrator impersonation does not satisfy consumer acceptance.
REUSE-WP-0024 is finished and live federation now has D3/A5/C2/R2, pinned client
instructions, local container guidance and explicit conditional managed access.
The local-provider publication requirement is satisfied. T03's remaining wait
now follows platform consumer acceptance and the final managed-availability
update, rather than an unanswered local-provider registry handoff. The current
published admission-pending wording lags the deployed pilot and should distinguish
pilot runtime from consumer readiness in that update. T03 stays open as requested
by platform until the native consumer receipts are accepted.

View file

@ -5,7 +5,7 @@
| [WP-0001](RAPP-PLAYWRIGHT-WP-0001-statehub-bootstrap.md) | Demand and State Hub bootstrap | Finished |
| [WP-0002](RAPP-PLAYWRIGHT-WP-0002-consumer-contract.md) | Agent contract and trial | Finished |
| [WP-0003](RAPP-PLAYWRIGHT-WP-0003-service-package.md) | Service, client and Railiance package | Finished: implemented, tested, published and pulled by digest |
| [WP-0004](RAPP-PLAYWRIGHT-WP-0004-consumer-verification.md) | Activate, prove consumption and update discovery | Independent local trial/pilot done; managed activation and registry update blocked |
| [WP-0004](RAPP-PLAYWRIGHT-WP-0004-consumer-verification.md) | Activate, prove consumption and update discovery | Pilot deployed and A5 discovery published; real consumer access and managed acceptance pending |
The founder authorized implementation after the original bootstrap. Platform
lifecycle ownership is railiance-platform. Open tasks retain concrete external