{
  "ab_accounting": {
    "best_bid_ask": {
      "boundary_dropped": 74,
      "class": "FULL",
      "exception_markets": 145,
      "rows_a": 8525714,
      "rows_b": 8524226,
      "rows_by_domain": {
        "a": 8525714,
        "b": 8524226,
        "c": 8530558,
        "e": 8511017,
        "h": 8530075
      },
      "rows_c": 8530558,
      "rows_e": 8511017,
      "rows_h": 8530075,
      "rows_joined": 8531034,
      "rows_merged": 8530960
    },
    "book": {
      "boundary_dropped": 2,
      "class": "FULL",
      "exception_markets": 16559,
      "rows_a": 147404,
      "rows_b": 147217,
      "rows_by_domain": {
        "a": 147404,
        "b": 147217,
        "c": 142560,
        "e": 147822,
        "h": 142776
      },
      "rows_c": 142560,
      "rows_e": 147822,
      "rows_h": 142776,
      "rows_joined": 179870,
      "rows_merged": 179868
    },
    "last_trade_price": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 1,
      "rows_a": 66696,
      "rows_b": 66302,
      "rows_by_domain": {
        "a": 66696,
        "b": 66302,
        "c": 67552,
        "e": 64234,
        "h": 67531
      },
      "rows_c": 67552,
      "rows_e": 64234,
      "rows_h": 67531,
      "rows_joined": 67594,
      "rows_merged": 67594
    },
    "market_resolved": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 2,
      "rows_a": 669,
      "rows_b": 669,
      "rows_by_domain": {
        "a": 669,
        "b": 669,
        "c": 669,
        "e": 667,
        "h": 669
      },
      "rows_c": 669,
      "rows_e": 667,
      "rows_h": 669,
      "rows_joined": 739,
      "rows_merged": 739
    },
    "new_market": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 0,
      "rows_a": 824,
      "rows_b": 824,
      "rows_by_domain": {
        "a": 824,
        "b": 824,
        "c": 824,
        "e": 824,
        "h": 824
      },
      "rows_c": 824,
      "rows_e": 824,
      "rows_h": 824,
      "rows_joined": 1268,
      "rows_merged": 1268
    },
    "price_change": {
      "boundary_dropped": 850,
      "class": "FULL",
      "exception_markets": 53,
      "rows_a": 80186174,
      "rows_b": 80145032,
      "rows_by_domain": {
        "a": 80186174,
        "b": 80145032,
        "c": 80283418,
        "e": 79913932,
        "h": 80281026
      },
      "rows_c": 80283418,
      "rows_e": 79913932,
      "rows_h": 80281026,
      "rows_joined": 80287362,
      "rows_merged": 80286512
    },
    "tick_size_change": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 0,
      "rows_a": 3044,
      "rows_b": 3044,
      "rows_by_domain": {
        "a": 3044,
        "b": 3044,
        "c": 3044,
        "e": 3044,
        "h": 3044
      },
      "rows_c": 3044,
      "rows_e": 3044,
      "rows_h": 3044,
      "rows_joined": 3044,
      "rows_merged": 3044
    }
  },
  "archive_root": "union-staging",
  "boundary_guard": "cache",
  "bytes": 928871290,
  "file": "2026-08-28T12.parquet",
  "generated_by": "tools/orderbook_ab/merge_ab.py",
  "hour": "2026-08-28/12",
  "hour_utc": "2026-08-28T12:00:00+00:00",
  "layout": "union-event-sorted-v1",
  "max_sequence": 129759965178799374,
  "min_sequence": 281477794456562,
  "products": {
    "best_bid_ask": {
      "byte_range": [
        4,
        102056977
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "best_bid",
        "best_ask",
        "spread",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759965157136994,
      "min_sequence": 281477794456628,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 8530960,
      "row_groups": [
        0,
        32
      ],
      "sha256": "78016c388ab1b9c61d7a63d58717f759dcaa4bc5457ba4c37d9bc3f382c6654b"
    },
    "book": {
      "byte_range": [
        102056977,
        119898530
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "bids",
        "asks",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759965178799374,
      "min_sequence": 281477794456788,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 179868,
      "row_groups": [
        33,
        33
      ],
      "sha256": "2e48a0a2007979836c2591aa615cc39e2bc7911aa86716c538cad6e85701d940"
    },
    "last_trade_price": {
      "byte_range": [
        119898530,
        123702389
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "price",
        "size",
        "side",
        "fee_rate_bps",
        "transaction_hash",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759965124369072,
      "min_sequence": 281477794458204,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 67594,
      "row_groups": [
        34,
        34
      ],
      "sha256": "1c21298f54b39f2524f649f4e678a36d2f7059b4678141c157082a144cf68c32"
    },
    "market_resolved": {
      "byte_range": [
        123702389,
        123810838
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "id",
        "assets_ids",
        "winning_asset_id",
        "winning_outcome",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 66146619856439874,
      "min_sequence": 281477794827369,
      "order_by": [
        "market",
        "id",
        "timestamp",
        "sequence"
      ],
      "row_count": 739,
      "row_groups": [
        35,
        35
      ],
      "sha256": "856edd8511eb3e6db7876147bcda1fad4c1fa04b57d3aafa25c24654f9474d5c"
    },
    "new_market": {
      "byte_range": [
        123810838,
        123937219
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "id",
        "assets_ids",
        "outcomes",
        "question",
        "slug",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759965178288668,
      "min_sequence": 281477794773284,
      "order_by": [
        "market",
        "id",
        "timestamp",
        "sequence"
      ],
      "row_count": 1268,
      "row_groups": [
        36,
        36
      ],
      "sha256": "6c0648c9f0a09095738e4b683730788ad3e6150eb248f5ccb7b5bbe885e58711"
    },
    "price_change": {
      "byte_range": [
        123937219,
        927741329
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "price",
        "size",
        "side",
        "best_bid",
        "best_ask",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759965157136996,
      "min_sequence": 281477794456562,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 80286512,
      "row_groups": [
        37,
        343
      ],
      "sha256": "7a0036f770823c16c60b9d5813acdc551c1349fb02442d1a38a64b8d8692a775"
    },
    "tick_size_change": {
      "byte_range": [
        927741329,
        927852326
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "old_tick_size",
        "new_tick_size",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 281477882303395,
      "min_sequence": 281477796175700,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 3044,
      "row_groups": [
        344,
        344
      ],
      "sha256": "49be29a47062d57f18cfc0ea6c665c8de220e131aa736ae7d5b9fe63095f6f7e"
    }
  },
  "row_count": 89069985,
  "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 e (active: a, b, c, h, e)",
  "sha256": "c63bb06c27625b2795a4c88019bab14585f82a9910b345493aff73fa5854f458",
  "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"
  },
  "witnesses": "abche",
  "served_verbatim": true,
  "served_note": "This hour is the merger's union file, published byte for byte. Hours before the era cutover are rebuilt here from the seven product files and carry one column fewer."
}
