-
Notifications
You must be signed in to change notification settings - Fork 266
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: add otterscan to sandbox #2648
Conversation
@@ -1,7 +1,7 @@ | |||
version: '3' | |||
services: | |||
ethereum: | |||
image: ghcr.io/foundry-rs/foundry:v1.0.0 | |||
image: ghcr.io/foundry-rs/foundry@sha256:29ba6e34379e79c342ec02d437beb7929c9e254261e8032b17e187be71a2609f |
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.
had to use a later version for otterscan support - this one is tagged "latest" as of October 3rd 2023 (its ~a week older than the nightly builds, stable is ~3 months old but new tag getting pushed soon)
|
||
otterscan: | ||
image: otterscan/otterscan:v2.0.0 | ||
platform: linux/amd64 |
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.
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.
updated otterscan tag to develop
which has multiarch images
Cool! It cannot decode the rollup because it is just raw bytes. We are manually decoding it while computing hashes etc to reduce gas 😬. |
For portals, this will be extremely helpful in that I can see what L1 transactions happened! Also could be good to debug content_hash bugs where you want to know what args were passed by other contracts! |
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.
Would be good to add a page in the docs or readme somewhere to make sure that people know that it exsits.
@@ -24,3 +24,14 @@ services: | |||
ARCHIVER_VIEM_POLLING_INTERVAL_MS: 500 | |||
volumes: | |||
- ./log:/usr/src/yarn-project/aztec-sandbox/log:rw | |||
|
|||
otterscan: | |||
image: otterscan/otterscan:develop |
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.
asked if they can update the stable tag, but i think this is OK for now
environment: | ||
# otterscan env var is hardcoded to support erigon client | ||
# but it also works for anvil | ||
- ERIGON_URL=http://127.0.0.1:${SANDBOX_ANVIL_PORT:-8545} |
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.
hi, the docker image is only a nginx serving a React application, so it is very lightweight. Which means that you could even throw away nginx and bundle ots in a even lighter webserver for embedded use cases. The hard work is done by the node implementation (Erigon or anvil emulating the Otterscan API). |
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.8.8</summary> ## [0.8.8](aztec-packages-v0.8.7...aztec-packages-v0.8.8) (2023-10-09) ### Features * Actually compute selectors ([#2686](#2686)) ([dcb65e1](dcb65e1)) * Add otterscan to sandbox ([#2648](#2648)) ([6986649](6986649)) * **aztec.js:** Remove attach method ([#2715](#2715)) ([c03c654](c03c654)) * Create .gitattributes in aztec-nr ([#2661](#2661)) ([8084fc3](8084fc3)) * GCC 13 preset ([#2623](#2623)) ([4881414](4881414)) * Update noir to v0.16 ([#2718](#2718)) ([e8d0675](e8d0675)) ### Bug Fixes * Avoid ambiguity on blank and blank-react (prefix issue) ([#2729](#2729)) ([68cdb3f](68cdb3f)) * Block encoding ([#2719](#2719)) ([c4796ac](c4796ac)) * Canary tests to use a fork ([#2739](#2739)) ([4906142](4906142)) * Challenge generation update ([#2628](#2628)) ([68c1fab](68c1fab)) * Docs: Sandbox version numbers ([#2708](#2708)) ([34b0209](34b0209)) * Docs: Update Sandbox page to use #include_aztec_version ([#2703](#2703)) ([d5b78af](d5b78af)) * Remove npx from extract_tag_version ([#2697](#2697)) ([fe4484a](fe4484a)) * Version in sandbox deployment ([#2730](#2730)) ([b1d8efd](b1d8efd)) ### Miscellaneous * `foundation/src/serialization` tech debt ([#2722](#2722)) ([e92154b](e92154b)) * Add node10 entrypoint to Foundation ([#2706](#2706)) ([30c7935](30c7935)) * Add storage slot to docs ([#2601](#2601)) ([a7710f0](a7710f0)) * Add visibility modifiers ([#2728](#2728)) ([d9ae189](d9ae189)) * **benchmark:** Measure time to decrypt notes in pxe ([#2714](#2714)) ([33a230a](33a230a)) * Build boxes as part of workspace ([#2725](#2725)) ([d18349f](d18349f)) * Bump ACIR deserializer ([#2675](#2675)) ([502ee87](502ee87)) * **circuits:** Delete old code that set a different generator index per vector entry in pedersen commitment ([#2700](#2700)) ([4eabfd1](4eabfd1)) * **log:** Show log level in debug logs ([#2717](#2717)) ([2b87381](2b87381)) * Move { Fr } imports to foundation/fields ([#2712](#2712)) ([f6fc7f2](f6fc7f2)) * **uniswap_tests:** Test edge cases around uniswap flow ([#2620](#2620)) ([7a58fe9](7a58fe9)) * Use `serialize` functions in `getInitialWitness` ([#2713](#2713)) ([93cc668](93cc668)) </details> <details><summary>barretenberg.js: 0.8.8</summary> ## [0.8.8](barretenberg.js-v0.8.7...barretenberg.js-v0.8.8) (2023-10-09) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>barretenberg: 0.8.8</summary> ## [0.8.8](barretenberg-v0.8.7...barretenberg-v0.8.8) (2023-10-09) ### Features * GCC 13 preset ([#2623](#2623)) ([4881414](4881414)) ### Bug Fixes * Challenge generation update ([#2628](#2628)) ([68c1fab](68c1fab)) ### Miscellaneous * Bump ACIR deserializer ([#2675](#2675)) ([502ee87](502ee87)) </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-packages: 0.8.8</summary> ## [0.8.8](AztecProtocol/aztec-packages@aztec-packages-v0.8.7...aztec-packages-v0.8.8) (2023-10-09) ### Features * Actually compute selectors ([#2686](AztecProtocol/aztec-packages#2686)) ([dcb65e1](AztecProtocol/aztec-packages@dcb65e1)) * Add otterscan to sandbox ([#2648](AztecProtocol/aztec-packages#2648)) ([6986649](AztecProtocol/aztec-packages@6986649)) * **aztec.js:** Remove attach method ([#2715](AztecProtocol/aztec-packages#2715)) ([c03c654](AztecProtocol/aztec-packages@c03c654)) * Create .gitattributes in aztec-nr ([#2661](AztecProtocol/aztec-packages#2661)) ([8084fc3](AztecProtocol/aztec-packages@8084fc3)) * GCC 13 preset ([#2623](AztecProtocol/aztec-packages#2623)) ([4881414](AztecProtocol/aztec-packages@4881414)) * Update noir to v0.16 ([#2718](AztecProtocol/aztec-packages#2718)) ([e8d0675](AztecProtocol/aztec-packages@e8d0675)) ### Bug Fixes * Avoid ambiguity on blank and blank-react (prefix issue) ([#2729](AztecProtocol/aztec-packages#2729)) ([68cdb3f](AztecProtocol/aztec-packages@68cdb3f)) * Block encoding ([#2719](AztecProtocol/aztec-packages#2719)) ([c4796ac](AztecProtocol/aztec-packages@c4796ac)) * Canary tests to use a fork ([#2739](AztecProtocol/aztec-packages#2739)) ([4906142](AztecProtocol/aztec-packages@4906142)) * Challenge generation update ([#2628](AztecProtocol/aztec-packages#2628)) ([68c1fab](AztecProtocol/aztec-packages@68c1fab)) * Docs: Sandbox version numbers ([#2708](AztecProtocol/aztec-packages#2708)) ([34b0209](AztecProtocol/aztec-packages@34b0209)) * Docs: Update Sandbox page to use #include_aztec_version ([#2703](AztecProtocol/aztec-packages#2703)) ([d5b78af](AztecProtocol/aztec-packages@d5b78af)) * Remove npx from extract_tag_version ([#2697](AztecProtocol/aztec-packages#2697)) ([fe4484a](AztecProtocol/aztec-packages@fe4484a)) * Version in sandbox deployment ([#2730](AztecProtocol/aztec-packages#2730)) ([b1d8efd](AztecProtocol/aztec-packages@b1d8efd)) ### Miscellaneous * `foundation/src/serialization` tech debt ([#2722](AztecProtocol/aztec-packages#2722)) ([e92154b](AztecProtocol/aztec-packages@e92154b)) * Add node10 entrypoint to Foundation ([#2706](AztecProtocol/aztec-packages#2706)) ([30c7935](AztecProtocol/aztec-packages@30c7935)) * Add storage slot to docs ([#2601](AztecProtocol/aztec-packages#2601)) ([a7710f0](AztecProtocol/aztec-packages@a7710f0)) * Add visibility modifiers ([#2728](AztecProtocol/aztec-packages#2728)) ([d9ae189](AztecProtocol/aztec-packages@d9ae189)) * **benchmark:** Measure time to decrypt notes in pxe ([#2714](AztecProtocol/aztec-packages#2714)) ([33a230a](AztecProtocol/aztec-packages@33a230a)) * Build boxes as part of workspace ([#2725](AztecProtocol/aztec-packages#2725)) ([d18349f](AztecProtocol/aztec-packages@d18349f)) * Bump ACIR deserializer ([#2675](AztecProtocol/aztec-packages#2675)) ([502ee87](AztecProtocol/aztec-packages@502ee87)) * **circuits:** Delete old code that set a different generator index per vector entry in pedersen commitment ([#2700](AztecProtocol/aztec-packages#2700)) ([4eabfd1](AztecProtocol/aztec-packages@4eabfd1)) * **log:** Show log level in debug logs ([#2717](AztecProtocol/aztec-packages#2717)) ([2b87381](AztecProtocol/aztec-packages@2b87381)) * Move { Fr } imports to foundation/fields ([#2712](AztecProtocol/aztec-packages#2712)) ([f6fc7f2](AztecProtocol/aztec-packages@f6fc7f2)) * **uniswap_tests:** Test edge cases around uniswap flow ([#2620](AztecProtocol/aztec-packages#2620)) ([7a58fe9](AztecProtocol/aztec-packages@7a58fe9)) * Use `serialize` functions in `getInitialWitness` ([#2713](AztecProtocol/aztec-packages#2713)) ([93cc668](AztecProtocol/aztec-packages@93cc668)) </details> <details><summary>barretenberg.js: 0.8.8</summary> ## [0.8.8](AztecProtocol/aztec-packages@barretenberg.js-v0.8.7...barretenberg.js-v0.8.8) (2023-10-09) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>barretenberg: 0.8.8</summary> ## [0.8.8](AztecProtocol/aztec-packages@barretenberg-v0.8.7...barretenberg-v0.8.8) (2023-10-09) ### Features * GCC 13 preset ([#2623](AztecProtocol/aztec-packages#2623)) ([4881414](AztecProtocol/aztec-packages@4881414)) ### Bug Fixes * Challenge generation update ([#2628](AztecProtocol/aztec-packages#2628)) ([68c1fab](AztecProtocol/aztec-packages@68c1fab)) ### Miscellaneous * Bump ACIR deserializer ([#2675](AztecProtocol/aztec-packages#2675)) ([502ee87](AztecProtocol/aztec-packages@502ee87)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
adds a local otterscan block explorer for the anvil ethereum mainnet, helps to see what's happening on the base network. (they recently added support for otterscan in anvil)
the transactions/calls are not decoded, so right now it's primarily useful if we are using portal contracts - hard to tell what the rollup contracts are doing.
sets the local otterscan at http://localhost:5100/
Screen.Recording.2023-10-03.at.5.46.35.PM.mov