Make Eve onboarding one executable path

This commit is contained in:
Meta Vens 2026-08-18 03:17:52 +02:00
commit 3c19e54d91
8 changed files with 157 additions and 29 deletions

View file

@ -35,14 +35,18 @@ Run the same provider and connect at least two lowerers. Both must report the
same provider id, surface id, surface version, and command receipt ids. Native
pixels may differ; provider truth may not.
The package-artifact DOM-lowerer/headless checkpoint is executable from CultLib:
The complete checkpoint is executable from CultLib:
```powershell
cd CultLib
pwsh -File ./scripts/verify-eve-two-runtime-sample.ps1 -EveRoot ../Eve
pwsh -File ./scripts/verify-eve-getting-started.ps1
```
The verifier builds and packs `cultcache-ts`, `cultnet-ts`, `cultmesh-ts`,
This one command runs the clean package-artifact checkpoint and then the real
browser/C# network checkpoint. They remain separate programs because they prove
different boundaries; the developer should not have to orchestrate them.
The first layer builds and packs `cultcache-ts`, `cultnet-ts`, `cultmesh-ts`,
`@gamecult/eve-contracts`, and `@gamecult/eve-browser-lowering`, installs the
tarballs into an empty temporary consumer, and runs
`samples/eve-two-runtime/sample.mjs`. Eve's generated runtime validators reject
@ -53,6 +57,12 @@ both consumers converge on the same state and canonical receipt identity, a
duplicate idempotency key is not applied twice, and the state plus receipt
survive reopening the `.cc` store.
The second layer runs a durable C# provider, a separate local Odin fixture, a
real Chromium Eve lowerer, and an independent C# headless observer over binary
CultNet WebSocket lanes. The open browser resolves provider identity through
the canonical Verse catalog, survives a provider restart on a different route,
resubscribes, and commits another canonical receipt.
Current verification for the Unity consumer remains:
```powershell
@ -60,19 +70,14 @@ cd ../EveUnity
pwsh -File ./scripts/run-release-consumer-tests.ps1
```
This first checkpoint proves clean package consumption, canonical Eve contract
The artifact layer proves clean package consumption, canonical Eve contract
validation, and two independent lowering/observation consumers inside Node. It
does **not** claim a real browser process, an Odin-discovered network hop, or
cross-language command execution. Do not cite it as evidence for those layers.
does **not** prove the network layer; the second program owns that evidence.
The next executable checkpoint is
The network program is
[`samples/eve-browser-network`](../../../../samples/eve-browser-network/README.md).
It runs a durable C# provider, a separate local Odin fixture, a real Chromium
Eve lowerer, and an independent C# headless observer over authenticated binary
CultNet WebSocket lanes. The still-open browser resolves stable identity through
the canonical Verse catalog, survives a provider restart on a different
physical route, resubscribes, and commits another canonical receipt. A smoke
against the deployed Odin daemon and retained C# lease reconnection remain
separate infrastructure gates. Their owner map and full acceptance contract are recorded in
Run it separately only while diagnosing that layer. A smoke against the
deployed Odin daemon and retained C# lease reconnection remain separate
infrastructure gates. Their owner map and full acceptance contract are recorded in
[`browser-verse-transport.md`](../browser-verse-transport.md).

View file

@ -4,18 +4,22 @@ This series builds one typed application state and presents it through multiple
Eve runtimes. It is maintained as an API acceptance test: examples use public
APIs, name the owner of each decision, and include a verification checkpoint.
Run the current clean-consumer checkpoint first:
Run the complete getting-started checkpoint:
```powershell
pwsh -File ./scripts/verify-eve-two-runtime-sample.ps1 -EveRoot ../Eve
pwsh -File ./scripts/verify-eve-getting-started.ps1
```
From clean CultLib and Eve checkouts, the command installs the package build
dependencies when absent, packs the five TypeScript packages, installs only
those artifacts into an empty temporary project, validates the Eve
surface and receipt, executes one idempotent counter command, proves two local
consumers converge, and reopens the durable `.cc` store. It is deliberately not
called a networked-browser proof; chapter 3 names that remaining boundary.
With clean sibling CultLib and Eve checkouts, the command installs missing build
dependencies and runs two explicit evidence layers. First it packs the five
TypeScript packages into an empty temporary consumer, validates the Eve surface
and receipt, executes one idempotent counter command, proves a DOM lowerer and
headless observer converge, and reopens the durable `.cc` store. Then it boots a
durable C# provider, local Odin fixture, real Chromium lowerer, and independent
C# observer; it proves discovery by identity, commands, canonical receipts,
provider restart on another route, resubscription, and durable convergence.
Set `CHROME_PATH` only when no installed Chrome, Chromium, Edge, or Playwright
Chromium can be found automatically.
Follow the chapters in order: