doppler-hook-initializer
SKILL.md
Source References: Code citations link to raw GitHub files pinned to commit
46bad16d.
Doppler Hook Initializer
When to use
- You are using
src/initializers/DopplerHookInitializer.sol - You need to register/manage Doppler hooks for pool initialization/swap/graduation callbacks
- You are troubleshooting hook-enabled multicurve pools and lifecycle transitions
Prerequisites
- Airlock owner or authorized operator for module-level mutations
- Asset/numeraire addresses and expected pool mode (locked vs migrable)
- Hook contract addresses and intended flags
Core workflow
- Enable hook modules at initializer level with
setDopplerHookState(...). - Initialize pool with
InitDataincluding optionaldopplerHookand callback calldata. - Confirm stored state via
getState(asset):- pool key
- far tick
- status
- selected hook
- Validate callback execution path by flag:
ON_INITIALIZATION_FLAGON_SWAP_FLAGON_GRADUATION_FLAG
- Manage runtime controls:
setAuthority(...)and delegated executionsetDopplerHook(asset, hook, calldata)when supported by authorization- graduation / migration flow checks
Supported hook patterns
RehypeDopplerHookfor buybacks and fee routingScheduledLaunchDopplerHookfor start-time gatesSwapRestrictorDopplerHookfor per-address amount ceilings
Failure modes
- Hook not enabled at initializer level before assignment
- Wrong signer (airlock owner vs delegated authority)
- Incorrect callback calldata encoding
- Status mismatch (
WrongPoolStatuscases) - Attempting migration without graduation conditions met
References
- WORKFLOWS.md
- STATE-MAP.md
- Source:
doppler/src/initializers/DopplerHookInitializer.sol,doppler/src/base/BaseDopplerHook.sol,doppler/docs/DopplerHook.md
Related skills
Weekly Installs
2
Repository
rustydotwtf/dop…r-skillsGitHub Stars
3
First Seen
Feb 25, 2026
Security Audits
Installed on
amp2
gemini-cli2
github-copilot2
codex2
kimi-cli2
cursor2