Commit Graph

  • bb563505ad refactor: scope the dead_code allows to the items that need them l0ng-ai 2026-08-15 20:10:21 +08:00
  • b11ad35680 refactor: drop eight #[allow(dead_code)] that no longer allow anything l0ng-ai 2026-08-15 20:06:13 +08:00
  • f7130c99de fix(i18n): say which request the server answered unexpectedly l0ng-ai 2026-08-15 20:02:10 +08:00
  • bc835fd811 fix(i18n): the UI names the background process "server", not "daemon" l0ng-ai 2026-08-15 19:56:51 +08:00
  • ceb0f76193 fix(i18n): stop calling a pane a panel in Chinese l0ng-ai 2026-08-15 19:52:05 +08:00
  • 3edcc3884a docs(cli): agent_status is never sent either — correcting yesterday's table l0ng-ai 2026-08-15 19:34:35 +08:00
  • a4d0a10a6e docs(cli): events had no schema, and promised a pane-exit event nothing sends l0ng-ai 2026-08-15 19:30:16 +08:00
  • 27c0c6c399 docs(cli): --orphans kills a run that is still going, not just an interrupted one l0ng-ai 2026-08-15 19:24:21 +08:00
  • 50b1d4a455 fix(cli): procs on a pane that does not exist is an error, not an idle pane l0ng-ai 2026-08-15 19:04:59 +08:00
  • d5368807c1 fix(cli): say the server is down instead of "No such file or directory" l0ng-ai 2026-08-15 18:57:53 +08:00
  • 162d66b005 fix(daemon): block SIGTERM before any thread exists, or the shutdown save never runs l0ng-ai 2026-08-15 18:46:08 +08:00
  • bfa58af587 fix(config): say "your config is broken" once, not once per pane spawn l0ng-ai 2026-08-15 18:29:17 +08:00
  • d76ed6df50 diag(tree-sync): correct what the strand-a-pane note claims, after measuring it l0ng-ai 2026-08-15 18:22:59 +08:00
  • 629df29b2b docs(deps): name the russh advisories, two of which reach a client pre-auth l0ng-ai 2026-08-15 18:08:17 +08:00
  • 56eb32b99f docs(deps): record that the pinned russh fork predates upstream's security fixes l0ng-ai 2026-08-15 18:04:09 +08:00
  • 84124a57a2 fix(terminal): pin the OSC 52 policy instead of inheriting "no clipboard reads" l0ng-ai 2026-08-15 17:56:56 +08:00
  • adfdd398f6 fix(images): own the PNG decode ceiling instead of inheriting it, and test that path l0ng-ai 2026-08-15 17:51:22 +08:00
  • fd100f0e95 refactor(duplex): own the dup'd descriptors, so a failed redirect cannot leak one l0ng-ai 2026-08-15 17:43:15 +08:00
  • 768aca01f1 fix(cli): machine ls --json was missing the machine it runs on l0ng-ai 2026-08-15 17:27:40 +08:00
  • 23bbe7d400 diag(tree-sync): name the pane a refused tree operation strands l0ng-ai 2026-08-15 17:18:33 +08:00
  • a5229e18fa docs(cli): say what attach, ATTACHED and tab move INDEX actually do l0ng-ai 2026-08-15 16:53:18 +08:00
  • e530d5f778 docs(rustdoc): fix the links that pointed nowhere, and gate rustdoc in CI l0ng-ai 2026-08-15 16:37:42 +08:00
  • 280daff463 fix(config): drop the retired theme key from what gets written to config.json l0ng-ai 2026-08-15 16:30:50 +08:00
  • 0d0969ac56 fix(test): stop closing_the_pool_drops_queued_work racing, and guard i18n placeholders l0ng-ai 2026-08-15 16:06:37 +08:00
  • c957231142 chore(lint): put clippy on the CI gate, and clear the ~200 findings behind it l0ng-ai 2026-08-15 15:50:31 +08:00
  • 9fc0f331e8 feat(tabs): drag a tab in as a pane, and a pane out as a tab (#651) l0ng-aiandl0ng-ai 2026-08-15 17:05:34 +08:00
  • 3ef644d267 fix(scm): keep the sync tile on the branch row at any panel width (#650) l0ng-aiandl0ng-ai 2026-08-15 15:18:12 +08:00
  • 05de7ae33a fix(new-tab): keep the SSH menu inside a menu's shape (#649) l0ng-aiandl0ng-ai 2026-08-15 14:24:22 +08:00
  • 77590b5c70 docs: bring back a single platforms badge, in blue l0ng-ai 2026-08-15 14:02:42 +08:00
  • 7aacbdca7e docs: fold platform support into the subtitle, point the version badge at releases l0ng-ai 2026-08-15 13:50:53 +08:00
  • b884aa36c5 docs: restore per-OS platform badges with a flat Windows mark l0ng-ai 2026-08-15 12:12:52 +08:00
  • 8c875d8be6 docs: swap the OS logos for a single shell-prompt platform badge l0ng-ai 2026-08-15 12:07:28 +08:00
  • 9673c1ab0b docs: inline the Windows logo, Simple Icons no longer ships one l0ng-ai 2026-08-15 11:58:03 +08:00
  • a59d6ec28d docs: give the platform badges their own row with per-OS logos l0ng-ai 2026-08-15 11:30:15 +08:00
  • 6031570798 feat(new-tab): reach saved SSH hosts from the New Tab button (#647) l0ng-ai 2026-08-15 11:28:42 +08:00
  • 44bee953da docs: badge the supported platforms in both READMEs l0ng-ai 2026-08-15 11:26:56 +08:00
  • cf6df5b469 fix(ssh): cover the whole window with the password prompt's scrim, and name the machine in a failed reconnect (#645) l0ng-ai 2026-08-15 11:11:26 +08:00
  • 3249fc6b4c fix(new-tab): let the menu scroll, cut its long rows, and keep the lock minimal feat/new-tab-ssh-menu l0ng-ai 2026-08-15 11:02:46 +08:00
  • 542bc1b540 feat(new-tab): reach saved SSH hosts from the New Tab button l0ng-ai 2026-08-15 10:13:51 +08:00
  • f1144deb9f fix(ui): restyle the in-app notification to sit in tty7's own visual language (#646) l0ng-ai 2026-08-15 11:03:13 +08:00
  • 9c8fafa3ee fix(remote): name the machine, not its profile UUID, on a connecting pane fix/ssh-prompt-scrim-and-profile-label l0ng-ai 2026-08-15 10:50:59 +08:00
  • 3e2010b17e fix(remote): name the machine, not its profile UUID, when a reconnect fails l0ng-ai 2026-08-15 09:20:33 +08:00
  • dafd24834e fix(ssh): let the password prompt's scrim cover the whole window l0ng-ai 2026-08-15 09:20:28 +08:00
  • a9664945ba refactor(sidebar): ask for the window's machine once a frame feat/strip-machine-badge l0ng-ai 2026-08-15 02:41:34 +08:00
  • 73dbd7e14a fix(ssh): tell a client that attaches late what the connection reached l0ng-ai 2026-08-15 02:34:29 +08:00
  • 5106846a08 feat(ssh): reach a connection's forwards from its own tab (#439) l0ng-ai 2026-08-15 02:20:07 +08:00
  • 804c3693e8 feat(ssh): say a connection is being made instead of showing a blank pane l0ng-ai 2026-08-15 02:12:48 +08:00
  • c43fe1019b feat(ssh): edit the host from the tab that is connected to it (#438) l0ng-ai 2026-08-15 02:03:00 +08:00
  • cfa5949db9 feat(remote): say which machine the window is on with the tab bar on top too l0ng-ai 2026-08-15 01:47:57 +08:00
  • 096325c4f0 feat(switcher): find a machine that has no workspace on it yet fix/ssh-dead-ends l0ng-ai 2026-08-15 01:27:42 +08:00
  • 5ee6cfd1a9 docs(remote): document the machine badge, the forward switch, and the New Tab host menu l0ng-ai 2026-08-15 01:19:38 +08:00
  • 24cee113cf fix(ssh): give a failed one-off connection a way forward, and stop a switcher row eliding to a lone ellipsis l0ng-ai 2026-08-15 01:15:53 +08:00
  • bb1b78add9 feat(ssh): reach a saved host from the New Tab button, and read back what you typed feat/ssh-reach-and-reveal l0ng-ai 2026-08-15 00:56:43 +08:00
  • 2d2cdb851d feat(forwards): switch a port forward off instead of deleting it (#437, #439) feat/forward-enable-disable l0ng-ai 2026-08-15 00:38:21 +08:00
  • bbda8ad59f feat(remote): keep the machine a window is on visible, and stop offering SSH commands that do nothing feat/remote-identity-visible l0ng-ai 2026-08-15 00:01:06 +08:00
  • 2e6103cf19 Retire to the tray on window close; cold start no longer stalls on stale daemon files (#639) ARNOandl0ng-ai 2026-08-14 23:04:15 +08:00
  • 4f1e181bdf feat(shell): give Nushell panes OSC 7 cwd tracking and OSC 133 marks (#637) ARNO 2026-08-14 22:32:47 +08:00
  • 5c284799aa fix(tabs): stop a command that is over in a blink from flashing across the tab l0ng-ai 2026-08-14 22:30:58 +08:00
  • 3d6528737a fix(settings): give the page back its scroll range, and hold the bar off the window corner l0ng-ai 2026-08-14 21:47:08 +08:00
  • f08d8c2764 fix(remote): stop the server on machines that have no /proc, and show the install on the strip (#627) l0ng-aiandl0ng-ai 2026-08-14 19:15:01 +08:00
  • 988c3bd7f8 fix(remote): say why a stop failed, and stop a leaked install from eating the strip's button fix/remote-restart-without-proc l0ng-ai 2026-08-14 19:08:42 +08:00
  • 3bc8a764f7 fix(theme): stop the code editor painting its gutter and current line in the stock syntax theme's colours (#636) l0ng-aiandl0ng-ai 2026-08-14 18:58:33 +08:00
  • 34957f8659 docs(shell): name custom arguments as a reason integration never engaged (#634) l0ng-aiandl0ng-ai 2026-08-14 18:57:24 +08:00
  • 52b823a9f3 test(history): stop the sweep test deleting the panes of tests running beside it (#638) l0ng-aiandl0ng-ai 2026-08-14 18:56:44 +08:00
  • 19f9503933 test(history): stop the sweep test deleting the panes of tests running beside it fix/history-sweep-test-isolation l0ng-ai 2026-08-14 18:33:28 +08:00
  • 7fded5afd4 fix(tree-sync): record the panes a window seeded in its own mirror (#628) webdev 2026-08-14 15:17:07 +07:00
  • 054c029a58 fix(theme): stop the code editor painting its gutter and current line in the stock syntax theme's colours fix/editor-gutter-black-edge l0ng-ai 2026-08-14 16:16:12 +08:00
  • cc20d0e9d9 docs(shell): name custom arguments as a reason integration never engaged fix/custom-args-integration-notice l0ng-ai 2026-08-14 16:05:43 +08:00
  • 84a424006e fix(resize): defer the reflow to the daemon's Size echo on remote routes too (#632) webdev 2026-08-14 15:02:04 +07:00
  • 422808191d feat(sidebar): group a tab by its folder when its cwd is not a repo (#631) webdev 2026-08-14 14:57:36 +07:00
  • 0346e35b40 fix(shell): stop injecting into a zsh or fish the user gave arguments to (#629) webdev 2026-08-14 14:57:20 +07:00
  • 72db26d15a feat(prompt): let the shell's own line editor own the prompt (#633) l0ng-aiandl0ng-ai 2026-08-14 14:46:22 +08:00
  • 237a6b8606 fix(remote): stop the server on machines that have no /proc, and show the install on the strip l0ng-ai 2026-08-14 10:15:31 +08:00
  • b3698f4b59 fix(worktree): lift the new-worktree prompt to a window-level modal (#626) l0ng-aiandl0ng-ai 2026-08-14 09:35:22 +08:00
  • 0197cd60a2 fix(worktree): lift the new-worktree prompt to a window-level modal fix/worktree-prompt-global-modal l0ng-ai 2026-08-14 09:03:37 +08:00
  • 1424da0891 fix: nine UX fixes across the diff overlay, layout, settings and pane spawn (#623) l0ng-ai 2026-08-14 08:42:29 +08:00
  • 0e35611284 fix(switcher): scrub a deleted remote workspace from the listing snapshots (#622) l0ng-aiandl0ng-ai 2026-08-14 08:34:13 +08:00
  • 84f9d54ad6 fix(remote): finish the create a server update interrupted, and retire the note it answers l0ng-ai 2026-08-13 22:20:43 +08:00
  • e781bfddc6 fix(workspace): let a new workspace keep the name it was given, and cover the abort #618 fixed (#619) l0ng-ai 2026-08-13 19:56:32 +08:00
  • 8296161b4a fix(remote): give a dialect refusal a way out instead of a retry loop (#617) l0ng-aiandl0ng-ai 2026-08-13 19:56:21 +08:00
  • 62abf19289 fix(workspace): let a new workspace keep the name it was given, and cover the abort #618 fixed fix/new-workspace-crash-and-name l0ng-ai 2026-08-13 19:32:09 +08:00
  • d68b42af7d fix(remote): recheck a parked link, and name a downgrade a downgrade fix/dialect-refusal-affordance l0ng-ai 2026-08-13 19:51:03 +08:00
  • 4d37db3e83 fix(remote): give a dialect refusal a way out instead of a retry loop l0ng-ai 2026-08-13 19:10:09 +08:00
  • 1d0b648f66 fix(tree-sync): stop workspace switches from rereading the app mid-update (#618) ARNO 2026-08-13 19:27:33 +08:00
  • d81dbc5e11 fix(i18n): delete unreachable zh arms and 534 lines of stale exemptions l0ng-ai 2026-08-13 18:48:26 +08:00
  • b2d73ec68b feat(update): update an all-users Windows install through one UAC prompt (#562) 2026-08-13 18:13:20 +08:00
  • 2b6eab5f4a fix(sidebar): give the workspace head a width of its own l0ng-ai 2026-08-13 18:10:59 +08:00
  • a2d53a9597 fix: 19 项低危 UX 问题(#584–#602) (#615) Hongwei Qinandl0ng-ai 2026-08-13 18:11:17 +08:00
  • fd0a61b9d6 fix(tab-strip): ring the status dot in white on dark themes l0ng-ai 2026-08-13 17:43:04 +08:00
  • 3c0a700907 feat(switcher): flat workspace list, create form, connect-time workspace sync (#616) l0ng-aiandl0ng-ai 2026-08-13 17:35:58 +08:00
  • 2f100b2a04 fix(switcher): drop a parked create when its machine's connect is called off feat/flat-switcher l0ng-ai 2026-08-13 17:27:53 +08:00
  • d6160058d7 Merge origin/main into feat/flat-switcher l0ng-ai 2026-08-13 17:26:32 +08:00
  • 6d2c138acd feat(switcher): flatten the workspace list, add a create form, sync remote listings on connect l0ng-ai 2026-08-13 16:44:10 +08:00
  • 8b42905fca fix(terminal): stop menu click-through and surface failed file opens (#541, #542) (#575) Hongwei Qinandl0ng-ai 2026-08-13 15:54:28 +08:00
  • 3cd90c6ca6 feat(ssh): name panes after their host, reach the host form from where you are, and test a connection (#566) l0ng-aiandl0ng-ai 2026-08-13 15:02:58 +08:00
  • f237cf5c48 fix(scm): answer a branchless push and name why a commit is refused (#545, #546) (#576) Hongwei Qinandl0ng-ai 2026-08-13 15:01:03 +08:00
  • bed3c856ed fix(panel): redraw the right panel's tab icons and put the tree glyph on the tile ladder (#578) l0ng-aiandl0ng-ai 2026-08-13 15:00:24 +08:00
  • 3c5f14f71c fix(icons): draw the plus on the same optical bound as the rest of the set (#577) l0ng-aiandl0ng-ai 2026-08-13 14:49:33 +08:00
  • 70ac7f201f fix(tree-sync): tell a window the name the machine gave the workspace it made (#604) (#613) l0ng-aiandl0ng-ai 2026-08-13 12:55:18 +08:00
  • 3a9c6136bf fix(tree-sync): tell a window the name the machine gave the workspace it made (#604) fix/workspace-name-reaches-the-mirror l0ng-ai 2026-08-13 12:33:24 +08:00