This subpath is the lazy-load seam for the WebAssembly-backed
engine described in EPIC #680. Importing @causl/core does not
pull this module in; only callers who explicitly
import('@causl/causl-wasm-ts/wasm') (or who flip createCausl({ backend: 'wasm' | 'auto' }) past the auto-adapt threshold once #686 lands)
pay the WASM bundle cost.
The cost shape:
@causl/core main bundle: tiny loader stub (~1 KB).
@causl/causl-wasm-ts/wasm: ~60–120 KB compressed WASM module + ~5 KB
of JS bindings, fetched on demand.
For this skeleton (PR #684), the WASM artifacts produced by #682
#683 + #693 are not yet wired through. loadWasmBackend()
therefore resolves a placeholder bridge identifier; the concrete
instantiate() path is filled in once those sub-tasks land. The
exported types (BackendEngine, Bridge, BridgeFeatures,
WasmBackendOptions) are the public-API contract this entry
point commits to today and the later sub-tasks must respect.
@causl/causl-wasm-ts/wasm— opt-in WASM backend entry point.This subpath is the lazy-load seam for the WebAssembly-backed engine described in EPIC #680. Importing
@causl/coredoes not pull this module in; only callers who explicitlyimport('@causl/causl-wasm-ts/wasm')(or who flipcreateCausl({ backend: 'wasm' | 'auto' })past the auto-adapt threshold once #686 lands) pay the WASM bundle cost.The cost shape:
@causl/coremain bundle: tiny loader stub (~1 KB).@causl/causl-wasm-ts/wasm: ~60–120 KB compressed WASM module + ~5 KB of JS bindings, fetched on demand.For this skeleton (PR #684), the WASM artifacts produced by #682
loadWasmBackend()therefore resolves a placeholder bridge identifier; the concreteinstantiate()path is filled in once those sub-tasks land. The exported types (BackendEngine,Bridge,BridgeFeatures,WasmBackendOptions) are the public-API contract this entry point commits to today and the later sub-tasks must respect.See
BackendEngineinterface (placeholder until landed).Bridgeinterface (placeholder until landed).