docs: document kernelless simulations in the PXE#23399
Merged
Merged
Conversation
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
reviewed
May 19, 2026
Thunkar
approved these changes
May 22, 2026
0fc0ac6 to
bcbdefb
Compare
## Summary Adds two docs pages explaining kernelless simulation in the Private eXecution Environment (PXE): - **Concept**: `foundational-topics/pxe/kernelless_simulations.md` covers what the PXE skips when `skipKernels` is true, the shape of `SimulationOverrides`, the stub account contracts, where kernelless does *not* apply (`profileTx`, `simulateViaNode` for public static calls, utility functions), and the gas-parity guarantees the e2e test actually proves. - **How-to**: `aztec-js/how_to_simulate_without_signing.md` is the recipe-oriented page for the symptoms in [#20028](#20028): signing prompts on `.simulate()`, the `min_revertible_side_effect_counter` error from `from: AztecAddress.ZERO`, and the urge to deploy a no-op fee payment contract. It covers both dApp-side usage and the wallet-implementer pattern, using `TestWallet.{initStubClasses,buildAccountOverrides,simulateViaEntrypoint}` and the authwit-harvesting flow in `e2e_kernelless_simulation.test.ts` as the canonical snippets via `#include_code`. Also: - Removes the stale "Until simulated simulations are implemented (#9133)" line from `pxe/index.md` and replaces it with a paragraph linking to the new concept page. - Cleans up two em-dashes elsewhere in `pxe/index.md` and the wallets-page paragraph that already mentioned the stub-account simulation. - Adds a tip box in `how_to_read_data.md` pointing readers with the signing-prompt symptom at the new how-to. - Adds `// docs:start:` / `// docs:end:` markers in `yarn-project/end-to-end/src/test-wallet/test_wallet.ts` and `yarn-project/end-to-end/src/e2e_kernelless_simulation.test.ts` so the how-to can pull the implementation as `#include_code` rather than inlining stale snippets. - Adds `kernelless` to `docs-words.txt`. ## Test plan - [x] `yarn preprocess` passes; every `#include_code` reference resolves. - [x] `yarn spellcheck` passes. - [x] Reviewed twice by codex (second opinion) against the actual source code; technical claims and snippet ranges verified. ## Notes for reviewers - Inspired by the Slack thread following [#20028](#20028), where a community integrator built a custom no-op fee payment contract to work around `min_revertible_side_effect_counter must not be 0` on `.simulate()`. Grego pointed out that the PXE already supports the use case via kernelless simulation with a stub account override; this PR documents that. - The `docs:start:` markers in the test files are inert comments, but they sit inside `yarn-project/`. If the merge-train routing for this kind of mixed PR has a preferred home, happy to retarget.
bcbdefb to
f7c1582
Compare
Collaborator
Flakey Tests🤖 says: This CI run detected 1 tests that failed, but were tolerated due to a .test_patterns.yml entry. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds two docs pages explaining kernelless simulation in the Private eXecution Environment (PXE):
foundational-topics/pxe/kernelless_simulations.mdcovers what the PXE skips whenskipKernelsis true, the shape ofSimulationOverrides, the stub account contracts, where kernelless does not apply (profileTx,simulateViaNodefor public static calls, utility functions), and the gas-parity guarantees the e2e test actually proves.aztec-js/how_to_simulate_without_signing.mdis the recipe-oriented page for the symptoms in #20028: signing prompts on.simulate(), themin_revertible_side_effect_countererror fromfrom: AztecAddress.ZERO, and the urge to deploy a no-op fee payment contract. It covers both dApp-side usage and the wallet-implementer pattern, usingTestWallet.{initStubClasses,buildAccountOverrides,simulateViaEntrypoint}and the authwit-harvesting flow ine2e_kernelless_simulation.test.tsas the canonical snippets via#include_code.Also:
pxe/index.mdand replaces it with a paragraph linking to the new concept page.pxe/index.mdand the wallets-page paragraph that already mentioned the stub-account simulation.how_to_read_data.mdpointing readers with the signing-prompt symptom at the new how-to.// docs:start:/// docs:end:markers inyarn-project/end-to-end/src/test-wallet/test_wallet.tsandyarn-project/end-to-end/src/e2e_kernelless_simulation.test.tsso the how-to can pull the implementation as#include_coderather than inlining stale snippets.kernellesstodocs-words.txt.Test plan
yarn preprocesspasses; every#include_codereference resolves.yarn spellcheckpasses.Notes for reviewers
min_revertible_side_effect_counter must not be 0on.simulate(). Grego pointed out that the PXE already supports the use case via kernelless simulation with a stub account override; this PR documents that.docs:start:markers in the test files are inert comments, but they sit insideyarn-project/. If the merge-train routing for this kind of mixed PR has a preferred home, happy to retarget.