Repository navigation
fix: replace retired default model with deepseek/deepseek-v4.1-flash-1017 - #11
Merged
Merged
Conversation
Deploying patchling with
|
| Latest commit: |
5a332b9
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://57b6f2f6.patchling.pages.dev |
| Branch Preview URL: | https://fix-default-model-retired.patchling.pages.dev |
mikkel
marked this pull request as ready for review
October 22, 2026 00:17
This was referenced Oct 22, 2026
Draft
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.
Bug
DEFAULT_MODELin 0.3.0 isxiaomi/mimo-v2.5-pro-ultraspeed. NanoGPT has retired that model, and it returns HTTP 410. So anygenerateDiff/smartapplycall made withoutmodeland withoutGPTDIFF_MODELfails.Fix
The new default is
deepseek/deepseek-v4.1-flash-1017, the same id patchling-py uses (companion PR: 255BITS/patchling-py#24).Why this model: Mikkel asked for DeepSeek V4.1, the 1017 release. In NanoGPT's free
GET https://nano-gpt.com/api/v1/models?detailed=truelisting (fetched 2026-10-21 13:03 MT):deepseek/deepseek-v4.1-flash-1017("DeepSeek V4.1 Flash 1017", the October 17, 2026 snapshot) is listed at $0.10 / $0.60 per 1M input/output tokens, with a 1,048,576 context and 393,216 max output tokens. It is the only id that names the 1017 release with standard serving.deepseek/deepseek-v4.1-flash-1017:thinking(same price, thinking always on) and asTEE/deepseek-v4.1-flash(secure-enclave serving, $0.65 / $1.45). The undateddeepseek/deepseek-v4.1-flashis a rate-limited beta.xiaomi/mimo-v2.5-pro-ultraspeed(JS) anddeepseek-reasoner(Python).An earlier commit on this branch used
xiaomi/mimo-v2.6-pro. The latest commit replaces it everywhere.Changes
src/env.js,landing/lib/env.js(kept byte-identical forlanding_lib_sync), regeneratedsrc/env.d.ts(npm run types), the README env table, and thetest/live.test.jsheader comment.test/fixtures/demo-models.json:deepseek/deepseek-v4.1-flash-1017, copied field for field from the 2026-10-21 listing.verifiedOnmoves to 2026-10-21, andcatalogSha256now covers that listing. The three existing entries (z-ai/glm-5.3-flash,xiaomi/mimo-v2.6-flash,xiaomi/mimo-v2.6-pro) were re-checked and are unchanged.test/default_model.test.jsasserts that the default isdeepseek/deepseek-v4.1-flash-1017, that the retired id is not the default (in eithersrcorlanding/lib), that the default is in the verified catalog and cheap (≤ $0.50 / $1 per 1M), and that the.d.tsliteral matches.Unchanged on purpose:
filterRelevantdefaultxiaomi/mimo-v2.6-flashis still listed.landing/index.html's saved-pick migration list and its test, so visitors who saved it are reset.No version bump, tag, or publish.
Tests (local)
npm test: 248 tests, 244 passed, 0 failed, 4 skipped (live). Main: 240 passed, 4 skipped.Live smoke (one call, authorized by Mikkel)
One tiny
generateDiffcall through the default path: nomodelargument,GPTDIFF_MODELunset, the default NanoGPT base URL, andmax_tokens400. The task was a one-line edit (hello→hi).deepseek/deepseek-v4.1-flash-1017, HTTP 200.-hello/+hi).