Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
中文简介正在准备中。当前显示原文说明。
Volume-based PUMP token reward system with day-indexed epochs, pro-rata distribution, accumulator tracking, and cross-program claiming on Solana.
中文简介正在准备中。当前显示原文说明。
查看安装方法安装前可以查看交给 AI 代理的指令内容。
Implement and maintain the token incentive system that rewards traders with PUMP governance tokens based on their SOL trading volume, using a day-based epoch system with pro-rata distribution.
The Pump protocol incentivizes trading activity by distributing PUMP tokens to users proportional to their SOL trading volume. The system tracks volume in day-long epochs, with each day having a pre-configured token supply pool.
Volume tracking operates in fixed-length epochs defined by the GlobalVolumeAccumulator:
startTime — epoch system start timestampsecondsInADay — epoch length (typically 86,400 seconds)solVolumes[] — array of total SOL volume per daytotalTokenSupply[] — array of PUMP tokens available per daydayIndex = Math.floor((currentTimestamp - startTime) / secondsInADay)
$$\text{tokens} = \frac{\text{userSolVolume} \times \text{dayTokenSupply}}{\text{globalSolVolume}}$$
initUserVolumeAccumulator) — creates the user's volume accumulator PDAsyncUserVolumeAccumulator) — updates the accumulator with latest volume dataclaimTokenIncentives) — claims accumulated PUMP token rewardscloseUserVolumeAccumulator) — closes the account, reclaims rentSince users trade on both the bonding curve (Pump) and AMM (PumpAMM):
fetchUserVolumeAccumulatorTotalStats(user) — sums across both programsgetTotalUnclaimedTokensBothPrograms(user) — combined unclaimed rewardsclaimTokenIncentivesBothPrograms(user, payer) — claims from bothsyncUserVolumeAccumulatorBothPrograms(user) — syncs both| Case | Behavior |
|---|---|
| Zero global volume for a day | No tokens distributed (division by zero guarded) |
| User never synced | Only totalUnclaimedTokens from account state returned |
| Day index beyond arrays | No additional rewards computed |
| User updated same day | currentDayTokens returns preview, totalUnclaimedTokens excludes it |
tokenIncentives.ts — no side effects, no RPC callscurrentTimestamp parameter for testabilityBN arithmetic — never convert to JavaScript numbertotalUnclaimedTokens does NOT include the current day's rewards — only finalized dayscurrentDayTokens returns 0 if the user's last update was on a different day (sync first)startTime, not from epoch 0还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
中文简介正在准备中。当前显示原文说明。
Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks SolanaOS to add a note, list notes, search notes, or manage note folders.
中文简介正在准备中。当前显示原文说明。
Manage Apple Reminders via remindctl CLI (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.
中文简介正在准备中。当前显示原文说明。
Create, search, and manage Bear notes via grizzly CLI.
中文简介正在准备中。当前显示原文说明。
Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.
中文简介正在准备中。当前显示原文说明。
BluOS CLI (blu) for discovery, playback, grouping, and volume.
中文简介正在准备中。当前显示原文说明。