# Commit history · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commits/072d343abf2641fe8954d23a84fecb4c4611f339)

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

Visibility: public

Requested revision: 072d343abf2641fe8954d23a84fecb4c4611f339

Requested commit: 072d343abf2641fe8954d23a84fecb4c4611f339

- [fix\(server\): a remote task refuses worktree isolation, and its failures keep the cause](https://git.cafe/pingdotgg/t3code/commit/072d343abf2641fe8954d23a84fecb4c4611f339?format=markdown) — 072d343abf2641fe8954d23a84fecb4c4611f339; Julius Marminge

- [fix\(server\): acknowledge only the matching remote stop generation](https://git.cafe/pingdotgg/t3code/commit/e744eb6c19281ec0ce3fefe357e952fb860eb3e3?format=markdown) — e744eb6c19281ec0ce3fefe357e952fb860eb3e3; Lenori

- [fix\(server\): stopping a parent stops a finished remote task's thread there](https://git.cafe/pingdotgg/t3code/commit/efac76814215611d6522ca09efbfba29e34ad8b5?format=markdown) — efac76814215611d6522ca09efbfba29e34ad8b5; Julius Marminge

- [fix\(server\): a remote task waits for its thread's delegated work](https://git.cafe/pingdotgg/t3code/commit/a9914de7adad9c15d809ebc901f196283a05e062?format=markdown) — a9914de7adad9c15d809ebc901f196283a05e062; Julius Marminge

- [fix\(server\): report the failed remote run's provider error](https://git.cafe/pingdotgg/t3code/commit/895fcfb24ef35523fd6e317029b9e83dfb6f4f8e?format=markdown) — 895fcfb24ef35523fd6e317029b9e83dfb6f4f8e; Lenori

- [feat\(server\): delegate_task to a linked environment](https://git.cafe/pingdotgg/t3code/commit/185671afb1d38f6264902d260c7e06e1e6cd46a0?format=markdown) — 185671afb1d38f6264902d260c7e06e1e6cd46a0; Julius Marminge

- [fix\(connections\): reset pairing forms and refresh mobile link status](https://git.cafe/pingdotgg/t3code/commit/f580fefde9a4e31cfd5ff263ea43b0d392601b31?format=markdown) — f580fefde9a4e31cfd5ff263ea43b0d392601b31; Julius Marminge

- [test\(client-runtime\): exercise permitted peer link lifecycle](https://git.cafe/pingdotgg/t3code/commit/a26f5fdb5cb979a5f222053145e7d9a2f3aba4ac?format=markdown) — a26f5fdb5cb979a5f222053145e7d9a2f3aba4ac; Julius Marminge

- [docs: what agents may do on a linked machine, by the link's access](https://git.cafe/pingdotgg/t3code/commit/66806f18563e696eca958468fb26a62a22d0c4d2?format=markdown) — 66806f18563e696eca958468fb26a62a22d0c4d2; Julius Marminge

- [feat\(web,mobile\): linked environments in Connections](https://git.cafe/pingdotgg/t3code/commit/d38b9bc1448a5051267425e48ac6066cb0f5269d?format=markdown) — d38b9bc1448a5051267425e48ac6066cb0f5269d; Julius Marminge

- [feat\(server\): a full-access link is not fenced](https://git.cafe/pingdotgg/t3code/commit/e7be3191310fe8c8ee8493338a2e98665a999d4d?format=markdown) — e7be3191310fe8c8ee8493338a2e98665a999d4d; Julius Marminge

- [feat\(server\): work a link starts may add projects](https://git.cafe/pingdotgg/t3code/commit/6c6c711e1da3bbb2cfe785b3a628b0a200a41a4d?format=markdown) — 6c6c711e1da3bbb2cfe785b3a628b0a200a41a4d; Julius Marminge

- [feat\(server\): work a linked environment starts stays within its link](https://git.cafe/pingdotgg/t3code/commit/cc95290076888d51fade2033f7ba0695d60bb256?format=markdown) — cc95290076888d51fade2033f7ba0695d60bb256; Julius Marminge

- [feat\(server\): every tool that names a thread, project or queue reaches a linked environment](https://git.cafe/pingdotgg/t3code/commit/641ee467aa5ceb9126f7c52e2b8b002bf258e0a4?format=markdown) — 641ee467aa5ceb9126f7c52e2b8b002bf258e0a4; Julius Marminge

- [feat\(server\): agents create and clone projects in a linked environment](https://git.cafe/pingdotgg/t3code/commit/15dd0f0441e5cb96f60a450fa9187b81be2e473a?format=markdown) — 15dd0f0441e5cb96f60a450fa9187b81be2e473a; Julius Marminge

- [feat\(server\): agents use linked environments](https://git.cafe/pingdotgg/t3code/commit/07488aa0a7ee02890275bb4e0c012e7c2c30e243?format=markdown) — 07488aa0a7ee02890275bb4e0c012e7c2c30e243; Julius Marminge

- [feat\(server\): link to another environment](https://git.cafe/pingdotgg/t3code/commit/197930788c33a086de927374a30e02da4c6336c4?format=markdown) — 197930788c33a086de927374a30e02da4c6336c4; Julius Marminge

- [feat\(server\): t3_thread_launch takes clientRequestId](https://git.cafe/pingdotgg/t3code/commit/071e6616495613844a1ff062446e41b4fc586d22?format=markdown) — 071e6616495613844a1ff062446e41b4fc586d22; Julius Marminge

- [feat\(server\): /mcp narrows a client's modes from T3-Mode-Limit](https://git.cafe/pingdotgg/t3code/commit/d868b6296c8a24bbc150ebb4d96d264316206099?format=markdown) — d868b6296c8a24bbc150ebb4d96d264316206099; Julius Marminge

- [fix\(mobile\): align iPad composer without shifting on keyboard focus \(\#23355\)](https://git.cafe/pingdotgg/t3code/commit/e07595714a467e18c750107137d2c2e50f0c3530?format=markdown) — e07595714a467e18c750107137d2c2e50f0c3530; Julius Marminge

- [fix\(web\): cap list layout passes to prevent React error 185 \(\#23315\)](https://git.cafe/pingdotgg/t3code/commit/05b697f6a2012497ae790425e197fbd1fcef7de7?format=markdown) — 05b697f6a2012497ae790425e197fbd1fcef7de7; Yash Singh

- [fix\(client-runtime\): refresh Git refs when the RPC session changes \(\#23314\)](https://git.cafe/pingdotgg/t3code/commit/a98ebde9905bb6f600ec75d006656e8fea4c74a7?format=markdown) — a98ebde9905bb6f600ec75d006656e8fea4c74a7; Yash Singh

- [fix\(web\): Arabic and Hebrew text reads and navigates right to left \(\#22777\)](https://git.cafe/pingdotgg/t3code/commit/3690c862530c88781b28dce991697e5ea0dc26be?format=markdown) — 3690c862530c88781b28dce991697e5ea0dc26be; يزن حمزه

- [feat\(server\): webhook filters fan out over arrays with a \[\] path wildcard \(\#23282\)](https://git.cafe/pingdotgg/t3code/commit/defb7e6e6b87d03259745367214db13060fb322b?format=markdown) — defb7e6e6b87d03259745367214db13060fb322b; Julius Marminge

- [fix\(mobile\): drafts swipe to discard and every row move animates \(\#23205\)](https://git.cafe/pingdotgg/t3code/commit/b295dd83b2f908cd4ecd6f121c9a30ce38861e93?format=markdown) — b295dd83b2f908cd4ecd6f121c9a30ce38861e93; Julius Marminge

- [fix\(pi\): fork completed turns while the next turn is running \(\#23052\)](https://git.cafe/pingdotgg/t3code/commit/aa0158d0d3099bada270b059b7ca7226a547bea1?format=markdown) — aa0158d0d3099bada270b059b7ca7226a547bea1; Julius Marminge

- [fix\(mobile\): new-thread heading clears the iPad header \(\#23206\)](https://git.cafe/pingdotgg/t3code/commit/6318bfc597e544679848c4ed816606bacd32a175?format=markdown) — 6318bfc597e544679848c4ed816606bacd32a175; Julius Marminge

- [feat\(server\): export how long runs take and how they end \(\#22094\)](https://git.cafe/pingdotgg/t3code/commit/f8e4834861d255f58c44fc1b5f57c34c49f5384d?format=markdown) — f8e4834861d255f58c44fc1b5f57c34c49f5384d; Julius Marminge

- [fix\(server\): stop abandoned turns before continuing threads \(\#23169\)](https://git.cafe/pingdotgg/t3code/commit/6f6f68ad2d8044b3322ec738b9d371fcaaa783cf?format=markdown) — 6f6f68ad2d8044b3322ec738b9d371fcaaa783cf; Yash Singh

- [docs\(import\): correct conversation size and batch limits \(\#23226\)](https://git.cafe/pingdotgg/t3code/commit/49e97d48f9742ba4c5ab79efc618fbf9066523ec?format=markdown) — 49e97d48f9742ba4c5ab79efc618fbf9066523ec; Victor Vogel

- [fix\(gitcafe\): show line counts on linked and listed pull requests \(\#22633\)](https://git.cafe/pingdotgg/t3code/commit/8acbefefc51b4d281dcd04108c82baa1ab902b0e?format=markdown) — 8acbefefc51b4d281dcd04108c82baa1ab902b0e; maria

- [fix\(mobile\): the iPhone Duo's inspector panes use the full column \(\#23150\)](https://git.cafe/pingdotgg/t3code/commit/89fe509232e787b51d0cf695861afe73316ce85b?format=markdown) — 89fe509232e787b51d0cf695861afe73316ce85b; Julius Marminge

- [fix\(mobile\): Screens 5.0.0-t3.36 stops an iPhone Duo unfold crash \(\#23149\)](https://git.cafe/pingdotgg/t3code/commit/83a8501f56d3d0028d272a1cb9e6cc99654de17d?format=markdown) — 83a8501f56d3d0028d272a1cb9e6cc99654de17d; Julius Marminge

- [fix\(mobile\): the iPhone Duo's search field and composer line up with its tab bar \(\#23148\)](https://git.cafe/pingdotgg/t3code/commit/e6c2aeb3608da8c7d64c0be68b777d2660fcd93e?format=markdown) — e6c2aeb3608da8c7d64c0be68b777d2660fcd93e; Julius Marminge

- [fix\(mobile\): folding the Duo keeps the thread's end or the reader's line in place \(\#23147\)](https://git.cafe/pingdotgg/t3code/commit/5ed2ea245eef3c0b17395099a31c4801ddeb1a52?format=markdown) — 5ed2ea245eef3c0b17395099a31c4801ddeb1a52; Julius Marminge

- [fix\(mobile\): a closed search no longer risks freezing the app \(\#23146\)](https://git.cafe/pingdotgg/t3code/commit/37d6fce8390669d2d16382a0afe845f89aa48be9?format=markdown) — 37d6fce8390669d2d16382a0afe845f89aa48be9; Julius Marminge

- [fix\(mobile\): the iPhone Duo searches from a field at the bottom of its list \(\#23145\)](https://git.cafe/pingdotgg/t3code/commit/9fa551ac3fcf688a42654039545b2dd0d2ddb3e7?format=markdown) — 9fa551ac3fcf688a42654039545b2dd0d2ddb3e7; Julius Marminge

- [fix\(mobile\): the iPhone Duo keeps list titles through folds and unfolds with its sidebar \(\#23144\)](https://git.cafe/pingdotgg/t3code/commit/801701db7acfb6172c0ec4dbac7313f78ac48ce1?format=markdown) — 801701db7acfb6172c0ec4dbac7313f78ac48ce1; Julius Marminge

- [fix\(mobile\): the pull requests tab's empty detail asks for a pull request \(\#23143\)](https://git.cafe/pingdotgg/t3code/commit/added623d1d87c0ac7237c8f98c15965ba393de5?format=markdown) — added623d1d87c0ac7237c8f98c15965ba393de5; Julius Marminge

- [fix\(mobile\): use native full-width sheets on iPhone Duo \(\#22980\)](https://git.cafe/pingdotgg/t3code/commit/13eea3f6e19def1a06d128fd6a57aee08b2f910d?format=markdown) — 13eea3f6e19def1a06d128fd6a57aee08b2f910d; Julius Marminge

- [fix\(mobile\): deliver the first tab selection after Duo folding \(\#22979\)](https://git.cafe/pingdotgg/t3code/commit/61bdec0c9955f42b25a8f4150fc0ddc1ae9a3030?format=markdown) — 61bdec0c9955f42b25a8f4150fc0ddc1ae9a3030; Julius Marminge

- [fix\(mobile\): retain resting scroll offsets through Duo inset changes \(\#22978\)](https://git.cafe/pingdotgg/t3code/commit/eec07b604d96c902a3d945b6ddc16e95dc30860a?format=markdown) — eec07b604d96c902a3d945b6ddc16e95dc30860a; Julius Marminge

- [fix\(mobile\): respect Duo safe areas in overlays \(\#22977\)](https://git.cafe/pingdotgg/t3code/commit/ec2fd4d37c34fa090268c03400406031ece418e2?format=markdown) — ec2fd4d37c34fa090268c03400406031ece418e2; Julius Marminge

- [fix\(mobile\): keep Duo toolbar actions clear of workspace tabs \(\#22976\)](https://git.cafe/pingdotgg/t3code/commit/9cdd05926b28631fc201e5a3ba80648943834b44?format=markdown) — 9cdd05926b28631fc201e5a3ba80648943834b44; Julius Marminge

- [fix\(build\): pin Node 26.12.1 for development and standalone releases \(\#23165\)](https://git.cafe/pingdotgg/t3code/commit/ed9b7ca9c53843ea1e6b466bf7d52928d10e7db0?format=markdown) — ed9b7ca9c53843ea1e6b466bf7d52928d10e7db0; Alex

- [fix\(source-control\): merge messages drop Claude Code's current claude.com footer \(\#23133\)](https://git.cafe/pingdotgg/t3code/commit/b5a226e49c52ecab4ddc2d678a7012d97e651a6a?format=markdown) — b5a226e49c52ecab4ddc2d678a7012d97e651a6a; MarcoDotIO

- [Merge commit from fork](https://git.cafe/pingdotgg/t3code/commit/a12d6ed9428d8e64d76ca86d178abbf564b57cee?format=markdown) — a12d6ed9428d8e64d76ca86d178abbf564b57cee; Julius Marminge

- [test\(web\): chat shortcut test types through the composer handle \(\#23126\)](https://git.cafe/pingdotgg/t3code/commit/bd6940beab9e04a843d711fca812067c22991ab4?format=markdown) — bd6940beab9e04a843d711fca812067c22991ab4; Julius Marminge

- [fix\(server\): sync pull request draft status changes \(\#22832\)](https://git.cafe/pingdotgg/t3code/commit/70e5e384dab96a1d1e4a253ee5a9415ed5d8ce30?format=markdown) — 70e5e384dab96a1d1e4a253ee5a9415ed5d8ce30; Yash Singh

- [fix\(server\): JetBrains IDEs open file links at the right column \(\#22826\)](https://git.cafe/pingdotgg/t3code/commit/1befc717f0b277c86a066e46598e60465e7f23c2?format=markdown) — 1befc717f0b277c86a066e46598e60465e7f23c2; Lev Poznyakov

- [fix\(web\): copy to machine clones the fork, not its upstream \(\#22492\)](https://git.cafe/pingdotgg/t3code/commit/0f74ff8e3a4189331fa762ff5d5da0626ecc5a61?format=markdown) — 0f74ff8e3a4189331fa762ff5d5da0626ecc5a61; AKolenda

- [fix\(opencode\): cancelled todos no longer keep the todo list running \(\#22938\)](https://git.cafe/pingdotgg/t3code/commit/2333f168845f853f9ef358d1c4e6cf75189f4e8b?format=markdown) — 2333f168845f853f9ef358d1c4e6cf75189f4e8b; MarcoDotIO

- [fix\(shared\): Azure DevOps repositories with a space in the name list their pull requests \(\#22782\)](https://git.cafe/pingdotgg/t3code/commit/855db968a7517914019d77e3c364fe2002f345d9?format=markdown) — 855db968a7517914019d77e3c364fe2002f345d9; Pavel Kroupa

- [fix\(web\): imported VS Code themes keep destructive buttons red \(\#21924\)](https://git.cafe/pingdotgg/t3code/commit/7845898c871bb0776eb8beda08a7b6907beca090?format=markdown) — 7845898c871bb0776eb8beda08a7b6907beca090; Louis Gollut

- [fix\(client\): usage limits skip disabled connections \(\#22936\)](https://git.cafe/pingdotgg/t3code/commit/1a44c40901a8a639d18947fcccf9707b9b9222d8?format=markdown) — 1a44c40901a8a639d18947fcccf9707b9b9222d8; M4NU5

- [fix\(shared\): recognize relative folder links with trailing slash \(\#22188\)](https://git.cafe/pingdotgg/t3code/commit/6de7da548d15d86e86f7550a9f1b402e924249dd?format=markdown) — 6de7da548d15d86e86f7550a9f1b402e924249dd; maco

- [fix\(web\): \.\./ file links outside the workspace open as host files \(\#22853\)](https://git.cafe/pingdotgg/t3code/commit/edce5f0e53e8f0a80ed0c6b553edfe7b6467bc14?format=markdown) — edce5f0e53e8f0a80ed0c6b553edfe7b6467bc14; Theo Browne

- [fix\(web\): right panel launcher letters open their surface instead of typing into the composer \(\#22898\)](https://git.cafe/pingdotgg/t3code/commit/86fa9e0a0c4e3cdadff15d25583978ec80a80834?format=markdown) — 86fa9e0a0c4e3cdadff15d25583978ec80a80834; Theo Browne

- [fix\(web\): quote comment box stays on screen for long code lines \(\#22149\)](https://git.cafe/pingdotgg/t3code/commit/159f2b8cc33a46c2dfed7d394ec8eb54bad03c03?format=markdown) — 159f2b8cc33a46c2dfed7d394ec8eb54bad03c03; Etan Heyman

- [fix\(web\): a Usage toggle shortcut now goes back instead of staying on Usage \(\#22905\)](https://git.cafe/pingdotgg/t3code/commit/bee9ce829bb72503e3eaebeeb7397ba96b9762d0?format=markdown) — bee9ce829bb72503e3eaebeeb7397ba96b9762d0; Theo Browne

- [fix\(web\): thread details PR merge uses the last selected merge method \(\#22399\)](https://git.cafe/pingdotgg/t3code/commit/a35066d9f21616056bc438c894573900ebe87352?format=markdown) — a35066d9f21616056bc438c894573900ebe87352; Tristan Knight

- [fix\(composer\): typing a price no longer opens the skill menu \(\#21519\)](https://git.cafe/pingdotgg/t3code/commit/1ee0241730ef5d2592347280118a2c77e8fb797c?format=markdown) — 1ee0241730ef5d2592347280118a2c77e8fb797c; MarcoDotIO

- [fix\(server\): pushes the remote refuses say why instead of a generic failure \(\#22904\)](https://git.cafe/pingdotgg/t3code/commit/fb7f08782b964b4137eef597052c99efc9039043?format=markdown) — fb7f08782b964b4137eef597052c99efc9039043; Theo Browne

- [fix\(server\): Forgejo and GitCafe pull requests link to their threads again \(\#22937\)](https://git.cafe/pingdotgg/t3code/commit/22b89ef061a65c89488761a09e05e3dffc9e6316?format=markdown) — 22b89ef061a65c89488761a09e05e3dffc9e6316; MarcoDotIO

- [fix\(server\): scheduled tasks no longer jump to the top when toggled \(\#22899\)](https://git.cafe/pingdotgg/t3code/commit/1b22228e52382a18c3b0721ad5154c74996b35ad?format=markdown) — 1b22228e52382a18c3b0721ad5154c74996b35ad; Theo Browne

- [fix\(web\): the branch toolbar and thread details panel stay cached while a reply streams \(\#23103\)](https://git.cafe/pingdotgg/t3code/commit/968dd51704441138559a3fe9c348719f2b11e0c6?format=markdown) — 968dd51704441138559a3fe9c348719f2b11e0c6; Julius Marminge

- [refactor\(web\): ChatView's timeline banners render in ChatBannerLane \(\#23101\)](https://git.cafe/pingdotgg/t3code/commit/a642ab2bd5d3dcc98217d60073ea0feb234c1aa1?format=markdown) — a642ab2bd5d3dcc98217d60073ea0feb234c1aa1; Julius Marminge

- [refactor\(web\): chat shortcuts live with the hooks that own their actions \(\#23097\)](https://git.cafe/pingdotgg/t3code/commit/764fff2efcb7123a0518c6b9b768f2f984d08b23?format=markdown) — 764fff2efcb7123a0518c6b9b768f2f984d08b23; Julius Marminge

- [refactor\(web\): ComposerControlsBar renders without a memo\(\) wrapper \(\#23093\)](https://git.cafe/pingdotgg/t3code/commit/b34f74cde0db0a272b5796a59e298e887a6c7b99?format=markdown) — b34f74cde0db0a272b5796a59e298e887a6c7b99; Julius Marminge

- [refactor\(web\): the composer send reads its own settings and draft instead of taking them from ChatView \(\#23095\)](https://git.cafe/pingdotgg/t3code/commit/beec3c8b30cecbd61383339cde42374282d1dee3?format=markdown) — beec3c8b30cecbd61383339cde42374282d1dee3; Julius Marminge

- [refactor\(web\): multiple-model sends live in their own hook \(\#23094\)](https://git.cafe/pingdotgg/t3code/commit/ac23b74df83d95f98419f3ade6103054a54daec1?format=markdown) — ac23b74df83d95f98419f3ade6103054a54daec1; Julius Marminge

- [refactor\(web\): proposed-plan follow-ups and implement-in-new-thread live in their own hooks \(\#23091\)](https://git.cafe/pingdotgg/t3code/commit/36d1e2fec5881a19811c35c8a804c46c4ca2cea7?format=markdown) — 36d1e2fec5881a19811c35c8a804c46c4ca2cea7; Julius Marminge

- [refactor\(web\): resuming an interrupted run lives in its own hook \(\#23087\)](https://git.cafe/pingdotgg/t3code/commit/5b715cc13cc5bcb3f82951be42888452c0f18557?format=markdown) — 5b715cc13cc5bcb3f82951be42888452c0f18557; Julius Marminge

- [fix\(composer\): mentions of files like \`posts\.$postId.tsx\` or \`\[id\]\.tsx\` stay chips \(\#22922\)](https://git.cafe/pingdotgg/t3code/commit/5c3721e20aa3c19d7ab414c40734752f9c053c90?format=markdown) — 5c3721e20aa3c19d7ab414c40734752f9c053c90; Theo Browne

- [fix\(web\): finished provider updates no longer leave a hidden spinner in the sidebar \(\#22912\)](https://git.cafe/pingdotgg/t3code/commit/38d993f3836c02aa17194ed05087be5f2b0f1010?format=markdown) — 38d993f3836c02aa17194ed05087be5f2b0f1010; Theo Browne

- [fix\(web\): PR Code tab keeps its files after a refresh with an unchanged diff \(\#22917\)](https://git.cafe/pingdotgg/t3code/commit/b9c1293c0aad6196c393550867d73d07f55e9621?format=markdown) — b9c1293c0aad6196c393550867d73d07f55e9621; Theo Browne

- [fix\(mobile\): opening a pull request no longer crashes with "Maximum update depth exceeded" \(\#22600\)](https://git.cafe/pingdotgg/t3code/commit/d0c5d7c4ed90c9018e41853cde4f10043c72b12a?format=markdown) — d0c5d7c4ed90c9018e41853cde4f10043c72b12a; tatsuaki watanabe

- [fix\(server\): t3_thread_read clamps oversized page sizes instead of failing \(\#22901\)](https://git.cafe/pingdotgg/t3code/commit/ee11fbd971b2f94d7ba2ec411a36581671f8494a?format=markdown) — ee11fbd971b2f94d7ba2ec411a36581671f8494a; Theo Browne

- [fix\(scripts\): mobile lint fails instead of passing when ktlint or detekt is missing \(\#22896\)](https://git.cafe/pingdotgg/t3code/commit/aef8b6fcf0f6cc5cc901618b3723dd60317e7ac4?format=markdown) — aef8b6fcf0f6cc5cc901618b3723dd60317e7ac4; Theo Browne

- [fix\(server\): server tests resolve the macOS temp dir symlink \(\#21442\)](https://git.cafe/pingdotgg/t3code/commit/2a27e153559bc400cf5d1799eee68083c129b3ad?format=markdown) — 2a27e153559bc400cf5d1799eee68083c129b3ad; tatsuaki watanabe

- [test\(telemetry\): keep fixture PIDs from colliding with the test worker \(\#21446\)](https://git.cafe/pingdotgg/t3code/commit/da46db6ea3008f9575657a025d0b57e12d3c9272?format=markdown) — da46db6ea3008f9575657a025d0b57e12d3c9272; Victor Vogel

- [fix\(server\): failed provider updates say why \(\#22506\)](https://git.cafe/pingdotgg/t3code/commit/f08781009f741891a263772ec959e38f69fefccf?format=markdown) — f08781009f741891a263772ec959e38f69fefccf; Koushik_xd

- [docs\(composer\): queued messages follow the Follow-up behavior setting \(\#22857\)](https://git.cafe/pingdotgg/t3code/commit/8541f863747815c515410777d902a2814faf75e9?format=markdown) — 8541f863747815c515410777d902a2814faf75e9; Theo Browne

- [fix\(tailscale\): a timed-out tailscale probe no longer outlives its call \(\#22900\)](https://git.cafe/pingdotgg/t3code/commit/0d876e004aed0b5d6b5fe3bd65d7375d6c29b146?format=markdown) — 0d876e004aed0b5d6b5fe3bd65d7375d6c29b146; Theo Browne

- [fix\(server\): HTML preview reports a browser start error instead of an internal error \(\#22895\)](https://git.cafe/pingdotgg/t3code/commit/60dc0a044c1d0e2fe305eeb2b3cb6311f4fd2d8b?format=markdown) — 60dc0a044c1d0e2fe305eeb2b3cb6311f4fd2d8b; Theo Browne

- [docs\(user\): the outside agents guide says which addresses agents can sign in over \(\#22377\)](https://git.cafe/pingdotgg/t3code/commit/9c6523d5bec7642ccb2fcec50157dd984e2d6176?format=markdown) — 9c6523d5bec7642ccb2fcec50157dd984e2d6176; Gourav Kumar Dhiman

- [fix\(mobile\): chat feed no longer re-derives on every render \(\#22913\)](https://git.cafe/pingdotgg/t3code/commit/71b867080b1dc5853b53417efe15b2443f33f904?format=markdown) — 71b867080b1dc5853b53417efe15b2443f33f904; Theo Browne

- [fix\(server\): a desktop backend whose launcher died shuts down cleanly instead of crashing \(\#22471\)](https://git.cafe/pingdotgg/t3code/commit/2936b90883b2e23b00e1c2a5361ea545c3ac8dff?format=markdown) — 2936b90883b2e23b00e1c2a5361ea545c3ac8dff; Dara Adedeji

- [fix\(pi\): declare properties on MCP tool schemas that omit them \(\#21822\)](https://git.cafe/pingdotgg/t3code/commit/9892aca206279640b17a5453578f9f2b3178800d?format=markdown) — 9892aca206279640b17a5453578f9f2b3178800d; Taissa

- [fix\(server\): Codex no longer offers a one-click update for installs it can't detect \(\#22504\)](https://git.cafe/pingdotgg/t3code/commit/c25ba721ae403aacce6974bb1fb044cc65bb1e79?format=markdown) — c25ba721ae403aacce6974bb1fb044cc65bb1e79; Koushik_xd

- [fix\(cursor\): a closed-stream write in the Cursor SDK no longer stops the server \(\#22897\)](https://git.cafe/pingdotgg/t3code/commit/f54dfc09915d5fd7ee6476cdf446cd978abc197c?format=markdown) — f54dfc09915d5fd7ee6476cdf446cd978abc197c; Theo Browne

- [refactor\(web\): ChatView's paste-to-focus, titlebar controls, and timeline overlays move out \(\#23072\)](https://git.cafe/pingdotgg/t3code/commit/322d08dbd46eecf4446d33d85f9fd7ff08d60f1b?format=markdown) — 322d08dbd46eecf4446d33d85f9fd7ff08d60f1b; Julius Marminge

- [refactor\(web\): ChatView's thread derivations are tested functions in ChatView.logic \(\#23071\)](https://git.cafe/pingdotgg/t3code/commit/9952a7aa518275c4c42f7cf57b28409122a22537?format=markdown) — 9952a7aa518275c4c42f7cf57b28409122a22537; Julius Marminge

- [refactor\(web\): ChatView's pull request checkout lives in usePullRequestDraftThread \(\#23070\)](https://git.cafe/pingdotgg/t3code/commit/114f77fd056346babc1fa9571d947147bed3f72b?format=markdown) — 114f77fd056346babc1fa9571d947147bed3f72b; Julius Marminge

- [refactor\(web\): ChatView's model, mode, and workspace choices live in useComposerSelection \(\#23069\)](https://git.cafe/pingdotgg/t3code/commit/976a601b87342646913ee9f77226762a9f7ad82a?format=markdown) — 976a601b87342646913ee9f77226762a9f7ad82a; Julius Marminge

- [refactor\(web\): ChatView's project clone banner lives in useProjectCloneBanner \(\#23068\)](https://git.cafe/pingdotgg/t3code/commit/7be791c675347ac75eb32e89cf28370db2b08341?format=markdown) — 7be791c675347ac75eb32e89cf28370db2b08341; Julius Marminge

- [refactor\(web\): ChatView's attachment preview handoff lives in useAttachmentPreviewHandoff \(\#23067\)](https://git.cafe/pingdotgg/t3code/commit/5b8298c23848ffe20f2185a48d6d064eb18e1c77?format=markdown) — 5b8298c23848ffe20f2185a48d6d064eb18e1c77; Julius Marminge

- [refactor\(web\): ChatView's revert, rollback, and fork live in useTimelineRewind \(\#23066\)](https://git.cafe/pingdotgg/t3code/commit/9f087f782c2357f3c08b79266e23e3b2299626c1?format=markdown) — 9f087f782c2357f3c08b79266e23e3b2299626c1; Julius Marminge

- [refactor\(web\): ChatView's snooze, settle, and checkout actions live in useThreadLifecycle \(\#23065\)](https://git.cafe/pingdotgg/t3code/commit/92105d49946474a048f2fccadb3d2c1300d7d27b?format=markdown) — 92105d49946474a048f2fccadb3d2c1300d7d27b; Julius Marminge

- [refactor\(web\): ChatView's right panel actions live in useRightPanelActions \(\#23064\)](https://git.cafe/pingdotgg/t3code/commit/ebe828cd9ddee677d8c9adb3f5c33a772d285978?format=markdown) — ebe828cd9ddee677d8c9adb3f5c33a772d285978; Julius Marminge

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