Skip to content

Latest commit

 

History

History
100 lines (64 loc) · 6.04 KB

File metadata and controls

100 lines (64 loc) · 6.04 KB

Both flagged issues are low-severity and non-blocking, but the instruction is to fix every issue. Issue 1 (the dash-parenthetical against the capitalize-after-dash house rule) is best repaired by restructuring to a colon so no dash-separator is left to violate. Issue 2 is addressed by adding the mempool block link and the live URL from ground truth. All facts, tables, code, and other links are preserved verbatim.

Provenance

On 2026-03-20 at 14:46:38 UTC, a Friday, the splat.html in this repository was written into a Bitcoin block and can never be written again. It is Ordinal inscription #123224491, and the bytes are settled. Not hosted. Not backed up. Settled. The playable game lives at splat.puddystudios.com.

You do not have to trust PUDDY for any of this. The authority is the chain, and the chain answers to anyone who asks. This repository is a mirror that points at it. Every claim below is a number you can check yourself, forever, from a laptop, with no permission from us.


1. The inscription

Field Value
Inscription ID f77b018fabef5930d116146bd0cf8bf6c4bc4c5571ea1f53f6268d9aa858ac97i0
Inscription number #123224491
Genesis block height 941440
Genesis block hash 000000000000000000011ecb6b60d5e561267f13ddf3d19d79c1305e6576816f
Genesis timestamp 1774017998 = 2026-03-20 14:46:38 UTC (Friday)
Sat 53222819757777
Satpoint 63967ffb46348f0b142d01905851568e45d8dfc170ecd29b97db0a73417967ca:0:0
Genesis transaction f77b018fabef5930d116146bd0cf8bf6c4bc4c5571ea1f53f6268d9aa858ac97
Holding address bc1ptumjnxhqlkseef3nl9fdn9g33q8dueeswsslhqvpcel2f0hkm2qq3t5jgc
Fee paid 123240 sats
Output value 9667 sats
Charm vindicated
Content type text/html; charset=utf-8
Content length 162317 bytes
Content SHA-256 e10f16251ca87287aab969ecb1baf9427450072117f0c903f57e2111d963d297

2. Cross-verification

One explorer can be wrong. Two explorers that keep separate indexes and never talk to each other cannot be wrong in the same way by accident. So the genesis block was read off both.

  • Ordinals.com, from its recursive metadata endpoint, reports height 941440, timestamp 1774017998, content length 162317.
  • Mempool.space reports block 941440 with hash 000000000000000000011ecb6b60d5e561267f13ddf3d19d79c1305e6576816f, timestamp 1774017998, holding 2652 transactions.

They agree on every field they share. That integer 1774017998 is a Unix timestamp, and it decodes to exactly 2026-03-20 14:46:38 UTC. Two indexes, one block, one moment.


3. Verify the content hash yourself

The block height tells you when. The hash tells you what. It is the strongest check there is, because a SHA-256 changes completely if a single byte moves. Hash the file in this repo, hash the bytes the chain serves, and if the two digests match, they are the same file. There is no third possibility.

Option A - The provided script:

./scripts/verify.sh

Option B - By hand:

# 1. Hash the file in this repository
shasum -a 256 splat.html

# 2. Hash the exact bytes served from Bitcoin
curl -sS "https://ordinals.com/content/f77b018fabef5930d116146bd0cf8bf6c4bc4c5571ea1f53f6268d9aa858ac97i0" \
  | shasum -a 256

# 3. Both must print:
#    e10f16251ca87287aab969ecb1baf9427450072117f0c903f57e2111d963d297

Option C - Confirm the metadata:

curl -sS "https://ordinals.com/r/inscription/f77b018fabef5930d116146bd0cf8bf6c4bc4c5571ea1f53f6268d9aa858ac97i0"

This returns the inscription's on-chain record: its number, block height, sat, and content length, straight from an Ordinals index, with nothing of ours in between.


4. Continuous verification

A one-time check goes stale the moment someone edits a file. This repository does not run a one-time check. The GitHub Actions workflow at .github/workflows/verify.yml re-runs the hash comparison on every push and on a weekly schedule. The day splat.html drifts from the on-chain bytes by so much as one character, the build fails and the "Verify" badge on the README turns red. A green badge is not a claim we made once. It is a live attestation, renewing itself, that this repository still matches Bitcoin right now.


5. A note on representations of the game

There are two byte streams that both play SPLAT, and this repository ships exactly one of them on purpose.

  1. The inscribed artifact (canonical). This is splat.html in this repository. 162317 bytes, SHA-256 e10f1625…d963d297. It is the production build, minified into one dense document with nothing to spare. It is the file on Bitcoin, and it is the only file this repository treats as authoritative.

  2. A human-readable rendition. PUDDY's web and Telegram wrappers keep a pretty-printed copy of the same game, 266851 bytes, for readability during development. It plays identically. It is not the same bytes. Expanded whitespace and full identifier names make it a different stream with a different hash, so it is not the inscribed artifact and it is not published here. The omission is the point. The file in this repo is the file on the chain, and nothing else is allowed to blur that.

When this document, the README, or any tool says "the artifact," "the inscribed file," or "the canonical bytes," it means representation (1): the 162317-byte file that hashes to e10f1625…d963d297.


6. Authorship vs. inscription date

The copyright line baked into the artifact reads SPLAT (c) 2023 PUDDY. That 2023 is when the game was written. The inscription, the moment those bytes were committed to Bitcoin and made permanent, happened on 2026-03-20. Both dates are true and neither one is the other. One is the year of authorship. One is the day it became unforgettable.

TUNE: Sonnet 5 | effort medium - Next likely step is another surgical doc edit or QA pass, which is mid-complexity copy work well within Sonnet's lane.