# production seed
The Core asset public key is hashed independently with each layer name. That keeps a Punk stable through transfers and prevents a change to one layer's catalogue from reshuffling every other layer.
seed = sha256(core_asset + layer_id)
# stacking order
bg → base → eyes → head → acc → items
The checked-in manifest currently exposes 67 selectable visual variants and 813,120 possible equal-weight combinations.
background 6 base 7 eyes 16 selectable (one supplied duplicate excluded) head 22 accessory 11 item 5
# mutability before launch
Trait display names and positive integer weights live in the renderer manifest. Every supplied source PNG is preserved; exact duplicate visuals are explicitly excluded so duplicate filenames do not silently alter rarity.
# setup preview
Before the program exists, the browser uses the supplied static layers as a visual preview. Once a tier is live, this component automatically prefers the on-chain-aware renderer.

# renderer contract
Marketplace metadata uses a unique /metadata/tier/lifetime-sequence route. Website previews use /preview/tier.png, which resolves the current backing record and refuses stale or unbacked tiers.
The six browser slots remain available only as a setup fallback: bg, base, eyes, head, acc, item.