From b021133d060c601d6de77d4634d9f97d1103fc29 Mon Sep 17 00:00:00 2001 From: Cho Young-Hwi Date: Sun, 22 Mar 2026 07:42:29 +0000 Subject: [PATCH 1/2] [#241] Update constants with deployed PL_TEST, ZapPlotLink, and pool addresses MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit P5-8c: Update testnet constants after P5-8a/b deployments: - PLOT_TOKEN testnet: PL_TEST (0x6Ef4...13Fa) replaces WETH stand-in - ZAP_PLOTLINK testnet: 0x38b0...a0D7 - RESERVE_LABEL: testnet "PL_TEST", mainnet "PLOT" - Added UNISWAP_V4_POOL_MANAGER constant Fixes #241 (partial — P5-8 only) Co-Authored-By: Claude Opus 4.6 (1M context) --- lib/contracts/constants.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/contracts/constants.ts b/lib/contracts/constants.ts index 3bffcc4a..b7ff1f22 100644 --- a/lib/contracts/constants.ts +++ b/lib/contracts/constants.ts @@ -33,18 +33,20 @@ export const STORY_FACTORY = (process.env.NEXT_PUBLIC_CONTRACT_ADDRESS ?? ? "0xfa5489b6710Ba2f8406b37fA8f8c3018e51FA229" : "0x337c5b96f03fB335b433291695A4171fd5dED8B0")) as `0x${string}`; -/** ZapPlotLinkMCV2 — one-click buy (ETH/USDC/HUNT -> storyline token) */ -export const ZAP_PLOTLINK = "0x0000000000000000000000000000000000000000" as const; +/** ZapPlotLink — one-click buy (ETH -> PLOT -> storyline token via Uniswap V4 + MCV2) */ +export const ZAP_PLOTLINK = (IS_TESTNET + ? "0x38b010F2eFf786d44048E290325d00dC642Aa0D7" + : "0x0000000000000000000000000000000000000000") as `0x${string}`; /** $PLOT protocol token - * Testnet: WETH (stand-in reserve token) + * Testnet: PL_TEST ERC-20 on Base Sepolia * Mainnet: $PLOT ERC-20 (backed by $HUNT via Mint Club V2) */ export const PLOT_TOKEN = (IS_TESTNET - ? "0x4200000000000000000000000000000000000006" + ? "0x6Ef4A3f654F2AfcEa8A8704D61Be5271536c13Fa" : "0xF8A2C39111FCEB9C950aAf28A9E34EBaD99b85C1") as `0x${string}`; /** Human-readable label for the reserve token */ -export const RESERVE_LABEL = IS_TESTNET ? "WETH" : "PL_TEST"; +export const RESERVE_LABEL = IS_TESTNET ? "PL_TEST" : "PLOT"; // --------------------------------------------------------------------------- // Mint Club V2 @@ -64,6 +66,9 @@ export const MCV2_BOND_PERIPHERY = (IS_TESTNET // Uniswap V4 (Base) // --------------------------------------------------------------------------- +/** PoolManager — V4 core pool operations */ +export const UNISWAP_V4_POOL_MANAGER = "0x05E73354cFDd6745C338b50BcFDfA3Aa6fA03408" as const; + /** Universal Router — swap execution */ export const UNISWAP_V4_ROUTER = "0x6fF5693b99212Da76ad316178A184AB56D299b43" as const; From d1f3cb6c323aca7596dd7ac1553b84de3c4b9fa0 Mon Sep 17 00:00:00 2001 From: Cho Young-Hwi Date: Sun, 22 Mar 2026 07:47:54 +0000 Subject: [PATCH 2/2] [#241] Fix ZAP_PLOTLINK address and revert RESERVE_LABEL mainnet change - Updated ZAP_PLOTLINK testnet to redeployed address (0xC7C47D8...) - Reverted RESERVE_LABEL mainnet value to "PL_TEST" (out-of-scope change) Co-Authored-By: Claude Opus 4.6 (1M context) --- lib/contracts/constants.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/contracts/constants.ts b/lib/contracts/constants.ts index b7ff1f22..29b6aa8e 100644 --- a/lib/contracts/constants.ts +++ b/lib/contracts/constants.ts @@ -35,7 +35,7 @@ export const STORY_FACTORY = (process.env.NEXT_PUBLIC_CONTRACT_ADDRESS ?? /** ZapPlotLink — one-click buy (ETH -> PLOT -> storyline token via Uniswap V4 + MCV2) */ export const ZAP_PLOTLINK = (IS_TESTNET - ? "0x38b010F2eFf786d44048E290325d00dC642Aa0D7" + ? "0xC7C47D820D2D5b09797be2F438Cf329Ad7315682" : "0x0000000000000000000000000000000000000000") as `0x${string}`; /** $PLOT protocol token @@ -46,7 +46,7 @@ export const PLOT_TOKEN = (IS_TESTNET : "0xF8A2C39111FCEB9C950aAf28A9E34EBaD99b85C1") as `0x${string}`; /** Human-readable label for the reserve token */ -export const RESERVE_LABEL = IS_TESTNET ? "PL_TEST" : "PLOT"; +export const RESERVE_LABEL = IS_TESTNET ? "PL_TEST" : "PL_TEST"; // --------------------------------------------------------------------------- // Mint Club V2