rapp-playwright/README.md

49 lines
2.1 KiB
Markdown
Raw Normal View History

2026-10-13 12:59:31 +00:00
# rapp-playwright
A bounded Playwright/Chromium job service for responsive screenshots and keyboard
journeys, with a standalone Python client and a private Railiance workload package.
**Implemented and verified locally. Managed activation awaits platform admission.**
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.
- [Intent and ownership](INTENT.md)
- [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.