{
 "bytes": 1108206694,
 "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/01/",
  "products": {
   "best_bid_ask": {
    "sha256": "41e40fd7d872b732beef1c53577a3c7808f3c1d7931849a0d799ad5b9776e6d9"
   },
   "book": {
    "sha256": "533a3e5fc8ddc97b6ae6b10519ba69be5f03e809190db976e2dd97b79bfbfba9"
   },
   "last_trade_price": {
    "sha256": "f3d03788474768b5c1fd46b61ffe1751a46889aa2012e8938ec6efffc6540a1d"
   },
   "market_resolved": {
    "sha256": "04a688255298d35c72ab737052d9b677a31860b7323a7d3173ad49601b755155"
   },
   "new_market": {
    "sha256": "fbb21f63687d090e1043d572384d412b213366af86969342074d9e63d5bc54c1"
   },
   "price_change": {
    "sha256": "752fdda0c33e11795b34ba5649dd0920e5cfd073c0f6487b35d47407c3b08366"
   },
   "tick_size_change": {
    "sha256": "f17497472ddaee79d0a0b7eae79db633aed1b14853a688b420bd5eb4d5f63747"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 20,
     "rows_a": 9665018,
     "rows_b": 5096159,
     "rows_common": 5094803,
     "rows_merged": 9666354,
     "rows_only_a": 4570215,
     "rows_only_b": 1356
    },
    "book": {
     "boundary_dropped": 9272,
     "rows_a": 463319,
     "rows_b": 2853613,
     "rows_common": 226265,
     "rows_merged": 3081395,
     "rows_only_a": 237054,
     "rows_only_b": 2627348
    },
    "last_trade_price": {
     "boundary_dropped": 0,
     "rows_a": 80937,
     "rows_b": 39983,
     "rows_common": 39895,
     "rows_merged": 81025,
     "rows_only_a": 41042,
     "rows_only_b": 88
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "rows_a": 981,
     "rows_b": 1675,
     "rows_common": 359,
     "rows_merged": 2297,
     "rows_only_a": 622,
     "rows_only_b": 1316
    },
    "new_market": {
     "boundary_dropped": 6,
     "rows_a": 683,
     "rows_b": 3935,
     "rows_common": 321,
     "rows_merged": 4291,
     "rows_only_a": 362,
     "rows_only_b": 3614
    },
    "price_change": {
     "boundary_dropped": 210,
     "rows_a": 110528280,
     "rows_b": 58538298,
     "rows_common": 58507894,
     "rows_merged": 110558474,
     "rows_only_a": 52020386,
     "rows_only_b": 30404
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "rows_a": 4404,
     "rows_b": 2184,
     "rows_common": 2180,
     "rows_merged": 4408,
     "rows_only_a": 2224,
     "rows_only_b": 4
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 92615389,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-20/01/best_bid_ask.parquet",
     "max_sequence": 20829150832656155,
     "min_sequence": 17732923534834869,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 9666354,
     "sha256": "41e40fd7d872b732beef1c53577a3c7808f3c1d7931849a0d799ad5b9776e6d9"
    },
    "book": {
     "byte_size": 107195224,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-20/01/book.parquet",
     "max_sequence": 20829150832652945,
     "min_sequence": 17732923534835767,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 3081395,
     "sha256": "533a3e5fc8ddc97b6ae6b10519ba69be5f03e809190db976e2dd97b79bfbfba9"
    },
    "last_trade_price": {
     "byte_size": 4105609,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-20/01/last_trade_price.parquet",
     "max_sequence": 20829150832655000,
     "min_sequence": 17732923534838616,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 81025,
     "sha256": "f3d03788474768b5c1fd46b61ffe1751a46889aa2012e8938ec6efffc6540a1d"
    },
    "market_resolved": {
     "byte_size": 173465,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-20/01/market_resolved.parquet",
     "max_sequence": 20829150832655737,
     "min_sequence": 17732923536367769,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2297,
     "sha256": "04a688255298d35c72ab737052d9b677a31860b7323a7d3173ad49601b755155"
    },
    "new_market": {
     "byte_size": 178474,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-20/01/new_market.parquet",
     "max_sequence": 20829150831215984,
     "min_sequence": 17732923535243802,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 4291,
     "sha256": "fbb21f63687d090e1043d572384d412b213366af86969342074d9e63d5bc54c1"
    },
    "price_change": {
     "byte_size": 919243644,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-20/01/price_change.parquet",
     "max_sequence": 20829150832656159,
     "min_sequence": 17732923534834823,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 110558474,
     "sha256": "752fdda0c33e11795b34ba5649dd0920e5cfd073c0f6487b35d47407c3b08366"
    },
    "tick_size_change": {
     "byte_size": 134843,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-20/01/tick_size_change.parquet",
     "max_sequence": 20829150828748609,
     "min_sequence": 17732923534942316,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 4408,
     "sha256": "f17497472ddaee79d0a0b7eae79db633aed1b14853a688b420bd5eb4d5f63747"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-20T01:00:00+00:00",
   "max_sequence": 20829150832656159,
   "min_sequence": 17732923534834823,
   "row_count": 123398244,
   "sequence_note": "sequence and timestamp_received are collector-local provenance; common rows carry domain B's values",
   "witnesses": "ab"
  }
 },
 "file": "2026-08-20T01.parquet",
 "hour": "2026-08-20/01",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    91269288
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 20829150832656155,
   "min_sequence": 17732923534834869,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 9666354,
   "row_groups": [
    0,
    36
   ],
   "sha256": "11ca78e9e2d958c768983391737f7b1240de16cbe6d70febf9d86a934319e122"
  },
  "book": {
   "byte_range": [
    91269288,
    203721694
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 20829150832652945,
   "min_sequence": 17732923534835767,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 3081395,
   "row_groups": [
    37,
    48
   ],
   "sha256": "e497c72420cb823ecc5b385752d93a3a0189a85f1fbb2dc5fdcabf7bce3b6af9"
  },
  "last_trade_price": {
   "byte_range": [
    203721694,
    207889496
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 20829150832655000,
   "min_sequence": 17732923534838616,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 81025,
   "row_groups": [
    49,
    49
   ],
   "sha256": "640743ca8d0b7daf78c88b0114cda643a737fdd839f633c22769f93f56d64b51"
  },
  "market_resolved": {
   "byte_range": [
    207889496,
    208073525
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 20829150832655737,
   "min_sequence": 17732923536367769,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2297,
   "row_groups": [
    50,
    50
   ],
   "sha256": "6df8f213bde40fcc0a7e7696a4788561a5b18b27dfa60f2cc39a92a8c534993c"
  },
  "new_market": {
   "byte_range": [
    208073525,
    208259006
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 20829150831215984,
   "min_sequence": 17732923535243802,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 4291,
   "row_groups": [
    51,
    51
   ],
   "sha256": "e521e132fcb669d64d5cb0628a80c26a2538c3f1e68ff9dad7abc82ae8a8865e"
  },
  "price_change": {
   "byte_range": [
    208259006,
    1106811930
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 20829150832656159,
   "min_sequence": 17732923534834823,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 110558474,
   "row_groups": [
    52,
    473
   ],
   "sha256": "be5d75d1f1fcbf86c3b7acfb85c8e6e7b1c9134519b53d6fab4f06b4b87f72ab"
  },
  "tick_size_change": {
   "byte_range": [
    1106811930,
    1106963417
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 20829150828748609,
   "min_sequence": 17732923534942316,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 4408,
   "row_groups": [
    474,
    474
   ],
   "sha256": "b05131ec3e1150ac9e2af09a5cf348d793985198daaf4fe7e8fd08c2d7125a4b"
  }
 },
 "row_count": 123398244,
 "sha256": "727e6ff9312a43f4761286b84e44f2422f755f369920dedd553dedf3008d37de",
 "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"
 }
}