Dikaion · the fee account on solana · devnet live
The split is the proof.
τὸ δίκαιον — the share due to each. Dikaion ($DK) turns every pool fee into a public account: tolls accrue, anyone settles the claim, and five lanes take exactly 40 / 40 / 10 / 5 / 5. No keys, no votes, no discretion — the chart above is the receipt, drawn from vault history as it happens.
The board · read off the chain
Six figures, zero opinions
§01 · The split
Five shares, drawn once
§02 · Settlement
How the account executes
A swap pays its toll
Every $DK swap on the main pool pays a 4.2% toll; a quarter of it — 1.05% — accrues to the protocol inside the pool, owed to the vault. Between settlements the toll only accumulates. Nothing leaks, nothing is scheduled.
Anyone settles
harvestClaim() is permissionless — any wallet, from anywhere, no
allowlist. The caller pockets 0.25% of the claim plus rounding dust as the
settler reward. A cooldown rate-limits the desk: 60 seconds on devnet.
The shares execute
40 / 40 / 10 / 5 / 5 — hardcoded constants, not settings. Minimum claim, per-share minimums and integer dust guards keep the arithmetic honest to the last base unit.
Every share runs alone
Guards validate before a lamport moves; each share runs as its own instruction. A stale feed or thin pool soft-skips — that amount stays pending, the settlement never halts, and the ledger records every skip.
§03 · The ledger
Fees, as recorded
§04 · The estate
Nine holdings, held by bytecode
| ticker | feed price | status | pool |
|---|
§05 · Guardrails
Walls, not promises
TWAP drift gate
Before any pool trade, spot must sit within ±3% of the 30-minute TWAP. Manipulation inside the window is refused, not punished.
Feed staleness & pause
Stock shares skip any asset whose oracle is older than 15 minutes, paused, or negative. Skips are ledger entries, not errors.
Pool impact cap
No single share moves more than 0.5% of a pool per execution. Oversized amounts batch across future windows.
Soft-skip isolation
Guards validate first, then each share runs as its own instruction. A failing
lane emits RouteFailed and holds its funds pending — never takes the
settlement down.
Timelocked custody
Fee-recipient and dev-treasury changes need a request/confirm delay — 60 seconds in this devnet edition. The world reads the intention first.
Self-auditing ledger
INV-1 asserts claimed = keeper + pending + paid after every settlement. INV-4 asserts the vault holds zero $DK when the dust settles.
§06 · Queries
The fine print
Q1What exactly is Dikaion?
Q2Why "Dikaion"?
Q3Who can settle the account?
Q4What happens if a share fails mid-settlement?
RouteFailed entry lands on the
ledger, the amount stays pending for that lane, and every other
share completes normally. The failed amount retries next window.Q5Are the stock positions real?
Q6Why does 5% go to "chaos"?
Q7Can the shares or destinations be changed later?
Q8When mainnet?
§07 · Ratification
The account is open. Read it yourself.
Every settlement, every share, every skip lands on-chain where anyone can read it. Open the terminal and run the settlement yourself — follow the account for the mainnet signal, read the program for everything else.
- announcement channelx.com/dikaionspace
- home of the accountdikaion.space
- the split · fixed40 / 40 / 10 / 5 / 5
- settler reward0.25% + dust
- cooldown · devnet60 seconds
- keys heldnone that matter