{
 "bytes": 1021727687,
 "derived_from": {
  "note": "Built by pendulumflow from its own canonical seven-file hour, which is unmodified and remains the source of record. Not upstream data.",
  "prefix": "merged-live/2026-08-26/20/",
  "products": {
   "best_bid_ask": {
    "sha256": "03ce9c9f7a1c3067f903593236239abc460169aae35e106b7c0c88a3e0af7546"
   },
   "book": {
    "sha256": "b7b0063a949e43b16266481ca7ae509959237b8715ed9979a46a4578deb20bca"
   },
   "last_trade_price": {
    "sha256": "bf86b713da353eb9fbeb362f93aaa7559ec6a00d87675b29fee54cdde6ec3fdb"
   },
   "market_resolved": {
    "sha256": "38f46bfea1543d35a4bfc9cd8f060e7afe5e708664d32ece07f4f3dea86bc237"
   },
   "new_market": {
    "sha256": "3c82ad33a508c0512cfe2ab698c9874a8d4863bad2e7f43d5c9c5b3ac89f5954"
   },
   "price_change": {
    "sha256": "f671a4bb7b27bcd462093a0e9a67d40d6ea3a41320cb8b7d8eb13c4009f2e2c6"
   },
   "tick_size_change": {
    "sha256": "95337860c2327e647ec4fd754f7f01a88271721213a73fc2a9bb82b856392343"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 164,
     "class": "FULL",
     "exception_markets": 33703,
     "rows_a": 7141792,
     "rows_b": 7203373,
     "rows_by_domain": {
      "a": 7141792,
      "b": 7203373,
      "c": 8582944,
      "h": 5912086
     },
     "rows_c": 8582944,
     "rows_h": 5912086,
     "rows_joined": 8583503,
     "rows_merged": 8583339
    },
    "book": {
     "boundary_dropped": 10,
     "class": "FULL",
     "exception_markets": 178869,
     "rows_a": 1571333,
     "rows_b": 2415751,
     "rows_by_domain": {
      "a": 1571333,
      "b": 2415751,
      "c": 157968,
      "h": 106862
     },
     "rows_c": 157968,
     "rows_h": 106862,
     "rows_joined": 3046553,
     "rows_merged": 3046543
    },
    "last_trade_price": {
     "boundary_dropped": 4,
     "class": "FULL",
     "exception_markets": 1432,
     "rows_a": 63005,
     "rows_b": 61789,
     "rows_by_domain": {
      "a": 63005,
      "b": 61789,
      "c": 75018,
      "h": 51186
     },
     "rows_c": 75018,
     "rows_h": 51186,
     "rows_joined": 75108,
     "rows_merged": 75104
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 1333,
     "rows_a": 1662,
     "rows_b": 1763,
     "rows_by_domain": {
      "a": 1662,
      "b": 1763,
      "c": 1435,
      "h": 102
     },
     "rows_c": 1435,
     "rows_h": 102,
     "rows_joined": 2266,
     "rows_merged": 2266
    },
    "new_market": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 924,
     "rows_a": 1385,
     "rows_b": 2935,
     "rows_by_domain": {
      "a": 1385,
      "b": 2935,
      "c": 1307,
      "h": 456
     },
     "rows_c": 1307,
     "rows_h": 456,
     "rows_joined": 3512,
     "rows_merged": 3512
    },
    "price_change": {
     "boundary_dropped": 1434,
     "class": "FULL",
     "exception_markets": 45693,
     "rows_a": 82788355,
     "rows_b": 83306717,
     "rows_by_domain": {
      "a": 82788355,
      "b": 83306717,
      "c": 99716798,
      "h": 70461706
     },
     "rows_c": 99716798,
     "rows_h": 70461706,
     "rows_joined": 99764576,
     "rows_merged": 99763142
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 737,
     "rows_a": 4966,
     "rows_b": 4738,
     "rows_by_domain": {
      "a": 4966,
      "b": 4738,
      "c": 5710,
      "h": 3678
     },
     "rows_c": 5710,
     "rows_h": 3678,
     "rows_joined": 5710,
     "rows_merged": 5710
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 145849731,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-26/20/best_bid_ask.parquet",
     "max_sequence": 112308515710120625,
     "min_sequence": 5629499837897498,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 8583339,
     "sha256": "03ce9c9f7a1c3067f903593236239abc460169aae35e106b7c0c88a3e0af7546"
    },
    "book": {
     "byte_size": 130756655,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-26/20/book.parquet",
     "max_sequence": 112308515717247750,
     "min_sequence": 5629499837897676,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3046543,
     "sha256": "b7b0063a949e43b16266481ca7ae509959237b8715ed9979a46a4578deb20bca"
    },
    "last_trade_price": {
     "byte_size": 4705313,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-26/20/last_trade_price.parquet",
     "max_sequence": 112308515715757963,
     "min_sequence": 5629499837905584,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 75104,
     "sha256": "bf86b713da353eb9fbeb362f93aaa7559ec6a00d87675b29fee54cdde6ec3fdb"
    },
    "market_resolved": {
     "byte_size": 256576,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-26/20/market_resolved.parquet",
     "max_sequence": 112308515710594578,
     "min_sequence": 5629499839331972,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2266,
     "sha256": "38f46bfea1543d35a4bfc9cd8f060e7afe5e708664d32ece07f4f3dea86bc237"
    },
    "new_market": {
     "byte_size": 236973,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-26/20/new_market.parquet",
     "max_sequence": 112308515715594999,
     "min_sequence": 5629499838578492,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3512,
     "sha256": "3c82ad33a508c0512cfe2ab698c9874a8d4863bad2e7f43d5c9c5b3ac89f5954"
    },
    "price_change": {
     "byte_size": 1447331410,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-26/20/price_change.parquet",
     "max_sequence": 112308515718282189,
     "min_sequence": 5629499837897468,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 99763142,
     "sha256": "f671a4bb7b27bcd462093a0e9a67d40d6ea3a41320cb8b7d8eb13c4009f2e2c6"
    },
    "tick_size_change": {
     "byte_size": 228454,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-26/20/tick_size_change.parquet",
     "max_sequence": 48695171110876580,
     "min_sequence": 5629499840489494,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 5710,
     "sha256": "95337860c2327e647ec4fd754f7f01a88271721213a73fc2a9bb82b856392343"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-26T20:00:00+00:00",
   "max_sequence": 112308515718282189,
   "min_sequence": 5629499837897468,
   "row_count": 111479616,
   "sequence_note": "sequence and timestamp_received are collector-local provenance; where domains carry the same row, the merge keeps the LAST ACTIVE domain's values -- for this hour, domain h (active: a, b, c, h)",
   "witnesses": "abch"
  }
 },
 "file": "2026-08-26T20.parquet",
 "hour": "2026-08-26/20",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    81890017
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 112308515710120625,
   "min_sequence": 5629499837897498,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 8583339,
   "row_groups": [
    0,
    32
   ],
   "sha256": "723b6def50383afe8987d3e7e7fb7674657dcd77383e80689bb275d58ed8c1d4"
  },
  "book": {
   "byte_range": [
    81890017,
    194231180
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 112308515717247750,
   "min_sequence": 5629499837897676,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3046543,
   "row_groups": [
    33,
    44
   ],
   "sha256": "0d94f8562fdeae2b5f3e3a15a6de6d37d9dcd5e390d48685a7b58079535d2f83"
  },
  "last_trade_price": {
   "byte_range": [
    194231180,
    198128848
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 112308515715757963,
   "min_sequence": 5629499837905584,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 75104,
   "row_groups": [
    45,
    45
   ],
   "sha256": "e8871b520ab8049666e310de6f23cee1b12943d45aab86a6901872ef67bc7dff"
  },
  "market_resolved": {
   "byte_range": [
    198128848,
    198362295
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 112308515710594578,
   "min_sequence": 5629499839331972,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2266,
   "row_groups": [
    46,
    46
   ],
   "sha256": "d3e1f5bf6c740c11588445c399230b831ec22fa122c222208e0d5c57fa0c3910"
  },
  "new_market": {
   "byte_range": [
    198362295,
    198575586
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 112308515715594999,
   "min_sequence": 5629499838578492,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3512,
   "row_groups": [
    47,
    47
   ],
   "sha256": "91ed81d4c9805e6af85986d98678dc861c29fc0e9fe855e33aa82c503bb083bf"
  },
  "price_change": {
   "byte_range": [
    198575586,
    1020406140
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 112308515718282189,
   "min_sequence": 5629499837897468,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 99763142,
   "row_groups": [
    48,
    428
   ],
   "sha256": "5c3dd2a30a85562247ac6388351a8b7d835410dfec936ea478d0ce1f2a013e5e"
  },
  "tick_size_change": {
   "byte_range": [
    1020406140,
    1020601925
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 48695171110876580,
   "min_sequence": 5629499840489494,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 5710,
   "row_groups": [
    429,
    429
   ],
   "sha256": "eb2d96fae772b6f7c9d555d2efcbc7f25d3d5ca982e032d224685b0f5d952e85"
  }
 },
 "row_count": 111479616,
 "sha256": "da2434a602075a278680c5e813535d0d89f684daaa56e5a919bcbef7a7368f8a",
 "verification": {
  "note": "A range digest certifies BYTES. That those bytes are that product comes from this manifest and is cross-checkable against the Parquet footer, which is inside the whole-file sha256.",
  "primary": "sha256sum <file> == .sha256",
  "secondary": "curl -r <start>-<end-1> <url> | sha256sum == .products.<name>.sha256"
 }
}