← Registry
Vesting Lock
vesting-lock@1.0.0 · by HOOKAWAY Labs
Locked balances unlock on a schedule; only unlocked tokens move.
VerifiedMock program
Identity
- Name
- Vesting Lock
- Program ID
- Vst2Chk8…cgj2ZN5i
- Version
- 1.0.0
- Source
- hookaway-mock/vesting-lock@raxfccb
- Upgrade authority
- none (immutable)
- Verification
- source-verified
- Audit status
- none
- CPI behaviour
- none
Trust labels
- VerifiedSource verified against the deployed program and manifest reviewed by HOOKAWAY.
Usage
- Tokens using it
- 7
- Transfers (30d, mock)
- 120.5K
- Transaction success rate
- 83.8%
Success rate = HOOKAWAY-built transactions that confirmed ÷ submitted. Blocks by the hook's own rules are not failures.
Compatibility
- Direct transfer●
- Meridian AMM●
- Orbit CLMM●
- Relay AggregatorHook needs 4 extra accounts; Relay Aggregator forwards at most 3.×
- Basin Legacy AMMBasin Legacy AMM cannot forward transfer-hook accounts.×
- HOOKAWAY Launch Curve●
Config schema
- cliffCliff timestampi64
- durationDaysLinear unlock durationu32
Extra account schema
| Account | Derivation | W | S |
|---|---|---|---|
config Per-mint hook configuration. | pda(hook, ["config", acct[1]:mint]) | · | · |
vesting-record vest record for the source owner. | pda(hook, ["vest", acct[1]:mint, acct[3]:source owner]) | ✓ | · |
Errors & restrictions
- 6070Amount exceeds unlocked balance. {locked} tokens are still locked.
- —Sender may transfer at most their unlocked balance.
Manifest
cross-check passed- ✓ Schema valid (manifest v0.1)
- ✓ Program ID matches mint’s TransferHook extension
- ✓ Upgrade authority matches declared authority
- ✓ Declared accounts match on-chain ExtraAccountMetaList
- ✓ All accounts derivable without off-chain input
{
"$schema": "https://hookaway.dev/schema/manifest/v0.1.json",
"manifestVersion": "0.1",
"name": "vesting-lock",
"version": "1.0.0",
"program": "Vst2Chk8uQahgjhGek7DAKPjfuyB5f9RKMQvcgj2ZN5i",
"programAuthority": null,
"description": "Locked balances unlock on a schedule; only unlocked tokens move.",
"source": {
"repo": "https://github.com/hookaway-mock/vesting-lock",
"commit": "raxfccb",
"verifiedBuild": true
},
"config": {
"fields": [
{
"key": "cliff",
"type": "i64",
"description": "Cliff timestamp"
},
{
"key": "durationDays",
"type": "u32",
"description": "Linear unlock duration"
}
]
},
"accounts": [
{
"name": "config",
"derivation": {
"kind": "pda",
"programId": "hook",
"seeds": [
{
"kind": "literal",
"value": "config"
},
{
"kind": "account",
"index": 1,
"label": "mint"
}
]
},
"writable": false,
"signer": false,
"description": "Per-mint hook configuration."
},
{
"name": "vesting-record",
"derivation": {
"kind": "pda",
"programId": "hook",
"seeds": [
{
"kind": "literal",
"value": "vest"
},
{
"kind": "account",
"index": 1,
"label": "mint"
},
{
"kind": "account",
"index": 3,
"label": "source owner"
}
]
},
"writable": true,
"signer": false,
"description": "vest record for the source owner."
}
],
"compatibility": {
"transfer": true,
"venues": "any-hook-aware",
"maxExtraAccounts": 2
},
"transaction": {
"computeUnits": 19000,
"requiresLookupTable": false,
"cpi": "none"
},
"simulation": {
"adapter": "vesting"
},
"explain": {
"6070": "Amount exceeds unlocked balance. {locked} tokens are still locked."
},
"restrictions": [
"Sender may transfer at most their unlocked balance."
]
}Tokens using it (7)