Skip to content

Add script to generate pool booster safe transactions#2824

Open
clement-ux wants to merge 3 commits intomasterfrom
clement/script-generate-pool-booster-safe
Open

Add script to generate pool booster safe transactions#2824
clement-ux wants to merge 3 commits intomasterfrom
clement/script-generate-pool-booster-safe

Conversation

@clement-ux
Copy link
Collaborator

@clement-ux clement-ux commented Mar 3, 2026

This pull request introduces a new script, generate-pool-booster-safe.sh, designed to automate the generation of Safe Transaction Builder JSON files for deploying Curve Pool Booster contracts and delegating yield. The script validates user input, verifies gauge registration, computes necessary parameters, and outputs a structured JSON transaction bundle suitable for Safe multisig execution.

The most important changes are:

Addition of deployment automation script:

  • Added generate-pool-booster-safe.sh, a Bash script for generating Safe Transaction Builder JSON to deploy CurvePoolBoosterPlain contracts and delegate yield for specified gauges. The script accepts multiple command-line options and validates all required arguments.

Validation and verification logic:

  • Implements logic to fetch all registered gauges from the on-chain gauge controller and verifies that all provided gauge addresses are registered, ensuring only valid gauges are processed.

Transaction building and output:

  • Constructs transaction objects for both the pool booster creation and the yield delegation, assembling them into a single JSON output compatible with the Safe Transaction Builder.
  • Dynamically computes unique salts for each deployment using the factory address and a timestamp-based counter, and calculates the expected booster contract address for each gauge.

User experience and safety:

  • Provides clear usage documentation, error messages, and cleans up temporary files on exit, making the script robust and

@codecov
Copy link

codecov bot commented Mar 3, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 44.95%. Comparing base (6b7393d) to head (ad151d1).

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2824   +/-   ##
=======================================
  Coverage   44.95%   44.95%           
=======================================
  Files         106      106           
  Lines        4585     4585           
  Branches     1250     1250           
=======================================
  Hits         2061     2061           
  Misses       2521     2521           
  Partials        3        3           

☔ 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.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

1 participant