Block Reference
OUTPUT_CHECK
Governance Family
TYPE 0x0807 · GOVERNANCE FAMILY

OUTPUT_CHECK

Per-output value and script constraint. Verifies that a specific output in the spending transaction has a value within bounds and optionally matches a script hash.

Governance Non-Invertible
FieldData TypeSizeSideDescription
output_indexNUMERIC1-4 BConditionsIndex of the output to check
min_satsNUMERIC1-4 BConditionsMinimum output value in satoshis
max_satsNUMERIC1-4 BConditionsMaximum output value in satoshis
script_hashHASH25632 BConditionsSHA-256 of expected scriptPubKey (all zeros = skip script check)
1.Read output_index, min_sats, max_sats from NUMERIC fields, script_hash from HASH256. If missing → ERROR
2.Bounds check: output_index < tx.vout.size(). If out of bounds → UNSATISFIED
3.Value check: vout[idx].nValue ≥ min_sats AND ≤ max_sats. If fails → UNSATISFIED
4.Script check (if hash non-zero): SHA256(vout[idx].scriptPubKey) == script_hash. If fails → UNSATISFIED
5.All checks pass → SATISFIED
ConditionResult
Missing fields or invalid parametersERROR
No transaction contextERROR
min_sats > max_satsERROR
Output index out of boundsUNSATISFIED
Output value out of rangeUNSATISFIED
Script hash mismatchUNSATISFIED
All checks passSATISFIED
Treasury Governance
Enforce that treasury spends route a minimum amount to a known address. OUTPUT_CHECK on output 0 ensures the destination script and minimum value match the approved disbursement.
Covenant Enforcement
Combine with SIG to require that a specific output receives a minimum value. Unlike AMOUNT_LOCK (which checks input/output ratios), OUTPUT_CHECK constrains individual outputs by index.
← ACCUMULATOR P2PK_LEGACY →