{
 "schema": "zblood.storage-economics/1",
 "law": "FIVE DISTINCT STATES, never conflated: quoted ≠ purchased ≠ uploaded ≠ retrieved ≠ hash-verified. No synthetic projection may be labeled measured. Every price carries its timestamp and raw source.",
 "artifact": {
  "name": "zBlood interactive public preservation edition v3",
  "manifestSha256": "39c0e9fb2bc3683ef11e3452fecc37e8d047e2d893b09905558a24b3ee90ebf9", "hexLawNote": "PUBLIC-CONSTANT; tools/genealogy/preserve.mjs::verifyPackage",
  "preparedAt": "2026-10-11T03:39:23.379Z",
  "approvedAt": null,
  "approvedBy": null,
  "approvedDestination": null,
  "bindingIntact": false,
  "files": 22154,
  "bytes": 266410635,
  "GiB": 0.248114,
  "personObjects": 11041,
  "evidencePacks": 3,
  "uploadForm": "deterministic public tar; tools/genealogy/build-eternalization-tar.sh::verify_reproducible_eternalization_tar",
  "uploadObject": {
   "form": "tar",
   "bytes": 286801920,
   "sha256": "e5e3b013adc3bcbb6967c552f73763b5fee5538d0b43504dca9f7eb57f02711e", "hexLawNote": "PUBLIC-CONSTANT; tools/genealogy/build-eternalization-tar.sh::verify_reproducible_eternalization_tar",
   "builtAt": "2026-10-11T03:40:34.181Z"
  }
 },
 "quotes": {
  "arweave": {
   "state": "fresh size-based quote only; no transaction",
   "route": "surfaces/arweave.js::fee via https://arweave.net/price/{bytes}",
   "queriedAt": "2026-10-11T03:44:44.828Z",
   "raw": [
    {
     "bytes": 286801920,
     "winston": "3708064485204"
    }
   ],
   "computed": {
    "fullArchiveAR": "3.708064485204",
    "formula": "winston / 1e12"
   },
   "note": "public size-based fee estimate only; no wallet, signing or upload"
  },
  "autonomi": {
   "state": "quoted; payment disabled",
   "route": "tools/genealogy/capture-ant-quote.mjs::captureAntQuote using ant 0.3.9",
   "queriedAt": "2026-10-11T03:45:41.910Z",
   "raw": {
    "file_size": 286801920,
    "chunk_count": 72,
    "storage_cost_atto": "5009055375000000000",
    "estimated_gas_cost_wei": "50000000000000",
    "payment_mode": "merkle",
    "confidence": "priced_sample"
   },
   "qualifications": [
    "keyless quote on a private byte-verified snapshot; no wallet access, payment, or upload",
    "5.009055375000000000 ANT is within the temporary 100 ANT storage ceiling",
    "ant 0.3.9 file upload exposes no atomic ANT or ETH ceiling, so the paid path is code-disabled",
    "storage and gas are separate obligations",
    "Hosted ANT purchase PR #391 is merged but its verified browser path caps files at 32 MiB; this archive exceeds that limit. No large-file payment or retrieval acceptance is claimed.",
    "PRs #324 and #341 merged ant-extsig 0.3.0; its gate/client mismatch, unbound send gas limit, concurrent-ledger and retry-accounting limitations remain documented. This receipt uses the existing ant 0.3.9 quote adapter and does not enable payment."
   ],
   "computed": {
    "storageANT": "5.009055375000000000",
    "gasETH": "0.000050000000000000",
    "formula": "storage_cost_atto / 1e18; estimated_gas_cost_wei / 1e18"
   },
   "ceilings": {
    "storageMaxANT": 100,
    "gasMaxETH": 0.0002,
    "enforceableByClient": false,
    "storageWithinCeiling": true,
    "gasWithinCeiling": true,
    "policySource": "ETERNALIZATION-EDITION-V2.json::separatedCeilings; temporary 100 ANT policy recorded by merged PR #326; payment remains disabled"
   }
  }
 },
 "economicsExperiment": {
  "question": "Historical model: how would uploader storage/egress obligations vary with retrieval count after a future purchase?",
  "headline": "STRUCTURALLY YES for ANT/AR on the uploader side (one-time prepaid; network serves retrievals) — but TWO PROOFS are required and NEITHER is done: (1) archive retrieved+restored from storage, (2) family experience delivered WITHOUT our box carrying the payload. Until (2), our estate-operated serving (box/relay) scales egress with every view.",
  "scenarios": {
   "fullArchiveRetrievals": {
    "assumption": "one retrieval = the whole archive object (80,998,400-byte tar; inner content 62,139,972 bytes)",
    "atOneMillion": {
     "bytesDeliveredTB": 62.14,
     "bytesDeliveredGiB": 57872
    },
    "comparisons": {
     "cloudfrontGrossUSD": 4919.15,
     "cloudfrontAfter1TBFreeUSD": 4840.02,
     "b2GrossUSD": 578.72,
     "b2FreeEgressNote": "free egress up to 3x average monthly storage (0.058 GiB) — allowance negligible here; B2 list 6.95/TB-mo documented 2026-09-16",
     "r2EgressUSD": 0,
     "arweaveUploaderUSD": 0,
     "autonomiUploaderUSD": 0
    }
   },
   "pageViewJourneys": {
    "assumption": "one page view = 2 MiB — UNMEASURED ASSUMPTION until cold/warm journeys are network-traced; the actual journey includes corpus (59 MiB!), language assets, crest, and evidence — a cold comb visit is far larger than 2 MiB",
    "atOneMillion": {
     "bytesDeliveredTB": 2.1,
     "bytesDeliveredGiB": 1953
    },
    "comparisons": {
     "cloudfrontGrossUSD": 166.02,
     "cloudfrontAfter1TBFreeUSD": 86.88,
     "b2GrossUSD": 19.53,
     "r2EgressUSD": 0,
     "arweaveUploaderUSD": 0,
     "autonomiUploaderUSD": 0
    },
    "note": "the earlier headline figure 166.02 belonged to THIS scenario; full-archive scenario is 29.6x larger"
   }
  },
  "retrievalCounts": {
   "modeled": [
    1,
    10,
    100,
    1000,
    1000000
   ],
   "actuallyTested": 0
  },
  "billingAllowances": "CloudFront pay-as-you-go includes 1 TB/month transfer + 10M requests — spread vs concentrated months change the bill; B2 free egress up to 3x average monthly storage; R2 free egress with 10 GB-month free storage tier. Gross list-price AND after-allowance figures both shown, documented 2026-09-16, NOT measured.",
  "scope": "Historical pkg3 scenarios only; neither measurements nor quotes for edition v3. No archive has been purchased or uploaded."
 },
 "arSplitRouteAnalysis": {
  "question": "Is Arweave better used for the compact permanent provenance/root manifest while ANT carries the archive payload?",
  "measured": {
   "manifestOnlyARUSD": 0.094,
   "fullArchiveARUSD": 2.0314
  },
  "finding": "BOTH are within pocket change at this archive's size; the split becomes meaningful at scale (a 60 GB archive would cost ~$1,966 on AR vs a ~$0.09 manifest root + ANT payload at its own rate). Recommendation: quote BOTH routes at upload time and decide with live numbers; AR's manifest-root pattern (permanent, tiny, address-stable) pairs naturally with ANT's payload economics — but no duplication happens until both live quotes exist and the founder rules.",
  "scope": "Historical pkg3 size/prices and hypothetical scaling only; superseded for the current edition by the exact-artifact quotes above."
 },
 "states": {
  "prepared": true,
  "approved": false,
  "quoted": "ANT and AR estimates captured for edition v3; no approval, purchase or upload",
  "purchased": false,
  "uploaded": false,
  "retrieved": false,
  "hashVerifiedFromStorage": false
 },
 "reproducibility": {
  "formulae": [
   "winston→AR: winston / 1e12",
   "AR→USD: AR × tokenReference.value",
   "S3-family storage: listUSD_per_GiB_month × (bytes / 1024^3)",
   "egress: listUSD_per_GiB × (bytes_fetched / 1024^3)"
  ],
  "rawInputsPreserved": true,
  "noHardcodedPerTBClaims": "none present; the old $747/TB Discord number is deliberately absent — every figure here is either a timestamped quote or an explicitly-labeled list-price assumption"
 },
 "demonstrationPath": "Albert Perry Rockwood (public entrance) → biography/records/lore → blood fractal → underlying archived evidence — the receipt's card rides beside this path in surfaces/blood.html",
 "generatedAt": "2026-10-11T03:45:41.910Z",
 "acceptanceOutcomes": {
  "archiveRetrievalRestoration": {
   "state": "pending",
   "proof": "fresh client retrieves the purchased object from storage, hash-verifies against the approved manifest, restores the tree, runs the family journey"
  },
  "independentApplicationDelivery": {
   "state": "pending",
   "proof": "a fresh visitor completes the Rockwood/Donna journey while network traces show where page/corpus/crest/stories/documents bytes come from — with the Beehive payload origin BLOCKED in the test browser (not production). Gateway/proxy/index/relay obligations recorded, not assumed away",
   "test": "block the estate payload origin in the test browser, repeat the journey through the intended network-backed route"
  }
 }
}
