The twelve contracts in plain TypeScript - classes, Maps and plain functions, zero runtime framework dependencies. The release built from Classic/ and verified by its twelve smoke suites.
Versions
The dual engine distribution: the same twelve contracts, built twice. CLASSIC in plain TypeScript, EFFECT-TS on Effect-TS services and layers - same behavior, same smokes, different runtime plumbing. Both releases are at version 0.0.1.
The same twelve contracts re-expressed on Effect-TS services and layers - same behavior, same smokes, different runtime plumbing. Built from EffectTS/ .
Shared invariants
INVARIANT 01
The twelve contracts are identical across the two trees; only the runtime plumbing differs.
INVARIANT 02
The smoke suites arbitrate both releases; every suite loads the real built Target of its bundle.
INVARIANT 03
The @-sentence identity holds in both trees: the scope stays @playform, the family/type marker leads.
The smoke baseline
Every suite loads the REAL built Target of its bundle and asserts the ledger strings byte-identically - the smokes are the arbiter after every change, and the Effect-TS tree proves parity with these numbers before any swap-in.
14 checks - every helper with no fake context at all.
34 checks - a fake ctx + a REAL instance, every primitive, the Gate matrix, both GuardedWrite postures, the full Continue lifecycle.
78 checks - the gates, the chain pass, the update envelope, every ledger line byte-exact.
32 checks - the range law, the keep-list union, the refusals, every ledger line byte-exact.
62 checks - the TOML identification, the surgical pin, the full-version directive, the cargo bridge.
132 (dash) + 62 each (quotes, ellipsis, spaces, invisible, fullwidth) + 71 (file) - the tables, the dispatch, the gate exemptions, the count lines.
The honest caveat, learned live: the smokes prove the mechanics; the live battery proves the wiring - the real defects (the patch-layer shadowing, the P5 v2 open, the version-guard race) were found live, not by the smokes.