You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
The Pulls screen now lists the commits a pull request would land. A new
"Commits" tab, counted next to its name, shows every commit oldest first: the
subject line, who committed it and when, and clicking a row opens its message
body — the branch's story, which the diff and the file list never tell. The commits ride along with the lookup the screen already makes,
so it costs no extra round-trip.
Fixed
The shell no longer behaves like a browser. The window is one only by
construction, and its reflexes leaked through everywhere except a focused
terminal, which already swallows them: a locale that did not match the UI
raised the translate bubble on startup; Ctrl+W closed the window, which quits
lich; Ctrl+T and Ctrl+N opened tabs and windows; Ctrl+P, Ctrl+S and Ctrl+O
opened dialogs with nowhere to land; Ctrl+Shift+Delete would have wiped lich's
own saved settings along with the browsing data; right-clicking the UI offered
Back, Reload and Save as; dropping a file on the window replaced the app with
that file, with no address bar to come back from; and middle-clicking a link
spawned a browser window. All of it is now refused. Reload, the devtools chords
and the terminal's own right-click menu are deliberately kept, and every chord
still reaches a terminal as its PTY sequence — Ctrl+W stays delete-word,
Ctrl+U kill-line, Ctrl+D end-of-file.
A new directory of files now counts as the files it holds, not as one. The
changed-file count came from git status --porcelain, which reports an
untracked directory as a single ?? pkg/ entry — so an agent writing 25 files
into fresh packages showed 4 changed files in the footer and on the session
card, while the Review tab listed all of them. The count now asks git for
every untracked file; the line totals were already right.
Merging a pull request now clears its badge everywhere, at once. The
footer, the session cards and the sidebar's "Pull request" entry only looked
the pull request up again when the checkout's HEAD moved, or when the window
lost focus and got it back — and a merge does neither, since the commit lands
on the base branch, on the remote. Merging from the Pulls screen emptied that
screen while every badge around it went on reading #N Open until you clicked
away to another window and back. Merging, opening a pull request and the
header's reload button now retire the shared answer and re-read it.
A model newer than your lich no longer reads its context window as 200k.
Opus 5 sessions showed five times their real usage in the footer, because the
window came from a table of the 1M models and anything missing from it fell
back to the smallest window that fit — so every model launch needed a release
here. The rule is now the other way round: Haiku is the 200k exception and
everything else is 1M, which is what a model released after your build reads
without a new version.
A pull request with hundreds of changed files no longer locks the app.
Every file in a diff panel starts expanded, and an expanded file builds its own
CodeMirror view — so a 191-file pull request built 191 editors in one go, each
followed by a language chunk re-configuring its document. Chromium offered to
kill the page, and the screen stayed unusable well after it recovered. A file's
editor is now built only once its card comes near the viewport; until then the
card holds a placeholder of the file's height, so the scrollbar still measures
the whole diff. An editor that has been built stays built, keeping its
selection and highlighting when you scroll back. That 191-file diff now settles
in 465 ms with 8 editors, against 13.7 s with 191. The dock's Review tab shares
the same cards and the same fix. Files changed also stopped refetching the diff
every time the window regained focus — a new commit still refreshes it.
The pull request screen no longer waits behind a bare "Loading…". Both the
lookup and the diff are gh round-trips of about a second, and on a screen
that size a single muted line read as a failure. Each now holds the shape of
what is coming — title, actions, status line and tabs for the pull request;
file tree, toolbar and file cards for Files changed.