Skip to content

feat: cut simulator over to generated aztec-vm-sim IPC service#23697

Open
charlielye wants to merge 1 commit into
cl/ipc-4-avm-binaryfrom
cl/ipc-5-avm-cutover
Open

feat: cut simulator over to generated aztec-vm-sim IPC service#23697
charlielye wants to merge 1 commit into
cl/ipc-4-avm-binaryfrom
cl/ipc-5-avm-cutover

Conversation

@charlielye

@charlielye charlielye commented May 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Cuts the public simulator over from the legacy in-process NAPI AVM path to the generated @aztec/aztec-vm-sim IPC service package introduced in #23084.

The simulator now owns a TypeScript CDB IPC server for contract-data callbacks, while world-state access continues through the generated wsdb package/service from the lower stack.

Stack

  1. feat(ipc): add /ipc-codegen and /ipc-runtime foundation packages #23610 cl/ipc-foundation
  2. refactor(wsdb): migrate aztec-wsdb to ipc-codegen + ipc-runtime #23611 cl/ipc-wsdb-migrate
  3. refactor(bbapi): migrate bb binary to ipc-codegen + ipc-runtime #23612 cl/ipc-bb-migrate
  4. refactor(barretenberg-rs): migrate to ipc-codegen + ipc-runtime; drop PipeBackend #23613 cl/ipc-bb-rs-migrate
  5. refactor(bb.js): migrate to ipc-codegen + ipc-runtime; delete legacy bb::ipc #23614 cl/ipc-bb-js-migrate
  6. refactor: cut TS world state and NAPI AVM over to WSDB IPC; delete NAPI WSDB #23036 cl/ipc-3-avm-wsdb-cutover
  7. feat: add generated aztec-vm-sim package setup #23084 cl/ipc-4-avm-binary
  8. feat: cut simulator over to generated aztec-vm-sim IPC service #23697 cl/ipc-5-avm-cutover — this PR

What changes

AVM simulator cutover

  • Adds AvmSimulatorPool and switches simulator/prover/node/TXE/validator paths to use the generated @aztec/aztec-vm-sim service wrapper.
  • Renames socket-specific parameters to generic IPC paths where the value may be UDS or SHM.
  • Uses explicit async disposal for the simulator pool, CDB server, wsdb service, and tests that own those resources.

CDB server generation

  • Converts the AVM and CDB schemas to the newer friendly schema format.
  • Removes the unused CDB shutdown command; process backends are controlled by normal process signalling.
  • Generates TypeScript CDB server command/response types and request dispatch from the CDB schema.
  • Leaves CdbIpcServer responsible only for UDS framing and implementing the generated handler interface.
  • Ignores generated CDB TypeScript output and produces it from the simulator generation step during bootstrap.

Legacy NAPI cleanup

  • Deletes the old AVM NAPI simulation implementation.
  • Deletes the remaining msgpack client side-channel code from nodejs_module.
  • Removes AVM simulation exports from @aztec/native, leaving the remaining native module focused on the native pieces that still live there.

Validation

  • yarn build from yarn-project/simulator
  • make aztec-vm-sim
  • cmake --build build --target aztec-vm-sim nodejs_module from barretenberg/cpp
  • yarn build from yarn-project
  • ./bootstrap.sh format --check simulator from yarn-project
  • JEST_MAX_WORKERS=1 yarn test public/cdb_ipc_server.test.ts public/public_processor/apps_tests/token.test.ts public/public_tx_simulator/apps_tests/token.test.ts public/public_processor/apps_tests/deployments.test.ts public/public_processor/public_processor.test.ts from yarn-project/simulator

@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 1c8d4f9 to a4e2e70 Compare May 29, 2026 14:19
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 6867e96 to 65f9aed Compare May 30, 2026 13:39
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from a4e2e70 to 0df283e Compare May 30, 2026 13:39
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 65f9aed to 47b1d3b Compare May 30, 2026 16:57
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 0df283e to 42d8d4f Compare May 30, 2026 16:57
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 47b1d3b to 43f900d Compare May 30, 2026 18:30
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 42d8d4f to 7f602eb Compare May 30, 2026 18:30
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 43f900d to 85b52b4 Compare May 30, 2026 22:27
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 7f602eb to 498b1ca Compare May 30, 2026 22:27
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 85b52b4 to fac9421 Compare May 31, 2026 13:23
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 498b1ca to 4597920 Compare May 31, 2026 13:23
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from fac9421 to 8b51cfa Compare June 1, 2026 09:48
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 4597920 to 4a53618 Compare June 1, 2026 09:48
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 8b51cfa to cbffb29 Compare June 1, 2026 11:39
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch 2 times, most recently from af3dc85 to 8cc9db5 Compare June 1, 2026 11:54
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch 2 times, most recently from a9908cb to 665dc82 Compare June 1, 2026 15:35
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 8cc9db5 to 3fe908c Compare June 1, 2026 15:54
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 665dc82 to 77496a4 Compare June 1, 2026 22:39
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch 2 times, most recently from 1ea909f to e7f5dc1 Compare June 2, 2026 15:45
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 77496a4 to 8b2448a Compare June 2, 2026 15:45
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 2358098 to b248948 Compare June 2, 2026 16:28
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 8de6b5d to 389063c Compare June 2, 2026 17:19
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from b248948 to 9835c8c Compare June 2, 2026 17:26
@charlielye charlielye added the ci-full Run all master checks. label Jun 4, 2026
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 62d51d9 to cfc6ad9 Compare June 10, 2026 14:11
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 242ae5a to a5fddf3 Compare June 10, 2026 14:11
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from cfc6ad9 to 9c3e9c7 Compare June 11, 2026 17:50
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from a5fddf3 to 3735bd8 Compare June 11, 2026 17:50
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 9c3e9c7 to 3ab720f Compare June 11, 2026 18:37
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 3735bd8 to aae8fc7 Compare June 11, 2026 18:37
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 3ab720f to 7c38799 Compare June 11, 2026 18:52
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from aae8fc7 to 476ea6b Compare June 11, 2026 18:52
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 7c38799 to 6b222ba Compare June 11, 2026 19:05
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 476ea6b to f14b0ba Compare June 11, 2026 19:05
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 6b222ba to a53f9a5 Compare June 11, 2026 19:17
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from f14b0ba to 7c17ac3 Compare June 11, 2026 19:17
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from a53f9a5 to 4d7c55c Compare June 11, 2026 19:57
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch 2 times, most recently from 328033c to c947bce Compare June 11, 2026 20:25
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 4d7c55c to 6793497 Compare June 12, 2026 10:48
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from c947bce to 15daef1 Compare June 12, 2026 10:48
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from 6793497 to bf67554 Compare June 12, 2026 11:04
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 15daef1 to 3484d44 Compare June 12, 2026 11:04
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch from bf67554 to a0707df Compare June 12, 2026 11:51
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch 2 times, most recently from 456e460 to 6094676 Compare June 12, 2026 12:23
@charlielye charlielye force-pushed the cl/ipc-4-avm-binary branch 2 times, most recently from 1b4352c to ebe1ab2 Compare June 12, 2026 12:56
@charlielye charlielye force-pushed the cl/ipc-5-avm-cutover branch from 6094676 to 0562481 Compare June 12, 2026 12:56
@socket-security

socket-security Bot commented Jun 18, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addednpm/​@​aztec/​aztec-vm-sim@​0.0.0-use.local00000

View full report

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant