CultLib/samples/eve-two-runtime
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens 830a5d718f Make the Eve onboarding checkpoint run against the contract that exists
The portability workflow has been red since 2026-08-22. Three things,
each hidden behind the one before it:

- Eve started refusing to build a command intent for a surface that has
  not advertised a command boundary and receipt schema (Eve 4338a42,
  2026-08-22). The two-runtime sample never advertised one. It now passes
  a provider advertisement with worldInteraction for its surface, which is
  the declaration the lowering was right to demand.
- The sample and the package-closure script still imported "cultcache-ts";
  the package became @gamecult/cultcache-ts on 2026-09-04 (8cb3b72) and
  CI never got far enough to say so. Two READMEs carried the same import.
- The job pinned Eve to codex/eve-browser-host-isolation, a branch that was
  never merged and stopped moving on 2026-08-25. The sample is written
  against Eve main and passes there; the pin now says so.

The interop workflow's Python step ran one test file by path; it now
discovers the three split suites.

  scripts/verify-eve-two-runtime-sample.ps1 -EveRoot F:\Projects\Eve
  (Eve main ccc3ffe) -> browserCount 1, headlessCount 1, restartCount 1

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-10 13:55:46 +02:00
..
README.md Make Eve onboarding one coherent game 2026-08-18 06:05:15 +02:00
sample.mjs Make the Eve onboarding checkpoint run against the contract that exists 2026-09-10 13:55:46 +02:00

Eve Two-Consumer Counter

This is the smallest executable package-consumer checkpoint for CultMesh plus Eve. It intentionally has one owner for each decision:

  • the provider node owns the counter document and command transaction;
  • Eve owns the validated surface and command-receipt contracts;
  • CultMesh owns typed observation and the operation boundary;
  • the DOM lowerer owns HTML only;
  • the headless observer owns no state.

Run it from the CultLib repository:

pwsh -File ./scripts/verify-eve-getting-started.ps1

That command continues into the real Chromium/C# network checkpoint after this artifact layer passes. Run verify-eve-two-runtime-sample.ps1 directly only to diagnose clean package consumption in isolation.

From clean CultLib and Eve checkouts, the verifier installs missing build dependencies, builds package artifacts, installs them into a new empty temporary consumer, and runs sample.mjs. Success proves:

  1. no source-tree import is required by the consumer;
  2. the provider surface and receipt pass Eve's generated runtime validators;
  3. a DOM click executes one idempotent provider operation;
  4. the DOM binding and a separate headless observer converge on the same count;
  5. the canonical receipt and state survive reopening the .cc store.

This artifact checkpoint is deliberately not the network proof. The DOM lowerer is hosted by jsdom in Node and both consumers share one local CultMesh node. The same wrapper continues into a separate real Chromium/C# process chronology with Odin discovery, route replacement, and persistent provider state. Keeping those evidence layers separate prevents a fast package test from impersonating the network.