Class ArkadeSwapMetadataKeys
- Namespace
- NArk.ArkadeIntents.Models
- Assembly
- NArk.ArkadeIntents.dll
The keys Metadata is written under. Constants rather than string literals at each call site, so a typo is a build error instead of a value that silently reads back as absent.
public static class ArkadeSwapMetadataKeys
- Inheritance
-
ArkadeSwapMetadataKeys
- Inherited Members
Fields
ComposedOutgoingSwapId
Persisted outgoing RFQ identity linking an ingress to its independent EVM leg.
public const string ComposedOutgoingSwapId = "composedOutgoingSwapId"
Field Value
ComposedPayoutPkScript
Exact script L pinned by a linked ingress claim; its presence requires route validation.
public const string ComposedPayoutPkScript = "composedPayoutPkScript"
Field Value
EvmAmount
Exact ERC20 atomic output amount.
public const string EvmAmount = "evmAmount"
Field Value
EvmClaimAddress
Merchant ERC20 destination.
public const string EvmClaimAddress = "evmClaimAddress"
Field Value
EvmClaimPreparedTransaction
Signed raw EVM transaction durably recorded before broadcast; contains the route preimage.
public const string EvmClaimPreparedTransaction = "evmClaimPreparedTransaction"
Field Value
EvmClaimSubmittedTxid
Signed EVM transaction identity durably recorded before broadcast, not proof of delivery.
public const string EvmClaimSubmittedTxid = "evmClaimSubmittedTxid"
Field Value
EvmClaimTxid
EVM transaction whose receipt proves exact merchant delivery.
public const string EvmClaimTxid = "evmClaimTxid"
Field Value
EvmDeliveredAmount
Exact ERC20 amount independently verified from the claim receipt.
public const string EvmDeliveredAmount = "evmDeliveredAmount"
Field Value
EvmLockObservedAtBlock
Tip at which the pre-claim EVM lock was observed.
public const string EvmLockObservedAtBlock = "evmLockObservedAtBlock"
Field Value
EvmLockProvenAtBlock
Historical block proving the configured EVM lock depth.
public const string EvmLockProvenAtBlock = "evmLockProvenAtBlock"
Field Value
EvmLockProvenBlockTimestamp
Unix timestamp of the age-proving EVM block.
public const string EvmLockProvenBlockTimestamp = "evmLockProvenBlockTimestamp"
Field Value
EvmRefundAddress
Solver EVM refund destination.
public const string EvmRefundAddress = "evmRefundAddress"
Field Value
EvmSwapContractAddress
Configured ERC20Swap contract.
public const string EvmSwapContractAddress = "evmSwapContractAddress"
Field Value
EvmTimeoutBlock
EVM refund block.
public const string EvmTimeoutBlock = "evmTimeoutBlock"
Field Value
EvmTokenAddress
ERC20 token contract.
public const string EvmTokenAddress = "evmTokenAddress"
Field Value
HtlcLocktime
Unix seconds at which the L1 HTLC's refund leaf opens.
public const string HtlcLocktime = "htlcLocktime"
Field Value
HtlcPubkey
The counterparty's x-only key on an onchain corridor's L1 HTLC, hex.
public const string HtlcPubkey = "htlcPubkey"
Field Value
Remarks
Which leaf it sits on follows the direction, exactly as the wire's own field names do: on an off-board the counterparty holds the refund role, on an on-board it holds the claim role. One key either way — it is always "the half of the L1 HTLC that is not ours".
Invoice
The BOLT11 a Lightning swap pays or is paid by.
public const string Invoice = "invoice"
Field Value
MakerDescriptor
The maker's signing output descriptor for an asset swap's cancel path.
public const string MakerDescriptor = "makerDescriptor"
Field Value
OfferHex
Hex-encoded offer TLV — rebuilds an asset swap's covenant for the cancel path.
public const string OfferHex = "offerHex"
Field Value
OnchainMinConfirmations
Confirmations the quote asked for on the L1 funding, as quoted.
public const string OnchainMinConfirmations = "onchainMinConfirmations"
Field Value
OnchainPayoutAddress
Where this swap's own L1 spend pays. A payout on an off-board, where we claim; a refund on an on-board, where reclaiming our own funding is the only L1 move we ever make.
public const string OnchainPayoutAddress = "onchainPayoutAddress"
Field Value
Preimage
The preimage a swap settles on, hex.
public const string Preimage = "preimage"
Field Value
RfqId
The RFQ negotiation this swap was quoted under, when it was quoted at all.
public const string RfqId = "rfqId"
Field Value
Remarks
Absent on an unquoted offer, which is the whole difference between the two ways an Arkade swap starts: one publishes a standing offer and waits for any taker, the other agrees terms with a named solver first. Only the second has a negotiation to ask for a status on, and the intent's own id cannot stand in for it — it is the funding txid, because that is what the cancel path looks the deposit up by.
SolverPubkey
The solver that quoted this swap, x-only hex.
public const string SolverPubkey = "solverPubkey"
Field Value
Remarks
Corridor-neutral, so it sits beside the per-corridor records rather than inside one: every corridor here is negotiated against a counterparty, and which one it was is the first thing anybody asks when a swap goes wrong. Recorded because the choice is made per payment — the cheapest listed solver at that moment — so it cannot be reconstructed afterwards from configuration.