-
Notifications
You must be signed in to change notification settings - Fork 310
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: track block building helpers #11190
Conversation
yarn-project/aztec/src/sandbox.ts
Outdated
import { | ||
createAndStartTelemetryClient, | ||
type TelemetryClient, | ||
getTelemetryClient, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit, unused var, but more concerned that it passed the linter?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Aaa the PR isn't targeting master
so the linter didn't run
@@ -221,3 +223,45 @@ export function wrapCallbackInSpan<F extends (...args: any[]) => any>( | |||
} | |||
}) as F; | |||
} | |||
|
|||
export function runInSpan<A extends any[], R extends any>( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: linter tells me that extends any
for R is unneeded.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! Looks good to me!
}, | ||
); | ||
|
||
export const buildHeaderFromCircuitOutputs = runInSpan( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not worth doing here, but I suppose ideally this would be a decorator of some kind?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was going to suggest the same, but it seems that free functions cannot be decorated: https://2ality.com/2022/10/javascript-decorators.html#function-decorators
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I should've added a message about this to save you a search haha, decorators can only be applied to classes & class members (I was very sad when I saw this)
if (initialised) { | ||
log.warn('Telemetry client has already been initialized once'); | ||
return telemetry; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Heads up you got a race condition if OpenTelemetryClient.createAndStart
takes too long, and you call into initTelemetryClient
again while it's initializing - you'd end up with a noop telemetry client instead of the otel one.
Though this should rarely happen since you're calling init
effectively only once.
export function getTelemetryClient(): TelemetryClient { | ||
return telemetry; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This means that if a component accidentally asks for a telemetry client before the init call has completed, it'll get a noop telemetry client instead. I'd vote for making this call async and merging get and init, so we know we always get the client we expect.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, we should be able to init the client synchronously. The only reason OpenTelemetryClient.createAndStart
is async is because of an async resource, but otel already handles async resources under the hood, so we don't really need the await waitForAsyncAttributes
during initialization I believe.
So we should be able to:
- Drop the
await waitForAsyncAttributes
in the otel resource - Make otel client initialization synchronous
- Have a single sync
getTelemetryClient
that initializes if needed, and deleteinitTelemetryClient
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have a single sync getTelemetryClient that initializes if needed, and delete initTelemetryClient
Telemetry config can come from --cmd-line-flags too
TELEMETRY: [...getOptions('tel', telemetryClientConfigMappings)], |
Maybe something to consider removing?
Agree on all of the other points and will update this PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This means that if a component accidentally asks for a telemetry client before
Good point and that's why I kept the client behind a getter instead of making it an export 😬
@@ -221,3 +223,45 @@ export function wrapCallbackInSpan<F extends (...args: any[]) => any>( | |||
} | |||
}) as F; | |||
} | |||
|
|||
export function runInSpan<A extends any[], R extends any>( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we merge this method's logic with trackSpan
's?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I think they're good candidates to merge together (the only difference is the span is activated in the new function). I'll log an issue for this
}, | ||
); | ||
|
||
export const buildHeaderFromCircuitOutputs = runInSpan( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was going to suggest the same, but it seems that free functions cannot be decorated: https://2ality.com/2022/10/javascript-decorators.html#function-decorators
b881440
to
b64d50c
Compare
b64d50c
to
fa6aeeb
Compare
* master: (392 commits) chore: remove warnings from types and rollup lib crates (#11269) fix: Faster polling times for archiver and sequencer (#11262) chore: Remove references to padding txs (#11264) chore(avm): calldata, returndata slices out of range padded with zeros (#11265) feat: process note logs in aztec-nr (#10651) feat: track block building helpers (#11190) chore: silence circuit return values in CI (#11259) chore: Demote error closing forks to warn (#11263) chore: move shared pcs functionality to internal library in solidity and small refactorings in sumcheck (#11230) chore: delete external-ci-approved.yml (#11258) feat: reenable constrained config for roots (#10605) feat(docs): algolia->typesense (#11034) fix: references to a3 in docs (#11256) 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 fix: resolve misc bugs handling phases in avm witgen (#11218) chore: Silence "Updated proven chain" log (#11250) chore: retry deploys (#11252) ...
* master: (395 commits) chore: Log correlation in traces in google cloud (#11276) fix: Reallocate commitment key to avoid pippenger error (#11249) feat: archive public testnet tx data (#11192) chore: remove warnings from types and rollup lib crates (#11269) fix: Faster polling times for archiver and sequencer (#11262) chore: Remove references to padding txs (#11264) chore(avm): calldata, returndata slices out of range padded with zeros (#11265) feat: process note logs in aztec-nr (#10651) feat: track block building helpers (#11190) chore: silence circuit return values in CI (#11259) chore: Demote error closing forks to warn (#11263) chore: move shared pcs functionality to internal library in solidity and small refactorings in sumcheck (#11230) chore: delete external-ci-approved.yml (#11258) feat: reenable constrained config for roots (#10605) feat(docs): algolia->typesense (#11034) fix: references to a3 in docs (#11256) 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 ...
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.71.0</summary> ## [0.71.0](aztec-package-v0.70.0...aztec-package-v0.71.0) (2025-01-17) ### Features * Track block building helpers ([#11190](#11190)) ([a749dc1](a749dc1)), closes [#11184](#11184) </details> <details><summary>barretenberg.js: 0.71.0</summary> ## [0.71.0](barretenberg.js-v0.70.0...barretenberg.js-v0.71.0) (2025-01-17) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.71.0</summary> ## [0.71.0](aztec-packages-v0.70.0...aztec-packages-v0.71.0) (2025-01-17) ### ⚠ BREAKING CHANGES * `loop` statements (only frontend) (noir-lang/noir#7092) * Include kind in `StructDefinition::generics` and fix derivation of Eq in structs with numeric generics (noir-lang/noir#7076) * Attestation collection times out based on sequencer timetable ([#11248](#11248)) ### Features * `loop` statements (only frontend) (noir-lang/noir#7092) ([a964cd0](a964cd0)) * Add `ConstrainNotEqual` instruction (noir-lang/noir#7032) ([a964cd0](a964cd0)) * Archive public testnet tx data ([#11192](#11192)) ([66f2014](66f2014)) * Backup proof failures to google cloud storage ([#11255](#11255)) ([b4775fd](b4775fd)), closes [#11062](#11062) * **docs:** Algolia->typesense ([#11034](#11034)) ([d254f49](d254f49)) * Improve PXE contract DB capabilities ([#11303](#11303)) ([fab5570](fab5570)) * **LSP:** Auto-import trait reexport if trait is not visible (noir-lang/noir#7079) ([a964cd0](a964cd0)) * Process note logs in aztec-nr ([#10651](#10651)) ([708139d](708139d)) * Reenable constrained config for roots ([#10605](#10605)) ([a6ebc2e](a6ebc2e)) * **spartan:** Add extra accounts ([#11300](#11300)) ([7782836](7782836)) * **ssa:** Treat globals as constant in a function's DFG (noir-lang/noir#7040) ([a964cd0](a964cd0)) * Track block building helpers ([#11190](#11190)) ([a749dc1](a749dc1)), closes [#11184](#11184) ### Bug Fixes * Allow implicit associated types on integer type kinds (noir-lang/noir#7078) ([a964cd0](a964cd0)) * Do not remove memory blocks used as brillig input (noir-lang/noir#7073) ([a964cd0](a964cd0)) * Ensure 'docker info' works before preceding ([#11286](#11286)) ([0b0e81a](0b0e81a)) * Fail in proxy deployment should fail the step ([#11308](#11308)) ([b780d75](b780d75)) * Faster polling times for archiver and sequencer ([#11262](#11262)) ([d70511e](d70511e)) * Https://github.com/AztecProtocol/aztec-packages/issues/8939 ([66f2014](66f2014)) * Idempotent deploy-l1-contracts with initial validators ([#11284](#11284)) ([3a3f9c0](3a3f9c0)), closes [#11283](#11283) * Include kind in `StructDefinition::generics` and fix derivation of Eq in structs with numeric generics (noir-lang/noir#7076) ([a964cd0](a964cd0)) * Legacy runner start ([#11291](#11291)) ([0b2a619](0b2a619)) * Reallocate commitment key to avoid pippenger error ([#11249](#11249)) ([8fc2011](8fc2011)) * References to a3 in docs ([#11256](#11256)) ([caf88fa](caf88fa)) * Remove bb path override in cli-wallet ([#11280](#11280)) ([a6a226e](a6a226e)) * Resolve misc bugs handling phases in avm witgen ([#11218](#11218)) ([29bc4bd](29bc4bd)) * Sequencer timetable accounts for spare time ([#11221](#11221)) ([f1b9211](f1b9211)) * Validator ignores block limits during reexec ([#11288](#11288)) ([920a521](920a521)) ### Miscellaneous * Add circuit input checks to bootstrap.sh ([#11261](#11261)) ([a718b15](a718b15)) * Add regression test for [#6530](#6530) (noir-lang/noir#7089) ([a964cd0](a964cd0)) * Add test for isuee [#7090](#7090) (noir-lang/noir#7091) ([a964cd0](a964cd0)) * Allow passing custom conditions to inlining pass (noir-lang/noir#7083) ([a964cd0](a964cd0)) * Attestation collection times out based on sequencer timetable ([#11248](#11248)) ([946a418](946a418)) * **avm:** Calldata, returndata slices out of range padded with zeros ([#11265](#11265)) ([a469c94](a469c94)), closes [#10933](#10933) * Delete external-ci-approved.yml ([#11258](#11258)) ([642bce6](642bce6)) * Demote error closing forks to warn ([#11263](#11263)) ([a5b7a6a](a5b7a6a)) * Do not make new instruction if it hasn't changed (noir-lang/noir#7069) ([a964cd0](a964cd0)) * Ensure devnet has unproven config ([#11302](#11302)) ([085f782](085f782)) * Fixing `[@safety](https://github.com/safety)` warnings ([#11094](#11094)) ([5de24e0](5de24e0)) * Log correlation in traces in google cloud ([#11276](#11276)) ([fbcc8ef](fbcc8ef)), closes [#11019](#11019) [#10937](#10937) * Mark `noir-edwards` as expected to compile (noir-lang/noir#7085) ([a964cd0](a964cd0)) * Move shared pcs functionality to internal library in solidity and small refactorings in sumcheck ([#11230](#11230)) ([507ae9d](507ae9d)) * Reduce the number of provers in rc-1 ([#11296](#11296)) ([92e40ff](92e40ff)) * Remove references to padding txs ([#11264](#11264)) ([32408f6](32408f6)) * Remove warnings from types and rollup lib crates ([#11269](#11269)) ([9f389a7](9f389a7)) * Replace relative paths to noir-protocol-circuits ([8ece166](8ece166)) * Replace relative paths to noir-protocol-circuits ([be42305](be42305)) * Retry deploys ([#11252](#11252)) ([23cfbb4](23cfbb4)) * Set failed proof store for spartan deployments ([#11282](#11282)) ([f787a52](f787a52)) * Silence "Updated proven chain" log ([#11250](#11250)) ([44bd79b](44bd79b)) * Silence circuit return values in CI ([#11259](#11259)) ([db3d860](db3d860)) * Stable masternet images ([#11289](#11289)) ([07fabe8](07fabe8)) </details> <details><summary>barretenberg: 0.71.0</summary> ## [0.71.0](barretenberg-v0.70.0...barretenberg-v0.71.0) (2025-01-17) ### Bug Fixes * Reallocate commitment key to avoid pippenger error ([#11249](#11249)) ([8fc2011](8fc2011)) * Resolve misc bugs handling phases in avm witgen ([#11218](#11218)) ([29bc4bd](29bc4bd)) ### Miscellaneous * **avm:** Calldata, returndata slices out of range padded with zeros ([#11265](#11265)) ([a469c94](a469c94)), closes [#10933](#10933) * Move shared pcs functionality to internal library in solidity and small refactorings in sumcheck ([#11230](#11230)) ([507ae9d](507ae9d)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.71.0</summary> ## [0.71.0](AztecProtocol/aztec-packages@aztec-package-v0.70.0...aztec-package-v0.71.0) (2025-01-17) ### Features * Track block building helpers ([#11190](AztecProtocol/aztec-packages#11190)) ([a749dc1](AztecProtocol/aztec-packages@a749dc1)), closes [#11184](AztecProtocol/aztec-packages#11184) </details> <details><summary>barretenberg.js: 0.71.0</summary> ## [0.71.0](AztecProtocol/aztec-packages@barretenberg.js-v0.70.0...barretenberg.js-v0.71.0) (2025-01-17) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.71.0</summary> ## [0.71.0](AztecProtocol/aztec-packages@aztec-packages-v0.70.0...aztec-packages-v0.71.0) (2025-01-17) ### ⚠ BREAKING CHANGES * `loop` statements (only frontend) (noir-lang/noir#7092) * Include kind in `StructDefinition::generics` and fix derivation of Eq in structs with numeric generics (noir-lang/noir#7076) * Attestation collection times out based on sequencer timetable ([#11248](AztecProtocol/aztec-packages#11248)) ### Features * `loop` statements (only frontend) (noir-lang/noir#7092) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Add `ConstrainNotEqual` instruction (noir-lang/noir#7032) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Archive public testnet tx data ([#11192](AztecProtocol/aztec-packages#11192)) ([66f2014](AztecProtocol/aztec-packages@66f2014)) * Backup proof failures to google cloud storage ([#11255](AztecProtocol/aztec-packages#11255)) ([b4775fd](AztecProtocol/aztec-packages@b4775fd)), closes [#11062](AztecProtocol/aztec-packages#11062) * **docs:** Algolia->typesense ([#11034](AztecProtocol/aztec-packages#11034)) ([d254f49](AztecProtocol/aztec-packages@d254f49)) * Improve PXE contract DB capabilities ([#11303](AztecProtocol/aztec-packages#11303)) ([fab5570](AztecProtocol/aztec-packages@fab5570)) * **LSP:** Auto-import trait reexport if trait is not visible (noir-lang/noir#7079) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Process note logs in aztec-nr ([#10651](AztecProtocol/aztec-packages#10651)) ([708139d](AztecProtocol/aztec-packages@708139d)) * Reenable constrained config for roots ([#10605](AztecProtocol/aztec-packages#10605)) ([a6ebc2e](AztecProtocol/aztec-packages@a6ebc2e)) * **spartan:** Add extra accounts ([#11300](AztecProtocol/aztec-packages#11300)) ([7782836](AztecProtocol/aztec-packages@7782836)) * **ssa:** Treat globals as constant in a function's DFG (noir-lang/noir#7040) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Track block building helpers ([#11190](AztecProtocol/aztec-packages#11190)) ([a749dc1](AztecProtocol/aztec-packages@a749dc1)), closes [#11184](AztecProtocol/aztec-packages#11184) ### Bug Fixes * Allow implicit associated types on integer type kinds (noir-lang/noir#7078) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Do not remove memory blocks used as brillig input (noir-lang/noir#7073) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Ensure 'docker info' works before preceding ([#11286](AztecProtocol/aztec-packages#11286)) ([0b0e81a](AztecProtocol/aztec-packages@0b0e81a)) * Fail in proxy deployment should fail the step ([#11308](AztecProtocol/aztec-packages#11308)) ([b780d75](AztecProtocol/aztec-packages@b780d75)) * Faster polling times for archiver and sequencer ([#11262](AztecProtocol/aztec-packages#11262)) ([d70511e](AztecProtocol/aztec-packages@d70511e)) * Https://github.com/AztecProtocol/aztec-packages/issues/8939 ([66f2014](AztecProtocol/aztec-packages@66f2014)) * Idempotent deploy-l1-contracts with initial validators ([#11284](AztecProtocol/aztec-packages#11284)) ([3a3f9c0](AztecProtocol/aztec-packages@3a3f9c0)), closes [#11283](AztecProtocol/aztec-packages#11283) * Include kind in `StructDefinition::generics` and fix derivation of Eq in structs with numeric generics (noir-lang/noir#7076) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Legacy runner start ([#11291](AztecProtocol/aztec-packages#11291)) ([0b2a619](AztecProtocol/aztec-packages@0b2a619)) * Reallocate commitment key to avoid pippenger error ([#11249](AztecProtocol/aztec-packages#11249)) ([8fc2011](AztecProtocol/aztec-packages@8fc2011)) * References to a3 in docs ([#11256](AztecProtocol/aztec-packages#11256)) ([caf88fa](AztecProtocol/aztec-packages@caf88fa)) * Remove bb path override in cli-wallet ([#11280](AztecProtocol/aztec-packages#11280)) ([a6a226e](AztecProtocol/aztec-packages@a6a226e)) * Resolve misc bugs handling phases in avm witgen ([#11218](AztecProtocol/aztec-packages#11218)) ([29bc4bd](AztecProtocol/aztec-packages@29bc4bd)) * Sequencer timetable accounts for spare time ([#11221](AztecProtocol/aztec-packages#11221)) ([f1b9211](AztecProtocol/aztec-packages@f1b9211)) * Validator ignores block limits during reexec ([#11288](AztecProtocol/aztec-packages#11288)) ([920a521](AztecProtocol/aztec-packages@920a521)) ### Miscellaneous * Add circuit input checks to bootstrap.sh ([#11261](AztecProtocol/aztec-packages#11261)) ([a718b15](AztecProtocol/aztec-packages@a718b15)) * Add regression test for [#6530](AztecProtocol/aztec-packages#6530) (noir-lang/noir#7089) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Add test for isuee [#7090](AztecProtocol/aztec-packages#7090) (noir-lang/noir#7091) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Allow passing custom conditions to inlining pass (noir-lang/noir#7083) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Attestation collection times out based on sequencer timetable ([#11248](AztecProtocol/aztec-packages#11248)) ([946a418](AztecProtocol/aztec-packages@946a418)) * **avm:** Calldata, returndata slices out of range padded with zeros ([#11265](AztecProtocol/aztec-packages#11265)) ([a469c94](AztecProtocol/aztec-packages@a469c94)), closes [#10933](AztecProtocol/aztec-packages#10933) * Delete external-ci-approved.yml ([#11258](AztecProtocol/aztec-packages#11258)) ([642bce6](AztecProtocol/aztec-packages@642bce6)) * Demote error closing forks to warn ([#11263](AztecProtocol/aztec-packages#11263)) ([a5b7a6a](AztecProtocol/aztec-packages@a5b7a6a)) * Do not make new instruction if it hasn't changed (noir-lang/noir#7069) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Ensure devnet has unproven config ([#11302](AztecProtocol/aztec-packages#11302)) ([085f782](AztecProtocol/aztec-packages@085f782)) * Fixing `[@safety](https://github.com/safety)` warnings ([#11094](AztecProtocol/aztec-packages#11094)) ([5de24e0](AztecProtocol/aztec-packages@5de24e0)) * Log correlation in traces in google cloud ([#11276](AztecProtocol/aztec-packages#11276)) ([fbcc8ef](AztecProtocol/aztec-packages@fbcc8ef)), closes [#11019](AztecProtocol/aztec-packages#11019) [#10937](AztecProtocol/aztec-packages#10937) * Mark `noir-edwards` as expected to compile (noir-lang/noir#7085) ([a964cd0](AztecProtocol/aztec-packages@a964cd0)) * Move shared pcs functionality to internal library in solidity and small refactorings in sumcheck ([#11230](AztecProtocol/aztec-packages#11230)) ([507ae9d](AztecProtocol/aztec-packages@507ae9d)) * Reduce the number of provers in rc-1 ([#11296](AztecProtocol/aztec-packages#11296)) ([92e40ff](AztecProtocol/aztec-packages@92e40ff)) * Remove references to padding txs ([#11264](AztecProtocol/aztec-packages#11264)) ([32408f6](AztecProtocol/aztec-packages@32408f6)) * Remove warnings from types and rollup lib crates ([#11269](AztecProtocol/aztec-packages#11269)) ([9f389a7](AztecProtocol/aztec-packages@9f389a7)) * Replace relative paths to noir-protocol-circuits ([8ece166](AztecProtocol/aztec-packages@8ece166)) * Replace relative paths to noir-protocol-circuits ([be42305](AztecProtocol/aztec-packages@be42305)) * Retry deploys ([#11252](AztecProtocol/aztec-packages#11252)) ([23cfbb4](AztecProtocol/aztec-packages@23cfbb4)) * Set failed proof store for spartan deployments ([#11282](AztecProtocol/aztec-packages#11282)) ([f787a52](AztecProtocol/aztec-packages@f787a52)) * Silence "Updated proven chain" log ([#11250](AztecProtocol/aztec-packages#11250)) ([44bd79b](AztecProtocol/aztec-packages@44bd79b)) * Silence circuit return values in CI ([#11259](AztecProtocol/aztec-packages#11259)) ([db3d860](AztecProtocol/aztec-packages@db3d860)) * Stable masternet images ([#11289](AztecProtocol/aztec-packages#11289)) ([07fabe8](AztecProtocol/aztec-packages@07fabe8)) </details> <details><summary>barretenberg: 0.71.0</summary> ## [0.71.0](AztecProtocol/aztec-packages@barretenberg-v0.70.0...barretenberg-v0.71.0) (2025-01-17) ### Bug Fixes * Reallocate commitment key to avoid pippenger error ([#11249](AztecProtocol/aztec-packages#11249)) ([8fc2011](AztecProtocol/aztec-packages@8fc2011)) * Resolve misc bugs handling phases in avm witgen ([#11218](AztecProtocol/aztec-packages#11218)) ([29bc4bd](AztecProtocol/aztec-packages@29bc4bd)) ### Miscellaneous * **avm:** Calldata, returndata slices out of range padded with zeros ([#11265](AztecProtocol/aztec-packages#11265)) ([a469c94](AztecProtocol/aztec-packages@a469c94)), closes [#10933](AztecProtocol/aztec-packages#10933) * Move shared pcs functionality to internal library in solidity and small refactorings in sumcheck ([#11230](AztecProtocol/aztec-packages#11230)) ([507ae9d](AztecProtocol/aztec-packages@507ae9d)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
This PR refactors the telemetry client so that it's a global instance that can be used to measure free functions as well and adds spans the block building helpers in the orchestrator
Stacked on top of #11160
Fix #11184