- JavaScript 94.2%
- PowerShell 3.9%
- TypeScript 1.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
REC-107: fixtures/sai-vn-surface.json had no reader in this repo. Kill attempts that failed: none. - `rg -n "sai-vn-surface" .` outside this repo only turns up differently-named/differently-owned files (Eve's and EveTui's own `web/fixtures/sai-vn-surface.conformance.json`, EveConformance/tools/parity/parity-manifest.json's `../Eve/web/fixtures/sai-vn-surface.json`); nothing points at EveElectron/fixtures/sai-vn-surface.json specifically. - `node --test test/*.test.mjs` -> 13/13 pass after removal. Not executed from REC-107: the "completed incubation block" in eve-runtime-capability.json (lines 6-11) is BLOCKED, not dead. The `incubation` object is a REQUIRED property of Eve/schemas/gamecult.eve.runtime_capability.v1.schema.json (see its "required" array), and EveConformance's parity-manifest.json validates this exact file against that schema. Deleting it would produce a schema-invalid document, not a pure subtraction; that requires a schema-level decision out of this pass's scope, so it is left in place. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
| capture | ||
| conformance/captures | ||
| scripts | ||
| src | ||
| test | ||
| .gitignore | ||
| eve-runtime-capability.json | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
EveElectron
EveElectron is the generic Electron lowering runtime for Eve/CultUI surfaces. It owns secure window construction, the narrow provider preload bridge, shell projection, command-intent emission, runtime packaging, and capture evidence.
Providers supply advertisements, surface and embedded-document reads, command submission, asset resolution, and any product daemon lifecycle. EveElectron does not import provider state or plugin semantic implementations.
EveCultMeshProviderClient takes an Odin-resolved peer target and advertisement
record reference, then follows only provider-published references for surfaces,
commands, receipts, and embedded documents. CultMesh and MessagePack are
constructor dependencies supplied from the application's installed CultLib
packages; the runtime owns protocol flow without pinning a sibling checkout.
Electron hosts that use the standard Eve IPC channels can point their
BrowserWindow preload directly at src/eve-provider-preload-entry.cjs. The
entry exposes only window.eveProvider; provider-specific APIs do not share the
renderer boundary.
startEveElectronProviderHost owns the main-process runtime lifecycle: secure
window construction, generic provider client creation, Eve IPC registration,
receipt reconciliation, provider readiness, renderer loading, and cleanup.
Provider repos supply a resolved target, dependencies, renderer path, and any
provider-owned daemon development or asset hooks.
CultMesh-native asset references lower through the runtime-owned
eve-asset:// protocol. The generic provider client reads
gamecult.cultmesh.cdn.asset_blob.v1 records; provider repos publish bytes and
retain asset truth without implementing an Electron protocol.
npm install
npm test
npm run pack:check
npm run capture:conformance
The capture runner uses EveElectron's development Electron dependency and emits
native offscreen-painted PNGs plus gamecult.eve.runtime_witness.v1 documents.
The generic control comes from Eve; the Aetheria case comes from Aetheria's
provider-owned conformance pack. Provider state remains input data; the runtime
owns the window, projection, pixels, and evidence.