From a118706c15003a9745c9410b18dec2889daaa133 Mon Sep 17 00:00:00 2001 From: MauroFab Date: Fri, 31 Jul 2026 13:46:37 -0300 Subject: [PATCH] docs(prover): allow 6->2 step-marker transition on the continuation path The marker state machine documented on test_recursion_step_markers_observed_in_order only covers the monolithic verify path. Once the continuation verify paths emit STEP_AIRS_AND_BUS_BALANCE_DONE (per epoch in verify_epoch and once in verify_global, #855), 6->2 becomes a legitimate transition there. Note the distinction so the documented invariant isn't read as universal. --- prover/src/tests/recursion_smoke_test.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/prover/src/tests/recursion_smoke_test.rs b/prover/src/tests/recursion_smoke_test.rs index 90482a3a4..9098f63e7 100644 --- a/prover/src/tests/recursion_smoke_test.rs +++ b/prover/src/tests/recursion_smoke_test.rs @@ -827,6 +827,13 @@ fn test_recursion_execute_1query() { /// the `3,4,5,6` cycle (one per table). A transition outside /// `{1->2, 2->3, 3->4, 4->5, 5->6, 6->3}` means the marker convention broke — /// wrong immediate decoded, or a stale/mismatched build. +/// +/// That transition set is the monolithic path's. The continuation guest +/// (`continuation` feature) re-emits `STEP_AIRS_AND_BUS_BALANCE_DONE` before +/// each epoch's `multi_verify_views` (`continuation::verify_epoch`) and once +/// more before the global-memory verify (`continuation::verify_global`), so +/// there `6->2` is also a valid transition. This test runs the monolithic +/// guest, where those markers never fire. #[test] #[ignore = "slow: runs the in-VM STARK verifier (minutes on CI)"] fn test_recursion_step_markers_observed_in_order() {