{
 "bytes": 946786772,
 "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-27/01/",
  "products": {
   "best_bid_ask": {
    "sha256": "d1d9d801d405d4dd411d9c11dde0b2e47101751dd10e477d4d6cf013d58d6b5c"
   },
   "book": {
    "sha256": "b3830e464921cac2eab59ce5702945bad964d702300415f1278fd09daa92dba0"
   },
   "last_trade_price": {
    "sha256": "1119e158d3f56523c4d73eef7e5b8f8d9065992e5a8b25464f02a2166c26c912"
   },
   "market_resolved": {
    "sha256": "2b16052009e94ec7406628fc126f852ccf84df9c671fb06493268dade5d21ca3"
   },
   "new_market": {
    "sha256": "9df6b9120d731540c54bad402341eb9207b0119ff2090391454e0dd156f934f7"
   },
   "price_change": {
    "sha256": "0caeca5c02ca110bf52ecefabb81560d7af592f505d6ce29427e165d2d95f3ed"
   },
   "tick_size_change": {
    "sha256": "563f984bc0b8a365e05d2907577180d656c391b1ef932509523b8f5d3220d0fc"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 110,
     "class": "FULL",
     "exception_markets": 16814,
     "rows_a": 9217513,
     "rows_b": 7999014,
     "rows_by_domain": {
      "a": 9217513,
      "b": 7999014,
      "c": 9626670,
      "h": 6628349
     },
     "rows_c": 9626670,
     "rows_h": 6628349,
     "rows_joined": 9628418,
     "rows_merged": 9628308
    },
    "book": {
     "boundary_dropped": 1732,
     "class": "FULL",
     "exception_markets": 135333,
     "rows_a": 694510,
     "rows_b": 1711801,
     "rows_by_domain": {
      "a": 694510,
      "b": 1711801,
      "c": 440970,
      "h": 289384
     },
     "rows_c": 440970,
     "rows_h": 289384,
     "rows_joined": 2254694,
     "rows_merged": 2252962
    },
    "last_trade_price": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 1116,
     "rows_a": 64934,
     "rows_b": 55562,
     "rows_by_domain": {
      "a": 64934,
      "b": 55562,
      "c": 70511,
      "h": 50096
     },
     "rows_c": 70511,
     "rows_h": 50096,
     "rows_joined": 70563,
     "rows_merged": 70563
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 477,
     "rows_a": 726,
     "rows_b": 860,
     "rows_by_domain": {
      "a": 726,
      "b": 860,
      "c": 726,
      "h": 255
     },
     "rows_c": 726,
     "rows_h": 255,
     "rows_joined": 1079,
     "rows_merged": 1079
    },
    "new_market": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 931,
     "rows_a": 1038,
     "rows_b": 1216,
     "rows_by_domain": {
      "a": 1038,
      "b": 1216,
      "c": 1038,
      "h": 535
     },
     "rows_c": 1038,
     "rows_h": 535,
     "rows_joined": 1851,
     "rows_merged": 1851
    },
    "price_change": {
     "boundary_dropped": 1262,
     "class": "FULL",
     "exception_markets": 19242,
     "rows_a": 90709638,
     "rows_b": 78386156,
     "rows_by_domain": {
      "a": 90709638,
      "b": 78386156,
      "c": 94957004,
      "h": 64823246
     },
     "rows_c": 94957004,
     "rows_h": 64823246,
     "rows_joined": 94991158,
     "rows_merged": 94989896
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 338,
     "rows_a": 2964,
     "rows_b": 2748,
     "rows_by_domain": {
      "a": 2964,
      "b": 2748,
      "c": 3144,
      "h": 2152
     },
     "rows_c": 3144,
     "rows_h": 2152,
     "rows_joined": 3144,
     "rows_merged": 3144
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 158876299,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-27/01/best_bid_ask.parquet",
     "max_sequence": 117656540305756145,
     "min_sequence": 5629500361068606,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 9628308,
     "sha256": "d1d9d801d405d4dd411d9c11dde0b2e47101751dd10e477d4d6cf013d58d6b5c"
    },
    "book": {
     "byte_size": 114147668,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-27/01/book.parquet",
     "max_sequence": 117656540308845283,
     "min_sequence": 5629500361068942,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2252962,
     "sha256": "b3830e464921cac2eab59ce5702945bad964d702300415f1278fd09daa92dba0"
    },
    "last_trade_price": {
     "byte_size": 4438300,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-27/01/last_trade_price.parquet",
     "max_sequence": 117656540295772742,
     "min_sequence": 5629500361077724,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 70563,
     "sha256": "1119e158d3f56523c4d73eef7e5b8f8d9065992e5a8b25464f02a2166c26c912"
    },
    "market_resolved": {
     "byte_size": 130959,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-27/01/market_resolved.parquet",
     "max_sequence": 117656540268288328,
     "min_sequence": 5629500364071436,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 1079,
     "sha256": "2b16052009e94ec7406628fc126f852ccf84df9c671fb06493268dade5d21ca3"
    },
    "new_market": {
     "byte_size": 196373,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-27/01/new_market.parquet",
     "max_sequence": 117656540302834767,
     "min_sequence": 5629500361563133,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 1851,
     "sha256": "9df6b9120d731540c54bad402341eb9207b0119ff2090391454e0dd156f934f7"
    },
    "price_change": {
     "byte_size": 1355003240,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-27/01/price_change.parquet",
     "max_sequence": 117656540309708334,
     "min_sequence": 5629500361068590,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 94989896,
     "sha256": "0caeca5c02ca110bf52ecefabb81560d7af592f505d6ce29427e165d2d95f3ed"
    },
    "tick_size_change": {
     "byte_size": 126707,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-27/01/tick_size_change.parquet",
     "max_sequence": 49258121013132389,
     "min_sequence": 5629500364698592,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3144,
     "sha256": "563f984bc0b8a365e05d2907577180d656c391b1ef932509523b8f5d3220d0fc"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-27T01:00:00+00:00",
   "max_sequence": 117656540309708334,
   "min_sequence": 5629500361068590,
   "row_count": 106947803,
   "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-27T01.parquet",
 "hour": "2026-08-27/01",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    85979749
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 117656540305756145,
   "min_sequence": 5629500361068606,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 9628308,
   "row_groups": [
    0,
    36
   ],
   "sha256": "f900682235962134da45533d17f22e692c387a93eb7464d0556cfff3c43b093b"
  },
  "book": {
   "byte_range": [
    85979749,
    182004913
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 117656540308845283,
   "min_sequence": 5629500361068942,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2252962,
   "row_groups": [
    37,
    45
   ],
   "sha256": "5903ef598ff263a8ec0ea6a4ca622785d72f07b24a4722424b3f5e983f0dbbd0"
  },
  "last_trade_price": {
   "byte_range": [
    182004913,
    185688945
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 117656540295772742,
   "min_sequence": 5629500361077724,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 70563,
   "row_groups": [
    46,
    46
   ],
   "sha256": "600d742040b27e475841531d86b0891827de18261c9687a9d247855a61d8f7a8"
  },
  "market_resolved": {
   "byte_range": [
    185688945,
    185807197
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 117656540268288328,
   "min_sequence": 5629500364071436,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 1079,
   "row_groups": [
    47,
    47
   ],
   "sha256": "7a7f7c0f0a436924d5203fad81f080e369ca55c12ca74974ba5bdc60eb9bd129"
  },
  "new_market": {
   "byte_range": [
    185807197,
    185985087
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 117656540302834767,
   "min_sequence": 5629500361563133,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 1851,
   "row_groups": [
    48,
    48
   ],
   "sha256": "7af8852076514494b73b99c0d1292b657047fc6a3ebb03fa5742773e46d747e9"
  },
  "price_change": {
   "byte_range": [
    185985087,
    945597177
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 117656540309708334,
   "min_sequence": 5629500361068590,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 94989896,
   "row_groups": [
    49,
    411
   ],
   "sha256": "a22889497f688210f3f2e6310cef148dd7bae6ea38af5687b016eb620075d3e7"
  },
  "tick_size_change": {
   "byte_range": [
    945597177,
    945705912
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 49258121013132389,
   "min_sequence": 5629500364698592,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3144,
   "row_groups": [
    412,
    412
   ],
   "sha256": "ece418c21e618c7a005fad38c9c444315a1559cf134f10112d255d9b775bf500"
  }
 },
 "row_count": 106947803,
 "sha256": "5c98d8c98d25f92718bc8ec14e4f7fd6f0f748739bc6924ff774b6c0902afec5",
 "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"
 }
}