Commit Graph
2772 Commits
Author SHA1 Message Date
Bohdan Triapitsyn 4f53db17e6 fix(worktrees): protect user changes across ambiguous move failures
Post-merge hardening of the session-to-worktree move (#2998), driven by
review findings on the follow-up pass:

- an ambiguous transport failure (relay abort, timeout) on the
  change-carrying move no longer force-deletes the fresh worktree that
  may hold the user's only copy of their changes; both intent kinds
  surface honest guidance and refresh both directories
- assertSdkSuccess re-tags ambiguous transport errors when wrapping SDK
  failures, so ambiguity classification survives the wrapper on every
  path, matching the prompt-send precedent
- session liveness checks scan all child stores plus the global status
  index, and report unknown (not idle) when no store covers the session
  — an evicted background directory can no longer make a busy session
  look movable
- incomplete-rollback errors carry the changes-may-be-in-destination
  guidance instead of swallowing it
- move-message assembly shared across the three call sites; tests now
  exercise the real ambiguity classifier (extracted to
  send-failure-classification.ts) instead of a hand-mirrored mock
- i18n fallout from the merge train: Turkish gains the 21 worktree-move
  keys, all 12 locales get the hedged ambiguous-failure toast; owning
  DOCUMENTATION.md files record the new contracts
2026-08-28 12:03:55 +03:00
Bohdan Triapitsyn 820e3194b5 Merge pull request #2998 from mattv8/feat/move-session-existing-worktree
feat(sessions): move sessions to existing worktrees
2026-08-28 11:37:21 +03:00
Bohdan Triapitsyn 06263a5c2b Merge pull request #3064 from fitzgpt/feat/i18n-turkish
feat(i18n): add Turkish (tr) locale
2026-08-28 11:33:52 +03:00
mattv8 bcaa70216f fix(sessions): restore worktree menu type wiring 2026-08-27 18:43:37 -06:00
mattv8 13ef639479 fix(sessions): keep chat worktree actions hidden 2026-08-27 18:43:37 -06:00
mattv8 a35ff1032c fix(sessions): avoid staged-change rollback conflicts 2026-08-27 18:43:37 -06:00
mattv8 1a9ff65380 docs(sessions): document dirty-source move choice 2026-08-27 18:43:37 -06:00
mattv8 26d6d72551 fix(sessions): preflight every worktree move 2026-08-27 18:43:37 -06:00
mattv8 8fc08853b3 feat(sessions): confirm dirty-source worktree moves 2026-08-27 18:43:37 -06:00
mattv8 0d4b3f036a fix(sessions): require explicit worktree change transfer 2026-08-27 18:43:37 -06:00
mattv8 c75c7809df test(sessions): complete global sessions store mock 2026-08-27 18:43:37 -06:00
mattv8 285bb35224 fix(sessions): recheck idle tree during worktree move 2026-08-27 18:43:37 -06:00
mattv8 52bea6d1f3 fix(sessions): harden worktree move recovery 2026-08-27 18:43:37 -06:00
mattv8 415f443a79 fix(sessions): keep worktree menu hook order stable 2026-08-27 18:43:37 -06:00
mattv8 9babd19d9b feat(sessions): move sessions to existing worktrees 2026-08-27 18:42:57 -06:00
fitzgpt 83c2c7dc76 feat(i18n): add Turkish (tr) locale 2026-08-28 02:27:31 +03:00
Bohdan Triapitsyn b8465ae133 fix: harden and de-slop the merged contribution batch
Follow-ups promised on merge, plus review findings on the batch itself:

- chat: task-tool output now respects the 512KiB render cap; quick-open
  icon is visible at rest on coarse pointers and reachable by keyboard
  (row keydown no longer swallows inner-button Enter/Space); composer
  inline-code decoration drops the metric-shifting padding; a btw fork
  send carries only the boundary instruction, never the promotion notice
- sync: cascade revert/unrevert aborts busy descendants, busy state is
  read from every child store at the moment of use; rule 9 documents
  redo clearing all descendant revert markers
- electron: renderer recovery keeps memory-eviction (a valid
  render-process-gone reason) and both windows share one
  attachRendererRecovery helper
- vscode: process registry is a thin re-export of the web module
  (provider-env-aliases precedent) with ordered register/unregister
  writes and an awaited close
- server/cli: managed-process registry takes injectable deps (fixes the
  unreaped-orphans ReferenceError), corrupt settings errors name the
  file, getWorktrees test restores console.warn
- tests: module-mock harnesses removed (AgentsSidebar, SettingsView
  mobile focus — behaviors stay live but uncovered, accepted trade),
  QuestionMarkdown asserts rendered DOM
- i18n: German gains the debug-panel request keys, Japanese/German drop
  removed worktree keys, Ukrainian unit spacing fixed
- changelog: Copilot AI Credits entries (main + VS Code)
2026-08-28 02:08:09 +03:00
Bohdan Triapitsyn 98567cd6e0 Merge main 2026-08-28 01:27:32 +03:00
Bohdan Triapitsyn de72625dc0 Merge main 2026-08-28 01:26:12 +03:00
Bohdan Triapitsyn cdfd28b3ca Merge main 2026-08-28 01:25:55 +03:00
Bohdan Triapitsyn 56e1eb5416 Merge main 2026-08-28 01:25:37 +03:00
Bohdan Triapitsyn 888f59fc80 Merge pull request #3033 from difagume/fix/inline-code-contrast
fix(ui): improve inline code contrast and chip styling
2026-08-28 01:25:02 +03:00
Bohdan Triapitsyn 34c96f8422 Merge pull request #2375 from JSap0914/fix/2265-tool-output-size-cap
fix(ui): cap oversized tool output before rendering to prevent renderer OOM (#2265)
2026-08-28 01:24:48 +03:00
Bohdan Triapitsyn 5a439ea73d Merge pull request #3127 from robertoberto/feat/quick-open-icon-in-tool-header
feat(chat): add quick-open file icon in tool card header
2026-08-28 01:24:42 +03:00
Bohdan Triapitsyn 3d397b4ad4 Merge pull request #1752 from bashrusakh/fix/1736-branch-filter
fix(worktree): hide non-matching branches during search
2026-08-28 01:24:36 +03:00
Bohdan Triapitsyn e205452223 Merge pull request #2771 from shijie152/fix/relay-key-atomic-settings
fix(cli): atomic settings writes and gate relay key regeneration in connect-url
2026-08-28 01:24:30 +03:00
Bohdan Triapitsyn 024a61aa88 Merge pull request #3169 from wqpan/fix/renderer-crash-recovery
fix(electron): recover crashed renderer windows
2026-08-28 01:24:24 +03:00
Bohdan Triapitsyn 1b5531e266 Merge pull request #1807 from TomzxForks/requests-in-flight
feat(debug): add fetch requests-in-flight tracker with age percentiles
2026-08-28 01:24:17 +03:00
Bohdan Triapitsyn 08a98ce459 Merge pull request #3171 from pocharlies-org/feat/btw-boundary
feat(btw): make a btw session a side question, not a continuation of the parent
2026-08-28 01:24:03 +03:00
Bohdan Triapitsyn 70b04412de Merge pull request #2488 from pascalandr/fix/856-question-markdown
fix(chat): render question prompts as markdown
2026-08-28 01:23:57 +03:00
Bohdan Triapitsyn feba432407 Merge pull request #2784 from herjarsa/fix/silence-worktree-warning-for-non-git-dirs
fix(git): silence getWorktrees warning when directory is not a repo
2026-08-28 01:23:51 +03:00
Bohdan Triapitsyn b25b64c000 Merge pull request #3146 from alexandrereyes/feat/undo-subagent
feat(ui): cascade undo and redo to subagents
2026-08-28 01:23:46 +03:00
Bohdan Triapitsyn 5854f43ca1 Merge pull request #2907 from jakoss/github-usage-rework
Align GitHub Copilot quota usage with AI credits
2026-08-28 01:23:40 +03:00
Bohdan Triapitsyn f64d8b59c8 Merge pull request #3109 from bashrusakh/fix/2982-mobile-agent-duplicate
fix(agents): open duplicate editor on mobile
2026-08-28 01:23:34 +03:00
Bohdan Triapitsyn 073c55a129 Merge pull request #2858 from TomzxForks/issue-2847
Remove the 5-model limit on multi-run groups
2026-08-28 01:23:28 +03:00
Bohdan Triapitsyn 0596af5761 Merge pull request #3000 from mpeter/fix/anthropic-small-model-base-url
fix(small-model): route anthropic provider through configured baseURL
2026-08-28 01:23:22 +03:00
Bohdan Triapitsyn 655c04aba6 Merge pull request #3151 from yangyaofei/fix-deferred-permissions
fix(sync): keep bootstrap context live for deferred recovery pulls
2026-08-28 01:23:16 +03:00
Bohdan Triapitsyn 1d423c32d5 Merge pull request #2314 from floze-the-genius/fix/2312-github-settings-disconnect
fix: keep GitHub settings mounted during refresh
2026-08-28 01:23:10 +03:00
Bohdan Triapitsyn d49ff426ab Merge pull request #2844 from sergiofspedro/fix/windows-port-release
fix: kill orphaned process on Windows before OpenCode restart
2026-08-28 01:23:04 +03:00
Bohdan Triapitsyn bfcd1830f0 Merge pull request #1727 from HAHH9527/fix/windows-schtasks-tr-261-char-limit
fix(cli): externalize Windows startup PowerShell to .ps1 wrapper (schtasks /TR 261-char limit)
2026-08-28 01:22:57 +03:00
Bohdan Triapitsyn 285c63e238 Merge pull request #1946 from divyam234/fix/theme-runtime-symlink-themes
fix: load symlinked custom themes
2026-08-28 01:22:52 +03:00
Bohdan Triapitsyn 5c03a2a6a7 Merge pull request #2880 from franzudev/fix/markdown-fence-caret
fix(composer): keep caret inside completed fence
2026-08-28 01:22:45 +03:00
Bohdan Triapitsyn 27be3f3193 Merge pull request #3038 from colinmollenhour/bug/Fix-External-OpenCode-Host-Recovery
fix(opencode): preserve external host during recovery
2026-08-28 01:22:23 +03:00
Bohdan Triapitsyn ce61646b27 Merge pull request #2510 from IbrahimKhan12/fix/2504-composer-double-space-period
fix: keep the composer's autocorrect on where the platform provides one
2026-08-28 01:22:16 +03:00
Bohdan Triapitsyn c3f3c5aeb7 Merge pull request #3040 from gaojunran/fix/cjk-markdown-links
fix(markdown): keep CJK/fullwidth punctuation out of bare-URL autolinks
2026-08-28 01:22:11 +03:00
Bohdan Triapitsyn 87eacc4c5e Merge main 2026-08-27 23:17:06 +03:00
Bohdan Triapitsyn 8663411fdd Merge main 2026-08-27 23:16:29 +03:00
Bohdan Triapitsyn 78457611e4 Merge pull request #1890 from a0000001/fix/win-process-tree-kill
fix: kill process tree on Windows via taskkill before SIGTERM fallback
2026-08-27 23:15:45 +03:00
Bohdan Triapitsyn 64f3f46d93 Merge pull request #1957 from bketelsen/fix/sw-notificationclick-focus
fix(pwa): focus existing window on notification click
2026-08-27 23:15:39 +03:00
Bohdan Triapitsyn 3d8b801d52 Merge pull request #2120 from herjarsa/fix/chat-anchor-save-race
fix(chat): save previous-session anchor in microtask with bail check
2026-08-27 23:15:33 +03:00