pages / example / open_book

example · open_book

canister coord://offchain/genie/program/open_book@v1/1208b8ff0ec419b8 · v1 · artifact root 0x1208b8ff0ec419b82f98c6cc6be58bc88d3a76f0a8a9b1a93c63e0c5e819d6a9 · previous none (first version) · superroot at publish not sealed yet · follows taifoon_assurance

sealed cases that reached it: 0 — sealed cases that reached this word (the store counts, never reads)

the words it says

its helpdesk graph

open book (a .genie program) in the studio: 19 symptoms, 19 fixes

the source

// _OPEN_BOOK_v1_ (owner 2026-10-28: "open the pools: anyone lists, grades and backs any side"). One round of the book on the assurance
// market: a job listed as one round, backed FOR (the seller's own stake is the first-loss layer), challenged AGAINST (paid if it fails),
// covered by its buyer (the same instrument and price), ruled by System One on the job's ending, every side paid by the ruling. Every
// number of a side is the book's (GET /v1/assurance/book: the price now, the odds per unit at the record's posterior failure rate); the
// program names the moves, their hops and their doors; the hire desk and the pools screen light their rails from it.
genie open_book v1
about "One round of the book: a job listed on the assurance market, backed FOR, challenged AGAINST, covered by its buyer, ruled by System One on the job's ending, every side paid by the ruling"

use protocol taifoon_assurance
use venue taifoon-hooks
use chain eip155:36927
use vault vault:taifoon:kms
use product taifoon.api

agent round is "one job's round on the book: open to every side while the job runs, resolved on the job's ending, settled when every side is paid"
  states Unlisted Open Locked Delivered Failed Void Settled
  start Unlisted
  final Settled
  read GET /v1/assurance/book as book
  read GET /v1/assurance/round as round
  move Unlisted -> Open when round.job_state == "Accepted" hop listed venue taifoon-hooks op POST /v1/assurance/plan effect record
  move Open -> Locked when round.open == false hop hired op GET /v1/assurance/round
  move Locked -> Delivered when round.job_state == "Completed" hop graded op POST /v1/assurance/plan
  move Locked -> Failed when round.job_state in "Rejected,Cheated,Expired" hop graded op POST /v1/assurance/plan
  move Locked -> Void when round.void_passed == true hop settled op POST /v1/assurance/plan
  move Delivered -> Settled when round.unclaimed == 0 meter taifoon.api hop paid op POST /v1/assurance/plan
  move Failed -> Settled when round.unclaimed == 0 hop paid op POST /v1/assurance/plan
  move Void -> Settled when round.unclaimed == 0 hop paid op POST /v1/assurance/plan
  refuse not_party "the market on chain opens a round for the job's buyer or seller; anyone will, once the market's next version is on chain"
  refuse not_accepted "a round opens on an accepted job, on the market's asset, with the market's evaluator, before its cutoff"
  refuse buyer_only "COVER is the job's buyer's side; AGAINST is anyone's but the job's two parties; FOR is anyone's"
  refuse not_priced "the failure side has no price: the record prices no cover yet, so AGAINST and COVER do not open on this round"
  say Unlisted "The job is accepted and not yet on the book"
  say Open "The round is open: FOR backs the seller, AGAINST and COVER are paid if it fails; every price is set when a position opens and stays"
  say Locked "The job left Accepted or the cutoff passed: no position opens or leaves until the job ends"
  say Delivered "The job completed: FOR is paid its stake plus its share of what AGAINST and COVER paid in"
  say Failed "The job failed: AGAINST and COVER are paid from the backing at the price they opened at; FOR loses first from the seller's stake"
  say Void "The void time passed with no ending: every stake and fee goes back"
  say Settled "Every position is paid; the round holds nothing"
  next Unlisted Open "List the job: open its round (the buyer or the seller signs today)"
  next Open Locked "Take a side while the round is open: back, challenge, or cover; the odds per unit are the book's"
  next Locked Delivered "System One grades the delivery; the round resolves on the job's ending"
  next Delivered Settled "Claim: every side is paid on request; sweep settles the dust"

knowledge
  symptom "the plan refuses open_round with NotBuyerOrSeller" caused_by "the market on chain opens a round for the job's buyer or seller only" fixed_by "hire the job, or deliver it, then list it; anyone lists once the market's next version is on chain"
  symptom "the plan refuses COVER" caused_by "COVER is the job's buyer's side" fixed_by "take AGAINST (anyone but the job's two parties), or FOR"
  symptom "AGAINST and COVER do not open on this round" caused_by "the failure side has no price: the seller's record prices no cover yet" fixed_by "back FOR, or pick a seller whose record is insurable; the book's price_now says which"
  symptom "what does AGAINST pay if the seller fails" caused_by "a position pays its stake divided by the price it opened at" fixed_by "read the book: pays_if_fails_per_unit, the win probability, what one unit is when it wins and when it loses"
  symptom "what does FOR earn when the job is delivered" caused_by "FOR shares what AGAINST and COVER paid in, in proportion to its stake" fixed_by "read the book: earns_on_delivery_per_unit_when_fully_used and the expected return per unit"
  symptom "the round is locked and the stake cannot leave" caused_by "a FOR stake leaves on request only while the round is open; AGAINST and COVER stay until the round ends" fixed_by "wait for the ending; claim when the round is resolved"
  symptom "the round resolved but nothing was paid" caused_by "every side claims on request" fixed_by "claim the position; sweep settles the dust once every claim is in"
  rule "every price of a side is the book's at the moment the position opens, and stays"
  rule "the seller's own FOR stake is the first-loss layer; senior backing carries at most the book's senior cap per counted round"
  rule "the round resolves on the job's ending as the hook records it; System One's grade is the ending"

door "Take a side on the book" as round
  product taifoon.api
  locale en
  api https://coord.taifoon.dev
  rule white-label
  step Unlisted "The job is accepted; its buyer or seller lists it as one round" next Open opens Open
  step Open "Back the seller FOR, challenge it AGAINST, or cover as its buyer; the odds per unit are the book's" next Locked opens Locked
  check GET /v1/assurance/book at books exists
  step Locked "The job runs; the positions wait on its ending" next Delivered opens Delivered
  step Delivered "The job completed: FOR is paid; AGAINST and COVER lost their stake to the backers" next Settled opens Settled
  step Failed "The job failed: AGAINST and COVER are paid at their price; FOR lost from the seller's stake first" next Settled
  step Void "No ending came in time: every stake and fee goes back" next Settled
  step Settled "Every position is paid; the round holds nothing"
  handoff "a ruling in dispute is a person's case" booking https://cal.com/taifoon meet https://meet.jit.si room genie-open-book

agreement open_book
  parties buyer seller evaluator layer
  hops listed hired graded settled paid
  leg our_fee 0.49%
  leg protocol_share 0%
  leg seller_share rest
  settle via vault:taifoon:kms meter taifoon.api
  protocol taifoon_assurance
  venue taifoon-hooks
  term "the fee is the market's feeBps on every AGAINST and COVER position, to the treasury when the round resolves, refunded on a void; FOR pays no fee"