PATINA docs

Transferring an artifact

A transfer is a spend, and a spend resets depth. Read this before you agree a price.

What you will know after this page
  • Why the artifact id, the founding status and every ring survive a move while the depth and the tier restart at zero.
  • The 10000 sat successor minimum, and what happens to an artifact when no output in the transaction clears it.
  • How to write a KEEP marker that sends the artifact to the output you meant.
  • Which mistakes hand the artifact to the lowest index eligible output instead of the buyer.
  • Why one transaction cannot split a bundle, and what it takes instead.
The reset is not avoidable

Handing an artifact to someone else means spending the carrier into an output they control. That spend ends the current stretch and starts the buyer at depth zero from the block their output confirms. There is no transfer mode, no wrapper, and no special transaction that preserves depth.

What survives a transfer

Read the right column as the buyer's opening position in the block their output confirms in. Nothing in the record is erased. What starts over is the current stretch: the depth, the tier, and whatever the new carrier holds.

Before and after a transfer.
PropertyAfter the move
Artifact idUnchanged, forever
Founding statusUnchanged. A Firstlight Seal stays a Firstlight Seal.
RingsAll kept, plus a new one recording the stretch you just ended
Birth fieldsUnchanged
DepthZero, counting from the new carrier's confirmation height
TierRaw
EndowmentUnchanged. endowment_sats is the value recorded at birth. What the new carrier holds is carrier.value, and it must be at least 10000 sats.

So the buyer receives a complete, honest history and a fresh stretch. The seller's deep ring stays visible as the seller's ring, in the record, with its heights.

How to move it deliberately

  1. Agree the destination output

    The recipient gives you an address. The output you pay must hold at least 10000 sats, the successor minimum, or the artifact will not follow it.

  2. Decide where the artifact should land

    If the transaction has one non OP_RETURN output at or above the minimum, the default rule already sends the artifact there. If it has several, be explicit with a KEEP marker.

  3. Add a KEEP marker when the transaction has more than one plausible output

    OP_RETURN PUSH(9) [ "PTNA" | 0x01 | 0x02 | count=1 | (input_index=0, vout=2) ]
    
    payload       3 bytes   010002
    push data     9 bytes   50544e410102010002
    scriptPubKey  11 bytes  6a0950544e410102010002

    That example routes the artifact spent by input 0 to vout 2. Change the last byte to choose a different output. The KEEP rules page has the full grammar, including the eight entry ceiling.

  4. Broadcast, then confirm where it went

    After confirmation, fetch the artifact and check carrier matches the output you intended. Also check the new ring: end_height is the spend height and successor_txid is your transaction.

Ways a transfer goes wrong

Each of these transactions confirms normally and pays everyone what they expected. What goes wrong is where the artifact lands afterwards, or whether it survives the move at all.

Failure modes when moving an artifact.
What happenedOutcome
Every output is below 10000 satsNo eligible successor. The artifact becomes a RELIC, permanently.
The only outputs are OP_RETURNSame. Relic.
KEEP named an output that is an OP_RETURN, out of range, or below the minimumThat entry is void and the default rule applies instead. The artifact goes to the lowest index eligible output, which may not be the buyer's.
KEEP named an input that is not a carrierEntry void, default rule applies. Reason code KEEP_ENTRY_NOT_CARRIER.
Two OP_RETURN outputs start with PTNAMarker void, default rule applies to the whole transaction
The carrier was spent together with unrelated coins into a change outputThe artifact follows the default rule into whichever eligible output has the lowest index, which is often not what you meant

None of these lose the buyer's bitcoin. They lose control of where the artifact lands, and in the relic case they end the artifact.

Selling, honestly

  • Atomic delivery is a hard problem. This protocol has no escrow and no marketplace. Any swap you arrange is your own arrangement with your own counterparty risk.
  • Selling keys instead of coins. You could hand over the private key rather than spend the carrier, which preserves depth. The buyer then has to trust that you kept no copy. That trust is unverifiable, and the protocol cannot see the difference.
  • Do not price the depth you are about to destroy. Anyone buying a deep artifact through an on chain move is buying rings and an id, not depth. Say so plainly in the sale. The public risks page tells the buyer the same thing.

Bundles

Several artifacts can share one carrier. When that carrier is spent, all of them move together and all of them reset.

One input can be routed to one destination, so a single transaction cannot split a bundle across several outputs. Splitting takes several transactions, each spending a carrier once, with the artifacts you want separated ending up on different carriers along the way. Plan that before you sell part of a bundle.