Skip to main content

Crate sashite_sanki_arbiter

Crate sashite_sanki_arbiter 

Source
Expand description

sashite-sanki-arbiter — adjudication logic for the Sanki game suite, built for Sashité.

The L2 layer over the sashite-sanki-engine crate: it rules on a session from its attested event chain and emits the Adjudication — adjudicate(params, plies, attestations, request) -> Option<Adjudication>.

The event model is abstract and carries no Nostr dependency: Ply, Attestation, and AdjudicationRequest are plain values the caller has already received, signature-verified, and parsed. Timing is anchored on the timestamper’s attestations, never on an event’s own declarative created_at.

Modules§

commitment
Equivocation — the single-content rule (Move Encoding — Sanki §Ply finality and the single-content rule; Statuses — Sanki §The illegalmove termination §Equivocation).
event
Typed Nostr event models the arbiter reasons about.
implicit
Implicit draw by agreement (Statuses — Sanki §Implicit draw by agreement).
natural_state
The natural state of events at adjudication (kind 6425 §Natural state).
race_resolution
Race resolution: deterministic selection of the canonical event for a slot.
session
SessionParams — the session-constant configuration the arbiter rules on.
verdict
Adjudication assembly and the top-level adjudicate orchestration.