# F-1 notes — ratio.py: the registered claims machinery

*Written 2026-09-27 (UTC) by the COI F-1 lane; generated by `series/f1_notes.py` from the files `series/ratio.py --write` writes (every figure read from them or computed, none typed). The brief: the lead's BRIEF-COI-F1-ratio-py-v2 (plans 2026-09-26); the rulings: DECISIONS D-20260926-012, D-20260927-001, D-20260927-002, D-20260927-003 and D-20260927-004.*

## 1 · What changed

- **One road for every registered figure.** `series/ratio.py` computes THE RATIO (PREREG-S0 §4.4), the staircase `C_ours(t, bar)` (§4.5, METRICS §5), u\*, C\* and the bar-matched cost ratio (§7.2-7.3, METRICS §3.6, §4), Bench 3's form (§7.4), `--bar` (§5, through F-0's `ladder.bar_tests`, never re-computed) and `--bridge` (§2.5, through `v2score.score_pass`). It reads `series/series.jsonl` only (with `items.json` and `KIT.lock.json`) and types no number (a `tokenize` scan in `test_ratio.py`). `charts.py` draws C2's staircase and C4 from what it returns; `ladder.ratios`, `ladder.staircase` and `ladder.launch_usd` are gone.
- **THE RATIO's denominator is the registered panel.** Moving F = the cross-fit best of F-closed, every closed-API id's utility-posture row released 2026-03-29 to 2026-09-25 (the 180 days before the reading's close; close: the registered ceiling 2026-09-25T12:00Z (the stamp is not yet written, F-9)): k = 14. C4 drew every closed-API row (k = 41) before F-1; F is the same at reading 0 (0.9537).
- **The interval is the cluster bootstrap.** 10,000 resamples over the 16 dinner clusters, numbered by first appearance in kit order (D-20260927-001 (1)), seed 20260923; the item form is reachable as `--unit items` (a regression road, §6).
- **The staircase is in $ per ITEM** (the registered unit; C2 drew $ per correct), each step carrying F-0's `at_boundary` and `both_halves` for B-anchor (the brief's addendum); B-60 has no paired bound, so its steps carry no boundary label (D-20260927-004 (3)) and read both halves by the bar's own test. Epoch's rates are parsed from the pinned Figure 1.csv (charts.py typed them twice); `READING_DATE` is `ratio.reading_close_date()`.
- **The rule of three** (PREREG-S0 :277; D-20260927-004 (5)): on a bootstrap draw (or an estimate) where F makes no error, 3/n stands in for F's error rate, so the error ratio is (1 − L)/(3/n); before F-1 such draws were dropped. No estimate at reading 0 has F = 1.
- **No verdict word** prints for any ratio (D-20260927-001 (3); the 3090's word is D-20260927-002 Q9, open): `position`, `at_boundary`, `saturated`, `provisional` and the seed rows are columns, never sentences.
- **Provisional, per form** (PREREG-S0 :92; D-20260927-002 Q13; D-20260927-005 S3): a ratio is provisional when a member of ITS OWN denominator panel or a numerator cross-fit pick is at a provisional posture. The temperature-0 row's panel is F-closed restricted to greedy rows, so it is provisional only when one of THOSE members is, or a pick is: at reading 0 its six members are OpenAI rows, none provisional, and only the laptop's temperature-0 row prints provisional (its pick gemma4:31b). The split rows re-pick on their items and read their own picks.

## 2 · Reading 0's rows are untouched

`series/series.jsonl` sha256 `902747cd084a25980ba4db0ed6dd660b05fdcc0e3cd2b88522aed2b7be36e215`; `series/items.json` `290feb0fc86a61638d212ad89b5ed1bfd7308ba25a173e47f949bf9e75a64c18`; `KIT.lock.json` `0bca44b4ec019eef696929fc6d36178bcce7d5b1b88b4ddaeba3ca207598f84f` (its `reading_closed_utc` is still null: the close is the registered ceiling, labelled, until F-9 writes it).

## 3 · THE RATIO at reading 0 (charts/data/c4-ratios.csv)

| card | form | k (L / F) | L | F | R_cc | 95 % (clusters) | threshold | position | at the boundary | seed rows | provisional | label |
| --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | --- | --- | --- | --- | --- |
| rtx-3090 | moving | 23 / 14 | 0.8889 | 0.9537 | 0.9176 | 0.8341 to 1.0127 | 0.0118 | contains | False | yes | True | — |
| rtx-3090 | fixed | 23 / 1 | 0.8889 | 0.8148 | 1.1143 | 1.0160 to 1.2463 | 0.0143 | above | False | yes | False | — |
| rtx-3090 | moving-open-cloud | 23 / 3 | 0.8889 | 0.8611 | 1.0400 | 0.9246 to 1.1221 | 0.0133 | contains | False | no | True | — |
| rtx-3090 | moving-temp0 | 23 / 6 | 0.8889 | 0.9537 | 0.9176 | 0.8345 to 1.0000 | 0.0118 | contains | True | yes | False | — |
| rtx-5090-laptop | moving | 19 / 14 | 0.8519 | 0.9537 | 0.8706 | 0.8153 to 1.0000 | 0.0118 | contains | True | yes | True | — |
| rtx-5090-laptop | fixed | 19 / 1 | 0.8519 | 0.8148 | 1.0571 | 0.9873 to 1.2097 | 0.0143 | contains | True | yes | True | — |
| rtx-5090-laptop | moving-open-cloud | 19 / 3 | 0.8519 | 0.8611 | 0.9867 | 0.9054 to 1.1018 | 0.0133 | contains | False | no | True | — |
| rtx-5090-laptop | moving-temp0 | 19 / 6 | 0.8519 | 0.9537 | 0.8706 | 0.8155 to 0.9883 | 0.0118 | below | True | yes | True | — |
| rtx-5090-laptop | fixed-split | 19 / 1 | 0.9355 | 0.8596 | 1.1094 | 0.9176 to 1.2264 | 0.0253 | contains | False | no | False | — |
| rtx-5090-laptop | moving-split | 19 / 14 | 0.9355 | 0.8840 | 1.0718 | 0.8806 to 1.1765 | 0.0245 | contains | False | no | True | — |
| rtx-pro-6000 | moving | 3 / 14 | 0.7593 | 0.9537 | 0.7529 | 0.6081 to 0.8699 | 0.0118 | below | False | no | True | roster coverage, not the card (k = 3) |
| rtx-pro-6000 | fixed | 3 / 1 | 0.7593 | 0.8148 | 0.9143 | 0.7320 to 1.0643 | 0.0143 | contains | False | no | False | roster coverage, not the card (k = 3) |
| rtx-pro-6000 | moving-open-cloud | 3 / 3 | 0.7593 | 0.8611 | 0.8533 | 0.6891 to 0.9552 | 0.0133 | below | False | no | True | roster coverage, not the card (k = 3) |
| rtx-pro-6000 | moving-temp0 | 3 / 6 | 0.7593 | 0.9537 | 0.7529 | 0.6071 to 0.8655 | 0.0118 | below | False | no | False | roster coverage, not the card (k = 3) |

F-open-cloud (beside, 'cloud-served open weights'): kimi-k3:cloud (2812.0 B); deepseek-v4-pro:0813-cloud (1650.5 B); kimi-k2.7-code:cloud (1042.0 B) — the 1,042 B tie goes to the newer release (PREREG-S0 :282; D-20260927-004 (1)).

## 4 · The seed rows (D-20260927-001 (2)): every ratio bound within two thresholds of 1

| card | form | bound | registered seed | seeds 1-20 | min to max | seeds disagreeing |
| --- | --- | --- | ---: | --- | --- | ---: |
| rtx-3090 | moving | hi | 1.0127 | 1.0116 1.0131 1.0127 1.0127 1.0118 1.0132 1.0119 1.0121 1.0123 1.0125 1.0130 1.0137 1.0129 1.0123 1.0123 1.0144 1.0120 1.0127 1.0127 1.0116 | 1.0116 to 1.0144 | 2 of 20 |
| rtx-3090 | fixed | lo | 1.0160 | 1.0158 1.0144 1.0128 1.0150 1.0127 1.0154 1.0155 1.0122 1.0152 1.0149 1.0144 1.0146 1.0140 1.0120 1.0129 1.0143 1.0131 1.0129 1.0140 1.0143 | 1.0120 to 1.0158 | 11 of 20 |
| rtx-3090 | moving-temp0 | hi | 1.0000 | 1.0000 1.0004 1.0000 0.9996 1.0000 1.0000 0.9998 1.0000 1.0000 0.9993 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 0.9991 1.0000 0.9998 0.9996 | 0.9991 to 1.0004 | 6 of 20 |
| rtx-5090-laptop | moving | hi | 1.0000 | 1.0000 1.0000 1.0000 1.0000 0.9996 1.0000 0.9986 1.0000 0.9993 0.9998 0.9982 0.9994 0.9993 1.0000 1.0000 1.0000 0.9990 0.9990 1.0000 1.0000 | 0.9982 to 1.0000 | 9 of 20 |
| rtx-5090-laptop | fixed | lo | 0.9873 | 0.9878 0.9907 0.9867 0.9874 0.9874 0.9894 0.9869 0.9878 0.9889 0.9880 0.9878 0.9881 0.9885 0.9871 0.9902 0.9886 0.9882 0.9892 0.9909 0.9868 | 0.9867 to 0.9909 | 0 of 20 |
| rtx-5090-laptop | moving-temp0 | hi | 0.9883 | 0.9888 0.9886 0.9883 0.9876 0.9887 0.9880 0.9874 0.9888 0.9881 0.9876 0.9875 0.9878 0.9878 0.9885 0.9878 0.9878 0.9869 0.9874 0.9881 0.9881 | 0.9869 to 0.9888 | 14 of 20 |

A seed disagrees when its `position` or `at_boundary` differs from the registered seed's. Every row: charts/data/ratio-seed-sensitivity.csv. The bars' seed rows are F-0's (charts/data/c3-seed-sensitivity.csv; `ratio.py --bar B-x --seeds` prints them, never re-computed).

## 5 · The staircase (charts/data/c2-staircase-rates.csv, -steps.csv)

| bar | price | dollars | steps | fold | years | × a year | % a quarter | without the last step | slower than Epoch's all-ages | at most the age-matched |
| --- | --- | --- | ---: | ---: | ---: | ---: | ---: | --- | --- | --- |
| B-anchor | launch | nominal | 9 | 298.65 | 3.2548 | 5.761 | 35.45 | 29.34-fold, 3.053× a year | — | — |
| B-anchor | launch | real | 10 | 328.24 | 3.2548 | 5.930 | 35.92 | 32.12-fold, 3.146× a year | True | not registered |
| B-anchor | today | nominal | 9 | 298.65 | 3.2548 | 5.761 | 35.45 | 146.71-fold, 5.195× a year | — | — |
| B-anchor | today | real | 9 | 298.65 | 3.2548 | 5.761 | 35.45 | 146.71-fold, 5.195× a year | — | — |
| B-60 | launch | nominal | 5 | 298.65 | 3.2548 | 5.761 | 35.45 | 194.66-fold, 122.065× a year | — | — |
| B-60 | launch | real | 5 | 328.24 | 3.2548 | 5.930 | 35.92 | 200.78-fold, 125.557× a year | — | — |
| B-60 | today | nominal | 5 | 298.65 | 3.2548 | 5.761 | 35.45 | 194.66-fold, 122.065× a year | — | — |
| B-60 | today | real | 5 | 298.65 | 3.2548 | 5.761 | 35.45 | 194.66-fold, 122.065× a year | — | — |

PREREG-S0 :294's held direction is one registered test, printed on its one row (B-anchor, launch, real) and blank on the others (D-20260927-005). Clearers released on one date collapse to the date's minimum before stepping.

B-anchor at launch, nominal: gpt-4-0613 0.008846; gpt-4-turbo-2024-04-09 0.003037 (provisional: fails a parity half); gpt-4o-2024-05-13 0.001436 (at the boundary) (provisional: fails a parity half); gpt-4o-2024-08-06 0.0007489 (at the boundary) (provisional: fails a parity half); gpt-4o-2024-11-20 0.0007108 (at the boundary) (provisional: fails a parity half); gpt-4.1-2025-04-14 0.0005847; gpt-5-2025-08-07 0.0004484; gpt-5.6-luna 0.0003015; gpt-6-luna 2.962e-05.
Epoch: Epoch AI, LLM inference, 2023–26 (all ages) — 47.0 % a quarter, 12.67× a year; Epoch AI, age-matched — not registered.

## 6 · u\*, C\* and the bar-matched cost ratio (archetype A; the verdict word withheld until F-2)

- **RTX 3090 (300 W)**, 27 B-chance clearers: u\* ≤ 1 on 4 (gpt-oss:20b 0.145 (think class 1, against claude-sonnet-5+effort-low), phi3:14b-medium-128k-instruct-q4_0 0.856 (think class 0, against gpt-6-luna), phi4:14b-q4_K_M 0.877 (think class 0, against gpt-6-luna), mistral-small:22b-instruct-2409-q4_K_M 0.935 (think class 0, against gpt-6-luna)); C\*(U25) ≤ 0 on 7 (gemma3:27b-it-q4_K_M, gemma4:12b-it-q4_K_M, gemma4:31b-it-q4_K_M, glm-4.7-flash:q4_K_M, granite4:32b-a9b-h, llama3:8b-instruct-q4_K_M, olmo-3.1:32b-instruct-q4_K_M).
- **RTX 5090 Laptop GPU**, 24 B-chance clearers: u\* ≤ 1 on 20 (gpt-oss:20b 0.082 (think class 1, against claude-sonnet-5+effort-low), qwen3:30b-a3b-instruct-2507-q4_K_M 0.327 (think class 0, against gpt-6-luna), ministral-3:14b-instruct-2512-q4_K_M 0.338 (think class 0, against gpt-6-luna), qwen3:30b-a3b-q4_K_M 0.371 (think class 0, against gpt-6-luna), phi4:14b-q4_K_M 0.373 (think class 0, against gpt-6-luna), mistral-small:24b-instruct-2501-q4_K_M 0.407 (think class 0, against gpt-6-luna), mistral-small3.2:24b-instruct-2506-q4_K_M 0.452 (think class 0, against gpt-6-luna), qwen2.5:32b-instruct-q4_K_M 0.467 (think class 0, against gpt-6-luna), granite4.1:30b-q4_K_M 0.487 (think class 0, against gpt-6-luna), phi3:14b-medium-128k-instruct-q4_0 0.501 (think class 0, against gpt-6-luna), mistral-small:22b-instruct-2409-q4_K_M 0.524 (think class 0, against gpt-6-luna), gemma4:26b-a4b-it-q4_K_M 0.534 (think class 0, against gpt-6-luna), qwen:32b-chat-v1.5-q4_K_M 0.659 (think class 0, against gpt-6-luna), llama3:8b-instruct-q4_K_M 0.695 (think class 0, against gpt-6-luna), qwen3.8:27b-q4_K_M 0.698 (think class 0, against gpt-6-luna), qwen3.5:27b-q4_K_M 0.720 (think class 0, against gpt-6-luna), qwen3.6:27b-q4_K_M 0.743 (think class 0, against gpt-6-luna), qwen3:32b-q4_K_M 0.765 (think class 0, against gpt-6-luna), gemma3:27b-it-q4_K_M 0.802 (think class 0, against gpt-6-luna), glm-4.7-flash:q4_K_M 0.855 (think class 0, against gpt-6-luna)); C\*(U25) ≤ 0 on 0 (none).

| card | bar | cheapest local (U25) | at the boundary | both halves | frontier (today) | ratio U25 | ratio U100 | n = 5 | i = 5 % | n = 5, i = 5 % | p_e commercial | p_e industrial |
| --- | --- | --- | --- | --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| rtx-3090 | B-chance | phi3:14b-medium-128k-instruct-q4_0 | — | True | gpt-6-luna | 2.955 | 0.884 | 1.967 | 3.206 | 2.197 | 2.845 | 2.713 |
| rtx-3090 | B-anchor | qwen3.8:27b-q4_K_M | False | True | gpt-6-luna | 5.705 | 1.676 | 3.809 | 6.187 | 4.249 | 5.487 | 5.223 |
| rtx-3090 | B-anchor (margin) | qwen3.5:27b-q4_K_M | False | False (provisional) | gpt-6-luna | 5.890 | 1.724 | 3.883 | 6.400 | 4.349 | 5.693 | 5.455 |
| rtx-3090 | B-seat | qwen3.8:27b-q4_K_M | False | False (provisional) | gpt-6-luna | 5.705 | 1.676 | 3.809 | 6.187 | 4.249 | 5.487 | 5.223 |
| rtx-3090 | B-frontier-90 | qwen3.8:27b-q4_K_M | — | False (provisional) | gpt-6-luna | 5.705 | 1.676 | 3.809 | 6.187 | 4.249 | 5.487 | 5.223 |
| rtx-3090 | B-60 | phi4:14b-q4_K_M | — | True | gpt-6-luna | 3.060 | 0.899 | 2.051 | 3.317 | 2.285 | 2.939 | 2.792 |
| rtx-5090-laptop | B-chance | qwen3:30b-a3b-instruct-2507-q4_K_M | — | True | gpt-6-luna | 1.298 | 0.353 | 0.803 | 1.423 | 0.918 | 1.284 | 1.267 |
| rtx-5090-laptop | B-anchor | qwen3.8:27b-q4_K_M | True | False (provisional) | gpt-6-luna | 2.633 | 0.724 | 1.635 | 2.887 | 1.867 | 2.602 | 2.565 |
| rtx-5090-laptop | B-anchor (margin) | qwen3.5:27b-q4_K_M | False | False (provisional) | gpt-6-luna | 2.719 | 0.744 | 1.687 | 2.982 | 1.927 | 2.688 | 2.650 |
| rtx-5090-laptop | B-seat | qwen3.8:27b-q4_K_M | False | False (provisional) | gpt-6-luna | 2.633 | 0.724 | 1.635 | 2.887 | 1.867 | 2.602 | 2.565 |
| rtx-5090-laptop | B-frontier-90 | qwen3.8:27b-q4_K_M | — | False (provisional) | gpt-6-luna | 2.633 | 0.724 | 1.635 | 2.887 | 1.867 | 2.602 | 2.565 |
| rtx-5090-laptop | B-60 | qwen3:30b-a3b-instruct-2507-q4_K_M | — | True | gpt-6-luna | 1.298 | 0.353 | 0.803 | 1.423 | 0.918 | 1.284 | 1.267 |

Every rtx-3090 dollar row (ratio-ustar.csv, ratio-cost-ratio.csv) carries `provisional_input`: "C rests on a struck card price (O-12); F-2 re-reads the rig" (D-20260927-005 S2).

## 7 · The regression road: the item form over every closed-API row, against C4's table before F-1

`series/fixtures/c4-ratios.before-f1.csv` = 95114a6c (origin/master after F-0), bench/cost-of-intelligence-2026-09-23/charts/data/c4-ratios.csv, sha256 `276e6a44822a684d669e811f51e96e1bc41da164ab6c2601a4e1b3305b0449d7`. Every one of `r_cc`, `r_cc_lo`, `r_cc_hi`, `raw`, `raw_lo`, `raw_hi`, `err` reproduces to the digit on every row; the error ratio's interval is excepted by name (D-20260927-004 (5)): the draws with F = 1 now enter at the rule-of-three bound.

| card | form | ratio fields reproduced | draws with F = 1 | err_lo before → F-1 | err_hi before → F-1 |
| --- | --- | --- | ---: | --- | --- |
| rtx-3090 | moving | all 7 | 39 of 10000 | 0.7112676056338028 → 0.7112856271487191 | 7.218750000000006 → 7.192968750000015 |
| rtx-3090 | fixed | all 7 | 0 of 10000 | 0.29670329670329676 → 0.29670329670329676 | 1.0353424372692215 → 1.0353424372692215 |
| rtx-5090-laptop | moving | all 7 | 39 of 10000 | 0.8181818181818185 → 0.8181818181818185 | 8.390909090909092 → 8.375397727272754 |
| rtx-5090-laptop | fixed | all 7 | 0 of 10000 | 0.3488979607292084 → 0.3488979607292084 | 1.2002691026704428 → 1.2002691026704428 |
| rtx-pro-6000 | moving | all 7 | 39 of 10000 | 1.8479999999999988 → 1.8498036036036023 | 15.370370370370377 → 15.319486531986515 |
| rtx-pro-6000 | fixed | all 7 | 0 of 10000 | 0.8794451613761539 → 0.8794451613761539 | 2.2285714285714278 → 2.2285714285714278 |

## 8 · OPEN: F's estimator inside the fixed form's draws (D-20260927-005 S4; numbers only, to go with Q9)

Inside each bootstrap draw the fixed form scores the anchor as its pooled weighted rate over every item (`stats._wacc`), while L is the mean of two weighted half rates (the cross-fit, `stats._xfit`): the brief's pseudocode, and ratio.py's registered form. The symmetric form estimates F as L is (the anchor as a one-row panel: the mean of its two weighted half rates). The point estimate is the same under both (the halves are 54 and 54 items); the intervals differ. R_cc 95 % bounds, 10,000 cluster resamples, at the registered seed and seeds 1-20:

**RTX 3090 (300 W)** — R_cc 1.1143, the one-item threshold 0.0143:

| seed | registered form: lo | hi | symmetric form: lo | hi |
| ---: | ---: | ---: | ---: | ---: |
| 20260923 | 1.0160 | 1.2463 | 1.0193 | 1.2452 |
| 1 | 1.0158 | 1.2451 | 1.0186 | 1.2433 |
| 2 | 1.0144 | 1.2483 | 1.0176 | 1.2466 |
| 3 | 1.0128 | 1.2489 | 1.0151 | 1.2466 |
| 4 | 1.0150 | 1.2467 | 1.0178 | 1.2453 |
| 5 | 1.0127 | 1.2500 | 1.0155 | 1.2476 |
| 6 | 1.0154 | 1.2443 | 1.0183 | 1.2449 |
| 7 | 1.0155 | 1.2454 | 1.0185 | 1.2443 |
| 8 | 1.0122 | 1.2478 | 1.0136 | 1.2458 |
| 9 | 1.0152 | 1.2485 | 1.0179 | 1.2474 |
| 10 | 1.0149 | 1.2444 | 1.0181 | 1.2427 |
| 11 | 1.0144 | 1.2455 | 1.0174 | 1.2455 |
| 12 | 1.0146 | 1.2437 | 1.0184 | 1.2444 |
| 13 | 1.0140 | 1.2463 | 1.0157 | 1.2443 |
| 14 | 1.0120 | 1.2469 | 1.0144 | 1.2447 |
| 15 | 1.0129 | 1.2475 | 1.0162 | 1.2468 |
| 16 | 1.0143 | 1.2533 | 1.0161 | 1.2511 |
| 17 | 1.0131 | 1.2514 | 1.0156 | 1.2488 |
| 18 | 1.0129 | 1.2490 | 1.0151 | 1.2469 |
| 19 | 1.0140 | 1.2456 | 1.0160 | 1.2454 |
| 20 | 1.0143 | 1.2461 | 1.0172 | 1.2453 |

**RTX 5090 Laptop GPU** — R_cc 1.0571, the one-item threshold 0.0143:

| seed | registered form: lo | hi | symmetric form: lo | hi |
| ---: | ---: | ---: | ---: | ---: |
| 20260923 | 0.9873 | 1.2097 | 0.9914 | 1.2074 |
| 1 | 0.9878 | 1.2081 | 0.9893 | 1.2085 |
| 2 | 0.9907 | 1.2092 | 0.9946 | 1.2080 |
| 3 | 0.9867 | 1.2089 | 0.9873 | 1.2082 |
| 4 | 0.9874 | 1.2053 | 0.9905 | 1.2050 |
| 5 | 0.9874 | 1.2073 | 0.9887 | 1.2056 |
| 6 | 0.9894 | 1.2093 | 0.9929 | 1.2084 |
| 7 | 0.9869 | 1.2075 | 0.9892 | 1.2061 |
| 8 | 0.9878 | 1.2100 | 0.9885 | 1.2095 |
| 9 | 0.9889 | 1.2093 | 0.9924 | 1.2094 |
| 10 | 0.9880 | 1.2034 | 0.9900 | 1.2039 |
| 11 | 0.9878 | 1.2066 | 0.9905 | 1.2078 |
| 12 | 0.9881 | 1.2084 | 0.9898 | 1.2082 |
| 13 | 0.9885 | 1.2062 | 0.9913 | 1.2073 |
| 14 | 0.9871 | 1.2081 | 0.9886 | 1.2062 |
| 15 | 0.9902 | 1.2053 | 0.9932 | 1.2055 |
| 16 | 0.9886 | 1.2089 | 0.9905 | 1.2098 |
| 17 | 0.9882 | 1.2082 | 0.9898 | 1.2076 |
| 18 | 0.9892 | 1.2073 | 0.9923 | 1.2060 |
| 19 | 0.9909 | 1.2088 | 0.9930 | 1.2066 |
| 20 | 0.9868 | 1.2080 | 0.9881 | 1.2067 |

## 9 · Other roads, named

- **B-frontier-90's F** (`ladder.crossfit_f_closed`, F-0's road, feeding C3's caption) still reads every closed-API headline row; THE RATIO's F-closed is ratio.py's 180-day panel. They agree at reading 0; `test_ratio.py` goes red the day they differ (D-20260927-004 (7)).
- **The haiku rep agreement**: the build's `meta.claude_cli_agreement` (`lanes.py`) and ratio.py's `--bridge` road (`lanes._agreement` over `v2score.score_pass`) are one definition; a test asserts they agree.
- **F0-NOTES.md §6** names `ladder.ratios`, which F-1 deleted: a dated record, left as written.
- **A05-NOTES.md's file table** lists 8 file(s) whose bytes have moved since A-05 (a dated record, left as written; D-20260927-005): `charts/c2-cost-per-correct.svg` (A-05 `d31d8ba5a8e4`, today `47e13da13d51`); `charts/c3-ladder.svg` (A-05 `f2a66e687f2e`, today `98981ceb4be4`); `charts/c4-ratios.svg` (A-05 `39b53b02944c`, today `62c089d46fd0`); `charts/c5-best-that-fits.svg` (A-05 `1c38fead85ed`, today `883e3c6f5458`); `charts/CHARTS.md` (A-05 `a7cf5ea243c9`, today `8d7f23e6d10c`); `charts/data/c3-ladder.csv` (A-05 `withheld-2026-09-29`, today `withheld-2026-09-29`); `charts/data/c3-tests.csv` (A-05 `withheld-2026-09-29`, today `withheld-2026-09-29`); `charts/data/c4-ratios.csv` (A-05 `276e6a44822a`, today `7142d3439069`).

## 10 · The files this note read

- `charts/data/c4-ratios.csv` sha256 `7142d34390694d94b83d4189db8d114e6ca57fe70e9ee6ec29f496ad6b9863c5`
- `charts/data/c4-f-closed.csv` sha256 `withheld-2026-09-29`
- `charts/data/c4-numerator.csv` sha256 `withheld-2026-09-29`
- `charts/data/ratio-seed-sensitivity.csv` sha256 `f9bd3d45ca2b8419e097de048e070729636b8225bf622d1af5ddc2864549d174`
- `charts/data/c2-staircase-steps.csv` sha256 `withheld-2026-09-29`
- `charts/data/c2-staircase-rates.csv` sha256 `withheld-2026-09-29`
- `charts/data/c2-epoch-rates.csv` sha256 `897cbecdd3809ed7a34ccfd70a7c1163693eb396111413e036c37fbb1863868d`
- `charts/data/c2-survivorship.csv` sha256 `withheld-2026-09-29`
- `charts/data/ratio-ustar.csv` sha256 `withheld-2026-09-29`
- `charts/data/ratio-cost-ratio.csv` sha256 `withheld-2026-09-29`
- `charts/data/ratio-provenance.json` sha256 `withheld-2026-09-29`
