# Commit history · gitcafe/t3code

[View on GitCafe](https://git.cafe/gitcafe/t3code/commits/refs/heads/feat/gitcafe-support)

Repository: [gitcafe/t3code](https://git.cafe/gitcafe/t3code)

Visibility: public

Requested revision: refs/heads/feat/gitcafe-support

- [fix\(gitcafe\): build credential failure details from the code, not cause.message](https://git.cafe/gitcafe/t3code/commit/6dcf457e3e55960b647f2612f8c2e7b20058b2b0?format=markdown) — 6dcf457e3e55960b647f2612f8c2e7b20058b2b0; versecafe

- [fix\(gitcafe\): address review on stack discovery, lifecycle actions, review dispatch and images](https://git.cafe/gitcafe/t3code/commit/9b7887a0e6fb5399cc88b95b562072758e917530?format=markdown) — 9b7887a0e6fb5399cc88b95b562072758e917530; versecafe

- [fix\(gitcafe\): build against provider-core and drop unused exports](https://git.cafe/gitcafe/t3code/commit/19eee7bb2d0d7d184b8022c60b55decb9620d29f?format=markdown) — 19eee7bb2d0d7d184b8022c60b55decb9620d29f; versecafe

- [fix\(gitcafe\): settle the PR list, explain paused stacks, respect locks, harden transport](https://git.cafe/gitcafe/t3code/commit/686ebcb8013e07fca974ac6d4616239ab3cd9099?format=markdown) — 686ebcb8013e07fca974ac6d4616239ab3cd9099; versecafe

- [fix\(gitcafe\): page commits, checks and reactions instead of stopping at 100](https://git.cafe/gitcafe/t3code/commit/7e438701ecd46cbdf3e5507f6041caa6018b533e?format=markdown) — 7e438701ecd46cbdf3e5507f6041caa6018b533e; versecafe

- [fix\(gitcafe\): close gaps found in review](https://git.cafe/gitcafe/t3code/commit/2c4f0b1f3f7d02393950cabec24db12ea8459f5f?format=markdown) — 2c4f0b1f3f7d02393950cabec24db12ea8459f5f; versecafe

- [fix\(gitcafe\): set the GitCafe mark to 85% of its icon box](https://git.cafe/gitcafe/t3code/commit/82ffd5755965a4246edf303710e0f86a95605106?format=markdown) — 82ffd5755965a4246edf303710e0f86a95605106; versecafe

- [feat\(gitcafe\): call GitCafe's API directly with a cafe-sourced token](https://git.cafe/gitcafe/t3code/commit/70e4ec10570cd3e266798e2329720805847cfc80?format=markdown) — 70e4ec10570cd3e266798e2329720805847cfc80; versecafe

- [fix\(gitcafe\): inset the GitCafe mark to match neighboring icon weight](https://git.cafe/gitcafe/t3code/commit/bc9e181450539d5ca03c250359a757010ffa6e56?format=markdown) — bc9e181450539d5ca03c250359a757010ffa6e56; versecafe

- [style\(gitcafe\): format conflict resolutions](https://git.cafe/gitcafe/t3code/commit/1323e35d8dd01a673e53f596fc231d691dacee0c?format=markdown) — 1323e35d8dd01a673e53f596fc231d691dacee0c; versecafe

- [test\(gitcafe\): table cases with it.each instead of loops](https://git.cafe/gitcafe/t3code/commit/6e94edda3294a63cf790719f03bb5d179f52e387?format=markdown) — 6e94edda3294a63cf790719f03bb5d179f52e387; versecafe

- [fix\(gitcafe\): follow GitCafe's stabilized API](https://git.cafe/gitcafe/t3code/commit/318e4d9216de670f6e3ba2911008b823c9428337?format=markdown) — 318e4d9216de670f6e3ba2911008b823c9428337; versecafe

- [fix\(gitcafe\): use GitCafe's own mark instead of a coffee cup](https://git.cafe/gitcafe/t3code/commit/aa050369c35f61c1f123fb6915b900d069943d9a?format=markdown) — aa050369c35f61c1f123fb6915b900d069943d9a; versecafe

- [fix\(gitcafe\): adapt to upstream source control and review changes](https://git.cafe/gitcafe/t3code/commit/80153624293031b4f5b028c2a6857cfab4f872cf?format=markdown) — 80153624293031b4f5b028c2a6857cfab4f872cf; versecafe

- [feat\(gitcafe\): support pull request writes and native stack actions](https://git.cafe/gitcafe/t3code/commit/0a1584df1b7b263a9dfad6d29d396136673fec96?format=markdown) — 0a1584df1b7b263a9dfad6d29d396136673fec96; versecafe

- [feat\(gitcafe\): support expanded PR diffs, reactions, and private images](https://git.cafe/gitcafe/t3code/commit/28ebd721d1f14ae9ead25f81df46b2b612805d7a?format=markdown) — 28ebd721d1f14ae9ead25f81df46b2b612805d7a; versecafe

- [feat\(source-control\): add GitCafe forge support](https://git.cafe/gitcafe/t3code/commit/52341c196ed221b8659803a00d27ad78e5d49532?format=markdown) — 52341c196ed221b8659803a00d27ad78e5d49532; versecafe

- [feat\(models\): tell users when a CLI update unlocks a new model \(\#17307\)](https://git.cafe/gitcafe/t3code/commit/7b57b723d3b7490b50fffbd99fe89c6aa98fae1f?format=markdown) — 7b57b723d3b7490b50fffbd99fe89c6aa98fae1f; Julius Marminge

- [refactor\(provider-pi\): move Pi into its own provider package \(\#17302\)](https://git.cafe/gitcafe/t3code/commit/9b0df1358f9f9c3277bcb33777c2435b88ee75c4?format=markdown) — 9b0df1358f9f9c3277bcb33777c2435b88ee75c4; Julius Marminge

- [refactor\(settings\): drop the legacy per-driver providers map \(\#17300\)](https://git.cafe/gitcafe/t3code/commit/2c1160783ea4b4dcc1c1f1ab04639ffc0aaa289d?format=markdown) — 2c1160783ea4b4dcc1c1f1ab04639ffc0aaa289d; Julius Marminge

- [refactor\(provider-core\): add provider-core and provider-testing packages \(\#17299\)](https://git.cafe/gitcafe/t3code/commit/9eea28bacd27b2ee6d5183e195c397bba8b515a0?format=markdown) — 9eea28bacd27b2ee6d5183e195c397bba8b515a0; Julius Marminge

- [fix\(shared\): bound cloudflared download with 10-minute timeout \(\#14139\)](https://git.cafe/gitcafe/t3code/commit/580948708b66f2a971199670f76cb6b43119e9a4?format=markdown) — 580948708b66f2a971199670f76cb6b43119e9a4; Kevin Rajan

- [chore\(shared\): bump managed cloudflared to 2026.10.0 \(\#11184\)](https://git.cafe/gitcafe/t3code/commit/af3d842a001d030ed528396bf59cf02bbf373cd0?format=markdown) — af3d842a001d030ed528396bf59cf02bbf373cd0; Aaron Queen

- [fix\(shared\): release relay install locks on cancellation \(\#10585\)](https://git.cafe/gitcafe/t3code/commit/c377d1ca17dbce42008fbb05fccd95468b13d329?format=markdown) — c377d1ca17dbce42008fbb05fccd95468b13d329; Aditya Garud

- [fix\(shared\): relay client install waits out a brief Windows file lock \(\#16998\)](https://git.cafe/gitcafe/t3code/commit/bd565bd1794f49f176ad137555faa46224716138?format=markdown) — bd565bd1794f49f176ad137555faa46224716138; Scott Norteman

- [fix\(connect\): relay client updates itself and skips incompatible cloudflared \(\#17275\)](https://git.cafe/gitcafe/t3code/commit/2a93885bac5798a79d55069a0b5dc3e53c6176bc?format=markdown) — 2a93885bac5798a79d55069a0b5dc3e53c6176bc; Julius Marminge

- [fix\(server\): recognize authenticated GitHub Enterprise hosts \(\#11059\)](https://git.cafe/gitcafe/t3code/commit/cdd331b6c3f78bf24b039b09937b837d2d71a4e7?format=markdown) — cdd331b6c3f78bf24b039b09937b837d2d71a4e7; Grzegorz Mandziak

- [test\(desktop\): expect JetBrains IDEs among remote editors \(\#17291\)](https://git.cafe/gitcafe/t3code/commit/740f591221bd9651f172237d68b7daba9d050dbd?format=markdown) — 740f591221bd9651f172237d68b7daba9d050dbd; Julius Marminge

- [feat\(editors\): open remote projects in JetBrains IDEs over SSH \(\#17271\)](https://git.cafe/gitcafe/t3code/commit/df616cc5491dcc7dd80d3ade8decd88f7a652220?format=markdown) — df616cc5491dcc7dd80d3ade8decd88f7a652220; Julius Marminge

- [fix\(server\): keep newly discovered models out of legacy groups \(\#14314\)](https://git.cafe/gitcafe/t3code/commit/fd25c42ae6e56a82be7219950a746572b1c4d0e9?format=markdown) — fd25c42ae6e56a82be7219950a746572b1c4d0e9; Bilal Bakr

- [fix\(mobile\): preserve navigation after native swipe back \(\#17268\)](https://git.cafe/gitcafe/t3code/commit/805967a878e6804d58c151f29d2a3d0a06828fd1?format=markdown) — 805967a878e6804d58c151f29d2a3d0a06828fd1; Julius Marminge

- [fix\(server\): Pi discovers workspace skills and commands \(\#17190\)](https://git.cafe/gitcafe/t3code/commit/0b6ec43c54165a87941b7a070849be8979646040?format=markdown) — 0b6ec43c54165a87941b7a070849be8979646040; Wout Stiens

- [fix\(desktop\): generate valid User-Agent that follows RFC 9110 guidelines \(\#17264\)](https://git.cafe/gitcafe/t3code/commit/a0066d5cb7d18abd786c1c23bf835f898490fd37?format=markdown) — a0066d5cb7d18abd786c1c23bf835f898490fd37; jztmanyl

- [fix\(server\): Pi editor dialogs prefill the answer composer \(\#17206\)](https://git.cafe/gitcafe/t3code/commit/e8f5850b824572bab76bf810696f875eb648eff9?format=markdown) — e8f5850b824572bab76bf810696f875eb648eff9; Wout Stiens

- [fix\(web\): stack merge dialog closes as soon as you confirm \(\#17116\)](https://git.cafe/gitcafe/t3code/commit/eb1cf7bd0efba7364d53907036f5b7eefb379c39?format=markdown) — eb1cf7bd0efba7364d53907036f5b7eefb379c39; oliver

- [fix\(server\): Pi discovers optional T3 tools on demand \(\#17220\)](https://git.cafe/gitcafe/t3code/commit/de72286ee5777319fde054e7a82023916ce6f481?format=markdown) — de72286ee5777319fde054e7a82023916ce6f481; Wout Stiens

- [fix\(server\): Pi extension wakes get an owned continuation turn \(\#17214\)](https://git.cafe/gitcafe/t3code/commit/f999eb2a8e7d8db74d4f4ab7dd66f86163e1a226?format=markdown) — f999eb2a8e7d8db74d4f4ab7dd66f86163e1a226; Wout Stiens

- [fix\(web\): distinguish thread search matches from code tints \(\#17263\)](https://git.cafe/gitcafe/t3code/commit/62a5d3720f82f2dc3ace48fcb26c90c6e3976b50?format=markdown) — 62a5d3720f82f2dc3ace48fcb26c90c6e3976b50; Yash Singh

- [fix\(web\): centered scrollers no longer shift when the scrollbar appears \(\#17077\)](https://git.cafe/gitcafe/t3code/commit/07a8b9ece40bc20a5f84ce78d12f621518065863?format=markdown) — 07a8b9ece40bc20a5f84ce78d12f621518065863; maria

- [fix\(mobile\): HTML pages in a thread no longer trap scrolling on Android \(\#17211\)](https://git.cafe/gitcafe/t3code/commit/61b9790816a8af359ab7e8ba0b52a3481353b18d?format=markdown) — 61b9790816a8af359ab7e8ba0b52a3481353b18d; Dara Adedeji

- [fix\(server\): pairing tokens work on Node versions that cannot bind booleans \(\#16730\)](https://git.cafe/gitcafe/t3code/commit/4daec109cdf8e3e92b392017d7564e735e54f6fd?format=markdown) — 4daec109cdf8e3e92b392017d7564e735e54f6fd; chise

- [fix\(mobile\): keep native screens ordered during stack pops \(\#17231\)](https://git.cafe/gitcafe/t3code/commit/a6ec88f7a716fc421bd22c2484881c44110f9375?format=markdown) — a6ec88f7a716fc421bd22c2484881c44110f9375; Julius Marminge

- [docs\(internals\): add a checklist for adding a provider \(\#17229\)](https://git.cafe/gitcafe/t3code/commit/a65b43892f14bd6c1280296a37a11bd5234be00d?format=markdown) — a65b43892f14bd6c1280296a37a11bd5234be00d; Julius Marminge

- [feat\(web\): improve terminal scrollback navigation and snapshots \(\#17091\)](https://git.cafe/gitcafe/t3code/commit/9a3070bcf023c3c025633659addeef4cf628133a?format=markdown) — 9a3070bcf023c3c025633659addeef4cf628133a; Wout Stiens

- [feat\(web\): find messages and plans in the current thread \(\#10439\)](https://git.cafe/gitcafe/t3code/commit/12069eefd707f78eafc27812027c994eea0613cf?format=markdown) — 12069eefd707f78eafc27812027c994eea0613cf; Jono Kemball

- [fix\(web\): link pull requests to threads in folders that aren't Git repos \(\#15946\)](https://git.cafe/gitcafe/t3code/commit/a4c9494b0e3606775cc5fc929fc138399288bd43?format=markdown) — a4c9494b0e3606775cc5fc929fc138399288bd43; shivam

- [feat\(web\): Add provider button sits with the provider list \(\#17152\)](https://git.cafe/gitcafe/t3code/commit/5e2225671f705fcd33f1ea5591b79ba612fb6974?format=markdown) — 5e2225671f705fcd33f1ea5591b79ba612fb6974; Theo Browne

- [fix\(server\): an agent can settle its own thread when its turn ends \(\#17145\)](https://git.cafe/gitcafe/t3code/commit/37eaf5d293ef83ce86d2ce9a1583792696c82bbc?format=markdown) — 37eaf5d293ef83ce86d2ce9a1583792696c82bbc; Theo Browne

- [perf\(usage\): the Usage page shows numbers in under a second and dims only what is still loading \(\#17147\)](https://git.cafe/gitcafe/t3code/commit/85975585579188be20f46d96b4972ce46c33f4bc?format=markdown) — 85975585579188be20f46d96b4972ce46c33f4bc; Theo Browne

- [fix\(server\): threads settle as soon as branch status sees their PR merge \(\#17148\)](https://git.cafe/gitcafe/t3code/commit/0ce6b9deb0c3f6b4dd9df7ed809f7acb9d237ae0?format=markdown) — 0ce6b9deb0c3f6b4dd9df7ed809f7acb9d237ae0; Theo Browne

- [fix\(usage\): Cursor account history loads about 4x faster \(\#17140\)](https://git.cafe/gitcafe/t3code/commit/9381533771ef50d58304f79fac2b74ebd8932be7?format=markdown) — 9381533771ef50d58304f79fac2b74ebd8932be7; Theo Browne

- [feat\(web\): filter the Usage page to just the providers you want \(\#16970\)](https://git.cafe/gitcafe/t3code/commit/13c5328dd02ab0f5863f7d46455efc8dc243d4ce?format=markdown) — 13c5328dd02ab0f5863f7d46455efc8dc243d4ce; Theo Browne

- [perf\(server\): ACP tool updates no longer persist a snapshot per streamed chunk \(\#16682\)](https://git.cafe/gitcafe/t3code/commit/10e29a26c289140b8f2312045c1ce0c278c7fe1a?format=markdown) — 10e29a26c289140b8f2312045c1ce0c278c7fe1a; Aviddaram

- [fix\(server\): shell snapshots no longer block other database reads while decoding \(\#17141\)](https://git.cafe/gitcafe/t3code/commit/1f31906c8e3003b2a9d7118c4da163544fa86586?format=markdown) — 1f31906c8e3003b2a9d7118c4da163544fa86586; Theo Browne

- [fix\(usage\): repeat usage scans no longer decode unchanged Antigravity databases \(\#17139\)](https://git.cafe/gitcafe/t3code/commit/4d1f24ba4123279708e169fcb196f78da8f11351?format=markdown) — 4d1f24ba4123279708e169fcb196f78da8f11351; Theo Browne

- [fix\(clients\): copy button is back in its old spot, before fork \(\#17137\)](https://git.cafe/gitcafe/t3code/commit/2ea7684d563fe0ebbe9144dbfd6b0eade7eaf49a?format=markdown) — 2ea7684d563fe0ebbe9144dbfd6b0eade7eaf49a; Theo Browne

- [feat\(web\): compact-before-send is a chip that shows the token count \(\#17127\)](https://git.cafe/gitcafe/t3code/commit/0647c481017f25ddff2ec1dff68ef3944489b6db?format=markdown) — 0647c481017f25ddff2ec1dff68ef3944489b6db; Theo Browne

- [feat\(providers\): run Muse Code as a native provider \(\#17082\)](https://git.cafe/gitcafe/t3code/commit/d6f47ff9725f0902b526f854519cb7e92dcee52f?format=markdown) — d6f47ff9725f0902b526f854519cb7e92dcee52f; Theo Browne

- [feat\(mobile\): redesign the Add environment sheet \(\#17092\)](https://git.cafe/gitcafe/t3code/commit/30cc788975500a8c00d32a50f348174d1ce578d1?format=markdown) — 30cc788975500a8c00d32a50f348174d1ce578d1; Julius Marminge

- [fix\(web\): workspace page headers can no longer grow past the top-bar height \(\#17086\)](https://git.cafe/gitcafe/t3code/commit/73e097b8c86000ddc4b38926ba86e1595109d78e?format=markdown) — 73e097b8c86000ddc4b38926ba86e1595109d78e; maria

- [fix\(mobile\): align diff scrolling with glass headers \(\#17085\)](https://git.cafe/gitcafe/t3code/commit/97a65a3121c11801a877897928efc51ef40fa49f?format=markdown) — 97a65a3121c11801a877897928efc51ef40fa49f; Julius Marminge

- [fix\(lineage\): keep agent effort and speed after completion \(\#16925\)](https://git.cafe/gitcafe/t3code/commit/57f96e69d39669f47e7310062222cd67adbb4912?format=markdown) — 57f96e69d39669f47e7310062222cd67adbb4912; Bilal Bakr

- [feat\(web\): projectless threads show their machine in the sidebar \(\#17022\)](https://git.cafe/gitcafe/t3code/commit/ff9eb8bd0c8e71f98969a58d5789889e07b57c8b?format=markdown) — ff9eb8bd0c8e71f98969a58d5789889e07b57c8b; oliver

- [feat\(web\): quote chips show what you said about the quote \(\#15703\)](https://git.cafe/gitcafe/t3code/commit/12865b4a73c23bb402717d5f592dcd954ed196e5?format=markdown) — 12865b4a73c23bb402717d5f592dcd954ed196e5; oliver

- [perf\(mobile\): highlight source files in small batches that keep grammar state \(\#16729\)](https://git.cafe/gitcafe/t3code/commit/33afd5a5aa361890c9ce22479e8f52f6b18248aa?format=markdown) — 33afd5a5aa361890c9ce22479e8f52f6b18248aa; Julius Marminge

- [perf\(mobile\): reuse the settled sort when settled rows are unchanged \(\#16369\)](https://git.cafe/gitcafe/t3code/commit/b402f5fc65f6f4554266dea385a7da7ff353f028?format=markdown) — b402f5fc65f6f4554266dea385a7da7ff353f028; Julius Marminge

- [fix\(mobile\): update the iOS Git header menu when status changes \(\#16330\)](https://git.cafe/gitcafe/t3code/commit/833a03afe32b2f332ab19ce72c0e0dc3cf72c341?format=markdown) — 833a03afe32b2f332ab19ce72c0e0dc3cf72c341; Julius Marminge

- [fix\(mobile\): refresh Git status after reconnect \(\#16329\)](https://git.cafe/gitcafe/t3code/commit/4fec120b75bb397bda3c09b7317f79c1d26811c0?format=markdown) — 4fec120b75bb397bda3c09b7317f79c1d26811c0; Julius Marminge

- [fix\(mobile\): stop Git sheet refresh loop \(\#16305\)](https://git.cafe/gitcafe/t3code/commit/5c2798d47eb41d5d659b8d2189781fcb06536a5f?format=markdown) — 5c2798d47eb41d5d659b8d2189781fcb06536a5f; Julius Marminge

- [fix\(mobile\): collect UI runtime garbage on iOS memory warnings \(\#16296\)](https://git.cafe/gitcafe/t3code/commit/c001e191a19db32199ad75ccea219f729f9db7c4?format=markdown) — c001e191a19db32199ad75ccea219f729f9db7c4; Julius Marminge

- [perf\(mobile\): skip impossible thread-key lookups \(\#16263\)](https://git.cafe/gitcafe/t3code/commit/6c1ce06996979fcfe120ec8c8cb4f78a5c8a7365?format=markdown) — 6c1ce06996979fcfe120ec8c8cb4f78a5c8a7365; Julius Marminge

- [perf\(mobile\): reduce move-menu index allocations \(\#16256\)](https://git.cafe/gitcafe/t3code/commit/7873504964c3008ed2a87ada7be62d611e7a281a?format=markdown) — 7873504964c3008ed2a87ada7be62d611e7a281a; Julius Marminge

- [perf\(mobile\): remove unused Home project sorting \(\#16177\)](https://git.cafe/gitcafe/t3code/commit/6eed953a060213630af0d7e3cd9a664bd85f7ced?format=markdown) — 6eed953a060213630af0d7e3cd9a664bd85f7ced; Julius Marminge

- [perf\(mobile\): skip showcase subscriptions in normal builds \(\#16131\)](https://git.cafe/gitcafe/t3code/commit/6651aaab38c6814ed7bba3e805a1ec7a01870b55?format=markdown) — 6651aaab38c6814ed7bba3e805a1ec7a01870b55; Julius Marminge

- [perf\(mobile\): reuse encoded rows in shell cache saves \(\#16129\)](https://git.cafe/gitcafe/t3code/commit/8a1fc4149ae7b41e7d3d93f1b51dd9aeb38c4282?format=markdown) — 8a1fc4149ae7b41e7d3d93f1b51dd9aeb38c4282; Julius Marminge

- [fix\(mobile\): skip move indexes for empty and single-thread sections \(\#16115\)](https://git.cafe/gitcafe/t3code/commit/12a4c057f3d6880c611630ccdc0c8c7f2cd23f72?format=markdown) — 12a4c057f3d6880c611630ccdc0c8c7f2cd23f72; Julius Marminge

- [fix\(mobile\): stop refreshing Git status on streamed thread updates \(\#15893\)](https://git.cafe/gitcafe/t3code/commit/70eeb3996d557a2e553f817c8e123bf79bbd378c?format=markdown) — 70eeb3996d557a2e553f817c8e123bf79bbd378c; Julius Marminge

- [fix\(web\): Usage breadcrumb stays centered on small viewports \(\#15552\)](https://git.cafe/gitcafe/t3code/commit/85a41391e9625d760f5bb2294834c38f42bbf5b8?format=markdown) — 85a41391e9625d760f5bb2294834c38f42bbf5b8; oliver

- [fix\(web\): command palette scrollbar no longer clipped at the top \(\#17035\)](https://git.cafe/gitcafe/t3code/commit/647d8affa78c848c2a55c3e00ed14af9a9eca58e?format=markdown) — 647d8affa78c848c2a55c3e00ed14af9a9eca58e; oliver

- [fix\(web\): PR commit menu no longer stretches across the window \(\#15560\)](https://git.cafe/gitcafe/t3code/commit/98b5e1bef3c8d933d7ad826f837086a506a3732f?format=markdown) — 98b5e1bef3c8d933d7ad826f837086a506a3732f; oliver

- [fix\(web\): PR code toolbar no longer overlaps in narrow panels \(\#15561\)](https://git.cafe/gitcafe/t3code/commit/ed27eb724b4d7963b59de8fd2e51d6b877004163?format=markdown) — ed27eb724b4d7963b59de8fd2e51d6b877004163; oliver

- [fix\(mobile\): restore file viewer insets and glass header \(\#17073\)](https://git.cafe/gitcafe/t3code/commit/e803242d936af3e052757d59ab32bc7c4fcc2390?format=markdown) — e803242d936af3e052757d59ab32bc7c4fcc2390; Julius Marminge

- [fix\(mobile\): pause hidden home thread list updates \(\#15705\)](https://git.cafe/gitcafe/t3code/commit/65404eb75de9233c9d1068ddfd09bacfc3b0465b?format=markdown) — 65404eb75de9233c9d1068ddfd09bacfc3b0465b; Julius Marminge

- [perf\(mobile\): pause elapsed-time timers on hidden thread screens \(\#15397\)](https://git.cafe/gitcafe/t3code/commit/eb17e0db2bd075e71b4015dc57588e7f838cbcdc?format=markdown) — eb17e0db2bd075e71b4015dc57588e7f838cbcdc; Julius Marminge

- [perf\(mobile\): omit duplicated turn items from bounded thread snapshots \(\#15385\)](https://git.cafe/gitcafe/t3code/commit/28f5516a9acfcfc1e203487e78869a406fd23b76?format=markdown) — 28f5516a9acfcfc1e203487e78869a406fd23b76; Julius Marminge

- [fix\(web\): PR file stats ignore the hide-whitespace toggle \(\#16162\)](https://git.cafe/gitcafe/t3code/commit/6053a7878d24e5fd596d2b417ed94964a4b9c1c6?format=markdown) — 6053a7878d24e5fd596d2b417ed94964a4b9c1c6; oliver

- [fix\(server\): a message sent during a rollback no longer undoes it \(\#17079\)](https://git.cafe/gitcafe/t3code/commit/c28cd905572e2a28934a6229d88bcf2975963032?format=markdown) — c28cd905572e2a28934a6229d88bcf2975963032; Theo Browne

- [fix\(server\): held queued wakes no longer keep delegated tasks running \(\#17028\)](https://git.cafe/gitcafe/t3code/commit/0bfd9dd19d0c9418a936190525ec8f4c4fdae09b?format=markdown) — 0bfd9dd19d0c9418a936190525ec8f4c4fdae09b; Julius Marminge

- [fix\(web\): PR timeline no longer shifts when its scrollbar appears \(\#15588\)](https://git.cafe/gitcafe/t3code/commit/b24f0fbba09d8623c896081b4ff70aa7190c8fda?format=markdown) — b24f0fbba09d8623c896081b4ff70aa7190c8fda; oliver

- [fix\(web\): PR file headers keep the file name in narrow panels \(\#15562\)](https://git.cafe/gitcafe/t3code/commit/2b7fa212a89edda7aad8f73fc3b4afd5b56c442c?format=markdown) — 2b7fa212a89edda7aad8f73fc3b4afd5b56c442c; oliver

- [refactor\(web\): PR loading skeleton shares the detail panel's layout \(\#15583\)](https://git.cafe/gitcafe/t3code/commit/843c593ab2dfe432abfba7b928292f3f8e9c7d44?format=markdown) — 843c593ab2dfe432abfba7b928292f3f8e9c7d44; oliver

- [fix\(web\): messages with quotes or links no longer collapse when short \(\#16624\)](https://git.cafe/gitcafe/t3code/commit/6f83358ae6d85b5dee7d3280e645e0e9a0aeff62?format=markdown) — 6f83358ae6d85b5dee7d3280e645e0e9a0aeff62; oliver

- [fix\(server,web,mobile\): thread links reference the thread id, not a baked title \(\#17017\)](https://git.cafe/gitcafe/t3code/commit/0f09627a111f7e9adc22c256c725565672676f1a?format=markdown) — 0f09627a111f7e9adc22c256c725565672676f1a; Julius Marminge

- [fix\(server\): opening a long thread no longer blocks the server for a second \(\#17029\)](https://git.cafe/gitcafe/t3code/commit/04ad17425a80484bf323a7d5076bd477a9499119?format=markdown) — 04ad17425a80484bf323a7d5076bd477a9499119; Dara Adedeji

- [fix\(server\): replaying a command no longer freezes the server \(\#17041\)](https://git.cafe/gitcafe/t3code/commit/9fba2093e50f208c52d9041c70a793296e311477?format=markdown) — 9fba2093e50f208c52d9041c70a793296e311477; Dara Adedeji

- [perf\(mobile\): show the cached thread list sooner and stop the freeze after it \(\#16713\)](https://git.cafe/gitcafe/t3code/commit/f9e16b3f66476ad1e213152708c9aa8b035085a3?format=markdown) — f9e16b3f66476ad1e213152708c9aa8b035085a3; Julius Marminge

- [chore\(review\): remove the custom Approvability check \(\#17018\)](https://git.cafe/gitcafe/t3code/commit/83a82a46b0631234ac85748b912566d6f4b1dee3?format=markdown) — 83a82a46b0631234ac85748b912566d6f4b1dee3; Erik Thorelli

- [refactor\(server\): GitHub rate limits read the response headers \(\#16986\)](https://git.cafe/gitcafe/t3code/commit/d720210996a514368ba99f4860063110033d93fa?format=markdown) — d720210996a514368ba99f4860063110033d93fa; Julius Marminge

- [refactor\(server\): GitHub source control reads GitHubApi directly \(\#16982\)](https://git.cafe/gitcafe/t3code/commit/42d92ec59775c187af69071c81b2b91180810bdd?format=markdown) — 42d92ec59775c187af69071c81b2b91180810bdd; Julius Marminge

- [refactor\(server\): GitHub GraphQL batches use variables and share one pager \(\#16960\)](https://git.cafe/gitcafe/t3code/commit/a21ac5fb153e3bf418ccd2a4abef2787c241813c?format=markdown) — a21ac5fb153e3bf418ccd2a4abef2787c241813c; Julius Marminge

More commits follow; continue with `GET /api/repos/gitcafe/t3code/commits?after=IjA4YjEyMjJkMGJhZTY3MDQzM2MyNzVlYzcwMTY1YzdiNTA0ODcyNmYi`.
