# Contract forensics: storefront index mechanics (2026-08-24)

Data fetched this session: `q1_first_transfers.json` (40 sampled first-transfer timestamps),
`q2_post662_transfers.json` (transfers for indices 663-860). Fetch script:
`contract_forensics_fetch.py`. Source of names: `descriptions/raw_by_index.json`.

## Q1. Is index order creation order? YES, at drop granularity.

First-transfer timestamps (lower bounds on existence, since lazy minting puts nothing
on-chain until first sale) for 40 indices spanning 1-662:

| span | drop | earliest first-transfers observed |
|---|---|---|
| 1-64 | Noun GAN Study | 2021-08-01 to 08-02 |
| 66-203 | skullGANs | 2021-08-28 to 08-31 |
| 208-280 | roboGANs (binary) | 2021-09-29 to 10-02 |
| 288-305 | spookyGANs (octal) | 2021-10-16 to 10-29 |
| 309-411 | Solstice (#209-#300) | 2021-12-21 to 12-24 |
| 413-584 | ghost drop (X/144) | 2022-02-01 to 02-04 |
| 585-662 | Act 1 review (X/512) | 585: **2022-02-04**; 600/625/650/662: 2022-08-24 to 08-28 |

Every drop span's earliest first-transfer strictly increases with index. Within a span the
timestamps shuffle (that is sale order, not creation order — expected under lazy minting).
The sequential-creation model holds.

Two timeline facts that matter for the puzzle:
- Index 585 (Brinkman nimBudGAN, 447/512) first transferred 2022-02-04 — one day BEFORE the
  clue. So indices 1-585 all existed at clue time. Whether 586-662 existed on 2022-02-05 is
  unknowable on-chain (their first transfers are Aug 2022; creation is off-chain).
- The ghost drop (413-584) went live 2022-02-01 to 02-04, i.e. the clue (2022-02-05) was
  posted the day the ghost drop finished selling through — and the ghost drop contains
  deliberate hole/number games (see Q5).

## Q2. Post-review baseline (663-860): THERE IS NOTHING THERE.

All 198 indices 663-860 have zero transfers (198/198 NO_TRANSFERS). Metadata: 663-700 are
all 404 in the existing cache (38/38); spot-checks at 701, 720, 750, 780, 810, 840, 860 all
return OpenSea 404. The creator's storefront sequence simply ends at 662 (Quantum glitchGAN,
512/512). podGANs, byteGANs, and later work went to custom contracts, not this storefront.
Consequence: there is no post-clue baseline population on this contract; the process
baseline must come from the six pre-clue drops themselves (Q5 provides it). These indices
are post-clue anyway and could never contain puzzle content.

## Q3. podGANs are NOT on the shared storefront.

`podfetch.py` fetched all 1024 podGANs from contract
`0xdFDE78d2baEc499fe18f2bE74B6c287eED9511d7`, token ids 2000000+n (n = 0..1023), via
Blockscout. They were minted Nov-Dec 2021 (between spooky and Solstice by date) but on a
separate custom contract. They consume no storefront indices. The sequential model for
1-662 needs no rework.

## Q4. The five boundary holes belong to drop transitions, not to any bitGAN drop.

- 204, 207: book-end the reneGAN pack pair (205 = "reneGANs 0001", 206 = "reneGANs 0010"),
  sitting between skull end (203 = 128/128) and robo start (208 = 000000).
- 285: sits INSIDE the second reneGAN run 281-287 ("0011" ... "1000"); the pack binary
  numbering is continuous around it (284 = 0110, 286 = 0111).
- 306: between spooky end (305 = 0o17) and the two robot paintings (307 Lexy, 308 Sarah).
- 412: between Solstice end (411 = #300) and ghost start (413 = 1/144).

All five sit exactly at transitions between mini-sequences — consistent with listing churn
while setting up a new series, and inconsistent with membership in any drop's content.

## Q5. Hole-rate table and structure.

| region | span | size | holes | rate | positions (1-based in span) |
|---|---|---|---|---|---|
| noun | 1-64 | 64 | 1 | 1.6% | 41 |
| skull | 66-203 | 138 | 10 | 7.2% | 33,57,71,79,99,101,110,112,119,129 |
| robo | 208-280 | 73 | 9 | 12.3% | 2,8,12,48,50,58,59,64,72 |
| spooky | 288-305 | 18 | 2 | 11.1% | 2,12 |
| sol | 309-411 | 103 | 11 | 10.7% | 6,9,10,57,60,75,80,85,88,94,95 |
| ghost | 413-584 | 172 | 27 | 15.7% | 2,11,12,13,24,27,... (27 total) |
| review | 585-662 | 78 | 10 | 12.8% | 6,12,15,17,30,49,57,61,74,75 |

The Solstice hole RATE (10.7%) is unremarkable — dead middle of the range. Gaps are
routine in Pindar's storefront process.

### The central structural finding: numbering is continuous around every Solstice hole.

Every drop numbers its items internally, and in five of six drops the internal numbering
runs continuously AROUND the holes with nothing missing:
- noun: ...39/63, [hole 41], 40/63... — continuous.
- skull: all 128 of /128 present (some local within-batch shuffles, nothing missing).
- robo: binary 000000-111111, all 64 present, zero skips.
- spooky: 0o0, [hole], 0o1 ... 0o11, [hole], 0o12 ... 0o17 — continuous.
- **Solstice: #209-#300 = 92 numbered items, ZERO missing, ZERO duplicated, ZERO
  out-of-order, across 103 slots with 11 holes.** The 11 holes never carried a surviving
  numbered Solstice item, and no numbered Solstice item was lost.

The ghost drop is the exception and shows what real deletions look like:
- 10/144 and 11/144 absent at holes 423-425, re-listed out-of-order at 430-431.
- 90/144 duplicated (indices 519 and 583); 59/144 re-listed at 584 (last two indices of
  the drop are late re-lists).
- 104/144 and 120/144 permanently missing — and their exact slots hold deliberately named
  joke items: index 537 (the 104 slot) = "Not Found (404/512)", index 558 (the 120 slot,
  flanked by holes 556-557) = "Four twentyGAN (420/512)". 104→404, 120→420.

So: when Pindar deleted an already-numbered item, the record shows relists, duplicates, or
joke substitutions. The Solstice span shows none of these. Its 11 holes were consumed
either by listings deleted BEFORE their numbered replacement was created
(delete-and-immediately-relist, invisible in numbering) or by unnumbered extra listings.
Either way the ghost drop proves Pindar was consciously playing games with exactly this
hole/missing-number mechanic during the 4 days immediately before the clue was posted.

The review drop continues the joke register: bitGANs 457-466 of /512 are named in the robo
binary continuation (1000000-1000111) and spooky hex (0x20, 0x21) at 597-608; 497-500 are
named 1001000/512-1001011/512 (binary 72-75); 445-446 re-listed at 660-661 before the
512/512 finale at 662.

### Position statistics (honest read)

Solstice holes form a front cluster (positions 6, 9, 10), a 46-slot clean run (indices
319-364, i.e. #217-#261 uninterrupted), then a back scatter (57-95). Monte Carlo, 20k
trials: P(max clean run >= 46 | 11 uniform holes in 103) = 0.011. The same statistic for
ghost (max clean run 27; P = 0.18) and review (18; P = 0.60) is random-consistent. Caveat:
this is a post-hoc statistic selected after looking, tested across several drops — 0.011 is
suggestive of session-clustering, not proof of design. A mundane explanation fits: the drop
uploaded over Dec 21-24 in sessions, with listing errors clustering at session starts. No
structure at round numbers (holes at multiples of 10 are all ghost/review). The 11 holes
sit between numbered neighbors #213/214, #215/216 (x2), #261/262, #263/264, #277/278,
#281/282, #285/286, #287/288, #292/293 (x2).

## Q6. Can "skipped at creation" be distinguished from "created then deleted"? NO, not per-hole.

A lazy-minted shared-storefront listing has no on-chain existence before its first
transfer — the tokenId is only an OpenSea database row until then. A hole therefore has
zero on-chain data of any kind, and the OpenSea metadata API returns an identical 404 for
"deleted before sale" and "never created". No chain query or currently working API can
distinguish the two for an individual index. That is a hard limit; we state it plainly.

What IS possible is population-level inference from numbering continuity (Q5): the Solstice
holes provably did not swallow any numbered #209-#300 item. And the only route to ever
seeing what (if anything) the 11 hole indices displayed is off-chain archives — Wayback
Machine captures of vanarman's OpenSea store pages between 2021-12-21 and 2022-02-05.

## Implication for the puzzle

If the "11 glitches" are the 11 Solstice holes, their content is unrecoverable on-chain:
either the absences themselves are the answer (positions/neighbors carry the signal), or
the intended content was only ever visible on OpenSea's website and must be hunted in web
archives. The ghost drop's 404/420 substitutions — built in the four days before the clue —
are the strongest evidence yet that Pindar was deliberately authoring meaning into deleted
listings and missing numbers at exactly that moment.
