{
 "bytes": 970413783,
 "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-23/20/",
  "products": {
   "best_bid_ask": {
    "sha256": "7f2e30beae05532be671bc9f91a87155dfedbcca71ebc2fd8944a184a55bd8bb"
   },
   "book": {
    "sha256": "b3a3e97731edb6140a9810ea200303d3f00d4e8f4a12b7001b5da0859dba11c5"
   },
   "last_trade_price": {
    "sha256": "8149182c75cb864f083668729539c17ac585baa362e9aab5172be3b138474e9d"
   },
   "market_resolved": {
    "sha256": "6068ad53001d9f716f9087d4d31665178822414be2d1cc4cb1cccd16f75e1ad2"
   },
   "new_market": {
    "sha256": "423885854bfaad3099ea6243b9d1c7460168b2e0a7a5b078e71b6d27c85e9b22"
   },
   "price_change": {
    "sha256": "3b0696f4dc2adcdd35d95d7f182af8e6c5bcc05fec33a32a477f24f5d97a61cc"
   },
   "tick_size_change": {
    "sha256": "85bcad9ef58208d6f87a3ea22bb71c54eda8bb58c03d7a2101a620187f70cebd"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 20,
     "rows_a": 8566204,
     "rows_b": 6637706,
     "rows_common": 6118935,
     "rows_merged": 9084955,
     "rows_only_a": 2447269,
     "rows_only_b": 518771
    },
    "book": {
     "boundary_dropped": 16,
     "rows_a": 1151626,
     "rows_b": 2436678,
     "rows_common": 748740,
     "rows_merged": 2839548,
     "rows_only_a": 402886,
     "rows_only_b": 1687938
    },
    "last_trade_price": {
     "boundary_dropped": 1,
     "rows_a": 68673,
     "rows_b": 50243,
     "rows_common": 46386,
     "rows_merged": 72529,
     "rows_only_a": 22287,
     "rows_only_b": 3857
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "rows_a": 2474,
     "rows_b": 3037,
     "rows_common": 1923,
     "rows_merged": 3588,
     "rows_only_a": 551,
     "rows_only_b": 1114
    },
    "new_market": {
     "boundary_dropped": 0,
     "rows_a": 1650,
     "rows_b": 3044,
     "rows_common": 1205,
     "rows_merged": 3489,
     "rows_only_a": 445,
     "rows_only_b": 1839
    },
    "price_change": {
     "boundary_dropped": 328,
     "rows_a": 92756010,
     "rows_b": 70944760,
     "rows_common": 65102054,
     "rows_merged": 98598388,
     "rows_only_a": 27653956,
     "rows_only_b": 5842706
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "rows_a": 5128,
     "rows_b": 4320,
     "rows_common": 3864,
     "rows_merged": 5584,
     "rows_only_a": 1264,
     "rows_only_b": 456
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 82333467,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-23/20/best_bid_ask.parquet",
     "max_sequence": 72902018976194996,
     "min_sequence": 45880421280498994,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 9084955,
     "sha256": "7f2e30beae05532be671bc9f91a87155dfedbcca71ebc2fd8944a184a55bd8bb"
    },
    "book": {
     "byte_size": 91022799,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-23/20/book.parquet",
     "max_sequence": 72902018976194691,
     "min_sequence": 45880421280498870,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2839548,
     "sha256": "b3a3e97731edb6140a9810ea200303d3f00d4e8f4a12b7001b5da0859dba11c5"
    },
    "last_trade_price": {
     "byte_size": 3709769,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-23/20/last_trade_price.parquet",
     "max_sequence": 72902018976192038,
     "min_sequence": 45880421283867233,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 72529,
     "sha256": "8149182c75cb864f083668729539c17ac585baa362e9aab5172be3b138474e9d"
    },
    "market_resolved": {
     "byte_size": 365526,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-23/20/market_resolved.parquet",
     "max_sequence": 72902018975867096,
     "min_sequence": 45880421286685321,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3588,
     "sha256": "6068ad53001d9f716f9087d4d31665178822414be2d1cc4cb1cccd16f75e1ad2"
    },
    "new_market": {
     "byte_size": 238686,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-23/20/new_market.parquet",
     "max_sequence": 72902018975055868,
     "min_sequence": 45880421280507513,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3489,
     "sha256": "423885854bfaad3099ea6243b9d1c7460168b2e0a7a5b078e71b6d27c85e9b22"
    },
    "price_change": {
     "byte_size": 801423176,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-23/20/price_change.parquet",
     "max_sequence": 72902018976195004,
     "min_sequence": 45880421280498880,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 98598388,
     "sha256": "3b0696f4dc2adcdd35d95d7f182af8e6c5bcc05fec33a32a477f24f5d97a61cc"
    },
    "tick_size_change": {
     "byte_size": 170741,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-23/20/tick_size_change.parquet",
     "max_sequence": 72902018975883530,
     "min_sequence": 45880421292125852,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 5584,
     "sha256": "85bcad9ef58208d6f87a3ea22bb71c54eda8bb58c03d7a2101a620187f70cebd"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-23T20:00:00+00:00",
   "max_sequence": 72902018976195004,
   "min_sequence": 45880421280498870,
   "row_count": 110608081,
   "sequence_note": "sequence and timestamp_received are collector-local provenance; common rows carry domain B's values",
   "witnesses": "ab"
  }
 },
 "file": "2026-08-23T20.parquet",
 "hour": "2026-08-23/20",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    79736575
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 72902018976194996,
   "min_sequence": 45880421280498994,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 9084955,
   "row_groups": [
    0,
    34
   ],
   "sha256": "fc4abb3e666ba1529cf7af1301c5904684fb5e0936da951bc7956235bc784f94"
  },
  "book": {
   "byte_range": [
    79736575,
    175914306
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 72902018976194691,
   "min_sequence": 45880421280498870,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2839548,
   "row_groups": [
    35,
    45
   ],
   "sha256": "f0a94cd86a78c0a811b222d9a89518215550e454baeeb5ae3a9c36ba834e6ebe"
  },
  "last_trade_price": {
   "byte_range": [
    175914306,
    179677386
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 72902018976192038,
   "min_sequence": 45880421283867233,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 72529,
   "row_groups": [
    46,
    46
   ],
   "sha256": "7e2f8a4ff004f0f350ebc2bc125145d4ef66aba9c2a6cd71f37dab99a1a0ea36"
  },
  "market_resolved": {
   "byte_range": [
    179677386,
    180064020
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 72902018975867096,
   "min_sequence": 45880421286685321,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3588,
   "row_groups": [
    47,
    47
   ],
   "sha256": "8a91695c8378bbb29f4a0d4341760eb8e4117692449be12206659eb878219f8e"
  },
  "new_market": {
   "byte_range": [
    180064020,
    180313642
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 72902018975055868,
   "min_sequence": 45880421280507513,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3489,
   "row_groups": [
    48,
    48
   ],
   "sha256": "a8a1d814cbe1e6d6ac662ecee77910459ae8c31b64ebd1a96dcfca795675bc50"
  },
  "price_change": {
   "byte_range": [
    180313642,
    969106662
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 72902018976195004,
   "min_sequence": 45880421280498880,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 98598388,
   "row_groups": [
    49,
    425
   ],
   "sha256": "dd5d8cd8b5aba6669773cf5d636bf9a2ff9c51c9153f81f0ce801a600cf8c28a"
  },
  "tick_size_change": {
   "byte_range": [
    969106662,
    969296123
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 72902018975883530,
   "min_sequence": 45880421292125852,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 5584,
   "row_groups": [
    426,
    426
   ],
   "sha256": "793377dcf63a2ea1a03e170fae80731b8ea06b03197034b7e6522882a5f19733"
  }
 },
 "row_count": 110608081,
 "sha256": "5480f723023c136447892a4fa94d5c41265caf4bba3541e8786fa99aeff9721e",
 "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"
 }
}