Files
chains/aivm
zeekayandHanzo Dev c7c3e30baf zkvm, quantumvm, aivm: tell consensus there is work
zkvm and quantumvm accepted transactions and never built a block from them.
Consensus calls WaitForEvent and builds nothing until it returns; both answered
with <-ctx.Done(), which never returns. So BuildBlock was never called and
neither chain could leave genesis, however many transactions arrived. The
comment on one of them said it had to block to avoid flooding the engine, and
the flooding was real — but never returning is not the way to avoid it.

The pool that accepted the transaction is what knows there is work, whichever
path it arrived by, so the pool holds the latch and signals on a successful add.
That covers the paths that reach it directly as well as the HTTP handler, and
the VM's WaitForEvent is then one line. aivm had grown its own copy of this;
it now uses the shared one.

Each test fails without its signal, waiting the full timeout for a wake that
never comes.

Bridge and graph VMs are untouched: bridgevm has nothing in production that
writes a pending request, and graphvm's BuildBlock is not implemented, so a
latch in either would signal work that cannot be built.

Co-authored-by: Hanzo Dev <[email protected]>
2026-08-25 12:04:47 -07:00
..
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00
2026-06-21 20:53:39 -07:00