Every pull is a fact you can recompute, not a drop you trust. Set the drop table, pull, and reproduce the exact sequence yourself with the reference resolver — same inputs, same pulls, on any machine (uvGacha spec). This page resolves in your browser (honest 🟡); commit-reveal and a drand-bound 🟢 batch run on the backend. Operator? Attest your drop table first at /gacha/open, then share the bannerId.
Integer rates over a denominator D (parts-per-million by default). Rates MUST sum to exactly D — no floats (uvGacha §4).