feat: add display kiosk host
CI / verify (pull_request) Successful in 38s
CI / infrastructure-smoke (pull_request) Successful in 20s
CI / migration-smoke (pull_request) Successful in 59s

This commit is contained in:
ekklesia
2026-08-23 20:50:56 -05:00
parent be5ed7853d
commit 2e0fe059c3
80 changed files with 4868 additions and 397 deletions
@@ -9,11 +9,12 @@ import {
* How a host obtains a module's UI artifact.
*
* `url` is a **browser-loadable module URL**, not a filesystem path. That distinction is the whole
* reason this type exists. Core's module discovery resolves `entrypoints.ui` to an absolute path on
* the server's disk (`ResolvedModuleEntrypoints.ui`); a browser cannot import that, and a host that
* passed one here would fail at run time in a way no test on a server would catch. Turning an
* installed artifact into a URL a browser may fetch is **asset publication**, a separate concern
* this package deliberately does not own and Ekklesia does not implement yet (ADR 0024).
* reason this type exists. Core's module discovery resolves each primary or display entrypoint to an
* absolute path on the server's disk; a browser cannot import that, and a host that passed one here
* would fail at run time in a way no test on a server would catch. Turning an installed artifact
* into a URL a browser may fetch is **asset publication**, a separate concern this generic package
* deliberately does not own. Ekklesia implements that concern for both roles at its API edge (ADR
* 0025, ADR 0033).
*
* `moduleId` and `version` are the identity the host already read from the module's validated
* manifest. They are checked against the artifact before anything is mounted.