{
 "bytes": 930721956,
 "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-19/20/",
  "products": {
   "best_bid_ask": {
    "sha256": "281b74550dfb53d83d8753130e2e6da1e9e674efac84f726578f29ba8e0876d1"
   },
   "book": {
    "sha256": "f2c0fc46f7a61c4c9d556d2f8fc32ffebbc057c13b8dc420c9cff3e59ace6205"
   },
   "last_trade_price": {
    "sha256": "c21f4adb610c10b40d95cf85dcd5a3f8e3ebaf88483c5e7771beebeb954f4d64"
   },
   "market_resolved": {
    "sha256": "4fe8ceb15e5a5ed3bdf119ca4f33e6e3b925ebd81152d0e54ee9fa00b0630d42"
   },
   "new_market": {
    "sha256": "515432abf1a2e82bf5fa8962d09c1fa176f42805d0df2ed2ab2f76142215292a"
   },
   "price_change": {
    "sha256": "0138ce38dc7a38c1feff17a385ce21a62cd5043bd468630b54f5181ab5e548bf"
   },
   "tick_size_change": {
    "sha256": "f643c49dceace0a3a49733be9fbcae9321709fcb055ebab92642636e2bb7965a"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 38,
     "rows_a": 9076891,
     "rows_b": 8401086,
     "rows_common": 8396108,
     "rows_merged": 9081831,
     "rows_only_a": 680783,
     "rows_only_b": 4978
    },
    "book": {
     "boundary_dropped": 628,
     "rows_a": 289964,
     "rows_b": 940659,
     "rows_common": 210314,
     "rows_merged": 1019681,
     "rows_only_a": 79650,
     "rows_only_b": 730345
    },
    "last_trade_price": {
     "boundary_dropped": 2,
     "rows_a": 87027,
     "rows_b": 81740,
     "rows_common": 81043,
     "rows_merged": 87722,
     "rows_only_a": 5984,
     "rows_only_b": 697
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "rows_a": 1050,
     "rows_b": 1003,
     "rows_common": 890,
     "rows_merged": 1163,
     "rows_only_a": 160,
     "rows_only_b": 113
    },
    "new_market": {
     "boundary_dropped": 0,
     "rows_a": 2043,
     "rows_b": 2083,
     "rows_common": 1293,
     "rows_merged": 2833,
     "rows_only_a": 750,
     "rows_only_b": 790
    },
    "price_change": {
     "boundary_dropped": 306,
     "rows_a": 96155696,
     "rows_b": 88779109,
     "rows_common": 88697229,
     "rows_merged": 96237270,
     "rows_only_a": 7458467,
     "rows_only_b": 81880
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "rows_a": 3948,
     "rows_b": 3676,
     "rows_common": 3672,
     "rows_merged": 3952,
     "rows_only_a": 276,
     "rows_only_b": 4
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 84733984,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-19/20/best_bid_ask.parquet",
     "max_sequence": 20829150270170162,
     "min_sequence": 10696049142994751,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 9081831,
     "sha256": "281b74550dfb53d83d8753130e2e6da1e9e674efac84f726578f29ba8e0876d1"
    },
    "book": {
     "byte_size": 66311663,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-19/20/book.parquet",
     "max_sequence": 20829150269557402,
     "min_sequence": 10696049142996103,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 1019681,
     "sha256": "f2c0fc46f7a61c4c9d556d2f8fc32ffebbc057c13b8dc420c9cff3e59ace6205"
    },
    "last_trade_price": {
     "byte_size": 4393314,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-19/20/last_trade_price.parquet",
     "max_sequence": 20829150269228812,
     "min_sequence": 10696049143000096,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 87722,
     "sha256": "c21f4adb610c10b40d95cf85dcd5a3f8e3ebaf88483c5e7771beebeb954f4d64"
    },
    "market_resolved": {
     "byte_size": 156871,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-19/20/market_resolved.parquet",
     "max_sequence": 20829150269865551,
     "min_sequence": 10696049144973790,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 1163,
     "sha256": "4fe8ceb15e5a5ed3bdf119ca4f33e6e3b925ebd81152d0e54ee9fa00b0630d42"
    },
    "new_market": {
     "byte_size": 287528,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-19/20/new_market.parquet",
     "max_sequence": 20829150261998189,
     "min_sequence": 10696049143626854,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2833,
     "sha256": "515432abf1a2e82bf5fa8962d09c1fa176f42805d0df2ed2ab2f76142215292a"
    },
    "price_change": {
     "byte_size": 777350082,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-19/20/price_change.parquet",
     "max_sequence": 20829150270170164,
     "min_sequence": 10696049142994639,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 96237270,
     "sha256": "0138ce38dc7a38c1feff17a385ce21a62cd5043bd468630b54f5181ab5e548bf"
    },
    "tick_size_change": {
     "byte_size": 121405,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-19/20/tick_size_change.parquet",
     "max_sequence": 20829150202998884,
     "min_sequence": 10696049144635368,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3952,
     "sha256": "f643c49dceace0a3a49733be9fbcae9321709fcb055ebab92642636e2bb7965a"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-19T20:00:00+00:00",
   "max_sequence": 20829150270170164,
   "min_sequence": 10696049142994639,
   "row_count": 106434452,
   "sequence_note": "sequence and timestamp_received are collector-local provenance; common rows carry domain B's values",
   "witnesses": "ab"
  }
 },
 "file": "2026-08-19T20.parquet",
 "hour": "2026-08-19/20",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    83908103
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 20829150270170162,
   "min_sequence": 10696049142994751,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 9081831,
   "row_groups": [
    0,
    34
   ],
   "sha256": "aa9e181bdff86a0240fecf7a13547a302a8fd92c71e5e26f88c74346f8c7a2e9"
  },
  "book": {
   "byte_range": [
    83908103,
    155671052
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 20829150269557402,
   "min_sequence": 10696049142996103,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 1019681,
   "row_groups": [
    35,
    38
   ],
   "sha256": "06657d52adf312812fec55d05e94b80d12b4e022980e2522e9f6035d80b2f769"
  },
  "last_trade_price": {
   "byte_range": [
    155671052,
    160171970
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 20829150269228812,
   "min_sequence": 10696049143000096,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 87722,
   "row_groups": [
    39,
    39
   ],
   "sha256": "1f4f7634e7abf3261747299ca2625af1282dab77edc36ca07b73c5dc8153f398"
  },
  "market_resolved": {
   "byte_range": [
    160171970,
    160347918
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 20829150269865551,
   "min_sequence": 10696049144973790,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 1163,
   "row_groups": [
    40,
    40
   ],
   "sha256": "9dee281c32f5debc3ff06b31c358bc0295542147a387248e4ba0ee208ac638ff"
  },
  "new_market": {
   "byte_range": [
    160347918,
    160653473
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 20829150261998189,
   "min_sequence": 10696049143626854,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2833,
   "row_groups": [
    41,
    41
   ],
   "sha256": "b4ff26bcba5acc359b1a00c55ad4dabb31f2753225a50841babceb8640237b5d"
  },
  "price_change": {
   "byte_range": [
    160653473,
    929510360
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 20829150270170164,
   "min_sequence": 10696049142994639,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 96237270,
   "row_groups": [
    42,
    409
   ],
   "sha256": "db4a758c0d4fa14b3eb7b4c07eddf2811070524b05cdded502967d4b18875f2c"
  },
  "tick_size_change": {
   "byte_range": [
    929510360,
    929646132
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 20829150202998884,
   "min_sequence": 10696049144635368,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3952,
   "row_groups": [
    410,
    410
   ],
   "sha256": "3c74ae6e7e80406e4421553d1b79d51fc181e1262466c2a2ba644be9909557db"
  }
 },
 "row_count": 106434452,
 "sha256": "4c59ddebe1602f205f71121712e3ba0af5d40e7af6446559f23977f29bd3bb04",
 "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"
 }
}