OpenCode Go deepseek-v4.1-flash: no thinking-level selector (snapshot refresh job can't open its PR)
- Dominant language
- TypeScript
- Stars
- 5.4k
- Forks
- 502
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 715
Description
### What happened
Using the built-in **OpenCode Go** connection with the model **`deepseek-v4.1-flash`** ("DeepSeek V4.1 Flash"), the composer shows **no thinking-level (reasoning effort) selector**, so effort can't be adjusted.
Expected: Maka derives the selector from model-catalog metadata, and upstream models.dev already declares reasoning options for this model — so the selector should appear with **low / high / max**.
Root cause: the bundled models.dev snapshot is stale and does not contain this model at all. Selecting the older id `deepseek-v4-flash` on the same connection *does* show the selector, which isolates this to the missing metadata entry for `deepseek-v4.1-flash`.
The weekly job that would refresh the snapshot exists (added in #4460) but its only run so far failed, so no refreshed snapshot has landed since 2026-09-01.
### How to reproduce
1. Settings → Models: select the built-in **OpenCode Go** connection.
2. Pick the model **DeepSeek V4.1 Flash** (`deepseek-v4.1-flash`).
3. Look at the composer's model row (a new chat, or the active session).
→ No thinking-level control appears.
4. Compare with the same connection, model **DeepSeek V4 Flash** (`deepseek-v4-flash`).
→ The low / high / max selector appears.
### Environment
- Maka version or commit: 0.2.0-dev.28.20260911 (nightly, `v0.2.0-dev.28.20260911`)
- OS and version: macOS
- Surface: Desktop
- Node.js version, if running from source: —
### Logs, screenshots, or additional context
Bundled snapshot (`scripts/model-metadata/models-dev-api.snapshot.json`) is the 2026-09-01 one:
- `origin.retrievedAt`: `2026-09-01T10:29:38.000Z`
- git blob: ``
- It has **no** `opencode-go/deepseek-v4.1-flash` entry. This same blob is what `main` carries today and what the 0.2.0-dev.28 build used.
Upstream already declares it — `anomalyco/models.dev`, `providers/opencode-go/models/deepseek-v4.1-flash.toml`:
```toml
base_model = "deepseek/deepseek-v4-flash"
name = "DeepSeek V4.1 Flash"
[[reasoning_options]]
type = "effort"
values = ["low", "high", "max"]
```
Local derivation confirms the miss:
```
lookupModelMetadata('opencode-go', 'deepseek-v4.1-flash') -> {} // no entry
thinkingVariantsForModel('opencode-go', 'deepseek-v4.1-flash') -> [] // selector hidden
thinkingVariantsForModel('opencode-go', 'deepseek-v4-flash') -> ["low","high","max"]
```
The scheduled refresh is failing, so the snapshot never advances:
- Workflow: `.github/workflows/model-metadata-upkeep.yml` ("Model metadata upkeep"), created 2026-09-01.
- Runs: exactly **one** — https://github.com/apache/maka/actions/runs/34093584258 — event `schedule`, started `2026-09-07T07:03:09Z`, conclusion **failure**.
- Failing step: **"Open the review pull request"**.
- Preceding steps all succeeded: "Report snapshot drift against models.dev", "Refresh the snapshot from models.dev", "Verify the regenerated outputs", "Detect a snapshot change". So the refresh produced a change, but the PR could not be opened — and the change was lost.
Impact: every model that upstream models.dev adds after 2026-09-01 is undescribed in released builds (no thinking levels, no metadata) until the updater can actually open/merge its PR.
Contributor guide
Research direction
Start with .github/workflows/model-metadata-upkeep.yml and inspect the failing "Open the review pull request" step, then review scripts/model-metadata/models-dev-api.snapshot.json and the preceding refresh and verification steps. Re-run the upkeep workflow or its relevant checks; done means the refreshed snapshot is retained and the workflow successfully opens its review pull request.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, typescript
- Domain
- ci-cd, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100