docs: state exactly what ADR 0045's browser smoke proves
CI / verify (pull_request) Successful in 51s
CI / infrastructure-smoke (pull_request) Successful in 22s
CI / image-build (pull_request) Canceled after 0s
CI / deploy-smoke (pull_request) Canceled after 0s
CI / migration-smoke (pull_request) Canceled after 1m28s

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
ekklesia
2026-10-03 11:21:46 -05:00
co-authored by Claude Opus 5.5
parent fe390bb09d
commit 2323467aef
@@ -181,10 +181,13 @@ host-only session cookie.
Because those are browser behaviors, the split run also drives a **real browser**: a headless
Chromium from an image pinned by digest, controlled over the Chrome DevTools Protocol by the
smoke-test client with no added dependency. In it, a person signs in through the real form on the
Dashboard hostname, the Dashboard loads a module's UI and contribution from the API hostname, the
session cookie is present only for the API hostname, the module's display page mounts on the API
hostname, and sign-out ends the session. The split run installs the repository's module template as
a test-only module so these paths exist; installations' own smoke tests cover their real modules.
Dashboard hostname, the session cookie is present only for the API hostname, the Dashboard imports a
module's UI from the API hostname and the module's own credentialed requests succeed under CORS, no
request is refused, the module's display page mounts on the API hostname with its service worker, and
sign-out ends the session. The split run installs the repository's module template as a test-only
module so these paths exist; installations' own smoke tests cover their real modules. Contribution
artifacts are imported exactly as UI artifacts are, and the API's tests cover their CORS headers and
those of realtime streams.
## Consequences