Releases: Jiahui-Gu/ccsm
Releases · Jiahui-Gu/ccsm
Release list
v0.2.20
What's Changed
- feat(voice): runtime on-demand whisper model download with 6 selectable tiers by @Jiahui-Gu in #1474
- feat(pty): always launch claude with --dangerously-skip-permissions by @Jiahui-Gu in #1476
- refactor(db): migrate better-sqlite3 -> node:sqlite (eliminate native-ABI test/prod split) by @Jiahui-Gu in #1475
Full Changelog: v0.2.19...v0.2.20
v0.2.19
What's Changed
- revert: roll back mobile-remote public-internet client (#1462) to fix startup crash by @Jiahui-Gu in #1473
Full Changelog: v0.2.18...v0.2.19
v0.2.18
What's Changed
- fix(build): unpack @shinyoshiaki/binary-data so 0.2.17 startup crash is fixed (v0.2.18) by @Jiahui-Gu in #1472
Full Changelog: v0.2.17...v0.2.18
v0.2.17
What's Changed
- docs: audit-driven cleanup (DEBT refresh, STATUS pointer, archive stale plans) by @Jiahui-Gu in #1408
- build(webpack): add production bundle-size budget (warn at 1.6MiB) by @Jiahui-Gu in #1410
- docs(debt): refresh audit register (2026-05-29) by @Jiahui-Gu in #1414
- security(csp): set Content-Security-Policy response header (dev/prod aware) by @Jiahui-Gu in #1413
- fix(deps): audit-fix prod vulnerabilities; add audit scripts by @Jiahui-Gu in #1412
- refactor(sidebar): extract SidebarActionsContext, drop 5 prop-drilled callbacks by @Jiahui-Gu in #1411
- docs(debt): mark #7/#11/#17/#18 DONE after paydown batch by @Jiahui-Gu in #1415
- docs(project): add root AGENTS.md + CLAUDE.md orientation (debt #8) by @Jiahui-Gu in #1416
- perf(renderer): lazy-load Settings/Command/Import dialogs (debt #3) by @Jiahui-Gu in #1417
- refactor(terminal): break terminal↔store circular dependency (debt #6) by @Jiahui-Gu in #1418
- docs(debt): close out #3 — lazy-load DONE, vendor splitChunks WONTFIX by @Jiahui-Gu in #1419
- docs(debt): refresh ledger — god-file LOC, dev-only audit (verification pass) by @Jiahui-Gu in #1420
- chore(deps): upgrade @anthropic-ai/claude-agent-sdk 0.2 → 0.3.156 (DEBT #2) by @Jiahui-Gu in #1421
- fix(mobile-remote): isolate pty.data per subscribed session + harden token compare by @Jiahui-Gu in #1425
- fix(ptyHost): guard JSONL watcher teardown behind session-identity check by @Jiahui-Gu in #1423
- fix(ipc): expand tilde cwd before persisting in app:userCwds:push by @Jiahui-Gu in #1426
- fix(drafts): flush pending composer draft on beforeunload by @Jiahui-Gu in #1424
- refactor(window): split createWindow.ts god-file (DEBT #4) by @Jiahui-Gu in #1428
- refactor(terminal): split shellRegistry.ts god-file (DEBT #4) by @Jiahui-Gu in #1429
- refactor(log): split log.ts god-file (DEBT #4) by @Jiahui-Gu in #1430
- fix(db): checkpoint WAL on every saveState to survive OS restart by @Jiahui-Gu in #1427
- refactor(remote): split mobileRemoteServer.ts god-file (DEBT #4) by @Jiahui-Gu in #1432
- refactor(stores): split sessionCrudSlice.ts god-file (DEBT #4) by @Jiahui-Gu in #1431
- ci: unblock doc-only PRs + record DEBT #1/#2/#4/#20 by @Jiahui-Gu in #1433
- feat(mobile-remote): make the mobile client genuinely phone-usable by @Jiahui-Gu in #1422
- feat: local voice input (mic -> Whisper -> inject) by @Jiahui-Gu in #1434
- feat(mobile-remote): real-device polish — keyboard, orientation, PWA by @Jiahui-Gu in #1436
- fix(notify): idle-confirmation window — stop notifying on mid-task pauses by @Jiahui-Gu in #1437
- feat(mobile-remote): WS heartbeat ping + half-open client reap (Track B) by @Jiahui-Gu in #1438
- test(e2e): mock Anthropic API in all CLI-spawning harnesses by @Jiahui-Gu in #1435
- fix(ipc): cap unbounded IPC arrays (DEBT #12) by @Jiahui-Gu in #1439
- feat(terminal): self-drawn scrollbar from xterm buffer (single source of truth) by @Jiahui-Gu in #1442
- feat(voice): AVX2 whisper-cli subprocess backend (13s -> sub-second) by @Jiahui-Gu in #1443
- feat(ui): reposition scroll-to-bottom and mic buttons by @Jiahui-Gu in #1445
- feat(voice): warm whisper exe/model into page cache on startup by @Jiahui-Gu in #1446
- docs(ptyHost): correct reload tail-loss root-cause comments by @Jiahui-Gu in #1449
- feat(voice): toast feedback, recording timer + a11y for dictation by @Jiahui-Gu in #1452
- fix(ui): align scroll-to-bottom button center Y with Settings button by @Jiahui-Gu in #1454
- feat(mobile-remote): public-internet phone client (OAuth phone-flow + PWA from Worker) by @Jiahui-Gu in #1462
- fix(terminal): native viewport scrollbar reconcile on shell reveal (#82) by @Jiahui-Gu in #1471
Full Changelog: v0.2.16...v0.2.17
v0.2.16
What's Changed
- docs: attach redesign — from-scratch counter-proposal by @Jiahui-Gu in #1390
- chore(release): disable hourly auto-release cron by @Jiahui-Gu in #1392
- feat(attach): rewrite around shellRegistry + z-stack + per-shell mask by @Jiahui-Gu in #1393
- Revert #1393: attach redesign (dev crash unhandledRejection) by @Jiahui-Gu in #1394
- chore(i18n): remove dead UI residues (AskUserQuestion, Composer/InputBar, PermissionPrompt) by @Jiahui-Gu in #1397
- test(e2e): workflow group VI window-lifecycle-notify by @Jiahui-Gu in #1401
- test(e2e): workflow group ① session-lifecycle (6 cases, shared electron) by @Jiahui-Gu in #1400
- test(e2e): workflow groups ④⑤ error-recovery + paste-fidelity by @Jiahui-Gu in #1399
- test(e2e): workflow groups ②③ persistence-resume + import-from-claude (2 standalone) by @Jiahui-Gu in #1402
- chore(e2e): delete obsolete real-cli harness + unblock CI skip by @Jiahui-Gu in #1398
- fix(main): print full reason+stack on unhandledRejection by @Jiahui-Gu in #1395
- feat(attach): rewrite around shellRegistry + z-stack + per-shell mask (v3) by @Jiahui-Gu in #1396
- chore(terminal): delete obsolete warm-registry + tidy stale refs by @Jiahui-Gu in #1403
- fix(terminal): pass current session cwd on reload spawn (#79a) by @Jiahui-Gu in #1404
- fix(terminal): restore keyboard input after reload (#79b) by @Jiahui-Gu in #1405
- chore(cwd): log empty-cwd fallback at resolver boundary (#83) by @Jiahui-Gu in #1406
- fix(terminal): defer scroll-to-bottom past dimension settle (#82) by @Jiahui-Gu in #1407
Full Changelog: v0.2.15...v0.2.16
v0.2.15
What's Changed
- fix(terminal): warm switch uses display toggle, not reparent (bug #69) by @Jiahui-Gu in #1388
Full Changelog: v0.2.14...v0.2.15
v0.2.14
What's Changed
- fix(dev): preflight no longer kills sibling webpack-dev-server by @Jiahui-Gu in #1386
- feat(dev): random port + per-run userData for npm run dev (#68) by @Jiahui-Gu in #1387
Full Changelog: v0.2.13...v0.2.14
v0.2.13
What's Changed
- fix(dev): PowerShell CIM fallback for 4100 preflight + tighter parsers by @Jiahui-Gu in #1384
Full Changelog: v0.2.12...v0.2.13
v0.2.12
What's Changed
- fix(terminal): warm session switch preserves scrollbar thumb position by @Jiahui-Gu in #1374
- fix(sessions): unarchive uses ensureUsableGroup fallback (no orphan when g-default deleted) by @Jiahui-Gu in #1380
- fix(shortcuts): wire Ctrl+Shift+N to create new group by @Jiahui-Gu in #1381
- fix(pty): async taskkill — quit no longer freezes UI on Windows by @Jiahui-Gu in #1382
- feat(dev): distinguish dev process from installed CCSM + 4100 preflight by @Jiahui-Gu in #1379
- test(visual): HTML snapshot net for chrome components by @Jiahui-Gu in #1383
Full Changelog: v0.2.11...v0.2.12
v0.2.11
What's Changed
- chore(infra): pin Node >=22 via engines + .nvmrc, bump CI to Node 22 by @Jiahui-Gu in #1372
- chore(lint): close --max-warnings 0 gate; drop 114 dead eslint-disable directives by @Jiahui-Gu in #1373
- security(pty): runtime typeof + range guards on pty:input/pty:resize by @Jiahui-Gu in #1376
- chore(test): tighten coverage thresholds from ~8pp to ~3pp under baseline by @Jiahui-Gu in #1377
- chore(infra): make Node engines hard-enforced + fix e2e cache key node20 label by @Jiahui-Gu in #1375
- chore(docs): add CODEOWNERS + DEBT.md (technical-debt audit 2026-05-25) by @Jiahui-Gu in #1378
Full Changelog: v0.2.10...v0.2.11