跳到內容

本頁面的來源

本頁面的每項論述都對應固定的修訂版本。開啟路徑即可檢視驗證所依據的確切來源。

atomicals-avm-interpreter

Atomicals Virtual Machine interpreter

修訂 c185e6216a3e

Beta AVM interpreter. Status layer is separate from any Universe runtime exposure.

AVM Workbench

Raw

Execute the pinned beta AVM interpreter with hard resource limits, full beta labeling, and honest refusals.

Experimental or beta Verified 2026-09-02 Metadata & Sources

Behavior exists in beta or unreleased code. Do not build production dependencies on it.

Page ID
tools/avm-workbench
Normative authority
Executed source code at a pinned revision
Networks
none
Documentation version
2026.08
Audience
developer, operator
Owner
bitcoin-universe-docs
Sources
Known limitations
  • AVM is beta and experimental. Nothing here is evidence of deployment by anyone.
  • Results describe the pinned interpreter revision only; resource behavior can differ across hosts.
  • The workbench executes only the release-pipeline WASM build. It never reimplements interpreter semantics in JavaScript.

本頁內容尚未翻譯。

Program

The interpreter loads on demand; nothing runs until you press Run.

Opcode reference

Pinned inventory (30 opcodes)

Full table with source paths: AVM opcodes.

Every run is bounded: 64 MiB memory, a five second wall-clock budget with worker termination, a 256 KB program cap, a 1 MB output cap, and a ten million instruction budget metered by the interpreter build itself. Exceeding any limit terminates the run and says so; the host never truncates silently.

The same pinned source builds twice through deterministic container toolchains: a native binary for the Regtest Lab and CI, and the WASM module for this workbench. The CI gate executes the golden fixtures on both and requires byte-identical outcomes before either ships.

The host interface lives in packages/avm-runtime: pinned source acquisition with checksum verification, the narrow host interface, resource limits, and refusal semantics. There is no JavaScript reimplementation of AVM semantics anywhere in this repository.