{
  "ab_accounting": {
    "best_bid_ask": {
      "boundary_dropped": 160,
      "class": "FULL",
      "exception_markets": 926,
      "rows_a": 9803591,
      "rows_b": 9544060,
      "rows_by_domain": {
        "a": 9803591,
        "b": 9544060,
        "c": 10185324,
        "e": 10110086,
        "h": 10184692
      },
      "rows_c": 10185324,
      "rows_e": 10110086,
      "rows_h": 10184692,
      "rows_joined": 10186156,
      "rows_merged": 10185996
    },
    "book": {
      "boundary_dropped": 298,
      "class": "FULL",
      "exception_markets": 179188,
      "rows_a": 589821,
      "rows_b": 578506,
      "rows_by_domain": {
        "a": 589821,
        "b": 578506,
        "c": 254252,
        "e": 291700,
        "h": 273984
      },
      "rows_c": 254252,
      "rows_e": 291700,
      "rows_h": 273984,
      "rows_joined": 1023089,
      "rows_merged": 1022791
    },
    "last_trade_price": {
      "boundary_dropped": 1,
      "class": "FULL",
      "exception_markets": 162,
      "rows_a": 78464,
      "rows_b": 76142,
      "rows_by_domain": {
        "a": 78464,
        "b": 76142,
        "c": 83903,
        "e": 74714,
        "h": 83876
      },
      "rows_c": 83903,
      "rows_e": 74714,
      "rows_h": 83876,
      "rows_joined": 83942,
      "rows_merged": 83941
    },
    "market_resolved": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 59,
      "rows_a": 681,
      "rows_b": 761,
      "rows_by_domain": {
        "a": 681,
        "b": 761,
        "c": 724,
        "e": 709,
        "h": 724
      },
      "rows_c": 724,
      "rows_e": 709,
      "rows_h": 724,
      "rows_joined": 806,
      "rows_merged": 806
    },
    "new_market": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 0,
      "rows_a": 712,
      "rows_b": 716,
      "rows_by_domain": {
        "a": 712,
        "b": 716,
        "c": 712,
        "e": 712,
        "h": 712
      },
      "rows_c": 712,
      "rows_e": 712,
      "rows_h": 712,
      "rows_joined": 1183,
      "rows_merged": 1183
    },
    "price_change": {
      "boundary_dropped": 1582,
      "class": "FULL",
      "exception_markets": 209,
      "rows_a": 87967259,
      "rows_b": 85990106,
      "rows_by_domain": {
        "a": 87967259,
        "b": 85990106,
        "c": 92209696,
        "e": 90082208,
        "h": 92202112
      },
      "rows_c": 92209696,
      "rows_e": 90082208,
      "rows_h": 92202112,
      "rows_joined": 92229134,
      "rows_merged": 92227552
    },
    "tick_size_change": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 26,
      "rows_a": 2936,
      "rows_b": 2900,
      "rows_by_domain": {
        "a": 2936,
        "b": 2900,
        "c": 2976,
        "e": 2952,
        "h": 2976
      },
      "rows_c": 2976,
      "rows_e": 2952,
      "rows_h": 2976,
      "rows_joined": 2976,
      "rows_merged": 2976
    }
  },
  "archive_root": "union-staging",
  "boundary_guard": "cache",
  "bytes": 1135830858,
  "file": "2026-08-28T15.parquet",
  "generated_by": "tools/orderbook_ab/merge_ab.py",
  "hour": "2026-08-28/15",
  "hour_utc": "2026-08-28T15:00:00+00:00",
  "layout": "union-event-sorted-v1",
  "max_sequence": 130604389261005070,
  "min_sequence": 281478077183404,
  "products": {
    "best_bid_ask": {
      "byte_range": [
        4,
        119852452
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "best_bid",
        "best_ask",
        "spread",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 130604389235220424,
      "min_sequence": 281478077183558,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 10185996,
      "row_groups": [
        0,
        38
      ],
      "sha256": "27843070c28b0c7b25d5a0b9156f0f034ada1fc9c2feca2a15164aa524ba52d5"
    },
    "book": {
      "byte_range": [
        119852452,
        196421280
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "bids",
        "asks",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 130604389260917539,
      "min_sequence": 281478077190850,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 1022791,
      "row_groups": [
        39,
        42
      ],
      "sha256": "eb65c6b18999c9bf4a36347e57d29eb407f3943b5cbb5b0e37597a7b074e2df4"
    },
    "last_trade_price": {
      "byte_range": [
        196421280,
        201107982
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "price",
        "size",
        "side",
        "fee_rate_bps",
        "transaction_hash",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 130604389240365816,
      "min_sequence": 281478077183618,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 83941,
      "row_groups": [
        43,
        43
      ],
      "sha256": "39ece3635e745dd4e4da2cf6dfaf0dfa42e083146c69580d228dd7913064e127"
    },
    "market_resolved": {
      "byte_range": [
        201107982,
        201227429
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "id",
        "assets_ids",
        "winning_asset_id",
        "winning_outcome",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 130604389197216790,
      "min_sequence": 281478077557970,
      "order_by": [
        "market",
        "id",
        "timestamp",
        "sequence"
      ],
      "row_count": 806,
      "row_groups": [
        44,
        44
      ],
      "sha256": "a9a5b152bcd608336f3e6b20334b50d006bad6bcd62a660f750d53199b851dd6"
    },
    "new_market": {
      "byte_range": [
        201227429,
        201340498
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "id",
        "assets_ids",
        "outcomes",
        "question",
        "slug",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 130604389257871771,
      "min_sequence": 281478077612832,
      "order_by": [
        "market",
        "id",
        "timestamp",
        "sequence"
      ],
      "row_count": 1183,
      "row_groups": [
        45,
        45
      ],
      "sha256": "779a71233ae781ccc09bab31adbee890af34e95479b67e5d6b5502bda5ad6fb8"
    },
    "price_change": {
      "byte_range": [
        201340498,
        1134542688
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "price",
        "size",
        "side",
        "best_bid",
        "best_ask",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 130604389261005070,
      "min_sequence": 281478077183404,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 92227552,
      "row_groups": [
        46,
        397
      ],
      "sha256": "b2288271b953c0fbd5172e3bdf02fd326da6523c9d6bc0da41fdf65bb14830ab"
    },
    "tick_size_change": {
      "byte_range": [
        1134542688,
        1134652844
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "old_tick_size",
        "new_tick_size",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 50946971339340415,
      "min_sequence": 281478080375198,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 2976,
      "row_groups": [
        398,
        398
      ],
      "sha256": "1f7b8f6aec85107f936f859d5b65763a4a208f360499de13df7d8cd5d4126024"
    }
  },
  "row_count": 103525245,
  "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": "71a72930ce2d9c6c665d9dbd4a6468b07f36103d80f85c653fdcf3096a30f5ef",
  "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."
}
