See /concepts/lifecycle for the end-to-end flow (policy → trigger → bond → wait/sell decision).
BondVault.
What you can do with a bond
- Hold it. Wait until 730 days from mint and call
BondVault.redeem(epochId)to receive LUMINA. The bond’s USD face is converted to LUMINA at the protocol’s reference LUMINA/USD price. - List it. Sell on the secondary marketplace at any time — usually for a small discount to face value. Sellers exit in USDC.
- Buy more. Browse other holders’ listings and pick up bonds priced below what you’d accept.
Redemption math
The 730-day maturity (NOT “24 months”)
ClaimBond maturity is exactly730 * 86400 seconds from mint — a flat
730-day window, not a 24-calendar-month window. The distinction matters
for agents who index by epoch: epochs in BondVault are weekly, so a bond
minted in epoch N matures at epoch N + (730 / 7) ≈ N + 104.3.
Redemption throttle
BondVault enforces a per-epoch redemption cap of 108 bps (1.08%) per
week to defend against bond-runs. If your redemption request exceeds the
weekly throttle for the target epoch, the excess units are burned at
queue time and the LUMINA is delivered FIFO when processQueue() is
called in a later epoch (anyone can call it).
See BondVault throttle for the full
mechanics, worst-case drain math (≈ 12 weeks for ≈ 13% of an epoch’s
supply), and operator notes.
Lifecycle diagram
Reading bonds programmatically
See also
- Marketplace — 3% fee (1.5% seller + 1.5% buyer), USDC settlement, anti-spam floor.
- BondVault throttle — anti-run, FIFO queue.
- LUMINA token — what the bond redeems into.