{
 "bytes": 972404741,
 "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-22/15/",
  "products": {
   "best_bid_ask": {
    "sha256": "fc0423a0805a62c68d0f8133bb5c83a2130dcdc3b68fc04f8808ea007e0d5d8b"
   },
   "book": {
    "sha256": "3815fd3508ed24f5bf42fa605fc9c0021a1670912fce3665e069930cc2c02eca"
   },
   "last_trade_price": {
    "sha256": "86cc39cb63186ec71603c353f659ead1a5596e1b5619403dc5bf9dba1064cb2b"
   },
   "market_resolved": {
    "sha256": "12436998db833076e21caea10e9343ef92c6013e6b1f87024eca6712dbbbdbbe"
   },
   "new_market": {
    "sha256": "5802877471f1947b42bd9785a5bafefa6e17cbb91b296d0266eac6f682bd2e9d"
   },
   "price_change": {
    "sha256": "6dc9fc5c59890007246a7b16360312cde8ede1da5c3dd741b6e5b51e353dc342"
   },
   "tick_size_change": {
    "sha256": "db1746897d98c29920aaf5c627e8e5e70933457c8cb772b7a3becb7eb308e414"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 5,
     "rows_a": 9230074,
     "rows_b": 8858234,
     "rows_common": 8344417,
     "rows_merged": 9743886,
     "rows_only_a": 885657,
     "rows_only_b": 513817
    },
    "book": {
     "boundary_dropped": 18,
     "rows_a": 1148777,
     "rows_b": 1525048,
     "rows_common": 814160,
     "rows_merged": 1859647,
     "rows_only_a": 334617,
     "rows_only_b": 710888
    },
    "last_trade_price": {
     "boundary_dropped": 0,
     "rows_a": 82449,
     "rows_b": 79868,
     "rows_common": 74821,
     "rows_merged": 87496,
     "rows_only_a": 7628,
     "rows_only_b": 5047
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "rows_a": 1932,
     "rows_b": 2333,
     "rows_common": 1651,
     "rows_merged": 2614,
     "rows_only_a": 281,
     "rows_only_b": 682
    },
    "new_market": {
     "boundary_dropped": 0,
     "rows_a": 354,
     "rows_b": 430,
     "rows_common": 305,
     "rows_merged": 479,
     "rows_only_a": 49,
     "rows_only_b": 125
    },
    "price_change": {
     "boundary_dropped": 118,
     "rows_a": 93029440,
     "rows_b": 89138795,
     "rows_common": 83726878,
     "rows_merged": 98441239,
     "rows_only_a": 9302562,
     "rows_only_b": 5411917
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "rows_a": 10828,
     "rows_b": 10652,
     "rows_common": 10480,
     "rows_merged": 11000,
     "rows_only_a": 348,
     "rows_only_b": 172
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 89912778,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-22/15/best_bid_ask.parquet",
     "max_sequence": 56576470366905483,
     "min_sequence": 36591747201741086,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 9743886,
     "sha256": "fc0423a0805a62c68d0f8133bb5c83a2130dcdc3b68fc04f8808ea007e0d5d8b"
    },
    "book": {
     "byte_size": 80150759,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-22/15/book.parquet",
     "max_sequence": 56576470366904801,
     "min_sequence": 36591747201741082,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 1859647,
     "sha256": "3815fd3508ed24f5bf42fa605fc9c0021a1670912fce3665e069930cc2c02eca"
    },
    "last_trade_price": {
     "byte_size": 4557071,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-22/15/last_trade_price.parquet",
     "max_sequence": 56576470366903280,
     "min_sequence": 36591747205296237,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 87496,
     "sha256": "86cc39cb63186ec71603c353f659ead1a5596e1b5619403dc5bf9dba1064cb2b"
    },
    "market_resolved": {
     "byte_size": 290014,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-22/15/market_resolved.parquet",
     "max_sequence": 56576470365678232,
     "min_sequence": 36591747204628296,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2614,
     "sha256": "12436998db833076e21caea10e9343ef92c6013e6b1f87024eca6712dbbbdbbe"
    },
    "new_market": {
     "byte_size": 47162,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-22/15/new_market.parquet",
     "max_sequence": 56576470364651235,
     "min_sequence": 36591747201787757,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 479,
     "sha256": "5802877471f1947b42bd9785a5bafefa6e17cbb91b296d0266eac6f682bd2e9d"
    },
    "price_change": {
     "byte_size": 804548688,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-22/15/price_change.parquet",
     "max_sequence": 56576470366905505,
     "min_sequence": 36591747201311880,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 98441239,
     "sha256": "6dc9fc5c59890007246a7b16360312cde8ede1da5c3dd741b6e5b51e353dc342"
    },
    "tick_size_change": {
     "byte_size": 333555,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-22/15/tick_size_change.parquet",
     "max_sequence": 56576470366867125,
     "min_sequence": 36591747215746096,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 11000,
     "sha256": "db1746897d98c29920aaf5c627e8e5e70933457c8cb772b7a3becb7eb308e414"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-22T15:00:00+00:00",
   "max_sequence": 56576470366905505,
   "min_sequence": 36591747201311880,
   "row_count": 110146361,
   "sequence_note": "sequence and timestamp_received are collector-local provenance; common rows carry domain B's values",
   "witnesses": "ab"
  }
 },
 "file": "2026-08-22T15.parquet",
 "hour": "2026-08-22/15",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    87888166
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 56576470366905483,
   "min_sequence": 36591747201741086,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 9743886,
   "row_groups": [
    0,
    37
   ],
   "sha256": "ee698ab6bd2e61f0e99100a7a99bd19e62b50f1c7caa3817d0c24e93b702e1f3"
  },
  "book": {
   "byte_range": [
    87888166,
    171942712
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 56576470366904801,
   "min_sequence": 36591747201741082,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 1859647,
   "row_groups": [
    38,
    45
   ],
   "sha256": "da7968dcf46c2d6d3dd8e5b245f0c22221666df5776695502a4eeefacea21cc4"
  },
  "last_trade_price": {
   "byte_range": [
    171942712,
    176570615
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 56576470366903280,
   "min_sequence": 36591747205296237,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 87496,
   "row_groups": [
    46,
    46
   ],
   "sha256": "1bfab455fc564d62e90b2991da8bf9a31f85f9cc94b10d9756778a67a21d29cc"
  },
  "market_resolved": {
   "byte_range": [
    176570615,
    176874883
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 56576470365678232,
   "min_sequence": 36591747204628296,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2614,
   "row_groups": [
    47,
    47
   ],
   "sha256": "f5fd6f78c0d25d27d854754c75dd2b736e66a3e8e1ec8d4ae67433635b140581"
  },
  "new_market": {
   "byte_range": [
    176874883,
    176923560
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 56576470364651235,
   "min_sequence": 36591747201787757,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 479,
   "row_groups": [
    48,
    48
   ],
   "sha256": "aa9ad1568f91ae0dd34325fa41569c0fead2b63d95a5e611b2ae241009113a12"
  },
  "price_change": {
   "byte_range": [
    176923560,
    970914613
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 56576470366905505,
   "min_sequence": 36591747201311880,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 98441239,
   "row_groups": [
    49,
    424
   ],
   "sha256": "8c7ca8ca79c37d2a069705eceaea673f96aa57c913ac4533a652147ebf3dddcd"
  },
  "tick_size_change": {
   "byte_range": [
    970914613,
    971289875
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 56576470366867125,
   "min_sequence": 36591747215746096,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 11000,
   "row_groups": [
    425,
    425
   ],
   "sha256": "60256682be5870e215b9532348dbc78e9a8036d0cd61d665a2aa1c8f4b776160"
  }
 },
 "row_count": 110146361,
 "sha256": "a822ca6915a7e49b32ac0ec39e766ead984d060dd1549a64dcdf7ed52d569b30",
 "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"
 }
}