@orangecheck/pledge-core / VerifyOutcomeInput
Interface: VerifyOutcomeInput
Defined in: pledge-core/src/types.ts:334
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
<a id="property-envelope"></a> envelope | OutcomeEnvelope | - | pledge-core/src/types.ts:335 |
<a id="property-pledge"></a> pledge? | PledgeCanonicalInput | The pledge this outcome claims to resolve. Supply it and the resolver is checked against SPEC §1; omit it and you MUST say so with skipResolverAuthorization. Without it verifyOutcome can only check that sig.pubkey === resolved_by — self-consistency, which a forger satisfies by naming their own address and signing with their own key. Proven against the published core: an outcome from an unrelated address, and an unsigned one with resolved_by: "deterministic", both verified clean and classified a stranger's pledge as broken. | pledge-core/src/types.ts:348 |
<a id="property-skipresolverauthorization"></a> skipResolverAuthorization? | boolean | Verify the envelope WITHOUT checking whether its resolver is entitled to resolve the pledge. Required to be explicit: verifyOutcome refuses when neither this nor pledge is supplied, rather than quietly accepting a forgery. Legitimate uses are narrow — the spec conformance vectors, which carry a pledge_id but no pledge object, and a UI verifying a pasted envelope in isolation. Such a caller MUST NOT present the result as authentic; it has checked shape and signature, not authority. | pledge-core/src/types.ts:360 |
<a id="property-skipsignatureverification"></a> skipSignatureVerification? | boolean | - | pledge-core/src/types.ts:367 |
<a id="property-verifybip322"></a> verifyBip322? | VerifyBip322 | Required when the outcome envelope's mechanism requires a signature (counterparty_signs). For deterministic outcomes, sig === null and BIP-322 is not consulted. | pledge-core/src/types.ts:366 |