コンテンツにスキップ

このページのソース

このページの主張はすべて固定されたリビジョンに紐づいています。検証元のソースを正確に確認できます。

atomicals-electrumx-1.5.2.0

Atomicals ElectrumX

リビジョン v1.5.2.0 (2025-03-27)

固定パスを開く: mintParser

Version-sensitive ARC-20 and Atomicals validation behavior used as the pinned reference baseline.

References and recursion

Raw

How one Atomical points at another, why recursive rendering needs an archive, and the failure modes of a broken reference.

Protocol behavior Verified 2026-08-31 Metadata & Sources

Describes the Atomicals protocol itself at the pinned reference revision. It does not promise that any product exposes it.

Page ID
protocol/core/references-and-recursion
Normative authority
Atomicals reference implementation
Networks
mainnet
Documentation version
2026.08
Audience
developer, creator
Owner
bitcoin-universe-docs
Sources
Known limitations
  • Recursive rendering depends on the renderer resolving every dependency. A renderer that cannot reach a dependency produces a different result from one that can, without either being wrong about the chain data.

このコンテンツはまだ日本語訳がありません。

An Atomical payload can reference another Atomical instead of embedding the same bytes again. A collection of a thousand items can share one script, one font, and one palette, and each item can carry only what makes it different.

Without references With references
Every item embeds every byte Shared bytes are stored once
Reveal fees scale with total content Reveal fees scale with what is unique
Updating shared logic is impossible The shared object has its own history
  1. The payload names a target, usually by compact Atomical ID.
  2. A renderer resolves that identifier to the target’s stored payload.
  3. The target may itself reference further Atomicals, so resolution is recursive.
  4. The renderer composes the final output from the resolved set.

The set-relation command records a relation between Atomicals. See the CLI reference.

Unresolvable dependency. The renderer cannot reach the target. The item renders differently or not at all. The chain data did not change.

Depth or cycle. A reference chain that is too deep, or that loops, must be bounded by the renderer. Treat a cycle as a rendering failure, never as an infinite loop.

Mutable target. If the referenced object is not sealed, its owner can change what every referring item renders. Check the sealed flag before treating a reference as stable.

Silent substitution. A renderer that falls back to a placeholder without saying so produces a wrong picture that looks fine. Fail visibly instead.

  • Seal shared dependencies before minting items against them.
  • Archive the complete resolved dependency set so an item can be re-rendered later without a live index.
  • Cache deterministically by content hash so unchanged content is never fetched or rendered twice.
  • Record which revision resolved each dependency, so a difference later can be explained.