package moves // Check is the shared result of a yes/no precondition with a reason. The // zero value is NOT ok: a check that was never run, or that returned // without deciding, fails closed. It is serialised into reports, so the // wire names are fixed here. type Check struct { OK bool `json:"ok"` Reason string `json:"reason"` }