{
 "bytes": 841373182,
 "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/03/",
  "products": {
   "best_bid_ask": {
    "sha256": "c8b6941f96abf59507a7476e3aa0cb1e967e4ded3fd298bb557bbc960d75f3e7"
   },
   "book": {
    "sha256": "85276755eeb6e988e3c44a2254c161ed5986bd79d7813d647b3835ba2aa4fc1a"
   },
   "last_trade_price": {
    "sha256": "13473711551067b6567a4d63458d5fcdd8678ee2f8e2a8c3060e9e7c7eccbf2a"
   },
   "market_resolved": {
    "sha256": "16d7371dd34424f7b6b964b11e4b6ca7564ca08dfdeed8ae48da5e38449aa5c2"
   },
   "new_market": {
    "sha256": "1547f862601a18864d126c831cbc9c86c92415653ab26fa85330a1501df8299a"
   },
   "price_change": {
    "sha256": "491d598ac2b1f8c4086ccef98153dd5bac0350ba37c9413269e7c2cb9ca1d1e4"
   },
   "tick_size_change": {
    "sha256": "a76f80be8c0c6770564943406841b689e86f0ac1b427785a86c2d92ee99cff7a"
   }
  },
  "source_manifest": {
   "ab_accounting": {
    "best_bid_ask": {
     "boundary_dropped": 114,
     "class": "FULL",
     "exception_markets": 22741,
     "rows_a": 9145201,
     "rows_b": 8372143,
     "rows_by_domain": {
      "a": 9145201,
      "b": 8372143,
      "c": 9147958,
      "h": 6351268
     },
     "rows_c": 9147958,
     "rows_h": 6351268,
     "rows_joined": 9148558,
     "rows_merged": 9148444
    },
    "book": {
     "boundary_dropped": 92,
     "class": "FULL",
     "exception_markets": 183624,
     "rows_a": 141765,
     "rows_b": 864658,
     "rows_by_domain": {
      "a": 141765,
      "b": 864658,
      "c": 141894,
      "h": 107104
     },
     "rows_c": 141894,
     "rows_h": 107104,
     "rows_joined": 905323,
     "rows_merged": 905231
    },
    "last_trade_price": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 1037,
     "rows_a": 63634,
     "rows_b": 56685,
     "rows_by_domain": {
      "a": 63634,
      "b": 56685,
      "c": 64023,
      "h": 42493
     },
     "rows_c": 64023,
     "rows_h": 42493,
     "rows_joined": 64124,
     "rows_merged": 64124
    },
    "market_resolved": {
     "boundary_dropped": 0,
     "class": "PARTIAL",
     "exception_markets": 747,
     "rows_a": 747,
     "rows_b": 788,
     "rows_by_domain": {
      "a": 747,
      "b": 788,
      "c": 747,
      "h": 0
     },
     "rows_c": 747,
     "rows_h": 0,
     "rows_joined": 861,
     "rows_merged": 861
    },
    "new_market": {
     "boundary_dropped": 0,
     "class": "PARTIAL",
     "exception_markets": 634,
     "rows_a": 634,
     "rows_b": 690,
     "rows_by_domain": {
      "a": 634,
      "b": 690,
      "c": 634,
      "h": 0
     },
     "rows_c": 634,
     "rows_h": 0,
     "rows_joined": 949,
     "rows_merged": 949
    },
    "price_change": {
     "boundary_dropped": 1156,
     "class": "FULL",
     "exception_markets": 38913,
     "rows_a": 88193772,
     "rows_b": 80161013,
     "rows_by_domain": {
      "a": 88193772,
      "b": 80161013,
      "c": 88231336,
      "h": 59219066
     },
     "rows_c": 88231336,
     "rows_h": 59219066,
     "rows_joined": 88263152,
     "rows_merged": 88261996
    },
    "tick_size_change": {
     "boundary_dropped": 0,
     "class": "FULL",
     "exception_markets": 299,
     "rows_a": 2622,
     "rows_b": 2374,
     "rows_by_domain": {
      "a": 2622,
      "b": 2374,
      "c": 2622,
      "h": 1578
     },
     "rows_c": 2622,
     "rows_h": 1578,
     "rows_joined": 2622,
     "rows_merged": 2622
    }
   },
   "archive_root": "merged-live",
   "boundary_guard": "cache",
   "files": {
    "best_bid_ask": {
     "byte_size": 150648138,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "best_bid",
      "best_ask",
      "spread"
     ],
     "file": "2026-08-27/03/best_bid_ask.parquet",
     "max_sequence": 118782440234964750,
     "min_sequence": 5629500570108768,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 9148444,
     "sha256": "c8b6941f96abf59507a7476e3aa0cb1e967e4ded3fd298bb557bbc960d75f3e7"
    },
    "book": {
     "byte_size": 70186979,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "bids",
      "asks"
     ],
     "file": "2026-08-27/03/book.parquet",
     "max_sequence": 118782440243426374,
     "min_sequence": 5629500570118298,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 905231,
     "sha256": "85276755eeb6e988e3c44a2254c161ed5986bd79d7813d647b3835ba2aa4fc1a"
    },
    "last_trade_price": {
     "byte_size": 3997572,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "fee_rate_bps",
      "transaction_hash"
     ],
     "file": "2026-08-27/03/last_trade_price.parquet",
     "max_sequence": 118782440233837958,
     "min_sequence": 5629500570123373,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 64124,
     "sha256": "13473711551067b6567a4d63458d5fcdd8678ee2f8e2a8c3060e9e7c7eccbf2a"
    },
    "market_resolved": {
     "byte_size": 130997,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "winning_asset_id",
      "winning_outcome"
     ],
     "file": "2026-08-27/03/market_resolved.parquet",
     "max_sequence": 118782440175095822,
     "min_sequence": 5629500571746320,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 861,
     "sha256": "16d7371dd34424f7b6b964b11e4b6ca7564ca08dfdeed8ae48da5e38449aa5c2"
    },
    "new_market": {
     "byte_size": 106781,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "id",
      "assets_ids",
      "outcomes",
      "question",
      "slug"
     ],
     "file": "2026-08-27/03/new_market.parquet",
     "max_sequence": 118782440236498931,
     "min_sequence": 5629500570479085,
     "order_by": [
      "market",
      "id",
      "timestamp",
      "sequence"
     ],
     "row_count": 949,
     "sha256": "1547f862601a18864d126c831cbc9c86c92415653ab26fa85330a1501df8299a"
    },
    "price_change": {
     "byte_size": 1252116605,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "price",
      "size",
      "side",
      "best_bid",
      "best_ask"
     ],
     "file": "2026-08-27/03/price_change.parquet",
     "max_sequence": 118782440245459061,
     "min_sequence": 5629500570108682,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 88261996,
     "sha256": "491d598ac2b1f8c4086ccef98153dd5bac0350ba37c9413269e7c2cb9ca1d1e4"
    },
    "tick_size_change": {
     "byte_size": 106158,
     "columns": [
      "timestamp_received",
      "sequence",
      "timestamp",
      "market",
      "asset_id",
      "old_tick_size",
      "new_tick_size"
     ],
     "file": "2026-08-27/03/tick_size_change.parquet",
     "max_sequence": 49258121147113724,
     "min_sequence": 5629500572822671,
     "order_by": [
      "market",
      "asset_id",
      "timestamp",
      "sequence"
     ],
     "row_count": 2622,
     "sha256": "a76f80be8c0c6770564943406841b689e86f0ac1b427785a86c2d92ee99cff7a"
    }
   },
   "generated_by": "tools/orderbook_ab/merge_ab.py",
   "hour_utc": "2026-08-27T03:00:00+00:00",
   "max_sequence": 118782440245459061,
   "min_sequence": 5629500570108682,
   "row_count": 98384227,
   "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-27T03.parquet",
 "hour": "2026-08-27/03",
 "layout": "union-event-sorted-v1",
 "products": {
  "best_bid_ask": {
   "byte_range": [
    4,
    80368696
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "spread"
   ],
   "max_sequence": 118782440234964750,
   "min_sequence": 5629500570108768,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 9148444,
   "row_groups": [
    0,
    34
   ],
   "sha256": "f06374817cf11ab26bf0729ad571a5e3d44a2c1664d27b3c3fb680b266564958"
  },
  "book": {
   "byte_range": [
    80368696,
    145230042
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "bids",
    "asks"
   ],
   "max_sequence": 118782440243426374,
   "min_sequence": 5629500570118298,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 905231,
   "row_groups": [
    35,
    38
   ],
   "sha256": "b0fdeaff5ddb7a856ef193a86c420bd8c832dfb63c67189af2408420c4932225"
  },
  "last_trade_price": {
   "byte_range": [
    145230042,
    148571560
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "price",
    "size",
    "side",
    "fee_rate_bps",
    "transaction_hash"
   ],
   "max_sequence": 118782440233837958,
   "min_sequence": 5629500570123373,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 64124,
   "row_groups": [
    39,
    39
   ],
   "sha256": "42c7774cdd442048d7a8e151dd5f1d924ae1d036f8d1a7fe66559ae0568a0c6c"
  },
  "market_resolved": {
   "byte_range": [
    148571560,
    148690593
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "winning_asset_id",
    "winning_outcome"
   ],
   "max_sequence": 118782440175095822,
   "min_sequence": 5629500571746320,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 861,
   "row_groups": [
    40,
    40
   ],
   "sha256": "3b0e42c938b362866cff94db9f6920714f06cf2b71695e8ee25289da1ae690e9"
  },
  "new_market": {
   "byte_range": [
    148690593,
    148785742
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "id",
    "assets_ids",
    "outcomes",
    "question",
    "slug"
   ],
   "max_sequence": 118782440236498931,
   "min_sequence": 5629500570479085,
   "order_by": [
    "market",
    "id",
    "timestamp",
    "sequence"
   ],
   "row_count": 949,
   "row_groups": [
    41,
    41
   ],
   "sha256": "50bff6602d4f786e7d2d3bb55da1913f55c8d674eb8490a511221bbe070d1477"
  },
  "price_change": {
   "byte_range": [
    148785742,
    840287432
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "best_bid",
    "best_ask",
    "price",
    "size",
    "side"
   ],
   "max_sequence": 118782440245459061,
   "min_sequence": 5629500570108682,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 88261996,
   "row_groups": [
    42,
    378
   ],
   "sha256": "eaffe63b18e92b70a027566f4e441ea3171057369f6230197be38349d14dd6b7"
  },
  "tick_size_change": {
   "byte_range": [
    840287432,
    840378604
   ],
   "columns": [
    "timestamp_received",
    "sequence",
    "timestamp",
    "market",
    "asset_id",
    "old_tick_size",
    "new_tick_size"
   ],
   "max_sequence": 49258121147113724,
   "min_sequence": 5629500572822671,
   "order_by": [
    "market",
    "asset_id",
    "timestamp",
    "sequence"
   ],
   "row_count": 2622,
   "row_groups": [
    379,
    379
   ],
   "sha256": "9f39b2da03b534e8db8a1522e40f7c16f8bc53f76534cf4067a42ec18d162067"
  }
 },
 "row_count": 98384227,
 "sha256": "557fdc853e649c804aa0790635e534c2e72fdb98cbff6c50adfee1e02a8a5c77",
 "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"
 }
}