aboutsummaryrefslogtreecommitdiff
path: root/src/workspace/git
AgeCommit message (Collapse)Author
2026-09-01refactor: render the shell in the client (#3487)Can Celik
* feat: add opt-in client-rendered shell * feat: add client-owned shell mouse controls * feat: complete client-owned shell chrome * feat: add client-owned shell settings and notifications * feat: run client shell custom commands * feat: render popup terminals in client shell * feat: add client-owned scrollback and copy mode * fix: preserve client worktree trust defaults * feat: render startup diagnostics in client shell * feat: render onboarding in client shell * feat: render product announcements in client shell * feat: render release notes in client shell * feat: render mobile switcher in client shell * feat: render kitty graphics in client shell * fix: preserve client shell lifecycle coherence * refactor: route client shell commands through endpoint connections * refactor: make the client-rendered shell the default * refactor: remove monolithic launch mode * refactor: complete client-rendered shell cutover * perf: retain client pane surface updates * perf: scale retained pane surface updates * perf: remove remote pane input latency * test: make client shell checks platform-independent * fix: prevent client timer starvation * test: fix client shell platform gates * test: accept retained surfaces in cross-area checks * test: make client mode assertions platform-neutral * fix: badge only outdated integrations
2026-08-30fix: reject oversized git ref files in workspace status reads (#3373)caner-akca
* fix: reject oversized git ref files in workspace status reads refs #3343 * fix: treat oversized loose refs as unavailable instead of absent refs #3343 * fix: classify git ref read errors instead of probing path existence A loose ref behind a metadata or I/O error (for example an unsearchable refs/heads directory) previously read as absent, because Path::exists() also returns false on metadata errors, letting a stale same-name packed-refs OID enter the workspace status fingerprint. The reader now classifies the open error itself: NotFound and NotADirectory mean the loose ref is absent (packed-refs fallback stays legitimate), every other error marks the ref unavailable with no fallback. This also removes the racy second existence probe. refs #3343 * fix: reject empty loose git refs refs #3343 * fix: reject dangling loose git refs refs #3343 * fix: reject dangling git refs with invalid target paths refs #3343
2026-08-12perf: avoid repeated Git config reads (#2688)JJ Liebig
refs #2643 Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-11fix: derive repo name for embedded bare layouts (#2660)akbash
refs #2657 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-07-28fix: preserve linked worktree workspace labelsOgulcan Celik
2026-07-25perf: eliminate repeated workspace git discovery (#1842)Can Celik
* perf: eliminate repeated workspace git discovery refs #1838 * fix: keep workspace labels current without extra redraws refs #1838 * fix: retain discovered workspace git metadata refs #1838
2026-07-16fix(windows): suppress noninteractive process windowsOgulcan Celik
refs #1468
2026-06-07fix: support worktree actions from bare reposOgulcan Celik
refs #497
2026-06-02fix: resolve git branch names in reftable repos (#423)Lane
* fix: resolve git branch names in reftable repos refs #384 * fix: limit git plumbing to reftable refs refs #384 --------- Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-05-30perf: reduce sidebar git polling overheadOgulcan Celik
refs #353