{
  "ab_accounting": {
    "best_bid_ask": {
      "boundary_dropped": 127,
      "class": "FULL",
      "exception_markets": 1903,
      "rows_a": 8927631,
      "rows_b": 7807142,
      "rows_by_domain": {
        "a": 8927631,
        "b": 7807142,
        "c": 8937672,
        "e": 8729018,
        "h": 8937226
      },
      "rows_c": 8937672,
      "rows_e": 8729018,
      "rows_h": 8937226,
      "rows_joined": 8938211,
      "rows_merged": 8938084
    },
    "book": {
      "boundary_dropped": 2206,
      "class": "FULL",
      "exception_markets": 181751,
      "rows_a": 169839,
      "rows_b": 1253649,
      "rows_by_domain": {
        "a": 169839,
        "b": 1253649,
        "c": 186073,
        "e": 192634,
        "h": 198757
      },
      "rows_c": 186073,
      "rows_e": 192634,
      "rows_h": 198757,
      "rows_joined": 1391869,
      "rows_merged": 1389663
    },
    "last_trade_price": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 185,
      "rows_a": 65569,
      "rows_b": 57366,
      "rows_by_domain": {
        "a": 65569,
        "b": 57366,
        "c": 68526,
        "e": 47480,
        "h": 68497
      },
      "rows_c": 68526,
      "rows_e": 47480,
      "rows_h": 68497,
      "rows_joined": 68625,
      "rows_merged": 68625
    },
    "market_resolved": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 81,
      "rows_a": 1130,
      "rows_b": 1164,
      "rows_by_domain": {
        "a": 1130,
        "b": 1164,
        "c": 1130,
        "e": 1057,
        "h": 1130
      },
      "rows_c": 1130,
      "rows_e": 1057,
      "rows_h": 1130,
      "rows_joined": 1356,
      "rows_merged": 1356
    },
    "new_market": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 0,
      "rows_a": 328,
      "rows_b": 328,
      "rows_by_domain": {
        "a": 328,
        "b": 328,
        "c": 328,
        "e": 328,
        "h": 328
      },
      "rows_c": 328,
      "rows_e": 328,
      "rows_h": 328,
      "rows_joined": 501,
      "rows_merged": 501
    },
    "price_change": {
      "boundary_dropped": 916,
      "class": "FULL",
      "exception_markets": 518,
      "rows_a": 89022900,
      "rows_b": 77599267,
      "rows_by_domain": {
        "a": 89022900,
        "b": 77599267,
        "c": 89568736,
        "e": 85108710,
        "h": 89562306
      },
      "rows_c": 89568736,
      "rows_e": 85108710,
      "rows_h": 89562306,
      "rows_joined": 89584224,
      "rows_merged": 89583308
    },
    "tick_size_change": {
      "boundary_dropped": 0,
      "class": "FULL",
      "exception_markets": 156,
      "rows_a": 3044,
      "rows_b": 2560,
      "rows_by_domain": {
        "a": 3044,
        "b": 2560,
        "c": 3044,
        "e": 2888,
        "h": 3044
      },
      "rows_c": 3044,
      "rows_e": 2888,
      "rows_h": 3044,
      "rows_joined": 3044,
      "rows_merged": 3044
    }
  },
  "archive_root": "union-staging",
  "boundary_guard": "cache",
  "bytes": 1096841653,
  "file": "2026-08-28T02.parquet",
  "generated_by": "tools/orderbook_ab/merge_ab.py",
  "hour": "2026-08-28/02",
  "hour_utc": "2026-08-28T02:00:00+00:00",
  "layout": "union-event-sorted-v1",
  "max_sequence": 129759964294494079,
  "min_sequence": 281476913198555,
  "products": {
    "best_bid_ask": {
      "byte_range": [
        4,
        105059428
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "best_bid",
        "best_ask",
        "spread",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759964285303053,
      "min_sequence": 281476913198603,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 8938084,
      "row_groups": [
        0,
        34
      ],
      "sha256": "9263c3e058e5ff5e46b20c2fe72765a3637085adf751a4190c148083b9a6e3a6"
    },
    "book": {
      "byte_range": [
        105059428,
        186315774
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "bids",
        "asks",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759964292398440,
      "min_sequence": 281476913199180,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 1389663,
      "row_groups": [
        35,
        40
      ],
      "sha256": "b732f9f57a6b624e3c177186ae957328d0244f5346ae4134a28bb7c5a5dc8f82"
    },
    "last_trade_price": {
      "byte_range": [
        186315774,
        190144308
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "price",
        "size",
        "side",
        "fee_rate_bps",
        "transaction_hash",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759964279383920,
      "min_sequence": 281476913200371,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 68625,
      "row_groups": [
        41,
        41
      ],
      "sha256": "552b136071198f81dba252b19f3982ba9a749cf93dac9d0b812094d504de7854"
    },
    "market_resolved": {
      "byte_range": [
        190144308,
        190329679
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "id",
        "assets_ids",
        "winning_asset_id",
        "winning_outcome",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759964266622230,
      "min_sequence": 281476915152659,
      "order_by": [
        "market",
        "id",
        "timestamp",
        "sequence"
      ],
      "row_count": 1356,
      "row_groups": [
        42,
        42
      ],
      "sha256": "366b3bc7a539a12f8c1152cf8bee7683570d3dd8ab2706d4e8b43ccfb510693b"
    },
    "new_market": {
      "byte_range": [
        190329679,
        190382046
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "id",
        "assets_ids",
        "outcomes",
        "question",
        "slug",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759964292764381,
      "min_sequence": 281476913598400,
      "order_by": [
        "market",
        "id",
        "timestamp",
        "sequence"
      ],
      "row_count": 501,
      "row_groups": [
        43,
        43
      ],
      "sha256": "8437814b90bcce5018c5c2b69255aa0e5bed6abba964bbe9a74ed157a82b0208"
    },
    "price_change": {
      "byte_range": [
        190382046,
        1095584957
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "price",
        "size",
        "side",
        "best_bid",
        "best_ask",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 129759964294494079,
      "min_sequence": 281476913198555,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 89583308,
      "row_groups": [
        44,
        385
      ],
      "sha256": "4a916f1828e01bdf9f9d8c34c9e9be909640f15f321d5125db0c099efee8ce41"
    },
    "tick_size_change": {
      "byte_range": [
        1095584957,
        1095698269
      ],
      "columns": [
        "timestamp_received",
        "sequence",
        "timestamp",
        "market",
        "asset_id",
        "old_tick_size",
        "new_tick_size",
        "witness_set",
        "arrival_skew",
        "source_witness"
      ],
      "max_sequence": 49821072470319239,
      "min_sequence": 281476913382486,
      "order_by": [
        "market",
        "asset_id",
        "timestamp",
        "sequence"
      ],
      "row_count": 3044,
      "row_groups": [
        386,
        386
      ],
      "sha256": "e872a473ea5f6850362fe1e10662b0f1c20e61abeca6b11eaef3e6344d80aa63"
    }
  },
  "row_count": 99984581,
  "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": "ed02fbf1920f546311935ce8851de3001e753834ca35c0c30d61509ac4c242b1",
  "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."
}
