Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a13590-a16f-7f60-be60-fd71627bc99d
532 lines
16 KiB
JSON
532 lines
16 KiB
JSON
{
|
|
"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
|
|
}
|
|
]
|
|
}
|