2026-10-13 12:59:31 +00:00
|
|
|
# rapp-playwright
|
|
|
|
|
|
2026-10-13 19:23:29 +02:00
|
|
|
A bounded Playwright/Chromium job service for responsive screenshots and keyboard
|
|
|
|
|
journeys, with a standalone Python client and a private Railiance workload package.
|
2026-10-13 16:12:17 +02:00
|
|
|
|
2026-10-13 21:43:20 +02:00
|
|
|
**Published and running as a Railiance pilot. Self-service consumer access remains pending.**
|
2026-10-13 19:23:29 +02:00
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
For an available provider endpoint:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
python3 client/rapp_playwright.py preflight
|
|
|
|
|
python3 client/rapp_playwright.py trial --out .local/trial-01
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
The default endpoint is a loopback tunnel at `http://127.0.0.1:18081`.
|
|
|
|
|
[Access and contract](docs/consumer-contract.md) explain tunnel setup, target
|
|
|
|
|
reachability, receipts, failures and limits. This address alone is not evidence
|
|
|
|
|
that a managed deployment exists. See [current scope](SCOPE.md).
|
|
|
|
|
|
|
|
|
|
For a reproducible local provider (Docker and npm required):
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
make install test test-integration build
|
|
|
|
|
docker run --rm --name rapp-playwright-local --read-only \
|
|
|
|
|
--tmpfs /tmp:rw,size=512m --shm-size=256m --memory=1g --cpus=1 \
|
|
|
|
|
--cap-drop ALL --security-opt no-new-privileges \
|
|
|
|
|
--mount type=volume,src=rapp-playwright-local-data,dst=/data \
|
|
|
|
|
-p 127.0.0.1:18081:8080 -e HOST=0.0.0.0 \
|
|
|
|
|
-e EXECUTION_LOCATION=workstation-container \
|
|
|
|
|
forgejo.coulomb.social/coulomb/rapp-playwright:0.1.0
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
The local Docker listener is published only on host loopback; the managed pod
|
|
|
|
|
listens on pod loopback. The fixture works without external target grants.
|
|
|
|
|
Use an immutable published digest for managed installation.
|
2026-10-13 16:12:17 +02:00
|
|
|
|
|
|
|
|
- [Intent and ownership](INTENT.md)
|
2026-10-13 19:23:29 +02:00
|
|
|
- [Build, deployment and recovery](docs/operations.md)
|
|
|
|
|
- [Independent consumer evidence](docs/evidence/2026-10-13-independent-local-consumer.md)
|
|
|
|
|
- [Content-explorer pilot](docs/content-explorer-pilot.md)
|
|
|
|
|
- [Workplan status](workplans/README.md)
|
|
|
|
|
|
|
|
|
|
Registered in State Hub under `infotech / stack`. `railiance-platform` owns the
|
|
|
|
|
platform lifecycle; this repo owns service implementation. Discovery stays with
|
|
|
|
|
reuse-surface's existing `capability.infotech.headless-browser` record.
|
2026-10-13 20:24:20 +02:00
|
|
|
|
|
|
|
|
[Release 0.1.0](releases/0.1.0.json) pins the tested and published image.
|
|
|
|
|
[Publication evidence](docs/evidence/2026-10-13-publication.md) includes registry
|
|
|
|
|
manifest verification and a successful pull on railiance01.
|