{
  "artifact": "offload_ceiling_generalization",
  "sprint": "Phase 3 / S50",
  "claim": "Whether the KV-offload ceiling is a property of the trace, tested by running the same oracle at the same token capacity over two independently sourced block streams.",
  "method": "Reuses bench/run_sprint50_oracle's LRU and unbounded-host oracles unchanged. Capacity is held fixed in TOKENS, not blocks, because the two traces page at different block sizes and comparing at equal block counts would compare two different amounts of memory and call the difference a trace effect.",
  "gpu_token_capacity": 65536,
  "traces": {
    "mooncake_timed_600": {
      "n_refs": 16495,
      "n_distinct": 13712,
      "block_tokens": 64,
      "capacity_blocks": 1024,
      "working_set_over_capacity": 13.391,
      "cold_miss_floor": 0.831282,
      "max_achievable_hit_rate": 0.168718,
      "gpu_only_hit_rate": 0.038678,
      "host_backed_hit_rate": 0.168718,
      "host_load_frac": 0.130039,
      "headroom_pp": 13.0039,
      "gpu_share_of_achievable": 0.229249
    },
    "wildchat_labelled": {
      "n_refs": 586878,
      "n_distinct": 175200,
      "block_tokens": 16,
      "capacity_blocks": 4096,
      "working_set_over_capacity": 42.773,
      "cold_miss_floor": 0.298529,
      "max_achievable_hit_rate": 0.701471,
      "gpu_only_hit_rate": 0.695739,
      "host_backed_hit_rate": 0.701471,
      "host_load_frac": 0.005732,
      "headroom_pp": 0.5732,
      "gpu_share_of_achievable": 0.991829
    },
    "wildchat_coarsened_to_64": {
      "n_refs": 149977,
      "n_distinct": 48992,
      "block_tokens": 64,
      "capacity_blocks": 1024,
      "working_set_over_capacity": 47.844,
      "cold_miss_floor": 0.326663,
      "max_achievable_hit_rate": 0.673337,
      "gpu_only_hit_rate": 0.666916,
      "host_backed_hit_rate": 0.673337,
      "host_load_frac": 0.006421,
      "headroom_pp": 0.6421,
      "gpu_share_of_achievable": 0.990464
    }
  },
  "headroom_ratio_wildchat_over_mooncake": 0.0494,
  "cold_miss_floor_ratio": 0.393,
  "gpu_share_of_achievable": {
    "mooncake_timed_600": 0.229249,
    "wildchat_labelled": 0.990464
  },
  "ceiling_is_trace_dependent": true,
  "granularity_control": {
    "wildchat_raw_block_tokens": 16,
    "wildchat_matched_block_tokens": 64,
    "headroom_pp_raw": 0.5732,
    "headroom_pp_matched": 0.6421,
    "fraction_of_gap_explained_by_granularity": 0.005298,
    "why": "Finer blocks raise a hit rate mechanically: a prefix diverging mid-block is one miss at coarse granularity and several hits at fine. Without this arm the comparison would attribute a granularity artefact to the trace."
  },
  "s50_gate_pct": 12.0,
  "oracle_ceiling_clears_s50_gate": {
    "mooncake_timed_600": true,
    "wildchat_coarsened_to_64": false
  },
  "verdict": "**The ceiling is a property of the trace, and the plan's sentence is right.** Holding capacity fixed at 65,536 tokens and changing only the block stream, the offload headroom moves from **13.004 pp** on Mooncake to **0.642 pp** on WildChat \u2014 a factor of 0.05x. The driver is visible: Mooncake's cold-miss floor is 0.8313 against WildChat's 0.3267 (0.39x), so the maximum achievable hit rate differs by construction before any policy runs. **The scale-free comparison is the more useful one.** GPU-only LRU already captures 22.9% of the achievable reuse on Mooncake and 99.0% on WildChat. That is the number an offload connector competes against, and it is NOT the same on the two traces. **Consequence for Phase 3.** Its generalization branch budgets a second model class and a second trace family on the assumption that one trace is one data point. This measurement supports that assumption rather than merely repeating it \u2014 and it establishes something the branch could not have known: the two traces disagree most about the COLD-MISS FLOOR, which no connector can move. A generalization run that reports a different headroom on a second trace has, by default, measured a different first-touch rate rather than a different policy effect, so the second trace's floor must be reported beside its headroom or the comparison is uninterpretable. **The sharpest form of it.** S50's gate is a >=12 pp offload win. On Mooncake the ORACLE ceiling is 13.004 pp, so the gate is reachable in principle. On WildChat at matched granularity the oracle ceiling is 0.642 pp -- **19x below the gate**, with an unbounded, free host tier and no transfer cost. On that trace there is nothing for an offload connector to win, because GPU-only LRU already captures 99.0% of the achievable reuse. **A $150 sprint whose result is decided by which of two real traces you point it at is not yet a result about connectors.** **And the granularity control holds.** WildChat's ids are 16-token blocks against Mooncake's 64; finer blocks raise a hit rate mechanically, so a raw comparison would attribute an artefact to the trace. Coarsening WildChat 16 -> 64 moves its headroom 0.5732 -> 0.6421 pp, against a 13.004 pp gap to Mooncake. Granularity explains 0.5% of the difference. This program has twice produced a dramatic negative from a comparison with no control, both false; this one has one. **This is $0.00 evidence for a $2,000-4,000 phase**, and it does not decide the phase: S51 does, and S51 is behind S50, which is behind a $1 probe.",
  "does_not_prove": [
    "The two traces are not the same KIND of evidence. wildchat_labelled is is_real_trace: false / derived_from_real_text: true -- its block ids are chained hashes of real text, so its reuse is a property of that derivation and not a measured KV hit rate. Two data points, one of which is derived, is still better than one, and it is not four.",
    "This is an ORACLE comparison: unbounded, free host tier, no transfer cost, no engine. It bounds what an offload connector could win on each trace and measures no connector.",
    "Neither number is a GPU-hour claim. Converting block hits to GPU-hours needs the bandwidth-bound fraction of GPU time that C11 found nobody has measured.",
    "Both traces are chat-shaped. A third family (agentic, code, tool-calling) could move the floor again, and nothing here samples one."
  ],
  "cost_usd": 0.0,
  "generated_utc": "2026-08-28T19:46:14.742858+00:00",
  "git_rev": "2b67a12",
  "git_dirty": true,
  "run_id": "d6ee96a04f624b7a",
  "host_kind": "Darwin-arm64",
  "provenance_schema": "gpu-cert-provenance/1"
}