Repository navigation
feat(telemetry): report every remaining setting, drop the removed ones - #1105
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Summary
Merge Risk: ⚪ Minimal · up to
|
Contrast, Text smoothing, Panel motion, the UI and code fonts and Folder and branch never shipped (#951, #1033 are after v0.4.8), so their changelog fragments no longer add them and trim-settings removes only the five that shipped. Drops the pace text from the guide, removed settings from DESIGN.md's page list, a vacuous test, the contrast.ts credit and FontFamilyInput's unused placeholder prop.
…actor/trim-settings-2 # Conflicts: # src/lib/settings.test.ts
…settings from the docs DESIGN.md's Settings page list and paging notes and the guide's shortcut rows still described Highlight code, the chat paging toggle, Files at once and a configurable page overlap.
…eat/telemetry-all-settings
…chema (#1123) The Turkish UI language was removed in #1081, and `sanitizeSettings` loads a stored `"tr"` as `"system"`, so no snapshot can carry it. No release has sent a settings snapshot yet (#866 is in no `v*` tag), so dropping the value refuses nothing a shipped sender sends. - `shared/telemetry.ts`: `language` no longer accepts `"tr"` (type and validator). - `telemetry/worker.test.ts`: the Worker refuses a snapshot with `language: "tr"`. Every other setting is already reported (#1105), so the snapshot needs nothing else. **Before the next release:** `shared/telemetry.ts` is a Worker source, so redeploy the Worker and record it (`bun scripts/release-guards.ts --worker-deployed`, commit `telemetry/deployed.json`), per telemetry/README.md#deploy. The release guard fails until then. No changelog fragment: nothing a user sees changes. Tested: `bun run typecheck`; `HERDR_TEST_MODE=unit bun test` on telemetry/worker, src/lib/settings, src/lib/api, server/telemetry and scripts/release-guards tests (101 pass).
Stacked on #1104 (itself on #1099); retarget to
mainonce they merge.Change
The settings snapshot now covers every setting the app keeps after #1099 and #1104, so a later trim can be decided from data:
paletteLight,paletteDark,uiFontSize(11–20, ornullfor the screen's size),diffStyle, andusageOrderCustom, a yes/no for whether the usage meters' accounts were put in an order of the user's own (the accounts themselves are never sent, as forusageHiddenCount).terminalCursorStyle,terminalCursorBlink,narrowPaneFont,showSuggestionChip,usagePace,highlightCode,pageOverlapRows,chatPageKeys,attachLimit). No released version sends a snapshot yet (0.4.8 still sendschanged_settings), so nothing in the field breaks.paletteaccepts only the three palettes the app still has.TelemetrySourceSettingsno longer exempts the four settings it listed as "not collected", so a new setting still needs an explicit decision.Deployed
ALTER TABLE events ADD COLUMN settings TEXT(telemetry/README.md). The table now hassettings; all 1967 existing rows were kept, withsettingsNULL.84a7f138), andtelemetry/deployed.jsonupdated withbun scripts/release-guards.ts --worker-deployed. A malformed snapshot posted to the live endpoint is refused with 400.Validation
bun run check fast: generated types, typecheck and build pass. Its unit run caught the hard-coded key count inapi.test.ts(53 → 49); after that fix,bun run test:unitpasses 3584, 0 fail.telemetry/worker.test.ts(full snapshot, legacychanged_settings, real-table INSERT and the README queries),server/telemetry.test.ts,settings.test.tsandrelease-guards.test.tspass.