{
 "bytes": 904933860,
 "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-20/09/",
  "products": {
   "best_bid_ask": {
    "sha256": "6cb296a96c3cc644fafac3e0980ac7463e31b11201e95034fcd3236c2d064820"
   },
   "book": {
    "sha256": "72917770b6f3e0ab47dda948d14ee213bbd178074fb3c69d9ffea4dc9f71b49a"
   },
   "last_trade_price": {
    "sha256": "e34863eab2ac4f1c00cb984029dba99b6df7dbddfad905fc440adb93b866de42"
   },
   "market_resolved": {
    "sha256": "6e12b635a3a46b577c72e36cb8d3e626390df7891f7711d6ef6cf7edc8e284fa"
   },
   "new_market": {
    "sha256": "6e7c3b6f994679705968c9d08b35d3e423f80565d748bf7de7672d81c609ab87"
   },
   "price_change": {
    "sha256": "1031817fff27f343c7ffa576749775ec298f139026046edc3cdf841bae02a4e5"
   },
   "tick_size_change": {
    "sha256": "f9676549070b598f94a85d4880db791feb76d96385acab4dbe27278c0c2cb056"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 15,
     "rows_a": 7482502,
     "rows_b": 6516837,
     "rows_common": 6502282,
     "rows_merged": 7497042,
     "rows_only_a": 980220,
     "rows_only_b": 14555
    },
    "book": {
     "boundary_dropped": 2,
     "rows_a": 189434,
     "rows_b": 521052,
     "rows_common": 157540,
     "rows_merged": 552944,
     "rows_only_a": 31894,
     "rows_only_b": 363512
    },
    "last_trade_price": {
     "boundary_dropped": 0,
     "rows_a": 86759,
     "rows_b": 76965,
     "rows_common": 74817,
     "rows_merged": 88907,
     "rows_only_a": 11942,
     "rows_only_b": 2148
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "rows_a": 550,
     "rows_b": 543,
     "rows_common": 483,
     "rows_merged": 610,
     "rows_only_a": 67,
     "rows_only_b": 60
    },
    "new_market": {
     "boundary_dropped": 0,
     "rows_a": 1624,
     "rows_b": 1627,
     "rows_common": 1072,
     "rows_merged": 2179,
     "rows_only_a": 552,
     "rows_only_b": 555
    },
    "price_change": {
     "boundary_dropped": 318,
     "rows_a": 97226000,
     "rows_b": 84728630,
     "rows_common": 84235368,
     "rows_merged": 97718944,
     "rows_only_a": 12990632,
     "rows_only_b": 493262
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "rows_a": 3112,
     "rows_b": 2668,
     "rows_common": 2648,
     "rows_merged": 3132,
     "rows_only_a": 464,
     "rows_only_b": 20
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 71204366,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-20/09/best_bid_ask.parquet",
     "max_sequence": 23080948157684914,
     "min_sequence": 20829151517000462,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 7497042,
     "sha256": "6cb296a96c3cc644fafac3e0980ac7463e31b11201e95034fcd3236c2d064820"
    },
    "book": {
     "byte_size": 52981825,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-20/09/book.parquet",
     "max_sequence": 23080948157680928,
     "min_sequence": 20829151517000468,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 552944,
     "sha256": "72917770b6f3e0ab47dda948d14ee213bbd178074fb3c69d9ffea4dc9f71b49a"
    },
    "last_trade_price": {
     "byte_size": 4373673,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-20/09/last_trade_price.parquet",
     "max_sequence": 23080948157679856,
     "min_sequence": 20829151517003284,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 88907,
     "sha256": "e34863eab2ac4f1c00cb984029dba99b6df7dbddfad905fc440adb93b866de42"
    },
    "market_resolved": {
     "byte_size": 84103,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-20/09/market_resolved.parquet",
     "max_sequence": 23080948156488990,
     "min_sequence": 20829151525139579,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 610,
     "sha256": "6e12b635a3a46b577c72e36cb8d3e626390df7891f7711d6ef6cf7edc8e284fa"
    },
    "new_market": {
     "byte_size": 222873,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-20/09/new_market.parquet",
     "max_sequence": 23080948155898031,
     "min_sequence": 20829151517340227,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2179,
     "sha256": "6e7c3b6f994679705968c9d08b35d3e423f80565d748bf7de7672d81c609ab87"
    },
    "price_change": {
     "byte_size": 776067856,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-20/09/price_change.parquet",
     "max_sequence": 23080948157684916,
     "min_sequence": 20829151516935548,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 97718944,
     "sha256": "1031817fff27f343c7ffa576749775ec298f139026046edc3cdf841bae02a4e5"
    },
    "tick_size_change": {
     "byte_size": 96667,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-20/09/tick_size_change.parquet",
     "max_sequence": 23080948157427328,
     "min_sequence": 20829151542373305,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3132,
     "sha256": "f9676549070b598f94a85d4880db791feb76d96385acab4dbe27278c0c2cb056"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-20T09:00:00+00:00",
   "max_sequence": 23080948157684916,
   "min_sequence": 20829151516935548,
   "row_count": 105863758,
   "sequence_note": "sequence and timestamp_received are collector-local provenance; common rows carry domain B's values",
   "witnesses": "ab"
  }
 },
 "file": "2026-08-20T09.parquet",
 "hour": "2026-08-20/09",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    71759038
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 23080948157684914,
   "min_sequence": 20829151517000462,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 7497042,
   "row_groups": [
    0,
    28
   ],
   "sha256": "45f5e0857c703c1cffc0af4d64bdca6d84715915421136b5530692a140c4c069"
  },
  "book": {
   "byte_range": [
    71759038,
    130686481
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 23080948157680928,
   "min_sequence": 20829151517000468,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 552944,
   "row_groups": [
    29,
    31
   ],
   "sha256": "17054c42b94f71f5798cb392e91b0eba8995a9f11350beb034de0dc3f970dbf6"
  },
  "last_trade_price": {
   "byte_range": [
    130686481,
    135172311
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 23080948157679856,
   "min_sequence": 20829151517003284,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 88907,
   "row_groups": [
    32,
    32
   ],
   "sha256": "73bbca0c429b352b40a84a07d6c3b57f6b1534d7c4ba63ca8a61be35ec6419d6"
  },
  "market_resolved": {
   "byte_range": [
    135172311,
    135259957
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 23080948156488990,
   "min_sequence": 20829151525139579,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 610,
   "row_groups": [
    33,
    33
   ],
   "sha256": "532d14c87d43adbb0bee0cccc3e47b4e200af3178f3cdd1a207371fe707b96a3"
  },
  "new_market": {
   "byte_range": [
    135259957,
    135493146
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 23080948155898031,
   "min_sequence": 20829151517340227,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2179,
   "row_groups": [
    34,
    34
   ],
   "sha256": "f2ca795c45ae34692967880e9bdbd6f7d4b98056ee36b6d0b023254b241119ba"
  },
  "price_change": {
   "byte_range": [
    135493146,
    903754638
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 23080948157684916,
   "min_sequence": 20829151516935548,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 97718944,
   "row_groups": [
    35,
    407
   ],
   "sha256": "9471b2583f3d977242416dc70fd8f146375bd94d02d31a19389c8d66a89fe2bb"
  },
  "tick_size_change": {
   "byte_range": [
    903754638,
    903862975
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 23080948157427328,
   "min_sequence": 20829151542373305,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3132,
   "row_groups": [
    408,
    408
   ],
   "sha256": "fce2fcdf585aed84be12ffb5d13438eb2ea78481e6d02f9fbdd75ad13bbfcd08"
  }
 },
 "row_count": 105863758,
 "sha256": "8d2d82c999d00d5c84b4e500a52751eba0b2d28fe52d8f89f414a1ea4638c008",
 "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"
 }
}