From b8e4fa5ebbc781f6cdfc64a7e1f242941aa53c19 Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:21:10 -0600 Subject: [PATCH 01/10] fix: deployment readme links --- README.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 9abbf039b..10552f40f 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # Balancer V2 & V3 Deployments -[![NPM Package](https://img.shields.io/npm/v/@balancer-labs/v2-deployments.svg)](https://www.npmjs.org/package/@balancer-labs/v2-deployments) +[![NPM Package](https://img.shields.io/npm/v/@balancer-labs/v2-deployments.svg)](https://www.npmjs.com/package/@balancer-labs/v2-deployments) [![GitHub Repository](https://img.shields.io/badge/github-deployments-lightgrey?logo=github)](https://github.com/balancer-labs/balancer-v2-monorepo/tree/master/pkg/deployments) This package contains the addresses and ABIs of all Balancer V2 deployed contracts for Ethereum mainnet, Polygon, Arbitrum, Optimism, Gnosis, BSC and Avalanche, as well as various test networks. Each deployment consists of a deployment script (called 'task'), inputs (script configuration, such as dependencies), outputs (typically contract addresses), ABIs and bytecode files of related contracts. @@ -39,13 +39,13 @@ Past deployments that are currently not in use or have been superseded can be ac Returns an [Ethers](https://docs.ethers.io/v5/) contract object for a canonical deployment (e.g. the Vault, or a Pool factory). -_Note: requires using [Hardhat](https://hardhat.org/) with the [`hardhat-ethers`](https://hardhat.org/plugins/nomicfoundation-hardhat-ethers.html) plugin._ +_Note: requires using [Hardhat](https://hardhat.org/) with the [`hardhat-ethers`](https://hardhat.org/hardhat-runner/plugins/nomicfoundation-hardhat-ethers) plugin._ - **async function getBalancerContractAt(taskID, contract, address)** Returns an [Ethers](https://docs.ethers.io/v5/) contract object for a contract dynamically created at a known address (e.g. a Pool created from a factory). -_Note: requires using [Hardhat](https://hardhat.org/) with the [`hardhat-ethers`](https://hardhat.org/plugins/nomicfoundation-hardhat-ethers.html) plugin._ +_Note: requires using [Hardhat](https://hardhat.org/) with the [`hardhat-ethers`](https://hardhat.org/hardhat-runner/plugins/nomicfoundation-hardhat-ethers) plugin._ - **function getBalancerContractAbi(taskID, contract)** @@ -127,18 +127,15 @@ Returns an object with all contracts from a deployment and their addresses. | V3 MEV Capture Hook | [`20250212-v3-mev-capture-hook`](./v3/tasks/20250212-v3-mev-capture-hook) | | V3 Protocol Fee Controller V2 | [`20250214-v3-protocol-fee-controller-v2`](./v3/tasks/20250214-v3-protocol-fee-controller-v2) | | V3 Aggregator Router | [`20250218-v3-aggregator-router`](./v3/tasks/20250218-v3-aggregator-router) | -| V3 Cow Swap Fee Burner | [`20250221-v3-cow-swap-fee-burner`](./v3/tasks/20250221-v3-cow-swap-fee-burner) | | V3 Router V2 | [`20250307-v3-router-v2`](./v3/tasks/20250307-v3-router-v2) | | V3 Vault Factory V2, and Vault contracts | [`20250321-v3-vault-factory-v2`](./v3/tasks/20250321-v3-vault-factory-v2) | | V3 Stable Surge Hook (V2) | [`20250403-v3-stable-surge-hook-v2`](./v3/tasks/20250403-v3-stable-surge-hook-v2) | | V3 Vault Explorer V2 | [`20250407-v3-vault-explorer-v2`](./v3/tasks/20250407-v3-vault-explorer-v2) | | V3 Wrapped BPT Factory | [`20250418-v3-wrapped-bpt`](./v3/tasks/20250418-v3-wrapped-bpt) | -| V3 Pool Pause Helper | [`20250430-v3-pool-pause-helper`](./v3/tasks/20250430-v3-pool-pause-helper) | | V3 Protocol Fee Helper | [`20250430-v3-protocol-fee-helper`](./v3/tasks/20250430-v3-protocol-fee-helper) | | V3 Protocol Fee Percentages Provider | [`20250502-v3-fee-percentages-provider`](./v3/tasks/20250502-v3-fee-percentages-provider) | | V3 Protocol Fee Sweeper (V2) | [`20250503-v3-protocol-fee-sweeper-v2`](./v3/tasks/20250503-v3-protocol-fee-sweeper-v2) | | V3 Aggregator Batch Router | [`20250507-v3-aggregator-batch-router`](./v3/tasks/20250507-v3-aggregator-batch-router) | -| V3 ERC4626 Cow Swap Fee Burner | [`20250507-v3-erc4626-cow-swap-fee-burner`](./v3/tasks/20250507-v3-erc4626-cow-swap-fee-burner) | | V2 VeBoost V2.1 | [`20250613-veboost-v2.1`](./v2/tasks/20250613-veboost-v2.1) | | V3 ReClamm Pool (V2) | [`20250702-v3-reclamm-pool-v2`](./v3/tasks/20250702-v3-reclamm-pool-v2) | | V3 Token Pair Registry | [`20250806-v3-token-pair-registry`](./v3/tasks/20250806-v3-token-pair-registry) | @@ -256,6 +253,7 @@ Go to each deprecated deployment's readme file to learn more about why it is dep | V3 Vault Explorer | [`20241205-v3-vault-explorer`](./v3/deprecated/20241205-v3-vault-explorer) | | V3 Weighted Pool | [`20241205-v3-weighted-pool`](./v3/deprecated/20241205-v3-weighted-pool) | | V3 Stable Surge Pool | [`20250121-v3-stable-surge`](./v3/deprecated/20250121-v3-stable-surge) | +| V3 Cow Swap Fee Burner | [`20250221-v3-cow-swap-fee-burner`](./v3/deprecated/20250221-v3-cow-swap-fee-burner) | | V3 Protocol Fee Sweeper | [`20250228-v3-protocol-fee-sweeper`](./v3/deprecated/20250228-v3-protocol-fee-sweeper) | | V3 Liquidity Bootstrapping Pool | [`20250307-v3-liquidity-bootstrapping-pool`](./v3/deprecated/20250307-v3-liquidity-bootstrapping-pool) | | Balancer Contract Registry Initializer | [`20250314-balancer-registry-initializer`](./v3/deprecated/20250314-balancer-registry-initializer) | @@ -264,5 +262,6 @@ Go to each deprecated deployment's readme file to learn more about why it is dep | V3 ReClamm Pool | [`20250409-v3-reclamm-pool`](./v3/deprecated/20250409-v3-reclamm-pool) | | V3 Pool Pause Helper | [`20250430-v3-pool-pause-helper`](./v3/deprecated/20250430-v3-pool-pause-helper) | | V3 Pool Swap Fee Helper | [`20250430-v3-pool-swap-fee-helper`](./v3/deprecated/20250430-v3-pool-swap-fee-helper) | -| V3 Liquidity Bootstrapping Pool (V2) | [`20250701-v3-liquidity-bootstrapping-pool-v2`](./v3/deprecated/20250701-v3-liquidity-bootstrapping-pool-v2) | +| V3 ERC4626 Cow Swap Fee Burner | [`20250507-v3-erc4626-cow-swap-fee-burner`](./v3/tasks/20250507-v3-erc4626-cow-swap-fee-burner) | | V3 Balancer Fee Burner | [`20250530-v3-balancer-fee-burner`](./v3/deprecated/20250530-v3-balancer-fee-burner) | +| V3 Liquidity Bootstrapping Pool (V2) | [`20250701-v3-liquidity-bootstrapping-pool-v2`](./v3/deprecated/20250701-v3-liquidity-bootstrapping-pool-v2) | From 6483ba7eb3672a6802f65f1b8e86dd111f86543b Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:21:51 -0600 Subject: [PATCH 02/10] fix: task links --- v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md | 2 +- v2/deprecated/20221021-managed-pool/readme.md | 2 +- v2/deprecated/20221202-timelock-authorizer/readme.md | 2 +- v2/deprecated/20230711-composable-stable-pool-v5/readme.md | 2 +- v2/tasks/20230525-l2-veboost-v2/readme.md | 2 +- v3/deprecated/20241205-v3-stable-pool/readme.md | 2 +- v3/deprecated/20250121-v3-stable-surge/readme.md | 2 +- .../20250307-v3-liquidity-bootstrapping-pool/readme.md | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md b/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md index a200d589c..b9e997965 100644 --- a/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md +++ b/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> This factory and associated Pools have been deprecated due to incorrect calculation of protocol fees when the global protocol swap fee percentage is non-zero. They have been [temporarily replaced with a version that addresses this](../../tasks/20211202-no-protocol-fee-lbp). +> This factory and associated Pools have been deprecated due to incorrect calculation of protocol fees when the global protocol swap fee percentage is non-zero. They have been [temporarily replaced with a version that addresses this](./20211202-no-protocol-fee-lbp). Deployment of the `LiquidityBootstrappingPoolFactory`, for Liquidity Bootstrapping Pools of up to 4 tokens. diff --git a/v2/deprecated/20221021-managed-pool/readme.md b/v2/deprecated/20221021-managed-pool/readme.md index 39a77ee6d..12984f342 100644 --- a/v2/deprecated/20221021-managed-pool/readme.md +++ b/v2/deprecated/20221021-managed-pool/readme.md @@ -4,7 +4,7 @@ > > This factory and associated Pools have been deprecated due to dependencies requiring extra features: this deployment's Pools are not expected to ever be used. > -> Superseded by this [updated version](../../tasks/20230411-managed-pool-v2), which has reentrancy protection, create2, configurable pause window, and other improvements. +> Superseded by this [updated version](./20230411-managed-pool-v2), which has reentrancy protection, create2, configurable pause window, and other improvements. Deployment of the `ManagedPoolFactory`, which allows creating Managed Pools. diff --git a/v2/deprecated/20221202-timelock-authorizer/readme.md b/v2/deprecated/20221202-timelock-authorizer/readme.md index 80c5343dd..9a09cdd31 100644 --- a/v2/deprecated/20221202-timelock-authorizer/readme.md +++ b/v2/deprecated/20221202-timelock-authorizer/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ -> Superseded by [20230403-timelock-authorizer](../../tasks/20230522-timelock-authorizer/), which provides much better and isolated control over granting, revoking, cancelling and executing permissions. +> Superseded by [20230403-timelock-authorizer](../../tasks/20250925-timelock-authorizer/), which provides much better and isolated control over granting, revoking, cancelling and executing permissions. Deployment of the `TimelockAuthorizer` in order to replace the basic Authorizer deployed with the Vault. This Authorizer implementation allows defining a delay per action identifier. Users can only execute functions directly when there is no delay. Otherwise, they're granted permission to schedule an action, which can then be executed by the Authorizer after the delay. It also introduces Granters and Revokers, to allow controlled delegation of permission handling to third parties, which eases the burden on governance and allows the system to scale. For instance, a smaller multisig might be designated as a Granter for certain veBAL-related functions for new pools. diff --git a/v2/deprecated/20230711-composable-stable-pool-v5/readme.md b/v2/deprecated/20230711-composable-stable-pool-v5/readme.md index 6b30aff66..481989e4b 100644 --- a/v2/deprecated/20230711-composable-stable-pool-v5/readme.md +++ b/v2/deprecated/20230711-composable-stable-pool-v5/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED** ⚠️ > -> This version has been replaced for an updated version: [Composable Stable Pool V6](../../tasks/20240223-composable-stable-pool-v6). The new version has the same functionality, but larger pause and buffer windows; this version can still be used if pausing is deemed unnecessary for specific pools. +> This version has been replaced for an updated version: [Composable Stable Pool V6](./20240223-composable-stable-pool-v6). The new version has the same functionality, but larger pause and buffer windows; this version can still be used if pausing is deemed unnecessary for specific pools. Deployment of `ComposableStablePoolFactory`, which supersedes `20230320-composable-stable-pool-v4`. This version is resilient to abrupt changes in the value reported by the pool tokens' rate providers, and calculates diff --git a/v2/tasks/20230525-l2-veboost-v2/readme.md b/v2/tasks/20230525-l2-veboost-v2/readme.md index 39d75192a..5b5cb01f4 100644 --- a/v2/tasks/20230525-l2-veboost-v2/readme.md +++ b/v2/tasks/20230525-l2-veboost-v2/readme.md @@ -4,7 +4,7 @@ Deployment of the VeBoostV2 in L2 networks. This contract shall be used as the delegation for the `VotingEscrowDelegationProxy`, using LayerZero's `OmniVotingEscrowChild` as Voting Escrow. This allows using and delegating bridged veBAL balances in L2 networks. -The artifact is the same as in the [20221205-veboost-v2 task](../20221205-veboost-v2/); constructor arguments and fork tests differ. +The artifact is the same as in the [20221205-veboost-v2 task](../../deprecated/20221205-veboost-v2/); constructor arguments and fork tests differ. ## Useful Files diff --git a/v3/deprecated/20241205-v3-stable-pool/readme.md b/v3/deprecated/20241205-v3-stable-pool/readme.md index acd9b0d06..b4ab9d7a8 100644 --- a/v3/deprecated/20241205-v3-stable-pool/readme.md +++ b/v3/deprecated/20241205-v3-stable-pool/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> The stable pool was superseded by this [updated version](../../tasks/20250324-v3-stable-pool-v2/). +> The stable pool was superseded by this [updated version](./20250324-v3-stable-pool-v2/). The original pool is still safe to use; V2 just includes new functionality. diff --git a/v3/deprecated/20250121-v3-stable-surge/readme.md b/v3/deprecated/20250121-v3-stable-surge/readme.md index b357a2ac4..fbf630878 100644 --- a/v3/deprecated/20250121-v3-stable-surge/readme.md +++ b/v3/deprecated/20250121-v3-stable-surge/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> The stable pool was superseded by this [updated version](../../tasks/20250404-v3-stable-surge-pool-factory-v2/). +> The stable pool was superseded by this [updated version](./20250404-v3-stable-surge-pool-factory-v2/). Deployment of the `StableSurgePoolFactory` for Balancer V3. Pools from this factory use stable math, inspired by Curve stable pools, which is best suited for correlated assets. diff --git a/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md b/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md index f5e400b9c..5f50a8043 100644 --- a/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md +++ b/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> This version was superseded by [`LiquidityBoostrappingPool` V2](../../tasks/20250701-v3-liquidity-bootstrapping-pool-v2/), which (optionally) allows enforcing liquidity migration when the LBP is created. This deployment can still be used if the migration functionality is not desired. +> This version was superseded by [`LiquidityBoostrappingPool` V2](./20250701-v3-liquidity-bootstrapping-pool-v2/), which (optionally) allows enforcing liquidity migration when the LBP is created. This deployment can still be used if the migration functionality is not desired. Deployment for the LBPool, a Weighted Pool with mutable weights, designed to support v3 Liquidity Bootstrapping. This V3 version is more restrictive than LBPs were in V2, in order to make them more deterministic, simpler for aggregators, and safer for end users. They are limited to two tokens and a single weight change operation, specified on deployment. From fe51e1959045af338fc254dad30aa9f168a2f5dd Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:22:07 -0600 Subject: [PATCH 03/10] fix: title and output link --- v2/tasks/20250925-timelock-authorizer/readme.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/v2/tasks/20250925-timelock-authorizer/readme.md b/v2/tasks/20250925-timelock-authorizer/readme.md index e77d90f47..ce4212928 100644 --- a/v2/tasks/20250925-timelock-authorizer/readme.md +++ b/v2/tasks/20250925-timelock-authorizer/readme.md @@ -1,4 +1,4 @@ -# 2023-05-22 - Timelock Authorizer +# 2025-09-25 - Timelock Authorizer Deployment of the `TimelockAuthorizer` in order to replace the basic Authorizer deployed with the Vault. This Authorizer implementation allows defining a delay per action identifier. Users can only execute functions directly when there is no delay. Otherwise, they're granted permission to schedule an action, which can then be executed by the Authorizer after the delay. It also introduces Granters and Revokers, to allow controlled delegation of permission handling to third parties, which eases the burden on governance and allows the system to scale. For instance, a smaller multisig might be designated as a Granter for certain veBAL-related functions for new pools. @@ -6,7 +6,6 @@ This Authorizer implementation allows defining a delay per action identifier. Us ## Useful Files - [Code](https://github.com/balancer/balancer-v2-monorepo/commit/bcf3fe05c0678cde4dc735bd2b1c2cf4fa7af537). -- [Sepolia testnet addresses](./output/sepolia.json) - [`TimelockAuthorizer` artifact](./artifact/TimelockAuthorizer.json) - [`TimelockAuthorizerMigrator` artifact](./artifact/TimelockAuthorizerMigrator.json) - [`TimelockExecutionHelper` artifact](./artifact/TimelockExecutionHelper.json) From 70d4ace0de84200d3766cf1fbc611f2b91128d0b Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:22:27 -0600 Subject: [PATCH 04/10] try to fail on branches as well as master --- .github/workflows/deployment-checks.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deployment-checks.yml b/.github/workflows/deployment-checks.yml index 1076c66ff..2435db85a 100644 --- a/.github/workflows/deployment-checks.yml +++ b/.github/workflows/deployment-checks.yml @@ -104,5 +104,6 @@ jobs: - uses: umbrelladocs/action-linkspector@v1 with: fail_level: any + filter_mode: nofilter env: CI: true From a178d602e97b7c50856cf24e2ef1c0c830952505 Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:35:27 -0600 Subject: [PATCH 05/10] fix: remaining bad links --- README.md | 2 +- v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md | 2 +- v2/deprecated/20221021-managed-pool/readme.md | 2 +- v2/deprecated/20230711-composable-stable-pool-v5/readme.md | 2 +- v3/deprecated/20241205-v3-stable-pool/readme.md | 2 +- v3/deprecated/20250121-v3-stable-surge/readme.md | 2 +- .../20250307-v3-liquidity-bootstrapping-pool/readme.md | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 10552f40f..24f0efc78 100644 --- a/README.md +++ b/README.md @@ -262,6 +262,6 @@ Go to each deprecated deployment's readme file to learn more about why it is dep | V3 ReClamm Pool | [`20250409-v3-reclamm-pool`](./v3/deprecated/20250409-v3-reclamm-pool) | | V3 Pool Pause Helper | [`20250430-v3-pool-pause-helper`](./v3/deprecated/20250430-v3-pool-pause-helper) | | V3 Pool Swap Fee Helper | [`20250430-v3-pool-swap-fee-helper`](./v3/deprecated/20250430-v3-pool-swap-fee-helper) | -| V3 ERC4626 Cow Swap Fee Burner | [`20250507-v3-erc4626-cow-swap-fee-burner`](./v3/tasks/20250507-v3-erc4626-cow-swap-fee-burner) | +| V3 ERC4626 Cow Swap Fee Burner | [`20250507-v3-erc4626-cow-swap-fee-burner`](./v3/deprecated/20250507-v3-erc4626-cow-swap-fee-burner) | | V3 Balancer Fee Burner | [`20250530-v3-balancer-fee-burner`](./v3/deprecated/20250530-v3-balancer-fee-burner) | | V3 Liquidity Bootstrapping Pool (V2) | [`20250701-v3-liquidity-bootstrapping-pool-v2`](./v3/deprecated/20250701-v3-liquidity-bootstrapping-pool-v2) | diff --git a/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md b/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md index b9e997965..b04cf4165 100644 --- a/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md +++ b/v2/deprecated/20210721-liquidity-bootstrapping-pool/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> This factory and associated Pools have been deprecated due to incorrect calculation of protocol fees when the global protocol swap fee percentage is non-zero. They have been [temporarily replaced with a version that addresses this](./20211202-no-protocol-fee-lbp). +> This factory and associated Pools have been deprecated due to incorrect calculation of protocol fees when the global protocol swap fee percentage is non-zero. They have been [temporarily replaced with a version that addresses this](../20211202-no-protocol-fee-lbp). Deployment of the `LiquidityBootstrappingPoolFactory`, for Liquidity Bootstrapping Pools of up to 4 tokens. diff --git a/v2/deprecated/20221021-managed-pool/readme.md b/v2/deprecated/20221021-managed-pool/readme.md index 12984f342..13026db06 100644 --- a/v2/deprecated/20221021-managed-pool/readme.md +++ b/v2/deprecated/20221021-managed-pool/readme.md @@ -4,7 +4,7 @@ > > This factory and associated Pools have been deprecated due to dependencies requiring extra features: this deployment's Pools are not expected to ever be used. > -> Superseded by this [updated version](./20230411-managed-pool-v2), which has reentrancy protection, create2, configurable pause window, and other improvements. +> Superseded by this [updated version](../20230411-managed-pool-v2), which has reentrancy protection, create2, configurable pause window, and other improvements. Deployment of the `ManagedPoolFactory`, which allows creating Managed Pools. diff --git a/v2/deprecated/20230711-composable-stable-pool-v5/readme.md b/v2/deprecated/20230711-composable-stable-pool-v5/readme.md index 481989e4b..31c031045 100644 --- a/v2/deprecated/20230711-composable-stable-pool-v5/readme.md +++ b/v2/deprecated/20230711-composable-stable-pool-v5/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED** ⚠️ > -> This version has been replaced for an updated version: [Composable Stable Pool V6](./20240223-composable-stable-pool-v6). The new version has the same functionality, but larger pause and buffer windows; this version can still be used if pausing is deemed unnecessary for specific pools. +> This version has been replaced for an updated version: [Composable Stable Pool V6](../20240223-composable-stable-pool-v6). The new version has the same functionality, but larger pause and buffer windows; this version can still be used if pausing is deemed unnecessary for specific pools. Deployment of `ComposableStablePoolFactory`, which supersedes `20230320-composable-stable-pool-v4`. This version is resilient to abrupt changes in the value reported by the pool tokens' rate providers, and calculates diff --git a/v3/deprecated/20241205-v3-stable-pool/readme.md b/v3/deprecated/20241205-v3-stable-pool/readme.md index b4ab9d7a8..de15afc9d 100644 --- a/v3/deprecated/20241205-v3-stable-pool/readme.md +++ b/v3/deprecated/20241205-v3-stable-pool/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> The stable pool was superseded by this [updated version](./20250324-v3-stable-pool-v2/). +> The stable pool was superseded by this [updated version](../20250324-v3-stable-pool-v2/). The original pool is still safe to use; V2 just includes new functionality. diff --git a/v3/deprecated/20250121-v3-stable-surge/readme.md b/v3/deprecated/20250121-v3-stable-surge/readme.md index fbf630878..c5e68c8bd 100644 --- a/v3/deprecated/20250121-v3-stable-surge/readme.md +++ b/v3/deprecated/20250121-v3-stable-surge/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> The stable pool was superseded by this [updated version](./20250404-v3-stable-surge-pool-factory-v2/). +> The stable pool was superseded by this [updated version](../20250404-v3-stable-surge-pool-factory-v2/). Deployment of the `StableSurgePoolFactory` for Balancer V3. Pools from this factory use stable math, inspired by Curve stable pools, which is best suited for correlated assets. diff --git a/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md b/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md index 5f50a8043..1f3739538 100644 --- a/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md +++ b/v3/deprecated/20250307-v3-liquidity-bootstrapping-pool/readme.md @@ -2,7 +2,7 @@ > ⚠️ **DEPRECATED: do not use** ⚠️ > -> This version was superseded by [`LiquidityBoostrappingPool` V2](./20250701-v3-liquidity-bootstrapping-pool-v2/), which (optionally) allows enforcing liquidity migration when the LBP is created. This deployment can still be used if the migration functionality is not desired. +> This version was superseded by [`LiquidityBoostrappingPool` V2](../20250701-v3-liquidity-bootstrapping-pool-v2/), which (optionally) allows enforcing liquidity migration when the LBP is created. This deployment can still be used if the migration functionality is not desired. Deployment for the LBPool, a Weighted Pool with mutable weights, designed to support v3 Liquidity Bootstrapping. This V3 version is more restrictive than LBPs were in V2, in order to make them more deterministic, simpler for aggregators, and safer for end users. They are limited to two tokens and a single weight change operation, specified on deployment. From facfdabc86db6a5a731b1245e6242324df3b4102 Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:47:08 -0600 Subject: [PATCH 06/10] flail: try to avoid 403s on medium articles --- .linkspector.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.linkspector.yml b/.linkspector.yml index 8ccee6380..d51cdb664 100644 --- a/.linkspector.yml +++ b/.linkspector.yml @@ -4,4 +4,11 @@ useGitIgnore: true aliveStatusCodes: - 200 - 429 - \ No newline at end of file + +httpHeaders: + - url: + - '^https?://' + headers: + User-Agent: 'Mozilla/5.0 (X11; Linux x86_64)' + Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' + Accept-Language: 'en-US,en;q=0.5' From 28eae6512212894a0e99aab18a31a130b42a72f4 Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:50:31 -0600 Subject: [PATCH 07/10] flail: regex doesn't work apparently --- .linkspector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.linkspector.yml b/.linkspector.yml index d51cdb664..f064ca1fb 100644 --- a/.linkspector.yml +++ b/.linkspector.yml @@ -7,7 +7,7 @@ aliveStatusCodes: httpHeaders: - url: - - '^https?://' + - https://medium.com/ headers: User-Agent: 'Mozilla/5.0 (X11; Linux x86_64)' Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' From 5dca80e365e3c8c8df9248f89c08ee7a2bf2d1b3 Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 21:56:10 -0600 Subject: [PATCH 08/10] flail: try ignoring medium and adding npm headers --- .linkspector.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.linkspector.yml b/.linkspector.yml index f064ca1fb..113ffa132 100644 --- a/.linkspector.yml +++ b/.linkspector.yml @@ -12,3 +12,13 @@ httpHeaders: User-Agent: 'Mozilla/5.0 (X11; Linux x86_64)' Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' Accept-Language: 'en-US,en;q=0.5' + + - url: + - https://www.npmjs.com/ + headers: + User-Agent: 'Mozilla/5.0 (X11; Linux x86_64)' + Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' + Accept-Language: 'en-US,en;q=0.5' + +ignorePatterns: + - pattern: '^https://medium\.com/balancer-protocol/.*$' From 5335b1a83d58ae81b97e12cb3a54856a85eab9e1 Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 22:00:39 -0600 Subject: [PATCH 09/10] fix: also allow medium.com/immunefi - need to manually check these links. Medium blocks this check as a "bot" --- .linkspector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.linkspector.yml b/.linkspector.yml index 113ffa132..70222a85b 100644 --- a/.linkspector.yml +++ b/.linkspector.yml @@ -21,4 +21,4 @@ httpHeaders: Accept-Language: 'en-US,en;q=0.5' ignorePatterns: - - pattern: '^https://medium\.com/balancer-protocol/.*$' + - pattern: '^https://medium\.com/.*$' From 3dee38bdce7d24740a23ac07ab9f841f3edf6c62 Mon Sep 17 00:00:00 2001 From: Jeff Bennett Date: Fri, 16 Jan 2026 22:01:39 -0600 Subject: [PATCH 10/10] fix: less restrictive. Just have to check these domains manually --- .linkspector.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.linkspector.yml b/.linkspector.yml index 70222a85b..a34a4a3c1 100644 --- a/.linkspector.yml +++ b/.linkspector.yml @@ -21,4 +21,5 @@ httpHeaders: Accept-Language: 'en-US,en;q=0.5' ignorePatterns: - - pattern: '^https://medium\.com/.*$' + - pattern: '^https://medium\.com/balancer-protocol/.*$' + - pattern: '^https://medium\.com/immunefi/.*$'