Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(p2p): test bench scaffold #11758

Merged
merged 26 commits into from
Feb 7, 2025
Merged

feat(p2p): test bench scaffold #11758

merged 26 commits into from
Feb 7, 2025

Conversation

Maddiaa0
Copy link
Member

@Maddiaa0 Maddiaa0 commented Feb 5, 2025

Adds a p2p test bench scaffold, which is skipped for now.

Changes:

  • logger to pipe libp2p output into our trace logs
  • Add regex to log level filtering
  • Add fixedTerms to the logger to we can pin something to a loggers output - useful for parsing testbench logs - to know who is logging it
  • Make an epochCacheInterface so it is easier to mock
  • Add a no response early case to reqresp to not respond to goodbyes - quick followup from pr from earlier today
  • Add a few p2p config things to allow them to easier be tweaked
    • floodpublish
    • dlazy
    • turn off p2p topic validators
    • turn off gossip scoring colocation penalty
  • create a test-helper library instead of mocks to share some logic setting up p2p clients for tests

@@ -20,6 +20,20 @@ type EpochAndSlot = {
ts: bigint;
};

export interface EpochCacheInterface {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interface added to make mocking simpler in the mock p2p client

module = logNameHandlers.reduce((moduleName, handler) => handler(moduleName), module.replace(/^aztec:/, ''));
const pinoLogger = logger.child({ module }, { level: getLogLevelFromFilters(logFilters, module) });

// Only perform copy of data if fixed terms are provided
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Used in the libp2p logger to enable tagging the sourcePeer to all messages. If fixed terms are not set, then we should skip doing the extra allocation in the ternary operation below

@@ -0,0 +1,422 @@
// An integration test for the p2p client to test req resp protocols
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moved from reqresp.integration.test.ts as it can actually be used to test the entire p2p client

@@ -0,0 +1,78 @@
import { createLogger } from '@aztec/foundation/log';
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This logger shims our pino logger into libp2p's logging stack. All logs get tagged at trace by default as it is extremely noisy

@Maddiaa0 Maddiaa0 changed the title flood worker test feat(p2p): test bench scaffold Feb 6, 2025
@Maddiaa0 Maddiaa0 marked this pull request as ready for review February 6, 2025 18:19
@Maddiaa0 Maddiaa0 requested a review from just-mitch February 6, 2025 18:25
Copy link
Member Author

Maddiaa0 commented Feb 6, 2025

This stack of pull requests is managed by Graphite. Learn more about stacking.

Copy link
Collaborator

@PhilWindle PhilWindle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for putting this together, it looks great! Just a couple of minors.

@@ -30,7 +30,7 @@ export class DiscV5Service extends EventEmitter implements PeerDiscoveryService

private currentState = PeerDiscoveryState.STOPPED;

private bootstrapNodes: string[];
public bootstrapNodes: string[];
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would perhaps make readonly.

if (!this.config.debugDisableMessageValidation) {
for (const [topic, validator] of Object.entries(topicValidators)) {
this.node.services.pubsub.topicValidators.set(topic, validator);
}
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would perhaps add a big warning log in an else block here.

Copy link
Collaborator

@spalladino spalladino left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lovely

};

return Object.assign(logFn, {
enabled: logger.isLevelEnabled('debug'),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this mean libp2p errors or warns won't get logged unless we enable debug level?

Copy link
Member Author

@Maddiaa0 Maddiaa0 Feb 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, that is the plan in this case, they are extremely noisy and any connection error, which can be expected will make its way in to the logs. Unless actively debugging its far too much

* @param numberOfPeers - The number of peers to get ports for
* @returns A list of ports
*/
export const getPorts = (numberOfPeers: number) => Promise.all(Array.from({ length: numberOfPeers }, () => getPort()));
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Heads up that get-port can cause issues when run from multiple processes (as in CI, where we run using parallel or multiple jest workers). If we start seeing issues about ports in use, we should go back to this.

What I've used elsewhere is to just use port 0 for binding, so the OS allocates something for you, and then returning it. But I'm not sure that works with the current workflow.

getTxStatus: () => Promise.resolve(TxStatus.PENDING),
getTxEffect: () => Promise.resolve(undefined),
getSettledTxReceipt: () => Promise.resolve(undefined),
} as TxPool;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this work if we remove the cast? So we can get tsc alert us if we change a method in TxPool. Same for the other mocks.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah it should!

const workerPath = path.join(__dirname, '../../dest/testbench/p2p_client_testbench_worker.js');
const logger = createLogger('testbench');

describe.skip('Gossipsub', () => {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this skip on purpose?

Copy link
Member Author

@Maddiaa0 Maddiaa0 Feb 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yep, theres no need to run this in ci at the moment (maybe ever in the yarn-project tests) as its just a scaffold

@Maddiaa0 Maddiaa0 enabled auto-merge (squash) February 7, 2025 12:56
@Maddiaa0 Maddiaa0 merged commit 48dc491 into master Feb 7, 2025
52 of 53 checks passed
@Maddiaa0 Maddiaa0 deleted the md/worker-test branch February 7, 2025 13:47
sklppy88 pushed a commit that referenced this pull request Feb 10, 2025
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.76.0</summary>

##
[0.76.0](aztec-package-v0.75.0...aztec-package-v0.76.0)
(2025-02-10)


### Features

* **spartan:** Blob sink in spartan
([#11307](#11307))
([d8e5bcc](d8e5bcc))


### Miscellaneous

* Check versioning
([#11611](#11611))
([b33f1da](b33f1da))
* **p2p:** Remove min peers option
([#11789](#11789))
([cfb6797](cfb6797))
</details>

<details><summary>barretenberg.js: 0.76.0</summary>

##
[0.76.0](barretenberg.js-v0.75.0...barretenberg.js-v0.76.0)
(2025-02-10)


### Bug Fixes

* **bb.js:** Make wasm imports bundleable
([#11812](#11812))
([1af69a9](1af69a9))
* Remove unnecessary console.log
([#11810](#11810))
([8a320bf](8a320bf))
</details>

<details><summary>aztec-packages: 0.76.0</summary>

##
[0.76.0](aztec-packages-v0.75.0...aztec-packages-v0.76.0)
(2025-02-10)


### ⚠ BREAKING CHANGES

* check abi integer input is within signed range
(noir-lang/noir#7316)
* using `WithHash<T>` in `SharedMutable` + fixing slot allocation
([#11716](#11716))

### Features

* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([b883911](b883911))
* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([3840e8e](3840e8e))
* **avm:** Add skippable condition for interactions
([#11800](#11800))
([67aec61](67aec61))
* **avm:** Range check opt via aliases
([#11846](#11846))
([ce6a5bf](ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](#11798))
([be382bc](be382bc))
* **aztec-nr:** Do not compile functions with a private public macro and
unconstrained
([#11815](#11815))
([afb52e3](afb52e3))
* **blob-lib:** Make blob lib and fix encoding test flake
([#11782](#11782))
([753f505](753f505))
* Broker sends back job after accepting result
([#11754](#11754))
([62e5de7](62e5de7))
* **docs:** Notes page
([#11746](#11746))
([117200e](117200e))
* **docs:** Reindex typesense in CI
([#11791](#11791))
([6af8d54](6af8d54))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([b883911](b883911))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([3840e8e](3840e8e))
* Optimizing contract with config pattern
([#11756](#11756))
([7820cb7](7820cb7))
* **p2p:** Test bench scaffold
([#11758](#11758))
([48dc491](48dc491))
* Partial note handling in aztec-nr
([#11641](#11641))
([1c1a33b](1c1a33b))
* **perf:** Speed up TS AVM core simulator
([#11794](#11794))
([bb58c87](bb58c87))
* **reqresp:** Send status messages along with reqresp responses
([#11727](#11727))
([b212490](b212490))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([b883911](b883911))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([3840e8e](3840e8e))
* **spartan:** Blob sink in spartan
([#11307](#11307))
([d8e5bcc](d8e5bcc))
* Suport deploying contracts with public keys in txe
([#11882](#11882))
([94bdc85](94bdc85)),
closes
[#11881](#11881)
* Sync from aztec-packages (noir-lang/noir#7293)
([b883911](b883911))
* Sync from aztec-packages (noir-lang/noir#7293)
([3840e8e](3840e8e))
* Trust tree roots from the AVM in public base
([#11823](#11823))
([5d12f94](5d12f94))
* Using `WithHash&lt;T&gt;` in `SharedMutable` + fixing slot allocation
([#11716](#11716))
([952615b](952615b))


### Bug Fixes

* Add missing return in main
([#11786](#11786))
([8c1d477](8c1d477))
* Allows for infinite brillig loops
(noir-lang/noir#7296)
([b883911](b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([b883911](b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([3840e8e](3840e8e))
* Avoid recomputing contractclassid
([#11783](#11783))
([f8448bf](f8448bf))
* Avoid stack overflow on many comments in a row
(noir-lang/noir#7325)
([b883911](b883911))
* Aztec wallet partial address display on deployment
([#11866](#11866))
([eef5302](eef5302)),
closes
[#11864](#11864)
* **bb.js:** Make wasm imports bundleable
([#11812](#11812))
([1af69a9](1af69a9))
* Beacon chain doesn't eat mainframe
([#11854](#11854))
([ebbdbc7](ebbdbc7))
* Check abi integer input is within signed range
(noir-lang/noir#7316)
([b883911](b883911))
* **ci:** Enforce boxes-test on merge
([#11841](#11841))
([e26a288](e26a288))
* Downgrade to mainframe-compatible KIND
([#11883](#11883))
([9239b4f](9239b4f))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([b883911](b883911))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([3840e8e](3840e8e))
* Error on trailing doc comment
(noir-lang/noir#7300)
([b883911](b883911))
* Error on trailing doc comment
(noir-lang/noir#7300)
([3840e8e](3840e8e))
* Formatting in master
([#11879](#11879))
([fff0f04](fff0f04))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([b883911](b883911))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([3840e8e](3840e8e))
* Playground use new unbundled aztec.js
([#11780](#11780))
([fe2b666](fe2b666))
* Prover-client test
([#11853](#11853))
([e950c76](e950c76))
* Publish telemetry-client
([#11777](#11777))
([8634f6e](8634f6e))
* Pxe release
([#11877](#11877))
([4c0d2f2](4c0d2f2))
* Re exposing intent inner hash
([#11865](#11865))
([9638792](9638792)),
closes
[#11795](#11795)
* Remove unnecessary console.log
([#11810](#11810))
([8a320bf](8a320bf))
* Revert "feat: partial note handling in aztec-nr
([#11641](#11641))"
([#11797](#11797))
([c5c3f09](c5c3f09))
* Skip orchestrator_workflow test (see
[#11870](#11870))
([#11872](#11872))
([f8e7e4e](f8e7e4e))
* Skip vite browser test until
[#11874](#11874)
([#11876](#11876))
([e1adf23](e1adf23))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([b883911](b883911))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([3840e8e](3840e8e))
* Tracy run
([#11819](#11819))
([fde135d](fde135d))
* Txe block headers
([#11710](#11710))
([4f6b76f](4f6b76f))


### Miscellaneous

* Add sha256 library to test suite
(noir-lang/noir#7278)
([b883911](b883911))
* Add sha256 library to test suite
(noir-lang/noir#7278)
([3840e8e](3840e8e))
* Add timeouts to reports CI
(noir-lang/noir#7317)
([b883911](b883911))
* Aggregate with short scalars in UH Recursion
([#11478](#11478))
([a6fcdb0](a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](#11766))
([f2f2634](f2f2634))
* Bump noir_bigcurve timeout
(noir-lang/noir#7322)
([b883911](b883911))
* Check versioning
([#11611](#11611))
([b33f1da](b33f1da))
* Cleanup in AVM test fixture
([#11850](#11850))
([4526059](4526059))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([b883911](b883911))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([3840e8e](3840e8e))
* Disable exp-2 from nightly deployments
([#11880](#11880))
([bc42b60](bc42b60))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](#11740))
([ee5fc45](ee5fc45))
* Fix memory reports in CI (noir-lang/noir#7311)
([b883911](b883911))
* Fix memory reports in CI (noir-lang/noir#7311)
([3840e8e](3840e8e))
* **p2p:** Remove min peers option
([#11789](#11789))
([cfb6797](cfb6797))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([b883911](b883911))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([3840e8e](3840e8e))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([b883911](b883911))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([3840e8e](3840e8e))
* Remove dead code
([#11809](#11809))
([51ad298](51ad298))
* Remove Recoverable (noir-lang/noir#7307)
([b883911](b883911))
* Remove Recoverable (noir-lang/noir#7307)
([3840e8e](3840e8e))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([b883911](b883911))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([3840e8e](3840e8e))
* Replace relative paths to noir-protocol-circuits
([330f613](330f613))
* Replace relative paths to noir-protocol-circuits
([501ec66](501ec66))
* Replace relative paths to noir-protocol-circuits
([3fa986a](3fa986a))
* Sepolia mnemonic, e2e & ignition chain
([#11759](#11759))
([ff1536a](ff1536a))
* Simplify handling of pub inputs block
([#11747](#11747))
([4a8136c](4a8136c))
* **spartan:** Give services label names
([#11609](#11609))
([2da39df](2da39df))
* **spartan:** Update ethereum external host values
([#11590](#11590))
([f17a8f3](f17a8f3))
* Update migration_notes.md
([#11801](#11801))
([baa69a2](baa69a2))


### Documentation

* Some blob docs
([#11729](#11729))
([b1d65f1](b1d65f1))
</details>

<details><summary>barretenberg: 0.76.0</summary>

##
[0.76.0](barretenberg-v0.75.0...barretenberg-v0.76.0)
(2025-02-10)


### Features

* **avm:** Add skippable condition for interactions
([#11800](#11800))
([67aec61](67aec61))
* **avm:** Range check opt via aliases
([#11846](#11846))
([ce6a5bf](ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](#11798))
([be382bc](be382bc))


### Bug Fixes

* Add missing return in main
([#11786](#11786))
([8c1d477](8c1d477))
* Tracy run
([#11819](#11819))
([fde135d](fde135d))


### Miscellaneous

* Aggregate with short scalars in UH Recursion
([#11478](#11478))
([a6fcdb0](a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](#11766))
([f2f2634](f2f2634))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](#11740))
([ee5fc45](ee5fc45))
* Simplify handling of pub inputs block
([#11747](#11747))
([4a8136c](4a8136c))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
AztecBot added a commit to AztecProtocol/barretenberg that referenced this pull request Feb 11, 2025
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@aztec-package-v0.75.0...aztec-package-v0.76.0)
(2025-02-10)


### Features

* **spartan:** Blob sink in spartan
([#11307](AztecProtocol/aztec-packages#11307))
([d8e5bcc](AztecProtocol/aztec-packages@d8e5bcc))


### Miscellaneous

* Check versioning
([#11611](AztecProtocol/aztec-packages#11611))
([b33f1da](AztecProtocol/aztec-packages@b33f1da))
* **p2p:** Remove min peers option
([#11789](AztecProtocol/aztec-packages#11789))
([cfb6797](AztecProtocol/aztec-packages@cfb6797))
</details>

<details><summary>barretenberg.js: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@barretenberg.js-v0.75.0...barretenberg.js-v0.76.0)
(2025-02-10)


### Bug Fixes

* **bb.js:** Make wasm imports bundleable
([#11812](AztecProtocol/aztec-packages#11812))
([1af69a9](AztecProtocol/aztec-packages@1af69a9))
* Remove unnecessary console.log
([#11810](AztecProtocol/aztec-packages#11810))
([8a320bf](AztecProtocol/aztec-packages@8a320bf))
</details>

<details><summary>aztec-packages: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@aztec-packages-v0.75.0...aztec-packages-v0.76.0)
(2025-02-10)


### ⚠ BREAKING CHANGES

* check abi integer input is within signed range
(noir-lang/noir#7316)
* using `WithHash<T>` in `SharedMutable` + fixing slot allocation
([#11716](AztecProtocol/aztec-packages#11716))

### Features

* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([b883911](AztecProtocol/aztec-packages@b883911))
* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* **avm:** Add skippable condition for interactions
([#11800](AztecProtocol/aztec-packages#11800))
([67aec61](AztecProtocol/aztec-packages@67aec61))
* **avm:** Range check opt via aliases
([#11846](AztecProtocol/aztec-packages#11846))
([ce6a5bf](AztecProtocol/aztec-packages@ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](AztecProtocol/aztec-packages#11798))
([be382bc](AztecProtocol/aztec-packages@be382bc))
* **aztec-nr:** Do not compile functions with a private public macro and
unconstrained
([#11815](AztecProtocol/aztec-packages#11815))
([afb52e3](AztecProtocol/aztec-packages@afb52e3))
* **blob-lib:** Make blob lib and fix encoding test flake
([#11782](AztecProtocol/aztec-packages#11782))
([753f505](AztecProtocol/aztec-packages@753f505))
* Broker sends back job after accepting result
([#11754](AztecProtocol/aztec-packages#11754))
([62e5de7](AztecProtocol/aztec-packages@62e5de7))
* **docs:** Notes page
([#11746](AztecProtocol/aztec-packages#11746))
([117200e](AztecProtocol/aztec-packages@117200e))
* **docs:** Reindex typesense in CI
([#11791](AztecProtocol/aztec-packages#11791))
([6af8d54](AztecProtocol/aztec-packages@6af8d54))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([b883911](AztecProtocol/aztec-packages@b883911))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Optimizing contract with config pattern
([#11756](AztecProtocol/aztec-packages#11756))
([7820cb7](AztecProtocol/aztec-packages@7820cb7))
* **p2p:** Test bench scaffold
([#11758](AztecProtocol/aztec-packages#11758))
([48dc491](AztecProtocol/aztec-packages@48dc491))
* Partial note handling in aztec-nr
([#11641](AztecProtocol/aztec-packages#11641))
([1c1a33b](AztecProtocol/aztec-packages@1c1a33b))
* **perf:** Speed up TS AVM core simulator
([#11794](AztecProtocol/aztec-packages#11794))
([bb58c87](AztecProtocol/aztec-packages@bb58c87))
* **reqresp:** Send status messages along with reqresp responses
([#11727](AztecProtocol/aztec-packages#11727))
([b212490](AztecProtocol/aztec-packages@b212490))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([b883911](AztecProtocol/aztec-packages@b883911))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* **spartan:** Blob sink in spartan
([#11307](AztecProtocol/aztec-packages#11307))
([d8e5bcc](AztecProtocol/aztec-packages@d8e5bcc))
* Suport deploying contracts with public keys in txe
([#11882](AztecProtocol/aztec-packages#11882))
([94bdc85](AztecProtocol/aztec-packages@94bdc85)),
closes
[#11881](AztecProtocol/aztec-packages#11881)
* Sync from aztec-packages (noir-lang/noir#7293)
([b883911](AztecProtocol/aztec-packages@b883911))
* Sync from aztec-packages (noir-lang/noir#7293)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Trust tree roots from the AVM in public base
([#11823](AztecProtocol/aztec-packages#11823))
([5d12f94](AztecProtocol/aztec-packages@5d12f94))
* Using `WithHash&lt;T&gt;` in `SharedMutable` + fixing slot allocation
([#11716](AztecProtocol/aztec-packages#11716))
([952615b](AztecProtocol/aztec-packages@952615b))


### Bug Fixes

* Add missing return in main
([#11786](AztecProtocol/aztec-packages#11786))
([8c1d477](AztecProtocol/aztec-packages@8c1d477))
* Allows for infinite brillig loops
(noir-lang/noir#7296)
([b883911](AztecProtocol/aztec-packages@b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([b883911](AztecProtocol/aztec-packages@b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Avoid recomputing contractclassid
([#11783](AztecProtocol/aztec-packages#11783))
([f8448bf](AztecProtocol/aztec-packages@f8448bf))
* Avoid stack overflow on many comments in a row
(noir-lang/noir#7325)
([b883911](AztecProtocol/aztec-packages@b883911))
* Aztec wallet partial address display on deployment
([#11866](AztecProtocol/aztec-packages#11866))
([eef5302](AztecProtocol/aztec-packages@eef5302)),
closes
[#11864](AztecProtocol/aztec-packages#11864)
* **bb.js:** Make wasm imports bundleable
([#11812](AztecProtocol/aztec-packages#11812))
([1af69a9](AztecProtocol/aztec-packages@1af69a9))
* Beacon chain doesn't eat mainframe
([#11854](AztecProtocol/aztec-packages#11854))
([ebbdbc7](AztecProtocol/aztec-packages@ebbdbc7))
* Check abi integer input is within signed range
(noir-lang/noir#7316)
([b883911](AztecProtocol/aztec-packages@b883911))
* **ci:** Enforce boxes-test on merge
([#11841](AztecProtocol/aztec-packages#11841))
([e26a288](AztecProtocol/aztec-packages@e26a288))
* Downgrade to mainframe-compatible KIND
([#11883](AztecProtocol/aztec-packages#11883))
([9239b4f](AztecProtocol/aztec-packages@9239b4f))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([b883911](AztecProtocol/aztec-packages@b883911))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Error on trailing doc comment
(noir-lang/noir#7300)
([b883911](AztecProtocol/aztec-packages@b883911))
* Error on trailing doc comment
(noir-lang/noir#7300)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Formatting in master
([#11879](AztecProtocol/aztec-packages#11879))
([fff0f04](AztecProtocol/aztec-packages@fff0f04))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([b883911](AztecProtocol/aztec-packages@b883911))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Playground use new unbundled aztec.js
([#11780](AztecProtocol/aztec-packages#11780))
([fe2b666](AztecProtocol/aztec-packages@fe2b666))
* Prover-client test
([#11853](AztecProtocol/aztec-packages#11853))
([e950c76](AztecProtocol/aztec-packages@e950c76))
* Publish telemetry-client
([#11777](AztecProtocol/aztec-packages#11777))
([8634f6e](AztecProtocol/aztec-packages@8634f6e))
* Pxe release
([#11877](AztecProtocol/aztec-packages#11877))
([4c0d2f2](AztecProtocol/aztec-packages@4c0d2f2))
* Re exposing intent inner hash
([#11865](AztecProtocol/aztec-packages#11865))
([9638792](AztecProtocol/aztec-packages@9638792)),
closes
[#11795](AztecProtocol/aztec-packages#11795)
* Remove unnecessary console.log
([#11810](AztecProtocol/aztec-packages#11810))
([8a320bf](AztecProtocol/aztec-packages@8a320bf))
* Revert "feat: partial note handling in aztec-nr
([#11641](AztecProtocol/aztec-packages#11641))"
([#11797](AztecProtocol/aztec-packages#11797))
([c5c3f09](AztecProtocol/aztec-packages@c5c3f09))
* Skip orchestrator_workflow test (see
[#11870](AztecProtocol/aztec-packages#11870))
([#11872](AztecProtocol/aztec-packages#11872))
([f8e7e4e](AztecProtocol/aztec-packages@f8e7e4e))
* Skip vite browser test until
[#11874](AztecProtocol/aztec-packages#11874)
([#11876](AztecProtocol/aztec-packages#11876))
([e1adf23](AztecProtocol/aztec-packages@e1adf23))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([b883911](AztecProtocol/aztec-packages@b883911))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Tracy run
([#11819](AztecProtocol/aztec-packages#11819))
([fde135d](AztecProtocol/aztec-packages@fde135d))
* Txe block headers
([#11710](AztecProtocol/aztec-packages#11710))
([4f6b76f](AztecProtocol/aztec-packages@4f6b76f))


### Miscellaneous

* Add sha256 library to test suite
(noir-lang/noir#7278)
([b883911](AztecProtocol/aztec-packages@b883911))
* Add sha256 library to test suite
(noir-lang/noir#7278)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Add timeouts to reports CI
(noir-lang/noir#7317)
([b883911](AztecProtocol/aztec-packages@b883911))
* Aggregate with short scalars in UH Recursion
([#11478](AztecProtocol/aztec-packages#11478))
([a6fcdb0](AztecProtocol/aztec-packages@a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](AztecProtocol/aztec-packages#11766))
([f2f2634](AztecProtocol/aztec-packages@f2f2634))
* Bump noir_bigcurve timeout
(noir-lang/noir#7322)
([b883911](AztecProtocol/aztec-packages@b883911))
* Check versioning
([#11611](AztecProtocol/aztec-packages#11611))
([b33f1da](AztecProtocol/aztec-packages@b33f1da))
* Cleanup in AVM test fixture
([#11850](AztecProtocol/aztec-packages#11850))
([4526059](AztecProtocol/aztec-packages@4526059))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([b883911](AztecProtocol/aztec-packages@b883911))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Disable exp-2 from nightly deployments
([#11880](AztecProtocol/aztec-packages#11880))
([bc42b60](AztecProtocol/aztec-packages@bc42b60))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](AztecProtocol/aztec-packages#11740))
([ee5fc45](AztecProtocol/aztec-packages@ee5fc45))
* Fix memory reports in CI (noir-lang/noir#7311)
([b883911](AztecProtocol/aztec-packages@b883911))
* Fix memory reports in CI (noir-lang/noir#7311)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* **p2p:** Remove min peers option
([#11789](AztecProtocol/aztec-packages#11789))
([cfb6797](AztecProtocol/aztec-packages@cfb6797))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([b883911](AztecProtocol/aztec-packages@b883911))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([b883911](AztecProtocol/aztec-packages@b883911))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Remove dead code
([#11809](AztecProtocol/aztec-packages#11809))
([51ad298](AztecProtocol/aztec-packages@51ad298))
* Remove Recoverable (noir-lang/noir#7307)
([b883911](AztecProtocol/aztec-packages@b883911))
* Remove Recoverable (noir-lang/noir#7307)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([b883911](AztecProtocol/aztec-packages@b883911))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Replace relative paths to noir-protocol-circuits
([330f613](AztecProtocol/aztec-packages@330f613))
* Replace relative paths to noir-protocol-circuits
([501ec66](AztecProtocol/aztec-packages@501ec66))
* Replace relative paths to noir-protocol-circuits
([3fa986a](AztecProtocol/aztec-packages@3fa986a))
* Sepolia mnemonic, e2e & ignition chain
([#11759](AztecProtocol/aztec-packages#11759))
([ff1536a](AztecProtocol/aztec-packages@ff1536a))
* Simplify handling of pub inputs block
([#11747](AztecProtocol/aztec-packages#11747))
([4a8136c](AztecProtocol/aztec-packages@4a8136c))
* **spartan:** Give services label names
([#11609](AztecProtocol/aztec-packages#11609))
([2da39df](AztecProtocol/aztec-packages@2da39df))
* **spartan:** Update ethereum external host values
([#11590](AztecProtocol/aztec-packages#11590))
([f17a8f3](AztecProtocol/aztec-packages@f17a8f3))
* Update migration_notes.md
([#11801](AztecProtocol/aztec-packages#11801))
([baa69a2](AztecProtocol/aztec-packages@baa69a2))


### Documentation

* Some blob docs
([#11729](AztecProtocol/aztec-packages#11729))
([b1d65f1](AztecProtocol/aztec-packages@b1d65f1))
</details>

<details><summary>barretenberg: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@barretenberg-v0.75.0...barretenberg-v0.76.0)
(2025-02-10)


### Features

* **avm:** Add skippable condition for interactions
([#11800](AztecProtocol/aztec-packages#11800))
([67aec61](AztecProtocol/aztec-packages@67aec61))
* **avm:** Range check opt via aliases
([#11846](AztecProtocol/aztec-packages#11846))
([ce6a5bf](AztecProtocol/aztec-packages@ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](AztecProtocol/aztec-packages#11798))
([be382bc](AztecProtocol/aztec-packages@be382bc))


### Bug Fixes

* Add missing return in main
([#11786](AztecProtocol/aztec-packages#11786))
([8c1d477](AztecProtocol/aztec-packages@8c1d477))
* Tracy run
([#11819](AztecProtocol/aztec-packages#11819))
([fde135d](AztecProtocol/aztec-packages@fde135d))


### Miscellaneous

* Aggregate with short scalars in UH Recursion
([#11478](AztecProtocol/aztec-packages#11478))
([a6fcdb0](AztecProtocol/aztec-packages@a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](AztecProtocol/aztec-packages#11766))
([f2f2634](AztecProtocol/aztec-packages@f2f2634))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](AztecProtocol/aztec-packages#11740))
([ee5fc45](AztecProtocol/aztec-packages@ee5fc45))
* Simplify handling of pub inputs block
([#11747](AztecProtocol/aztec-packages#11747))
([4a8136c](AztecProtocol/aztec-packages@4a8136c))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants