Skip to main content
@eco-incorp/sauce/svm is the Solana side: staging a program through the kitchen, resolving accounts against the compiler’s account manifest, building and sending transactions, and verifying settle programs. Solana execution goes through the Kitchen client here; the SDK’s SVM route helpers emit a legacy instruction that the released engine does not accept.
This page covers sdk/dist/svm/engine.d.ts.
Generated from the type declarations shipped in @eco-incorp/sauce 0.99.4. Each entry shows the package authors’ JSDoc and declaration for this SDK version. For runtime compatibility and deployed addresses, see architecture and deployments.

EXECUTE_DISCRIMINATOR

Variable · sdk/dist/svm/engine.d.ts The Kitchen-mediated engine instruction discriminators. Declared here, not generated. The pre-release engine shipped an engine-abi.json these were derived from; neither that artifact nor the engine it described exists any more - nothing about the engine is source-controlled now, it is fetched from a pinned release. These are still not hand-copies in the sense that let BYTECODE_FORMAT_EPOCH rot: engine-wire-drift.test.ts asserts each against the release’s own engine-wire-<cluster>.json, which the engine generates from its Rust constants.

EXECUTE_FROM_ACCOUNT_DISCRIMINATOR

Variable · sdk/dist/svm/engine.d.ts

CLOSE_ACCOUNT_DISCRIMINATOR

Variable · sdk/dist/svm/engine.d.ts closeAccount - the third instruction, previously unrepresented here.

HEAP_FRAME_BYTES

Variable · sdk/dist/svm/engine.d.ts The 256 KiB BPF heap frame every execute transaction MUST request: interpreter memory (operand stack, heap, frames) lives above the default 32 KiB Rust bump arena, not in accounts. Attach RequestHeapFrame(262144) beside SetComputeUnitLimit on every execute/simulate transaction - add-once: duplicate ComputeBudget instruction types fail the whole transaction. A transaction without it aborts deterministically (SBF AccessViolation) before any opcode runs. Buffer staging transactions do not need it - their instructions never touch interpreter memory.

HEAP_FRAME_CU_PER_INVOCATION

Variable · sdk/dist/svm/engine.d.ts CU cost of the heap-frame request, charged per program invocation in the transaction.

REQUEST_HEAP_FRAME_WIRE_BYTES

Variable · sdk/dist/svm/engine.d.ts Wire cost of the RequestHeapFrame instruction: 8 bytes beside an existing ComputeBudget instruction (the program key and count byte are already paid), 9 standalone. Measured - engine tests/cu_budget.rs.

MAX_RETURN_DATA

Variable · sdk/dist/svm/engine.d.ts

MAX_CPI_ACCOUNTS

Variable · sdk/dist/svm/engine.d.ts

ENGINE_GAS_LIMIT_CU

Variable · sdk/dist/svm/engine.d.ts

ENGINE_CHAIN_IDS

Variable · sdk/dist/svm/engine.d.ts Synthetic CHAIN_ID values reported by the engine’s CHAIN_ID opcode. The devnet id is what a default cargo build-sbf build reports - localnet and LiteSVM runs use it too; mainnet requires building with --features mainnet.