feat(ui): show model count as enabled/total - #19
Open
245678000000 wants to merge 1 commit into
Open
Conversation
Closes the first half of CometixSpace#9. Both counters in the sidebar showed only the total, so there was no way to tell how many of a provider's models are actually registered into Cursor's model picker without expanding the provider and reading every toggle. accordion head "7 models" -> "2/7 models" models section "Models (7)" -> "Models (2/7)" The counting lives in a new store helper modelCountLabel(), following getModelErrors()'s precedent of keeping long expressions out of the templates. "Enabled" is defaultOn === true, the same test the model-card toggle binds to. Both spans get a title so the ratio is self-explaining. The head loses its "1 model" singular form, which no longer reads sensibly next to a ratio. The second half of CometixSpace#9 (edited apiModel/displayName sometimes not refreshing in chat until the server is restarted) is untouched.
Rogers-F
added a commit
to Rogers-F/CCursor
that referenced
this pull request
Aug 29, 2026
- LLMMessage/StoredMessage 链路白名单透传 providerOptions.cursor.isSummary: normalizeStoredMessage/restoreStoredMessage/storedMessageToLLMMessage/ llmMessageToStoredMessage/materializeHistoryEntries/flushMessageBlobs 不再丢弃该字段 —— 根治"旧摘要重复进摘要源+重复归档"的地板爬升 - isSummaryBlobMessage 增加内容前缀 fallback (双格式): assistant + `Previous conversation summary:` 或官方 `[Previous conversation summary]:` 对修复上线前的存量摘要 blob (标记已丢) 立即生效 - repair 无连续同角色合并逻辑, Σ+assistant 邻接由测试锁定不被合并 (豁免以测试守护) - 测试: CometixSpace#19 双格式识别 / CometixSpace#7 标记经 repairHistoryEntries 存活 + archive 过滤
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.
Closes the first half of #9.
Summary
Both counters in the sidebar showed only the total, so there was no way to tell how many of a provider's models are actually registered into Cursor's model picker without expanding the provider and reading every toggle.
7 models2/7 modelsModels (7)Models (2/7)Both spans also get a
title="Enabled / total models"so the ratio explains itself on hover.Notes
modelCountLabel(), followinggetModelErrors()'s precedent of keeping long expressions out of the templates.defaultOn === true— the same test the model-card toggle binds to (x-bind:checked="m.defaultOn === true"), so the ratio always matches what the switches show.1 modelsingular form, which no longer reads sensibly next to a ratio.apiModel/displayNameon an existing model sometimes not refreshing in chat until the server is restarted) is not addressed here — that one needs digging into the client-side cache and deserves its own PR.Test plan
The repo has no UI test harness (vitest only collects
src/server/tests/**), so instead of restructuring that for one label, I rendered the two components through their hono/jsx factory and evaluated the emittedx-textagainst the helper:pnpm --dir "Cursor++" run check-typespnpm --dir "Cursor++" run lintnode esbuild.js --production