Skip to content

Add GBPFv4Hook hook on base#659

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

Add GBPFv4Hook hook on base#659
hooklist-generator[bot] wants to merge 1 commit into
mainfrom
hooks/base/0x5613c279e8db9815dbd0cdfbd10515eabd350088

Conversation

@hooklist-generator

Copy link
Copy Markdown

Summary

A Uniswap v4 hook that intercepts all swaps against a USDS/GBPF pool and fully replaces pool math with primary-market mint or redeem operations against a vault, pricing trades via a GBP/USD oracle TWAP, a solvency-indexed spread curve, and a flat 20 bp protocol fee.

Flags

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

Properties

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

Warnings

  • Submitter-proposed description rejected: exceeds 500 characters and includes raw test output and unverifiable promotional claims. Using AI-generated description.

Closes #658

@vercel

vercel Bot commented Jun 13, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
hooklist Ready Ready Preview, Comment Jun 13, 2026 2:17am

Request Review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Review: hooks/base/0x5613c279e8db9815dbd0cdfbd10515eabd350088.json

Flags

Address last 2 bytes: 0x0088 = 0000 0000 1000 1000

Bit Flag Address bit File value Match
13 beforeInitialize 0 false
12 afterInitialize 0 false
11 beforeAddLiquidity 0 false
10 afterAddLiquidity 0 false
9 beforeRemoveLiquidity 0 false
8 afterRemoveLiquidity 0 false
7 beforeSwap 1 true
6 afterSwap 0 false
5 beforeDonate 0 false
4 afterDonate 0 false
3 beforeSwapReturnsDelta 1 true
2 afterSwapReturnsDelta 0 false
1 afterAddLiquidityReturnsDelta 0 false
0 afterRemoveLiquidityReturnsDelta 0 false

All flags match the address bitmask.

Properties

  • dynamicFee: false ✓ — beforeSwap returns (selector, delta, 0) with fee override hardcoded to 0. No updateDynamicLPFee() call anywhere in the source.
  • upgradeable: false ✓ — NatSpec explicitly states "Immutable. No owner, no admin, no upgrade path." source_meta.json confirms proxy: false. No delegatecall, proxy patterns, or SELFDESTRUCT present.
  • requiresCustomSwapData: false ✓ — The hookData parameter in beforeSwap is bytes calldata /* hookData */ — the name is commented out and it is never read. Swaps complete correctly without any custom hook data.
  • vanillaSwap: false ✓ — beforeSwapReturnsDelta is true; the hook fully replaces V4 pool math with primary-market vault mint/redeem operations. Definitely non-vanilla.
  • swapAccess: "none" ✓ — beforeSwap has a standard msg.sender == POOL_MANAGER check and a POOL_KEY_HASH match. The oracle health check (if (!healthy) revert OraclePaused()) is a circuit breaker, not caller-based access control. No allowlist, no governance flag, no time gate.

Metadata

  • verifiedSource: true ✓ — confirmed by source_meta.json ("verified": true).
  • chainId: 8453 ✓ — matches base entry in chains.json.
  • name: "GBPFv4Hook" ✓ — NatSpec @title is "GBPF V4 hook"; the hook is part of the GBPF project (GBPF token, GBPFv4Hook, GBPF imports). Project-qualified label substantiated by the verified source. No promotional, audit, or endorsement language.
  • description ✓ — Accurately matches the Solidity logic: intercepts USDS/GBPF swaps, replaces pool math with primary-market mint/redeem against the vault, prices via GBP/USD Chainlink TWAP (confirmed in OracleAdapter), solvency-indexed spread curve (SpreadCurve), and flat 20 bp fee (FLAT_FEE_WAD = 2e15 = 0.0020). No marketing language or audit claims.

All checks pass.

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: GBPF — Synthetic GBP stablecoin hook on Base

0 participants