Summary
Harden exportReceipt / serializeReceipt in packages/sdk so malformed or partial on-chain state produces a typed error rather than an incomplete receipt.
Motivation
Receipts are the verifiable artifact users rely on. Silently emitting an incomplete receipt undermines the 'protocol owns fairness' guarantee.
Acceptance criteria
Summary
Harden
exportReceipt/serializeReceiptinpackages/sdkso malformed or partial on-chain state produces a typed error rather than an incomplete receipt.Motivation
Receipts are the verifiable artifact users rely on. Silently emitting an incomplete receipt undermines the 'protocol owns fairness' guarantee.
Acceptance criteria
serializeReceipt→parseReceipt→verifyReceipt).