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

INVARIANT TEST #83

Open
wants to merge 171 commits into
base: temp-invariant
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
171 commits
Select commit Hold shift + click to select a range
6ef567f
fix: unnecessary approval given to `LQTYStaking`
danielattilasimon Nov 19, 2024
a92385d
chore: remove unused import
danielattilasimon Nov 19, 2024
ee3e805
test: improved `MockStakingV1`
danielattilasimon Nov 19, 2024
b4e5140
chore: remove unused imports
danielattilasimon Nov 19, 2024
c2a95c8
fix: Remove ForwardBribe contract
bingen Nov 19, 2024
2fa865d
fix: Move lqty allocation checks
bingen Nov 19, 2024
9804d92
fix: Remove safeTransfer from UserProxy
bingen Nov 19, 2024
b83fad5
fix: Emit both amounts coming from LQTYStaking and total ones on unst…
bingen Nov 19, 2024
32d322e
test: mocked & forked `UserProxy` tests
danielattilasimon Nov 20, 2024
992f6f8
chore: update forge-std
danielattilasimon Nov 20, 2024
4c8055a
test: mocked & forked `Governance` tests
danielattilasimon Nov 20, 2024
a0de52f
test: mocked & forked `Governance` attack tests
danielattilasimon Nov 20, 2024
49b7f11
ci: use a different fuzz seed each time
danielattilasimon Nov 20, 2024
e38d05d
test: mocked & forked `UniV4Donations` tests
danielattilasimon Nov 20, 2024
24deef5
fix: Make LQTY staking claiming consistent across endpoints
bingen Nov 20, 2024
12bdf39
test: mocked & forked voting power tests
danielattilasimon Nov 21, 2024
8e6f374
test: fix failing tests
danielattilasimon Nov 21, 2024
eaac7be
test: clean up `Governance` setup in some test contracts
danielattilasimon Nov 21, 2024
22ece8a
test: ensure all forked tests are prefixed with `Forked`
danielattilasimon Nov 21, 2024
4941886
chore: fix typo in comment
danielattilasimon Nov 21, 2024
0f49049
ci: add color
danielattilasimon Nov 21, 2024
7e9c169
test: fix excessive `vm.assume()` rejection
danielattilasimon Nov 21, 2024
613bf67
ci: alternative attempt at color
danielattilasimon Nov 21, 2024
7f3abac
ci: remove unnecessary dependency on lint & build
danielattilasimon Nov 21, 2024
19c5621
ci: tone down fuzz runs
danielattilasimon Nov 21, 2024
69fb063
fix: Prevent NOPs on allacation and resetting
bingen Nov 21, 2024
5c7e0e6
Merge pull request #76 from liquity/cs-024
bingen Nov 21, 2024
c1ebe7a
Merge pull request #78 from liquity/cs-034
bingen Nov 21, 2024
0a7eefa
fix: Change revert strings for BribeInitiative
bingen Nov 21, 2024
f22ce5c
fix: Compute real LQTY received on unstaking
bingen Nov 21, 2024
d6d3edf
Merge pull request #77 from liquity/cs-039
bingen Nov 21, 2024
1926488
Merge pull request #79 from liquity/D-A1
bingen Nov 21, 2024
609f024
Merge branch 'main' into cs-014
bingen Nov 21, 2024
25fb79c
Merge remote-tracking branch 'origin/main' into testing
danielattilasimon Nov 22, 2024
e22fa33
Merge pull request #80 from liquity/testing
danielattilasimon Nov 22, 2024
a3dcd14
Merge remote-tracking branch 'origin/main' into cs-014
danielattilasimon Nov 22, 2024
a019183
Merge remote-tracking branch 'origin/main' into D-H1
danielattilasimon Nov 22, 2024
459fe99
chore: forge fmt
danielattilasimon Nov 22, 2024
ea571b5
test: fix E2E tests
danielattilasimon Nov 22, 2024
c5e75c1
test: fix more failures
danielattilasimon Nov 22, 2024
522d9f8
chore: add comment to helper function
danielattilasimon Nov 22, 2024
6038b8f
test: fix remaining failure
danielattilasimon Nov 22, 2024
4f148fe
test: Rename test helper from _allocateNothing to _tryAllocateNothing
bingen Nov 25, 2024
e5f4e5f
Merge pull request #81 from liquity/cs-014
bingen Nov 25, 2024
7d3b9fb
Merge pull request #82 from liquity/D-H1
bingen Nov 25, 2024
54c2279
Update README.md
GalloDaSballo Nov 25, 2024
8b612fb
fix: Fix some Natspec header comments
bingen Nov 26, 2024
6447ccc
fix: Remove unnecessary zero initialization from initial initiatives
bingen Nov 26, 2024
6356050
fix: Use cached currentEpoch on registering initiatives
bingen Nov 26, 2024
40f9e44
chore: Pin solidity version of main contracts to 0.8.24
bingen Nov 26, 2024
cbc81ff
Merge pull request #84 from liquity/cs-015
bingen Nov 27, 2024
de2484f
Merge pull request #85 from liquity/D-A3
bingen Nov 27, 2024
9e6b17d
Update README.md
GalloDaSballo Nov 27, 2024
ab339a7
chore: Add functions to IGovernance interface
bingen Nov 27, 2024
d11095b
fix: Remove unused (and kind of redundant) REGISTRATION_WAPM_UP_PERIOD
bingen Nov 27, 2024
906edfc
fix: Cache epoch()
bingen Nov 27, 2024
62235ca
fix: incomplete events
danielattilasimon Nov 28, 2024
f632a9c
chore: forge fmt
danielattilasimon Nov 28, 2024
26bc1b9
Merge pull request #88 from liquity/cs-035
bingen Nov 28, 2024
49776e9
Merge pull request #86 from liquity/D-A8
bingen Nov 28, 2024
12d4852
refactor: eliminate unnecessary corner cases & special checks
danielattilasimon Nov 29, 2024
d5c72ea
chore: fix code comment
danielattilasimon Nov 29, 2024
a1cb319
chore: forge fmt
danielattilasimon Nov 29, 2024
79cc3b4
test: avoid storage manipulation
danielattilasimon Nov 29, 2024
6276900
chore: forge fmt
danielattilasimon Nov 29, 2024
809d727
chore: Remove TODO's
bingen Dec 2, 2024
0a4a784
fix: Some minor gas optimizations
bingen Dec 2, 2024
1fcda14
chore: fix compilation
danielattilasimon Dec 3, 2024
44cbb26
test: fix failing test case after changing revert reason
danielattilasimon Dec 3, 2024
17e7be1
refactor: try to fix stack-too-deep with less diff noise
danielattilasimon Dec 3, 2024
48afaad
Merge pull request #90 from liquity/address-chainsecurity-questions
danielattilasimon Dec 3, 2024
0965663
Merge branch 'main' into avoid-storage-manipulation
danielattilasimon Dec 3, 2024
c326f0c
Merge pull request #91 from liquity/avoid-storage-manipulation
danielattilasimon Dec 3, 2024
531b6fd
feat: disallow registration before epoch 3
danielattilasimon Dec 3, 2024
1e8a454
chore: forge fmt
danielattilasimon Dec 3, 2024
f78e803
test: fix error message
danielattilasimon Dec 3, 2024
06e0efa
Merge pull request #93 from liquity/cs-026
bingen Dec 3, 2024
9d1bd2a
Merge pull request #94 from liquity/event-fixes-alt
danielattilasimon Dec 4, 2024
ce58d2c
feat: replace Multicall with our own MultiDelegateCall
danielattilasimon Dec 4, 2024
7f07d39
fix: Add initiative status enum and getters to interface
bingen Dec 4, 2024
567ba08
chore: forge fmt
bingen Dec 4, 2024
078a766
Merge pull request #87 from liquity/cs-044
bingen Dec 4, 2024
22bc82f
chore: Remove @audit comments
bingen Dec 4, 2024
618882c
feat: more useful staking events in `Governance`
danielattilasimon Dec 5, 2024
ba5977e
chore: forge fmt
danielattilasimon Dec 5, 2024
b495c05
Merge branch 'main' into todos
bingen Dec 5, 2024
ce7e968
Merge pull request #92 from liquity/todos
bingen Dec 5, 2024
cafde08
Merge pull request #95 from liquity/no-immediate-registration
danielattilasimon Dec 6, 2024
8709efa
Merge pull request #96 from liquity/multicall
danielattilasimon Dec 6, 2024
d42b2ce
chore: documentation for `Governance` events
danielattilasimon Dec 6, 2024
7053d1c
feat: ensure `bribeToken` != BOLD
danielattilasimon Dec 6, 2024
9298475
chore: forge fmt
danielattilasimon Dec 6, 2024
2ac1f97
Merge pull request #100 from liquity/bribe-token-ne-bold
danielattilasimon Dec 6, 2024
5b6db05
Merge pull request #98 from liquity/staking-events
danielattilasimon Dec 10, 2024
5ec3e29
Update README.md
GalloDaSballo Dec 10, 2024
bb863eb
test: demonstrate overflow in `claimBribes()`
danielattilasimon Dec 11, 2024
484738a
fix: overflow in `claimBribes()`
danielattilasimon Dec 11, 2024
00b827b
test: ensure that bribes can always be claimed
danielattilasimon Dec 11, 2024
971399f
ci: tone down fuzz runs for heavy test case
danielattilasimon Dec 11, 2024
df058cf
test: fix bribe test
danielattilasimon Dec 11, 2024
87d79c2
Merge pull request #102 from liquity/claim-bribe-overflow
danielattilasimon Dec 12, 2024
6ce7c3e
Remove castings
RickGriff Nov 26, 2024
ec05967
Refactor timestamp approach to offset scheme
RickGriff Dec 4, 2024
98f8de4
Remove precision scaling and fix tests
RickGriff Dec 9, 2024
3943468
Fix merge conflicts
RickGriff Dec 12, 2024
d2f2052
forge fmt
RickGriff Dec 12, 2024
6c92420
rename variable
RickGriff Dec 12, 2024
af790ba
fix: array access out-of-bounds
danielattilasimon Dec 13, 2024
c33b903
fix: typo leading to underflows / bad accounting
danielattilasimon Dec 13, 2024
1e0ad4c
fix: overflow in token supply
danielattilasimon Dec 13, 2024
e115a21
fix: underflow in `lqtyToVotes`
danielattilasimon Dec 13, 2024
4f52510
test: fix multicall test
danielattilasimon Dec 13, 2024
06750f3
fix: division by zero when user has no unallocated LQTY
danielattilasimon Dec 13, 2024
2b08ccc
test: fix overflows in `Governance` fuzz tests
danielattilasimon Dec 13, 2024
345f4b0
test: fix `test_allocateLQTY_single`
danielattilasimon Dec 13, 2024
5302b2f
chore: forge fmt
danielattilasimon Dec 13, 2024
47c9806
test: fix `test_depositLQTYViaPermit`
danielattilasimon Dec 13, 2024
dde67fd
test: fix `test_depositLQTY_withdrawLQTY`
danielattilasimon Dec 13, 2024
0b24a91
test: fix `test_voting_power_in_same_epoch_as_allocation`
danielattilasimon Dec 13, 2024
b13f1d7
test: fix forked version of `test_depositLQTY_withdrawLQTY`
danielattilasimon Dec 13, 2024
27954c4
test: fix `test_offset_allocate_same_initiative_fuzz`
danielattilasimon Dec 13, 2024
e92e4e6
test: fix broken `Governance` property definition
danielattilasimon Dec 13, 2024
ea18e12
Fix BribeInitiative and GovernanceAttacks test suites
RickGriff Dec 13, 2024
3ac5be9
change uint and int sizes in test
RickGriff Dec 14, 2024
f37fda0
chore: forge fmt
bingen Dec 14, 2024
d11e15a
Merge pull request #97 from liquity/refactor_voting_power
bingen Dec 14, 2024
4d906ff
docs: update outdated natspec
danielattilasimon Dec 17, 2024
15470de
Merge pull request #104 from liquity/spec-ibribeinitiative
danielattilasimon Dec 18, 2024
2193822
fix: epoch start was effectively zero in Sepolia deployment
bingen Dec 18, 2024
45267f5
fix: Remove unused constants from deployment script
bingen Dec 19, 2024
a28490a
Merge pull request #105 from liquity/fix-deployment-script
bingen Dec 19, 2024
0bfba11
fix: wrong calculation of the bribes given to each user
danielattilasimon Dec 25, 2024
ac79249
feat: reset no longer needed on staking
danielattilasimon Dec 25, 2024
bd4e7db
fix: possible Underflow in `withdrawLQTY`
danielattilasimon Dec 25, 2024
ba0f44c
fix: dust left in `unallocatedOffset` despite allocating all LQTY
danielattilasimon Dec 25, 2024
2157ea9
fix: registration fees go to previous epoch
danielattilasimon Dec 25, 2024
fb62975
chore: fix incorrect or outdated comments
danielattilasimon Dec 25, 2024
1df8113
refactor: remove stale and redundant check
danielattilasimon Dec 26, 2024
91d2ccd
chore: delete outdated comment
danielattilasimon Dec 27, 2024
8b75c21
docs: fix natspec of `IGovernance`
danielattilasimon Dec 27, 2024
8858904
test: vote -> stake -> unstake
danielattilasimon Dec 27, 2024
90d02b5
Merge pull request #107 from liquity/fix-wrong-bribes
danielattilasimon Dec 27, 2024
b5ab005
Merge pull request #110 from liquity/address-todo
danielattilasimon Dec 27, 2024
aa5a770
Merge pull request #114 from liquity/fix-reg-fee
danielattilasimon Dec 27, 2024
b5ade69
Merge pull request #120 from liquity/fix-comments
danielattilasimon Dec 27, 2024
7cf3b1f
docs: add @dev note about `_allocateLQTY()`
danielattilasimon Dec 27, 2024
ffbf480
Merge pull request #121 from liquity/stale-check
danielattilasimon Dec 27, 2024
9093f62
Merge remote-tracking branch 'origin/main' into fix-offset-dust
danielattilasimon Dec 30, 2024
a5f9f03
fix: dust left after claiming all bribes
danielattilasimon Dec 31, 2024
e0b08a6
test: voting power manipulation via allocation
danielattilasimon Jan 1, 2025
8173873
test: voting power manipulation via withdrawal
danielattilasimon Jan 1, 2025
e50789c
fix: add strong assertions on non-negative voting power allocation
danielattilasimon Jan 1, 2025
3ca74e1
chore: add comment about offset allocation scheme
danielattilasimon Jan 1, 2025
8db397c
chore: add comment on votes being positive
danielattilasimon Jan 1, 2025
73fbf86
chore: add explanation to rounding error test case
danielattilasimon Jan 2, 2025
5d2d605
chore: death to ugly numbers
danielattilasimon Jan 2, 2025
9efb1d1
Merge pull request #112 from liquity/fix-offset-dust
danielattilasimon Jan 2, 2025
f8684d9
refactor: expose constant that can be returned by public getter
danielattilasimon Jan 2, 2025
f6839c9
Merge pull request #123 from liquity/bribe-dust
danielattilasimon Jan 2, 2025
b8b2dd6
feat: don't call `onAfterAllocateLQTY()` on vetos
danielattilasimon Jan 2, 2025
4258eb3
test: add basic `onAfterAllocateLQTY()` hook tests
danielattilasimon Jan 2, 2025
ac09a1a
Merge pull request #124 from liquity/expose-constant
bingen Jan 2, 2025
1c379b5
Merge pull request #126 from liquity/no-veto-hook
bingen Jan 2, 2025
972e4e8
Remove UniV4 initiative
bingen Jan 7, 2025
c1a3699
Merge pull request #127 from liquity/remove_uniV4_initiative
ColinPlatt Jan 8, 2025
8d35d5a
chore: remove Uni v4 submodule
danielattilasimon Jan 13, 2025
e7ed534
chore: remove remnants of Uni v4
danielattilasimon Jan 13, 2025
7879894
Update README.md
RickGriff Jan 13, 2025
ca90682
Update README.md
RickGriff Jan 13, 2025
90a9266
Update README.md
RickGriff Jan 13, 2025
68b7110
Update README.md
RickGriff Jan 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 1 addition & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ env:
MAINNET_RPC_URL: ${{ secrets.MAINNET_RPC_URL }}
FOUNDRY_PROFILE: ci


jobs:
lint:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -54,7 +53,6 @@ jobs:
echo "✅ Passed" >> $GITHUB_STEP_SUMMARY

test:
needs: ["lint", "build"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -67,14 +65,8 @@ jobs:
- name: Show the Foundry config
run: "forge config"

- name: Generate a fuzz seed that changes weekly to avoid burning through RPC allowance
run: >
echo "FOUNDRY_FUZZ_SEED=$(
echo $(($EPOCHSECONDS - $EPOCHSECONDS % 604800))
)" >> $GITHUB_ENV

- name: Run tests
run: forge test -vvv --gas-report
run: forge test -vvv --gas-report --color always

- name: Add test summary
run: |
Expand Down
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@
[submodule "lib/openzeppelin-contracts"]
path = lib/openzeppelin-contracts
url = https://github.com/OpenZeppelin/openzeppelin-contracts
[submodule "lib/v4-core"]
path = lib/v4-core
url = https://github.com/Uniswap/v4-core
[submodule "lib/chimera"]
path = lib/chimera
url = https://github.com/Recon-Fuzz/chimera
402 changes: 335 additions & 67 deletions README.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion foundry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ chain_id = 99
block_timestamp = 2592000

[profile.ci.fuzz]
runs = 5000
runs = 500

[profile.default.fuzz]
runs = 100
Expand Down
1 change: 0 additions & 1 deletion lib/v4-core
Submodule v4-core deleted from ac4753
76 changes: 12 additions & 64 deletions script/DeploySepolia.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -2,59 +2,48 @@
pragma solidity ^0.8.13;

import {Script} from "forge-std/Script.sol";
import {MockERC20} from "forge-std/mocks/MockERC20.sol";

import {PoolManager, Deployers, Hooks} from "v4-core/test/utils/Deployers.sol";
import {ICurveStableswapFactoryNG} from "../src/interfaces/ICurveStableswapFactoryNG.sol";
import {ICurveStableswapNG} from "../src/interfaces/ICurveStableswapNG.sol";
import {ILiquidityGauge} from "./../src/interfaces/ILiquidityGauge.sol";

import {IGovernance} from "../src/interfaces/IGovernance.sol";

import {Governance} from "../src/Governance.sol";
import {UniV4Donations} from "../src/UniV4Donations.sol";
import {CurveV2GaugeRewards} from "../src/CurveV2GaugeRewards.sol";
import {Hooks} from "../src/utils/BaseHook.sol";

import {MockERC20Tester} from "../test/mocks/MockERC20Tester.sol";
import {MockStakingV1} from "../test/mocks/MockStakingV1.sol";
import {MockStakingV1Deployer} from "../test/mocks/MockStakingV1Deployer.sol";
import {HookMiner} from "./utils/HookMiner.sol";

contract DeploySepoliaScript is Script, Deployers {
contract DeploySepoliaScript is Script, MockStakingV1Deployer {
// Environment Constants
MockERC20 private lqty;
MockERC20 private bold;
address private stakingV1;
MockERC20 private usdc;
MockERC20Tester private lqty;
MockERC20Tester private bold;
MockStakingV1 private stakingV1;
MockERC20Tester private usdc;

PoolManager private constant poolManager = PoolManager(0xE8E23e97Fa135823143d6b9Cba9c699040D51F70);
ICurveStableswapFactoryNG private constant curveFactory =
ICurveStableswapFactoryNG(address(0xfb37b8D939FFa77114005e61CFc2e543d6F49A81));

// Governance Constants
uint128 private constant REGISTRATION_FEE = 100e18;
uint128 private constant REGISTRATION_THRESHOLD_FACTOR = 0.001e18;
uint128 private constant UNREGISTRATION_THRESHOLD_FACTOR = 3e18;
uint16 private constant REGISTRATION_WARM_UP_PERIOD = 4;
uint16 private constant UNREGISTRATION_AFTER_EPOCHS = 4;
uint128 private constant VOTING_THRESHOLD_FACTOR = 0.03e18;
uint88 private constant MIN_CLAIM = 500e18;
uint88 private constant MIN_ACCRUAL = 1000e18;
uint32 private constant EPOCH_DURATION = 604800;
uint32 private constant EPOCH_VOTING_CUTOFF = 518400;

// UniV4Donations Constants
uint256 private immutable VESTING_EPOCH_START = block.timestamp;
uint256 private constant VESTING_EPOCH_DURATION = 7 days;
uint24 private constant FEE = 400;
int24 constant MAX_TICK_SPACING = 32767;

// CurveV2GaugeRewards Constants
uint256 private constant DURATION = 7 days;

// Contracts
Governance private governance;
address[] private initialInitiatives;
UniV4Donations private uniV4Donations;
CurveV2GaugeRewards private curveV2GaugeRewards;
ICurveStableswapNG private curvePool;
ILiquidityGauge private gauge;
Expand All @@ -71,73 +60,33 @@ contract DeploySepoliaScript is Script, Deployers {
}

function deployEnvironment() private {
lqty = deployMockERC20("Liquity", "LQTY", 18);
bold = deployMockERC20("Bold", "BOLD", 18);
usdc = deployMockERC20("USD Coin", "USDC", 6);
stakingV1 = address(new MockStakingV1(address(lqty)));
(stakingV1, lqty,) = deployMockStakingV1();
bold = new MockERC20Tester("Bold", "BOLD");
usdc = new MockERC20Tester("USD Coin", "USDC");
}

function deployGovernance() private {
governance = new Governance(
address(lqty),
address(bold),
stakingV1,
address(stakingV1),
address(bold),
IGovernance.Configuration({
registrationFee: REGISTRATION_FEE,
registrationThresholdFactor: REGISTRATION_THRESHOLD_FACTOR,
unregistrationThresholdFactor: UNREGISTRATION_THRESHOLD_FACTOR,
registrationWarmUpPeriod: REGISTRATION_WARM_UP_PERIOD,
unregistrationAfterEpochs: UNREGISTRATION_AFTER_EPOCHS,
votingThresholdFactor: VOTING_THRESHOLD_FACTOR,
minClaim: MIN_CLAIM,
minAccrual: MIN_ACCRUAL,
epochStart: uint32(block.timestamp - VESTING_EPOCH_START),
epochStart: block.timestamp - EPOCH_DURATION,
/// @audit Ensures that `initialInitiatives` can be voted on
epochDuration: EPOCH_DURATION,
epochVotingCutoff: EPOCH_VOTING_CUTOFF
}),
deployer,
initialInitiatives
);
assert(governance == uniV4Donations.governance());
}

function deployUniV4Donations(uint256 _nonce) private {
address gov = address(vm.computeCreateAddress(deployer, _nonce));
uint160 flags = uint160(Hooks.AFTER_INITIALIZE_FLAG | Hooks.AFTER_ADD_LIQUIDITY_FLAG);

(, bytes32 salt) = HookMiner.find(
0x4e59b44847b379578588920cA78FbF26c0B4956C,
// address(this),
flags,
type(UniV4Donations).creationCode,
abi.encode(
gov,
address(bold),
address(lqty),
block.timestamp,
EPOCH_DURATION,
address(poolManager),
address(usdc),
FEE,
MAX_TICK_SPACING
)
);

uniV4Donations = new UniV4Donations{salt: salt}(
gov,
address(bold),
address(lqty),
block.timestamp,
EPOCH_DURATION,
address(poolManager),
address(usdc),
FEE,
MAX_TICK_SPACING
);

initialInitiatives.push(address(uniV4Donations));
}

function deployCurveV2GaugeRewards(uint256 _nonce) private {
Expand Down Expand Up @@ -176,7 +125,6 @@ contract DeploySepoliaScript is Script, Deployers {
function run() public {
vm.startBroadcast(privateKey);
deployEnvironment();
deployUniV4Donations(nonce + 8);
deployGovernance();
vm.stopBroadcast();
}
Expand Down
Loading
Loading