Sync free endpoint prompt data policies - #4789
Conversation
Code Review SummaryStatus: 1 Issue Found | Recommendation: Address before merge Executive SummaryThe Overview
Issue Details (click to expand)WARNING
Files Reviewed (3 files)
Fix these issues in Kilo Cloud Previous Review Summaries (5 snapshots, latest commit b8faecf)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit b8faecf)Status: No Issues Found | Recommendation: Merge Executive SummaryReviewed the latest commit, which is a pure rename of Files Reviewed (3 files)
Previous review (commit a75d40a)Status: No Issues Found | Recommendation: Merge Executive SummaryReviewed the latest commit, which replaces price-based inference of free OpenRouter endpoints with the explicit Files Reviewed (5 files)
Previous review (commit cbcc535)Status: No Issues Found | Recommendation: Merge Executive SummaryReviewed the latest commit, which mechanically splits a per-category flip test suite out of Files Reviewed (2 files)
Previous review (commit ab656a7)Status: No Issues Found | Recommendation: Merge Executive SummaryReviewed the follow-up commit that scopes the free-endpoint data-policy logic to public exclusive models and extends it to Files Reviewed (3 files)
Previous review (commit 74a27d6)Status: No Issues Found | Recommendation: Merge Executive SummaryReviewed the new free-endpoint data-policy normalization logic and its integration into Files Reviewed (3 files)
Reviewed by claude-sonnet-5 · Input: 28 · Output: 5.3K · Cached: 553.1K Review guidance: REVIEW.md from base branch |
…g-retention-logic # Conflicts: # apps/mobile/src/lib/hooks/agent-push-preference.test.ts
Summary
truefor normalized model/provider offerings when OpenRouter explicitly marks an endpointis_freerequires-data-collection, respectinginference_provider_restriction([]means every provider)Entries changed from live OpenRouter metadata
Fetched from OpenRouter frontend model metadata on 2026-07-27. These normalized provider/model entries change to training and retention
true:novita/inclusionai/ling-3.0-flash(training false, retention false)poolside/poolside/laguna-s-2.1(training false, retention true)poolside/poolside/laguna-xs-2.1(training false, retention true)cohere/cohere/north-mini-code(training false, retention true)poolside/poolside/laguna-m.1(training false, retention true)Paid zero-token Lyria endpoints are excluded because OpenRouter reports
is_free: false. Forbidden free families, including Gemma 4 and GPT-OSS 20B, are also excluded.Entries changed from Kilo-exclusive models
Only public exclusives participate. IDs are normalized before matching, empty restrictions apply to every displayed provider offering, and forbidden exact IDs are excluded.
Effective changes:
kwaipilot/kat-coder-pro-v2.5:free->streamlake/kwaipilot/kat-coder-pro-v2.5stepfun/step-3.7-flash:free->stepfun/stepfun/step-3.7-flashCovered by public
requires-data-collectionmetadata but already effectivetrue/true:deepseek/deepseek-v4-flash:discounted->deepseek/deepseek/deepseek-v4-flashdeepseek/deepseek-v4-pro:discounted->deepseek/deepseek/deepseek-v4-prostealth/claude-opus-4.6->stealth/stealth/claude-opus-4.6stealth/claude-opus-4.7->stealth/stealth/claude-opus-4.7stealth/claude-opus-4.8->stealth/stealth/claude-opus-4.8stealth/claude-sonnet-4.6->stealth/stealth/claude-sonnet-4.6stealth/gpt-5.6-sol->stealth/stealth/gpt-5.6-solstealth/qwen3.6-plus->stealth/stealth/qwen3.6-plusHidden Gemma and clawsetup exclusives and the disabled Seed exclusive are excluded.
Validation