Conversation
benesjan
approved these changes
Mar 3, 2025
Contributor
benesjan
left a comment
There was a problem hiding this comment.
Lovely improvement. Feel free to merge once you address my comments
yarn-project/pxe/src/pxe_data_provider/pxe_data_provider.test.ts
Outdated
Show resolved
Hide resolved
yarn-project/simulator/src/private/unconstrained_execution_oracle.ts
Outdated
Show resolved
Hide resolved
TomAFrench
added a commit
that referenced
this pull request
Mar 4, 2025
* master: (229 commits) feat: Sync from noir (#12315) fix: Only use debug logging for ENR mismatch (#12439) yolo upadate test pattern owners for kind tests fix: Don't exit on error when querying secret (#12438) fix: consolidate sepoliaETH job condition (#12437) chore: add `yq` to `bootstrap.sh check` (#12436) fix: ignition-testnet values & bot count (#12433) chore(archiver): l2proven number not required (#12424) chore: PXE oracle refactor (#12410) fix: txes handle sigint and sigterm, use dump fail to see any txe errors (#12427) git subrepo push --branch=master noir-projects/aztec-nr git_subrepo.sh: Fix parent in .gitrepo file. [skip ci] chore: replace relative paths to noir-protocol-circuits git subrepo push --branch=master barretenberg chore: set enrs and contract addresses in ignition-testnet (#12417) chore: reenable public teardown in orchestrator test (#12428) feat: add wasm mode for profiler (#12407) feat: contract instance/class cache for current tx - ensure that later txs in block cannot wipe out contracts created earlier (#12261) chore: pull out formatter changes from sync (#12426) chore: calculate available memory for noir-projects/bootstrap.sh memsuspend (#12419) ...
nventuro
reviewed
Mar 6, 2025
| } | ||
|
|
||
| describe('Simulator oracle', () => { | ||
| describe('PXE data provider', () => { |
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.
Attempt to address PXE's structural problems, but mostly renaming:
PrivateExecutionOracle(formerlyClientExecutionContext) andUnconstrainedExecutionOracle(formerlyViewDataOracle). The private execution oracle inherits from the unconstrained one, since that's how our execution model works (private can do all the things unconstrained can plus more)ContractDataOraclehas been substituted byContractDataProvider. In short, it's just a cache layer + merkle tree constructor that provides contract information to both the execution oracles and the kernel oracle, so I think it's a lot more accurate now.DBOracleinterface is dead. Like the others, it's called nowExecutionDataProvidersince it's a layer that the actual Private and Unconstrained oracles require to answer oracle calls, retrieving and sending info through it as necessary.SimulatorOracleis dead. It's replacement is calledPXEDataProvider, implementing theExecutionDataProviderinterface the simulator oracles need to do their thing. This one just happens to be PXE's implementation, which receives PXE's db, the node and a bunch of other things in order to work.AztecNode, it's NO LONGER PROVIDED to the simulator oracles. All the data oracles require must be provided via theExecutionDataProvider, which forces this interface to implement part of the node (but I think it's cleaner like this)