Skip to main content
Run a local task and inspect its returned values. This smoke test uses an in-process sample backend. After it works, follow Write EVM data functions to add chain and block context with real node access.

Prerequisites

  • Go 1.26.4, a C compiler, Make, and pkg-config.
  • CPython 3.14 or later with embedding development files, and uv.
  • Access to the BlockX repository and its private dependencies.

Prepare the checkout

The dependency versions come from python/pyproject.toml. See Local development for contributor workflows.

Build the Worker and Executor host

The Executor host embeds CPython. Its module path must include both the repository’s runtime and the virtual environment’s packages.

Start the Worker

Run from the BlockX repository root:
Wait for worker listening and executor started in the log. The local example skips etcd registration and uses a stub read backend. The time-write address satisfies startup configuration; this example does not write to it.

Start the proxy and submit

In another terminal, from the same repository root:
Keep that process running. In a third terminal, submit the sample task:
The two records can appear in either order. The sample uses InputsCallConfig and ReturnValueHandler; it returns values without writing a table.

If you get stuck

Next steps