{
  "title": "What an attested execution record costs: observed and priced",
  "status": "non-normative",
  "generatedAt": "2026-08-15",
  "note": "Every number here is one of exactly two kinds. OBSERVED: produced by running the stated command in the stated environment, output quoted. PRICED: a list price or free-of-charge statement from a named public source on the stated date. Numbers computed from those two kinds are labeled COMPUTED with their arithmetic shown. There is no third kind; an estimate dressed as a measurement would be the overstatement failure applied to economics. Production cost is the condition AEF 1000 section 2's own precedent argument turns on: standing and detection arrive from outside and cannot be engineered, production cost can be, and this file is the series quantifying it for the first time.",
  "environment": "Linux 6.18.5 container, Node.js v22.22.2 (OpenSSL 3.5.5), Intel silicon, repository working tree at the review-1 tag. Wall times include interpreter startup where the command includes it.",
  "observed": [
    {
      "what": "Size of the sealed record (aer.json), run-0001",
      "command": "wc -c aer.json",
      "output": "14631 aer.json",
      "value": "14,631 bytes"
    },
    {
      "what": "Size of the separately sealed declaration",
      "command": "wc -c declaration.json",
      "output": "2072 declaration.json",
      "value": "2,072 bytes"
    },
    {
      "what": "Size of the artifacts the record binds (8 input documents + 1 output manifest)",
      "command": "stat each inputState and outputArtifacts ref, summed",
      "output": "artifact files: 9 bytes: 222825",
      "value": "222,825 bytes"
    },
    {
      "what": "Anchor proofs carried by run-0001",
      "command": "read aer.json seal.anchor",
      "output": "{'anchored': False, 'party': None, 'evidence': None}",
      "value": "none: run-0001 is unanchored, and its verification result says so. The anchored example (anchor-0001) carries fabricated, well-formed RFC 3161 evidence in a 4,639-byte record plus a 574-byte renewal, which bounds what real evidence of that mechanism would add."
    },
    {
      "what": "Wall time to produce one record (declare, seal declaration, execute the run, capture 18 acts, seal record, write tampered copy)",
      "command": "time npm run aef:run",
      "output": "real 1.892 s",
      "value": "1.9 seconds, including tsx interpreter startup"
    },
    {
      "what": "Wall time to verify, command line (the record, its tampered copy, and the withheld-declaration case, all three)",
      "command": "time npm run aef:verify",
      "output": "real 0.428 s",
      "value": "0.43 seconds for three verifications, including interpreter startup"
    },
    {
      "what": "Wall time to verify, browser build (record with sealed declaration, artifact comparison not included)",
      "command": "performance.now() around AefVerifier.run, mean of 10 consecutive runs, Chromium via Playwright",
      "output": "browser verify mean of 10 runs (ms): 5.5",
      "value": "5.5 milliseconds per verification"
    }
  ],
  "priced": [
    {
      "what": "RFC 3161 timestamp anchor, marginal cost per timestamp",
      "price": "free of charge",
      "source": "freetsa.org, a community-operated RFC 3161 timestamp authority",
      "sourceUrl": "https://www.freetsa.org/index_en.php",
      "pricedOn": "2026-08-15",
      "note": "A free community service is a best-effort party; what that party is worth is a trust base question (AEF 1101 section 7), not a price question. Commercial authorities exist at nonzero prices; none is required by any document in this series."
    },
    {
      "what": "Transparency log anchor, marginal cost per entry",
      "price": "free of charge",
      "source": "Sigstore Rekor public instance (rekor.sigstore.dev), operated as a non-profit public-good service with a stated 99.5% availability objective",
      "sourceUrl": "https://docs.sigstore.dev/logging/overview/",
      "pricedOn": "2026-08-15",
      "note": "Best-effort public good, per its own description."
    },
    {
      "what": "Public-chain anchor, marginal cost per timestamp",
      "price": "free of charge",
      "source": "OpenTimestamps calendar servers, which aggregate submitted digests into Merkle trees and commit the root in a Bitcoin transaction; the servers state they are free to use with no registration",
      "sourceUrl": "https://opentimestamps.org/",
      "pricedOn": "2026-08-15",
      "note": "The aggregation is what makes the marginal cost zero; the underlying Bitcoin transaction fee is paid by the calendar operators, who accept donations."
    },
    {
      "what": "Storage, per GB per month",
      "price": "USD 0.023 per GB-month (S3 Standard, first 50 TB, us-east-1)",
      "source": "Amazon Web Services S3 pricing page",
      "sourceUrl": "https://aws.amazon.com/s3/pricing/",
      "pricedOn": "2026-08-15",
      "note": "One named commodity price, not a market survey."
    }
  ],
  "computed": [
    {
      "what": "Total bytes a reviewer needs for the full run-0001 verification (record + declaration + bound artifacts)",
      "arithmetic": "14,631 + 2,072 + 222,825",
      "value": "239,528 bytes"
    },
    {
      "what": "Storage cost per record-year, full bundle, at the priced rate",
      "arithmetic": "239,528 bytes = 0.000239528 GB; 0.000239528 x 0.023 USD x 12 months",
      "value": "about USD 0.000066 per year, six thousandths of a cent"
    },
    {
      "what": "Storage cost per record-year, record and declaration only",
      "arithmetic": "16,703 bytes = 0.0000167 GB; 0.0000167 x 0.023 USD x 12 months",
      "value": "about USD 0.0000046 per year"
    }
  ],
  "caveats": [
    "run-0001 is a small run: 18 act log entries over 9 artifacts. Costs scale with act count and artifact size; nothing here observes a large run, and this file does not extrapolate to one.",
    "The wall times are one machine's, stated with their environment. They are observations, not benchmarks.",
    "Zero-price anchoring services are free the way public infrastructure is free: someone else is paying, and the trust base statement is where that dependency belongs."
  ]
}
