Source: https://api-docs.deepseek.com/quick_start/pricing/ (read 2026-09-20) and https://models.dev/api.json (deepseek provider, fetched 2026-09-20). FACTS MEASURED, not recalled: - DeepSeek's own table lists exactly TWO current models: deepseek-flash and deepseek-v4-pro. - Footnote (1): "Use deepseek-flash as the model name. The legacy names deepseek-v4-flash and deepseek-v4-flash-vision-exp are still accepted, but the corresponding models have been retired, their requests are served by the DeepSeek-V4.1-Flash model and billed at the Flash price." - deepseek-flash off-peak: input(cache miss) 0.15 / output 0.60 / cache-hit read 0.003 per 1M. Peak doubles it (01:00-04:00 and 06:00-10:00 UTC, Mon-Fri). - models.dev agrees: provider=deepseek, models deepseek-v4-flash, deepseek-flash, deepseek-v4-flash-vision-exp ALL carry cost {input 0.15, output 0.6, reasoning 0.6, cache_read 0.003}. deepseek-v4-pro carries {0.435, 0.87, 0.87, 0.003625}. WHAT THIS SETTLES FOR YOYO: - src/format/cost.rs:187 prices at (0.55, 0.0, 0.0, 2.19) and is REACHED before :200 because the table's arms are substring tests and contains... wait, :187 tests v4-flash first and is therefore the arm the config's model id hits. - VERIFIED REPO-INTERNAL CONTRADICTION: .yoyo.toml comment (written 2026-09-15) says deepseek-v4-flash is a legacy name served by V4.1-Flash at the Flash price. The file's own text asserts that :187 should price it at the FLASH rate, i.e. the :200 row. So the defect is provable WITHOUT the live page: the config comment and the pricing arm disagree. The live page and models.dev independently confirm the config comment is right and :187 is stale (3.7x overstatement). - The pin at src/format/cost.rs:1713 (near-miss guard) asserts the WRONG number byte-identically. A test that agrees with the table is vacuous against the table drifting. PRIOR ART worth keeping: yoagent 0.18.1 ships tests/price_audit.rs, auditing its presets against models.dev. Its header records that claude_sonnet_5 carried Sonnet 4.6 rates (3/15 vs published 2/10) from v0.9.0 through v0.16.5 -- 18 releases, 50% overstatement on every cost_usd -- found by someone asking, not by a mechanism. The design rule: a failure is a DRIFT ALARM that sends a human to the vendor page, never an auto-patch. - models.dev exposes https://models.dev/api.json (222 providers, 4.7MB) with per-provider per-model cost {input, output, reasoning, cache_read} -- usable as the external source of truth. - Cache-hit pricing is often an order of magnitude below cache-miss (DeepSeek: 0.003 vs 0.15). A local table that leaves cache_read at 0.0 is not "cheap", it is a wrong number that reports a HIGHER bill than reality.