Skip to content

Conversation

colinlyguo
Copy link
Contributor

@colinlyguo colinlyguo commented May 26, 2025

Purpose or design rationale of this PR

The latest circuit version (>= v0.3.0) is not compatible with euclid prover/verifier anymore. This PR removes outdated logic.

PR title

Your PR title must follow conventional commits (as we are doing squash merge for each PR), so it must start with one of the following types:

  • refactor: A code change that doesn't fix a bug, or add a feature, or improves performance

Deployment tag versioning

Has tag in common/version.go been updated or have you added bump-version label to this PR?

  • Yes

Breaking change label

Does this PR have the breaking-change label?

  • No, this PR is not a breaking change

Summary by CodeRabbit

  • Chores

    • Updated version to v4.5.18.
  • Refactor

    • Simplified verifier management by removing support for the previous Euclid verifier.
    • Streamlined login logic to only include the configured high version circuit fork name in relevant checks.

@colinlyguo colinlyguo added the bump-version Bump the version tag for deployment label May 26, 2025
Copy link

coderabbitai bot commented May 26, 2025

## Walkthrough

This change removes the legacy `EuclidVerifier` and its associated logic, consolidating verifier management to only use `EuclidV2Verifier`. All references to the old verifier are deleted, and related configuration handling is simplified. The version tag is incremented to "v4.5.18".

## Changes

| File(s)                                              | Change Summary                                                                                  |
|------------------------------------------------------|------------------------------------------------------------------------------------------------|
| common/libzkp/impl/src/verifier.rs                   | Removed all references to `EuclidVerifier` and `VERIFIER_LOW`; simplified to only use `VERIFIER_HIGH` with `EuclidV2Verifier`. |
| common/libzkp/impl/src/verifier/euclid.rs            | Deleted file; removed `EuclidVerifier` struct and its methods for proof verification and VK dumping. |
| coordinator/internal/logic/auth/login.go              | Removed inclusion of `EuclidFork` and `EuclidV2Fork` in `highHardForks`; now only uses configured fork name. |
| common/version/version.go                             | Updated version tag from "v4.5.17" to "v4.5.18".                                                |

## Sequence Diagram(s)

```mermaid
sequenceDiagram
    participant Config
    participant VerifierManager
    participant EuclidV2Verifier

    Config->>VerifierManager: Provide fork_name
    VerifierManager->>EuclidV2Verifier: Initialize with fork_name
    VerifierManager->>VerifierManager: Store EuclidV2Verifier as only verifier
    Note over VerifierManager: Legacy EuclidVerifier is removed

Possibly related PRs

  • scroll-tech/scroll#1613: Introduces and integrates the new euclidv2 verifier and handler, directly relating to the removal and replacement of the legacy EuclidVerifier.
  • scroll-tech/scroll#1616: Modifies conditional logic related to hard fork names in login.go, overlapping with changes to fork name handling.

Suggested reviewers

  • zimpha
  • johnsonjie

Poem

A bunny hopped and swept the floor,
Old verifiers clutter no more.
EuclidV2 now takes the stage,
With simpler code upon the page.
Version bumped, the path is clear—
Onward, Scroll, to a brighter year!
🐇✨


<!-- walkthrough_end -->


---

<details>
<summary>📜 Recent review details</summary>

**Configuration used: CodeRabbit UI**
**Review profile: CHILL**
**Plan: Pro**


<details>
<summary>📥 Commits</summary>

Reviewing files that changed from the base of the PR and between 32ccadad7e2db462d0b1c4b4e1824864e44bfea1 and d7f193a9800a59c5a14221b1516d5f7215a8b261.

</details>

<details>
<summary>📒 Files selected for processing (1)</summary>

* `coordinator/internal/logic/auth/login.go` (0 hunks)

</details>

<details>
<summary>💤 Files with no reviewable changes (1)</summary>

* coordinator/internal/logic/auth/login.go

</details>

<details>
<summary>⏰ Context from checks skipped due to timeout of 90000ms (16)</summary>

* GitHub Check: rollup-db-cli
* GitHub Check: rollup_relayer
* GitHub Check: gas_oracle
* GitHub Check: coordinator-cron
* GitHub Check: bridgehistoryapi-api
* GitHub Check: bridgehistoryapi-db-cli
* GitHub Check: coordinator-api
* GitHub Check: bridgehistoryapi-fetcher
* GitHub Check: tests
* GitHub Check: tests
* GitHub Check: tests
* GitHub Check: check
* GitHub Check: tests
* GitHub Check: check
* GitHub Check: check
* GitHub Check: tests

</details>

</details>
<!-- internal state start -->


<!-- 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 -->

<!-- internal state end -->
<!-- finishing_touch_checkbox_start -->

<details open="true">
<summary>✨ Finishing Touches</summary>

- [ ] <!-- {"checkboxId": "7962f53c-55bc-4827-bfbf-6a18da830691"} --> 📝 Generate Docstrings

</details>

<!-- finishing_touch_checkbox_end -->
<!-- tips_start -->

---

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

<details>
<summary>❤️ Share</summary>

- [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai)
- [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai)
- [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai)
- [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)

</details>

<details>
<summary>🪧 Tips</summary>

### Chat

There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai?utm_source=oss&utm_medium=github&utm_campaign=scroll-tech/scroll&utm_content=1668):

- Review comments: Directly reply to a review comment made by CodeRabbit. Example:
  - `I pushed a fix in commit <commit_id>, please review it.`
  - `Explain this complex logic.`
  - `Open a follow-up GitHub issue for this discussion.`
- Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples:
  - `@coderabbitai explain this code block.`
  -	`@coderabbitai modularize this function.`
- PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
  - `@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.`
  - `@coderabbitai read src/utils.ts and explain its main purpose.`
  - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.`
  - `@coderabbitai help me debug CodeRabbit configuration file.`

### Support

Need help? Create a ticket on our [support page](https://www.coderabbit.ai/contact-us/support) for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

### CodeRabbit Commands (Invoked using PR comments)

- `@coderabbitai pause` to pause the reviews on a PR.
- `@coderabbitai resume` to resume the paused reviews.
- `@coderabbitai review` to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
- `@coderabbitai full review` to do a full review from scratch and review all the files again.
- `@coderabbitai summary` to regenerate the summary of the PR.
- `@coderabbitai generate docstrings` to [generate docstrings](https://docs.coderabbit.ai/finishing-touches/docstrings) for this PR.
- `@coderabbitai generate sequence diagram` to generate a sequence diagram of the changes in this PR.
- `@coderabbitai resolve` resolve all the CodeRabbit review comments.
- `@coderabbitai configuration` to show the current CodeRabbit configuration for the repository.
- `@coderabbitai help` to get help.

### Other keywords and placeholders

- Add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed.
- Add `@coderabbitai summary` to generate the high-level summary at a specific location in the PR description.
- Add `@coderabbitai` anywhere in the PR title to generate the title automatically.

### CodeRabbit Configuration File (`.coderabbit.yaml`)

- You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository.
- Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information.
- If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json`

### Documentation and Community

- Visit our [Documentation](https://docs.coderabbit.ai) for detailed information on how to use CodeRabbit.
- Join our [Discord Community](http://discord.gg/coderabbit) to get help, request features, and share feedback.
- Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.

</details>

<!-- tips_end -->

@codecov-commenter
Copy link

codecov-commenter commented May 26, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 40.98%. Comparing base (47b1a03) to head (d7f193a).

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #1668      +/-   ##
===========================================
+ Coverage    40.88%   40.98%   +0.10%     
===========================================
  Files          225      225              
  Lines        18072    18071       -1     
===========================================
+ Hits          7388     7406      +18     
+ Misses        9967     9945      -22     
- Partials       717      720       +3     
Flag Coverage Δ
common 29.86% <ø> (ø)
coordinator 34.55% <ø> (+0.43%) ⬆️
database 42.05% <ø> (ø)
rollup 49.91% <ø> (+0.08%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@colinlyguo colinlyguo merged commit a55c7bd into develop May 26, 2025
23 checks passed
@colinlyguo colinlyguo deleted the refactor-coordinator-removed-outdated-logic branch May 26, 2025 06:32
@coderabbitai coderabbitai bot mentioned this pull request Jul 1, 2025
13 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bump-version Bump the version tag for deployment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants