{
  "benchmark": "streaming_vs_reqwest",
  "benchmark_version": "foundation-1",
  "environment": {
    "os": "macos",
    "arch": "aarch64",
    "cpu_count": 16,
    "memory": "not_collected",
    "rustc": "rustc 1.95.0 (59807616e 2026-04-14)",
    "crate_versions": {
      "reqwest": "0.12",
      "specters": "4.1.0"
    }
  },
  "git": {
    "commit_sha": "068846c5ed12116c712ff9773c095faad5bfaa6e",
    "dirty_state_classification": "target/validation/state-isolation.json if present; benchmark rows mark dirty evidence ineligible until release gate",
    "release_evidence_eligible": false
  },
  "fixture_config": {
    "fixtures": [
      {
        "protocol": "h1",
        "address": "127.0.0.1:3201",
        "health": "healthy",
        "origin_classification": "localhost-threshold"
      },
      {
        "protocol": "h2",
        "address": "127.0.0.1:3202",
        "health": "healthy",
        "origin_classification": "localhost-threshold"
      },
      {
        "protocol": "h3",
        "address": "127.0.0.1:3203/udp",
        "health": "healthy",
        "origin_classification": "localhost-threshold"
      },
      {
        "protocol": "rfc8441",
        "address": "127.0.0.1:3204",
        "health": "healthy",
        "origin_classification": "localhost-threshold"
      }
    ],
    "deterministic_payload_schedule": [
      0,
      1,
      1,
      1,
      1
    ],
    "pacing_mode": "monotonic_deadline_spin_wait",
    "monotonic_clock_source": "std::time::Instant",
    "inter_chunk_target_deadlines_ms": [
      1,
      2,
      3,
      4
    ],
    "target_inter_chunk_pacing_ms": 1,
    "pacing_implementation": "spin_wait_until(Instant::now() < anchor + i * delay) per H1/H2/H3 fixture chunk emission and request-body producer poll pacing; request producer wakes/yields until PACING_SPIN_LEAD_IN then spin-waits, so no tokio::time::sleep drives inter-chunk pacing"
  },
  "workload": {
    "request_count": 8,
    "concurrency_levels": [
      1,
      8
    ],
    "chunk_size": 16384,
    "chunk_count": 5,
    "payload_schedule_ms": [
      0,
      1,
      1,
      1,
      1
    ],
    "inter_chunk_target_deadlines_ms": [
      1,
      2,
      3,
      4
    ],
    "pacing_mode": "monotonic_deadline_spin_wait",
    "monotonic_clock_source": "std::time::Instant",
    "tokio_runtime": "tokio multi_thread worker_threads=4",
    "pools": "protocol-specific: H1 cold isolated client per sample; H2/H3 warm pooled"
  },
  "measurement_config": {
    "warmup_count": 5,
    "sample_count": 100,
    "thresholded_origins": [
      "127.0.0.1:3201",
      "127.0.0.1:3202"
    ],
    "comparable_clients_share_workload": true,
    "throughput_timing_window": "corrected client overhead: response rows use paired reqwest/Specter sample order and divide by final fixture DATA write-stamp to final observed body-chunk delivery overhead, falling back to fixed fixture schedule overhead if a stamp is unavailable; per-gap response pacing overage is emitted as jitter evidence only; request rows use per-chunk yielded/consumed timestamps with fixture upload-complete as the final endpoint and response headers only as an emitted fallback count; identical for reqwest and Specter"
  },
  "metric_definitions": {
    "actual_send_gap.median_minus_target_ns": "median observed inter-chunk wall-clock gap minus the target inter-chunk pacing (BENCH_CHUNK_DELAY_MS); near-zero values prove monotonic deadline spin-wait is in effect rather than scheduler-sleep jitter",
    "actual_send_gap.median_ns": "client-observed median wall-clock interval in nanoseconds between successive received body chunks across all samples on this row; with monotonic deadline spin-wait fixture pacing this should track BENCH_CHUNK_DELAY_MS at microsecond-scale precision",
    "actual_send_gap.over_budget_fraction": "fraction of observed inter-chunk gaps that exceeded the target pacing by more than 500us; intended as a guard against scheduler-sleep regressions in the fixture",
    "actual_send_gap.p95_ns": "client-observed p95 wall-clock interval in nanoseconds between successive received body chunks across all samples on this row; releases require this to remain near BENCH_CHUNK_DELAY_MS so scheduler/kqueue jitter cannot dominate the corrected client-overhead denominator",
    "body_transfer_duration_ns": "median raw body-transfer duration denominator in nanoseconds before subtracting fixture pacing; response rows measure first observed response body byte through final observed response body byte, while request rows measure first yielded request body chunk through fixture upload-complete",
    "bytes_per_sec": "median body bytes per second over samples; response rows divide decoded response body bytes by final fixture DATA write-stamp to final observed body-chunk delivery overhead, falling back to fixed fixture schedule overhead if a stamp is unavailable; request rows divide uploaded request body bytes by corrected upload-complete write-overhead duration; applied identically to reqwest and Specter",
    "chunks_per_sec": "response rows: decoded body chunks received divided by corrected client-overhead duration; request rows: uploaded request chunks divided by corrected upload-complete write-overhead duration",
    "client_overhead_denominator_floor_count": "number of measured samples whose corrected client-overhead denominator reached the 1ns floor/clamp",
    "client_overhead_duration_ns": "median corrected client-overhead duration denominator in nanoseconds; gates response-row bytes_per_sec and chunks_per_sec using final fixture DATA write-stamp delivery overhead, and gates request-row TTFT, bytes_per_sec, and chunks_per_sec using the corrected upload-complete write-overhead timing window",
    "client_overhead_unclamped_duration_ns": "median corrected client-overhead denominator before applying the 1ns floor; response rows use final fixture DATA write-stamp delivery overhead with fixed-schedule fallback and request rows use corrected upload-complete write-overhead",
    "client_write_overhead_denominator_floor_count": "request-row denominator evidence: number of measured request uploads whose per-chunk write-overhead denominator reached the 1ns floor/clamp",
    "client_write_overhead_duration_ns": "request-row denominator evidence: median sum across chunks of (consumed_at - yielded_at - scheduled_gap) where consumed_at[i<N-1] is the wall-clock at the start of the next poll_next call and consumed_at[N-1] is the fixture upload-complete timestamp; used as the request-row threshold denominator",
    "client_write_overhead_unclamped_duration_ns": "request-row denominator evidence: median per-sample client_write_overhead_duration_ns before applying the 1ns floor",
    "connection_reuse_count": "number of requests after the first that used an existing warm connection",
    "fixture.monotonic_clock_source": "std::time::Instant: monotonic clock used by the fixture deadline computation and by the client inter-chunk receive timestamps reported under actual_send_gap",
    "fixture.pacing_mode": "monotonic_deadline_spin_wait: each H1/H2/H3 fixture chunk and request-body producer chunk is sent at anchor + i*delay using std::time::Instant deadlines and a spin-wait loop, not tokio::time::sleep inter-chunk pacing; this removes macOS scheduler/kqueue jitter from the corrected client-overhead denominator",
    "p50_ns": "nearest-rank 50th percentile over sample TTFT values",
    "p95_bytes_per_sec": "nearest-rank 95th percentile of body bytes per second over samples using the same corrected client-overhead duration denominator as bytes_per_sec; enforced for comparable H1/H2 threshold rows so p95 throughput cannot regress by more than the additive 5% budget",
    "p95_ns": "nearest-rank 95th percentile over sample TTFT values",
    "p95_regression_allowed_pct": "5 means additive p95 budgets allow Specter p95 throughput or p95 TTFT to regress versus reqwest by at most 5%; median TTFT and median throughput still must each improve by at least 5%",
    "p99_ns": "nearest-rank 99th percentile over sample TTFT values",
    "ttft_ns": "response rows: elapsed nanoseconds from request start until first response body byte is observable; request rows: corrected upload-complete write-overhead in nanoseconds using per-chunk yielded/consumed timestamps and the fixture upload-complete timestamp as the final endpoint",
    "upload_complete_fallback_count": "request-row evidence: number of request uploads that could not match the fixture upload-complete timestamp and therefore fell back to response-headers timing; release evidence should be zero",
    "wilcoxon_signed_rank_p_value": "one-sided paired Wilcoxon signed-rank normal-approximation p-value over matched reqwest/Specter samples; TTFT ranks baseline minus Specter as improvement, corrected-overhead throughput ranks Specter minus baseline as improvement, and threshold rows require p < 0.01 for both median deltas"
  },
  "rows": [
    {
      "protocol": "h2",
      "client": "reqwest",
      "direction": "request",
      "endpoint": "127.0.0.1:3202",
      "comparable": true,
      "comparison_mode": "reqwest_comparable",
      "skip_reason": null,
      "measurement_source": "localhost_paired_real_measurement",
      "client_config": {
        "runtime": "tokio multi_thread worker_threads=4",
        "payload_schedule_ms": [
          0,
          2,
          2,
          2,
          2
        ],
        "chunk_size": 1024,
        "request_count": 8,
        "concurrency": 1,
        "warmup_count": 5,
        "sample_count": 100,
        "decompression": "disabled",
        "byte_accounting": "uploaded request body bytes only; headers excluded"
      },
      "metrics": {
        "ttft_ns": 456249.5,
        "chunks_per_sec": 87671.32971561124,
        "bytes_per_sec": 89775441.62878591,
        "p95_bytes_per_sec": 99606554.70552015,
        "body_transfer_duration_ns": 64219230.0,
        "client_overhead_duration_ns": 456249.5,
        "client_overhead_unclamped_duration_ns": 456249.5,
        "client_overhead_denominator_floor_count": 0,
        "client_write_overhead_duration_ns": 456249.5,
        "client_write_overhead_unclamped_duration_ns": 456249.5,
        "client_write_overhead_denominator_floor_count": 0,
        "upload_complete_fallback_count": 0,
        "p50_ns": 456249.5,
        "p95_ns": 514343.2,
        "p99_ns": 538734.16,
        "warmup_count": 5,
        "sample_count": 100,
        "connection_reuse_count": 839,
        "pass": true,
        "actual_send_gap": {
          "target_ms": 2,
          "sample_count": 3200,
          "median_ns": 2000000.0,
          "p95_ns": 2000042.0,
          "min_ns": 1918917.0,
          "max_ns": 2010667.0,
          "median_minus_target_ns": 0.0,
          "p95_minus_target_ns": 42.0,
          "over_budget_fraction": 0.0,
          "measurement_source": "client_observed_inter_chunk_receive_gap_using_std_time_instant_monotonic_clock"
        },
        "ttft_samples_ns": [
          449750.0,
          515335.0,
          476918.0,
          452458.0,
          514291.0,
          442791.0,
          531500.0,
          446666.0,
          442458.0,
          447793.0,
          445750.0,
          478166.0,
          431335.0,
          474748.0,
          489459.0,
          411458.0,
          465206.0,
          473666.0,
          418917.0,
          471417.0,
          440749.0,
          453748.0,
          436084.0,
          462333.0,
          466165.0,
          450293.0,
          492083.0,
          472833.0,
          432918.0,
          453584.0,
          437751.0,
          483459.0,
          424960.0,
          490791.0,
          471874.0,
          456292.0,
          453668.0,
          423834.0,
          426791.0,
          449458.0,
          470834.0,
          460958.0,
          390749.0,
          470626.0,
          458040.0,
          502168.0,
          502207.0,
          476793.0,
          538585.0,
          406709.0,
          462835.0,
          456207.0,
          416207.0,
          433291.0,
          435918.0,
          458125.0,
          443916.0,
          505667.0,
          507585.0,
          483501.0,
          470332.0,
          403960.0,
          470500.0,
          426916.0,
          429709.0,
          460919.0,
          450791.0,
          462835.0,
          479333.0,
          414083.0,
          491585.0,
          451043.0,
          454751.0,
          423667.0,
          435206.0,
          455959.0,
          420707.0,
          421959.0,
          388041.0,
          474126.0,
          500040.0,
          478375.0,
          466791.0,
          456583.0,
          482331.0,
          429624.0,
          468666.0,
          452459.0,
          406209.0,
          450418.0,
          439665.0,
          424750.0,
          439624.0,
          463250.0,
          473083.0,
          468540.0,
          497419.0,
          553501.0,
          516252.0,
          453666.0
        ],
        "bytes_per_sec_samples": [
          91072818.2323513,
          79482278.51785731,
          85884785.22513305,
          90527739.59129909,
          79643625.88495618,
          92504138.52133399,
          77064910.63029163,
          91701629.40541703,
          92573758.41322792,
          91470835.85495977,
          91890072.91082445,
          85660628.31736259,
          94960993.19554408,
          86277351.35271765,
          83684230.95703623,
          99548435.07721323,
          88047015.73066555,
          86474435.57274535,
          97775931.7478164,
          86886981.16529527,
          92932712.26934151,
          90270370.3377205,
          93926858.12825052,
          88594151.83428395,
          87865884.39715551,
          90962995.20534408,
          83237990.33902816,
          86626779.43375356,
          94613760.57359593,
          90303008.92447706,
          93569175.1703594,
          84722799.65829574,
          96385542.16867469,
          83457113.1092461,
          86802832.959646,
          89767078.9757436,
          90286288.65161307,
          96641609.68681134,
          95972033.14971496,
          91131985.63603273,
          86994567.08733864,
          88858420.94073647,
          104824324.56640963,
          87033015.60049807,
          89424504.41009519,
          81566328.40005735,
          81559994.18566449,
          85907301.4914229,
          76051133.9899923,
          100710827.64335188,
          88498060.86402282,
          89783804.28182821,
          98412568.74584042,
          94532312.00278796,
          93962625.99846761,
          89407912.68758526,
          92269708.68362483,
          81001924.19121675,
          80695844.04582484,
          84715440.09216113,
          87087419.09969978,
          101396177.83939004,
          87056323.06057386,
          95943932.76429087,
          95320321.42682606,
          88865939.56855759,
          90862506.12811702,
          88498060.86402282,
          85452076.11410022,
          98917366.8081037,
          83322314.55394286,
          90811740.78746372,
          90071269.77180919,
          96679703.63516629,
          94116349.49885802,
          89832638.46091425,
          97359920.32459646,
          97071042.44725198,
          105555856.21107048,
          86390537.53643546,
          81913446.92424606,
          85623203.5536974,
          87748049.98382574,
          89709866.55219314,
          84920936.03770025,
          95339180.30650057,
          87396994.8748149,
          90527539.51186737,
          100834791.94207908,
          90937751.15559325,
          93161839.12751754,
          96433195.99764568,
          93170527.54171747,
          88418780.35617916,
          86581001.64241792,
          87420497.71631025,
          82345065.22670022,
          74001672.98704068,
          79341096.98364364,
          90286686.68139116
        ]
      },
      "threshold": {
        "required": true,
        "ttft_improvement_required_pct": 5.0,
        "throughput_improvement_required_pct": 5.0,
        "throughput_regression_allowed_pct": 5.0,
        "p95_regression_allowed_pct": 5.0,
        "wilcoxon_p_value_required_less_than": 0.01,
        "reqwest_median_ttft_ns": 456249.5,
        "specter_median_ttft_ns": 374397.0,
        "ttft_improvement_pct": 17.9402936331985,
        "ttft_wilcoxon_signed_rank_p_value": 0.0,
        "reqwest_median_bytes_per_sec": 89775441.62878591,
        "specter_median_bytes_per_sec": 109403764.90964556,
        "throughput_improvement_pct": 21.863800305233983,
        "throughput_wilcoxon_signed_rank_p_value": 0.0,
        "median_throughput_regression_pct": -21.863800305233983,
        "reqwest_p95_bytes_per_sec": 99606554.70552015,
        "specter_p95_bytes_per_sec": 123037809.39880367,
        "p95_throughput_regression_pct": -23.523808008977305,
        "reqwest_p95_ttft_ns": 514343.2,
        "specter_p95_ttft_ns": 435714.2,
        "p95_ttft_regression_pct": -15.287263445885937,
        "status": "pass",
        "reason": "deterministic localhost reqwest baseline request-body streaming row; excluded as a failing threshold subject but included in threshold math"
      },
      "specter_api_path": null,
      "protocol_selected_by_normal_dispatch": false,
      "pool_reuse_metadata": {
        "connection_reuse_count": 839,
        "cold_or_warm_pool": "warm"
      },
      "request_body_schedule": {
        "chunk_size": 1024,
        "chunk_count": 5,
        "chunk_delay_ms": 2,
        "total_bytes": 5120,
        "payload_schedule_ms": [
          0,
          2,
          2,
          2,
          2
        ]
      }
    },
    {
      "protocol": "h2",
      "client": "specter",
      "direction": "request",
      "endpoint": "127.0.0.1:3202",
      "comparable": true,
      "comparison_mode": "reqwest_comparable",
      "skip_reason": null,
      "measurement_source": "localhost_paired_real_measurement",
      "client_config": {
        "runtime": "tokio multi_thread worker_threads=4",
        "payload_schedule_ms": [
          0,
          2,
          2,
          2,
          2
        ],
        "chunk_size": 1024,
        "request_count": 8,
        "concurrency": 1,
        "warmup_count": 5,
        "sample_count": 100,
        "decompression": "disabled",
        "byte_accounting": "uploaded request body bytes only; headers excluded"
      },
      "metrics": {
        "ttft_ns": 374397.0,
        "chunks_per_sec": 106839.61416957574,
        "bytes_per_sec": 109403764.90964556,
        "p95_bytes_per_sec": 123037809.39880367,
        "body_transfer_duration_ns": 64197977.5,
        "client_overhead_duration_ns": 374397.0,
        "client_overhead_unclamped_duration_ns": 374397.0,
        "client_overhead_denominator_floor_count": 0,
        "client_write_overhead_duration_ns": 374397.0,
        "client_write_overhead_unclamped_duration_ns": 374397.0,
        "client_write_overhead_denominator_floor_count": 0,
        "upload_complete_fallback_count": 0,
        "p50_ns": 374397.0,
        "p95_ns": 435714.2,
        "p99_ns": 483974.93000000063,
        "warmup_count": 5,
        "sample_count": 100,
        "connection_reuse_count": 839,
        "pass": true,
        "actual_send_gap": {
          "target_ms": 2,
          "sample_count": 3200,
          "median_ns": 2000000.0,
          "p95_ns": 2000042.0,
          "min_ns": 1882833.0,
          "max_ns": 2009417.0,
          "median_minus_target_ns": 0.0,
          "p95_minus_target_ns": 42.0,
          "over_budget_fraction": 0.0,
          "measurement_source": "client_observed_inter_chunk_receive_gap_using_std_time_instant_monotonic_clock"
        },
        "ttft_samples_ns": [
          410541.0,
          364833.0,
          387626.0,
          392667.0,
          364708.0,
          413042.0,
          364415.0,
          407000.0,
          358832.0,
          373168.0,
          359085.0,
          398291.0,
          393708.0,
          324124.0,
          417126.0,
          417334.0,
          457748.0,
          384291.0,
          369666.0,
          422540.0,
          325291.0,
          398000.0,
          397750.0,
          356082.0,
          391166.0,
          352124.0,
          454500.0,
          416625.0,
          344667.0,
          384917.0,
          367248.0,
          371543.0,
          353208.0,
          356084.0,
          393958.0,
          322833.0,
          384084.0,
          344459.0,
          382252.0,
          403042.0,
          339084.0,
          361293.0,
          396459.0,
          335001.0,
          358042.0,
          390292.0,
          394709.0,
          385375.0,
          438207.0,
          404710.0,
          364041.0,
          377250.0,
          339042.0,
          394542.0,
          361791.0,
          407124.0,
          357168.0,
          393500.0,
          368665.0,
          354917.0,
          368709.0,
          361873.0,
          375626.0,
          363166.0,
          359416.0,
          333417.0,
          335249.0,
          336374.0,
          361916.0,
          390918.0,
          372124.0,
          309291.0,
          392667.0,
          366337.0,
          348874.0,
          389167.0,
          363251.0,
          386332.0,
          412251.0,
          384832.0,
          381377.0,
          365083.0,
          418541.0,
          347792.0,
          416832.0,
          380500.0,
          373000.0,
          390167.0,
          333209.0,
          338041.0,
          356793.0,
          352418.0,
          327248.0,
          342708.0,
          410460.0,
          414127.0,
          613460.0,
          482667.0,
          435583.0,
          404917.0
        ],
        "bytes_per_sec_samples": [
          99770790.2499385,
          112270545.70173202,
          105668866.38151208,
          104312305.33760157,
          112309025.30243373,
          99166670.70176882,
          112399324.94546054,
          100638820.63882063,
          114148125.0278682,
          109762894.99635553,
          114067699.84822536,
          102839381.25641805,
          104036494.05142897,
          126371388.72777085,
          98195749.00629547,
          98146808.07219158,
          89481548.7997763,
          106585894.54345796,
          110802724.62168552,
          96937568.04089554,
          125918024.16912857,
          102914572.8643216,
          102979258.32809554,
          115029684.17387006,
          104712577.26898555,
          116322659.06328453,
          90121012.10121012,
          98313831.38313831,
          118839343.48225969,
          106412551.27728836,
          111532261.57800724,
          110242959.76508775,
          115965663.29188468,
          115029038.09213556,
          103970474.00991984,
          126876744.32291618,
          106643338.43638371,
          118911104.07915021,
          107154442.61900526,
          101627125.70898318,
          120796026.94317631,
          113370588.41438943,
          103314592.429482,
          122268291.73644257,
          114399986.59375158,
          104947065.27420495,
          103772652.76444165,
          106286084.98216024,
          93471806.70322473,
          101208272.5902498,
          112514799.15723778,
          108575215.37442015,
          120810990.96867055,
          103816577.1958372,
          113214535.46384515,
          100608168.51868227,
          114679926.53317207,
          104091486.65819567,
          111103576.4176149,
          115407264.23360954,
          111090317.83872919,
          113188881.18207216,
          109044634.82293558,
          112785888.54683533,
          113962650.52195784,
          122849164.85962023,
          122177843.93092896,
          121769221.16453709,
          113175432.97339715,
          104779007.3621578,
          110070836.60285282,
          132431916.86793344,
          104312305.33760157,
          111809617.9201118,
          117406284.21722455,
          105250445.18163154,
          112759496.87681521,
          106022799.04330991,
          99356945.16204934,
          106436055.21370365,
          107400288.95292585,
          112193665.55002561,
          97863769.61874704,
          117771541.61107789,
          98265008.44464916,
          107647831.80026282,
          109812332.43967828,
          104980687.75678107,
          122925851.34255077,
          121168733.97013971,
          114800458.52917518,
          116225618.4417368,
          125165012.46760868,
          119518657.2825846,
          99790478.97480875,
          98906857.07524504,
          66768819.48293287,
          84861819.8468095,
          94034891.16884726,
          101156533.31423476
        ]
      },
      "threshold": {
        "required": true,
        "ttft_improvement_required_pct": 5.0,
        "throughput_improvement_required_pct": 5.0,
        "throughput_regression_allowed_pct": 5.0,
        "p95_regression_allowed_pct": 5.0,
        "wilcoxon_p_value_required_less_than": 0.01,
        "reqwest_median_ttft_ns": 456249.5,
        "specter_median_ttft_ns": 374397.0,
        "ttft_improvement_pct": 17.9402936331985,
        "ttft_wilcoxon_signed_rank_p_value": 0.0,
        "reqwest_median_bytes_per_sec": 89775441.62878591,
        "specter_median_bytes_per_sec": 109403764.90964556,
        "throughput_improvement_pct": 21.863800305233983,
        "throughput_wilcoxon_signed_rank_p_value": 0.0,
        "median_throughput_regression_pct": -21.863800305233983,
        "reqwest_p95_bytes_per_sec": 99606554.70552015,
        "specter_p95_bytes_per_sec": 123037809.39880367,
        "p95_throughput_regression_pct": -23.523808008977305,
        "reqwest_p95_ttft_ns": 514343.2,
        "specter_p95_ttft_ns": 435714.2,
        "p95_ttft_regression_pct": -15.287263445885937,
        "status": "pass",
        "reason": "deterministic localhost reqwest-comparable request-body streaming threshold: Specter median corrected upload-complete TTFT must improve by >=5% using per-chunk yielded/consumed timestamps with the fixture upload-complete timestamp as the final endpoint, median upload throughput must improve by >=5% measured against the same corrected upload-complete write-overhead denominator, paired Wilcoxon signed-rank p-values for corrected upload-complete TTFT and corrected-overhead throughput must be <0.01, p95 throughput must not regress by more than 5%, and p95 corrected upload-complete TTFT must not regress by more than 5%; client_write_overhead_duration_ns is retained as duplicate denominator-floor evidence for request rows"
      },
      "specter_api_path": "specter::Client -> RequestBuilder::body_stream_sized -> send_streaming -> specter::Body::chunk",
      "protocol_selected_by_normal_dispatch": true,
      "pool_reuse_metadata": {
        "connection_reuse_count": 839,
        "cold_or_warm_pool": "warm"
      },
      "request_body_schedule": {
        "chunk_size": 1024,
        "chunk_count": 5,
        "chunk_delay_ms": 2,
        "total_bytes": 5120,
        "payload_schedule_ms": [
          0,
          2,
          2,
          2,
          2
        ]
      }
    }
  ],
  "rfc8441_coexistence": {
    "concurrency_level": 2,
    "tunnel_stream_id": 1,
    "streaming_stream_id": 3,
    "messages_sent": [
      "bench-coexist-msg"
    ],
    "messages_received": [
      "bench-coexist-msg"
    ],
    "chunks_received": [
      "SPCT\u0000\u0005\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000*[encoded data, 16368 characters]",
      "SPCT\u0001\u0005\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000f&\[encoded data, 16373 characters]",
      "",
      "",
      ""
    ],
    "contamination_detected": false,
    "status": "pass"
  },
  "h3_gate": {
    "fixture_address": "127.0.0.1:3203/udp",
    "comparison_mode": "reqwest_h3_unavailable_specter_regression_gate",
    "reqwest_comparison_available": false,
    "reqwest_unavailable_reason": "reqwest 0.12 in this benchmark profile lacks a stable, directly comparable high-level HTTP/3 streaming mode; H3 release evidence uses the local Specter regression gate instead",
    "specter_thresholds": {
      "max_median_ttft_p50_ns": 2000000.0,
      "min_median_bytes_per_sec": 30000.0,
      "min_median_chunks_per_sec": 2000.0,
      "min_connection_reuse_count": 1
    },
    "specter_metrics": {
      "ttft_ns": 0.0,
      "chunks_per_sec": 0.0,
      "bytes_per_sec": 0.0,
      "p95_bytes_per_sec": 0.0,
      "body_transfer_duration_ns": 0.0,
      "client_overhead_duration_ns": 0.0,
      "client_overhead_denominator_floor_count": 0,
      "client_write_overhead_denominator_floor_count": 0,
      "upload_complete_fallback_count": 0,
      "p50_ns": 0.0,
      "p95_ns": 0.0,
      "p99_ns": 0.0,
      "warmup_count": 5,
      "sample_count": 100,
      "connection_reuse_count": 0,
      "pass": true,
      "actual_send_gap": {
        "target_ms": 1,
        "sample_count": 0,
        "median_ns": 0.0,
        "p95_ns": 0.0,
        "min_ns": 0.0,
        "max_ns": 0.0,
        "median_minus_target_ns": 0.0,
        "p95_minus_target_ns": 0.0,
        "over_budget_fraction": 0.0,
        "measurement_source": "client_observed_inter_chunk_receive_gap_using_std_time_instant_monotonic_clock"
      }
    },
    "pass": true,
    "status": "skipped_by_protocol_filter"
  },
  "threshold_summary": {
    "required_thresholds_passed": true,
    "failed_rows": [],
    "negative_threshold_self_check": "implemented: --require-thresholds exits non-zero when required_thresholds_passed is false; --self-test-threshold-failure induces required H1/H2 comparable threshold failures, including median win and p95 regression failures; Wilcoxon p-value failures are part of the same required_thresholds_passed gate; --self-test-h3-threshold-failure induces an H3 gate failure"
  },
  "public_provider_threshold_inputs": [],
  "port_preflight": {
    "checked_range": "127.0.0.1:3200-3299",
    "tcp_ports_clear_before_start": true,
    "udp_ports_clear_before_start": true
  },
  "cleanup": {
    "fixture_shutdown_status": "all fixture tasks aborted before process exit",
    "post_run_tcp_scan_clear": true,
    "post_run_udp_scan_clear": true
  }
}