Repository navigation
fix(models): verify free-tier evidence and reject variable-price Kilo routing - #17138
Merged
diegosouzapw merged 4 commits intoOct 19, 2026
Merged
Conversation
Contributor
CI Coverage Report
Coverage artifact was not available for this run. |
Resolve the README mirror conflicts by keeping the release's re-translated mirrors and re-applying only this PR's catalog-count edit (478 -> 467, in each locale's digit script) in the free-tier paragraph, the budget-card alt text and the FREE_TIERS row. Also correct the remaining stale count in the README catalog paragraph (468/478 per-model rows -> 467) so the README states one total. .i18n-state.json: release state + this PR's FREE_TIERS entry; README mirror target hashes refreshed only (README source provenance was already stale on the release, so no section is certified).
…2 after dropping auto-beta The free-catalog expansion test pinned at least 13 Kilo rows; this PR removes the variable-price openrouter/auto-beta row, leaving 12 verified free rows. The screenshot budget card still printed 468 models; regenerated from the catalog (467).
diegosouzapw
added a commit
that referenced
this pull request
Oct 19, 2026
…17137) Merged via /merge-batch (2026-10-19). Board validation on the current base together with #17138: npm run lint 0, typecheck core + open-sse 0, check:docs-all 0, file-size, test-masking, changelog-integrity, env-doc-sync, complexity, cognitive, provider-consistency 0; 187 affected unit files 2093 pass with only the 3 base-red #15306 i18n state tests failing. CI reds are inherited (i18n state tests, Docs Sync drift, Gate / Quality, E2E 3/9 mobile sidebar fail on unrelated PRs too).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Kilo's
openrouter/auto-betarouter reports variable prices (-1), but its static catalog row made it look free even without a verified free payload. Remove that unconditional grant and cover free badges/import with a regression; retain the genuinely free auto router.Audit eight exact Kilo model IDs against the public API and two Gemini IDs against Google's pricing page. Evidence records increase from 3 to 13, legacy research debt falls from 71 to 60, and the catalog now has 467 entries. Keep the immutable legacy seed and debt ratchet unchanged. Update affected English counts and the same three numeric contexts in all 66 README mirrors.
Related Issues
Refs #17028. This is a partial audit, not complete resolution of the issue.
Target Branch
release/v3.8.52; reconciled to6ba34bc130c11773baefffb07f7c4846fd243030.Validation
npm run typecheck:core.npm run check:docs-all; counts, links and fabricated-reference checks pass.Tests Added Or Updated
tests/unit/kilo-variable-price-free-catalog-17028.test.ts: ID-only, variable and positive prices cannot get a free badge or free-only import; verified free route remains available.tests/unit/siliconflow-paid-free-17028.test.ts: measured catalog total updated; paid/unknown protections remain.tests/unit/build/free-catalog-evidence.test.mjs: bootstrap fixture intersects the frozen seed with live catalog identities, preserving rejection of reintroduced debt in PR, merge-group and push events.Coverage Notes
The focused 60-test run covers public free-model/import decisions, SiliconFlow paid-evidence persistence, catalog policy and CLI baseline comparison. The new Kilo assertion was RED before the change. No final coverage percentage or mutation score is claimed. Dependencies were physically borrowed from the shared checkout; this is not a clean-install certificate.
Reviewer Notes
Sources: Kilo public model list, Kilo gateway documentation, Gemini pricing, checked October 19, 2026. Capacity, account restrictions and pricing changes still apply; these records do not guarantee billing protection.
SiliconFlow's global Qwen3-8B page lists paid input/output, while Chinese partner examples describe free access in a different context. ID-only model discovery has no price/entitlement proof, so this PR does not invent a global free allowlist. Explicit live free evidence and paid veto behavior remain unchanged.
The README mirrors already had stale source provenance before this patch. Only verified numeric contexts and their target byte hashes are updated; source/section provenance is deliberately preserved. The existing broader i18n incident #15306 remains open, and this PR does not certify the whole release as green.
CI follow-up: translated counts
The first CI candidate
d21aa1e90babd233cc4d62505893261c5629fab7(base6ba34bc+ headfb04449e) exposed one new drifted source: FREE_TIERS, in addition to 17 already present on that base. The follow-up changes exactly two numbers in each of its 66 mirrors (468→467 total; 13→12 training disclosures). Before editing, every source/target hash and section hash matched the old source; the English semantic delta was proven to contain only these numbers, with Prettier table-spacing changes. Only this document's verified numeric provenance was advanced. README's pre-existing source drift remains visible.After the follow-up,
check:docs-allpasses and translation drift returns to the same 17 baseline sources, with FREE_TIERS absent. This does not turn the overall Docs Sync gate green: the existing translation work and all current required CI remain pending.