Error reference
The errors a trader, reporter, arbiter or market operator can meet in the kimchi program, grouped by the step that raises them. Messages are the program's own.
Setup
| Error | Message |
|---|---|
NotUpgradeAuthority | Only the program's upgrade authority may initialize |
ArbiterSetInvalid | Arbiter set must be 1 to 5 distinct keys with a strict-majority threshold |
TreasuryInvalid | Treasury must be a USDC token account |
BandInvalid | Band must satisfy -10000 <= floor < cap <= 10000 ibp and be at most 3000 ibp wide |
FeeTooHigh | Fee is above the maximum |
BondInvalid | Bond must be positive |
OiCapInvalid | Open-interest cap must be positive |
WindowTooShort | Dispute or arbitration window is shorter than the minimum |
ExpiryInPast | Expiry must be in the future |
ExpiryNotOnSchedule | Expiry must be 16:00, 17:00 or 20:00 UTC on a weekday (Korea, India, Argentina) |
Trading
| Error | Message | What to do |
|---|---|---|
MarketNotTrading | Market is not trading | pick an open series |
Expired | Market has expired | trade the next series |
PriceOutsideBand | Price is outside the market band | quote between floor and cap |
UnitsInvalid | Units must be positive | enter a size |
OfferTooSmall | Offer has fewer units left than requested | take fewer units or refresh the book |
OfferChanged | Offer price or side changed since the taker quoted it | refresh and quote again |
SelfTrade | Maker and taker are the same wallet | use a different offer |
OiCapExceeded | Fill would push open interest above the market cap | trade a smaller size |
CancelNotAllowed | Only the maker may cancel before expiry |
Settlement
| Error | Message |
|---|---|
BeforeExpiry | Reports are accepted only after expiry |
AlreadyReported | Market already has a report |
ValueOutsideBand | Reported value must be clipped to the band |
NothingToDispute | Nothing to dispute |
DisputeWindowClosed | Dispute window has closed |
DisputeSameValue | A dispute must name a different value than the report |
NoDispute | No dispute is open |
NotArbiter | Signer is not an arbiter of this market |
AlreadyVoted | Arbiter has already voted |
ArbitrationClosed | Arbitration window has closed |
NotReported | Market has no report yet |
DisputeWindowOpen | Dispute window is still open |
ArbitrationOpen | Arbitration window is still open |
AlreadySettled | Market is already settled |
Payouts and closing
| Error | Message |
|---|---|
NotSettled | Market is not settled |
NothingToNet | Position holds no long and short pair to net |
NothingOwed | Nothing is owed to this account |
NoFees | No fees to sweep |
MarketNotEmpty | Market still holds open offers, positions, fees or bonds |
MathOverflow | Arithmetic overflow |