Skip to content

Add Spectra Launchpad GERRY hook on base#609

Open
hooklist-generator[bot] wants to merge 1 commit into
mainfrom
hooks/base/0x4627812f40bdd47c8fa1a4daac8f40bc26ef8040
Open

Add Spectra Launchpad GERRY hook on base#609
hooklist-generator[bot] wants to merge 1 commit into
mainfrom
hooks/base/0x4627812f40bdd47c8fa1a4daac8f40bc26ef8040

Conversation

@hooklist-generator
Copy link
Copy Markdown

Summary

Bonding-curve memecoin launchpad that raises ETH along a linear curve, then graduates into a Uniswap V4 ETH/token pool. ERC-20 balances are mirrored as NFTs ("facets"); pool swap fees are harvested and distributed pro-rata to facet holders in ETH.

Flags

Flag Value
beforeInitialize false
afterInitialize false
beforeAddLiquidity false
afterAddLiquidity false
beforeRemoveLiquidity false
afterRemoveLiquidity false
beforeSwap false
afterSwap true
beforeDonate false
afterDonate false
beforeSwapReturnsDelta false
afterSwapReturnsDelta false
afterAddLiquidityReturnsDelta false
afterRemoveLiquidityReturnsDelta false

Properties

Property Value
dynamicFee false
upgradeable false
requiresCustomSwapData false
vanillaSwap true
swapAccess none

Warnings

  • Submitter-proposed description rejected: truncated mid-sentence (ends with "where holdin"). Using AI-generated description.

Closes #608

@vercel
Copy link
Copy Markdown

vercel Bot commented Jun 2, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hooklist Ready Ready Preview, Comment Jun 2, 2026 6:16pm

Request Review

Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: hooks/base/0x4627812f40bdd47c8fa1a4daac8f40bc26ef8040.json

Address Flags ✓

0x...80400x8040 = bit 6 set → afterSwap = true. All other flag bits are 0. This matches the getHookPermissions() function in the source, which sets only p.afterSwap = true. Correct.

Properties ✓

  • dynamicFee: false_afterSwap is declared pure and returns (IHooks.afterSwap.selector, 0). No fee override, no updateDynamicLPFee(). ✓
  • upgradeable: false — No proxy pattern, no delegatecall, no mutable implementation storage, no SELFDESTRUCT. ✓
  • requiresCustomSwapData: false_afterSwap ignores all parameters including the bytes calldata hookData. ✓
  • vanillaSwap: true_afterSwap is a pure no-op returning (selector, 0). NFT sync occurs in _afterTokenTransfer (ERC20 callback), but nested swap calls in _maybePoke() are guarded by if (poolManager.isUnlocked()) return;, preventing re-entrancy during a swap. Swap output amounts are not modified. ✓
  • swapAccess: "none" — No beforeSwap flag; afterSwap has no access control. ✓

Metadata

  • chainId: 8453 — Matches base in chains.json. ✓
  • verifiedSource: true — Confirmed by source_meta.json ("verified": true). ✓
  • description — Accurately describes the linear bonding-curve launchpad, graduation into a Uniswap V4 ETH/token pool, ERC-20/NFT mirroring ("facets"), and pro-rata ETH fee distribution to facet holders. ✓

Name ✗

The name field is "Spectra Launchpad GERRY". The word "GERRY" does not appear anywhere in the verified on-chain source (not the contract name, no @title NatSpec, no file paths, no imports). The Etherscan contract name is SpectraLaunch and the NatSpec reads @notice Spectra launchpad token…. "GERRY" appears to be a personal identifier appended by the submitter.

Required fix: The name must be changed to "SpectraLaunch" (the Etherscan contract name) or "Spectra Launchpad" (derived from the NatSpec @notice). The unsubstantiated " GERRY" suffix must be removed.

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.

hook: GERRY on Base

0 participants