# Commit history · pingdotgg/t3code

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

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

Visibility: public

Requested revision: 3492b1573c3107d2611541e2d54c28cf2c7f462e

Requested commit: 3492b1573c3107d2611541e2d54c28cf2c7f462e

- [refactor\(mcp\): use shared attachment launch intake](https://git.cafe/pingdotgg/t3code/commit/3492b1573c3107d2611541e2d54c28cf2c7f462e?format=markdown) — 3492b1573c3107d2611541e2d54c28cf2c7f462e; Julius Marminge

- [fix\(mcp\): preserve safe launch attachment errors](https://git.cafe/pingdotgg/t3code/commit/f3bb499312ac89fb0bf5661e289ce3cc8d96e624?format=markdown) — f3bb499312ac89fb0bf5661e289ce3cc8d96e624; Julius Marminge

- [feat\(mcp\): expose project thread launch service](https://git.cafe/pingdotgg/t3code/commit/5d6a48f3832f1183aaeaaf1db0fcdd540ae4395b?format=markdown) — 5d6a48f3832f1183aaeaaf1db0fcdd540ae4395b; Julius Marminge

- [refactor\(mcp\): use shared attachment send intake](https://git.cafe/pingdotgg/t3code/commit/71fa7c96ab7422920fedd57083b38e9992d29b42?format=markdown) — 71fa7c96ab7422920fedd57083b38e9992d29b42; Julius Marminge

- [fix\(mcp\): reject archived attachment targets before claiming](https://git.cafe/pingdotgg/t3code/commit/62a515beacbb13a2d47f7a1186bdcfed5816f490?format=markdown) — 62a515beacbb13a2d47f7a1186bdcfed5816f490; Julius Marminge

- [fix\(mcp\): reuse stored attachment metadata](https://git.cafe/pingdotgg/t3code/commit/3701a416a19c0710bb8d329fe1b0527687004cdc?format=markdown) — 3701a416a19c0710bb8d329fe1b0527687004cdc; Julius Marminge

- [fix\(mcp\): retain actionable attachment claim messages](https://git.cafe/pingdotgg/t3code/commit/7891d7ab57fa437aa3a570674f01e5a9eeca961b?format=markdown) — 7891d7ab57fa437aa3a570674f01e5a9eeca961b; Julius Marminge

- [fix\(mcp\): describe the existing attachment upload method](https://git.cafe/pingdotgg/t3code/commit/3fe65d57e655e8873308c13045cf906476ac86d7?format=markdown) — 3fe65d57e655e8873308c13045cf906476ac86d7; Julius Marminge

- [feat\(mcp\): expose existing attachment upload and send services](https://git.cafe/pingdotgg/t3code/commit/dc42153c903db6cec75f1e7ef1960439c74b6730?format=markdown) — dc42153c903db6cec75f1e7ef1960439c74b6730; Julius Marminge

- [refactor\(mcp\): reuse project mutation payloads](https://git.cafe/pingdotgg/t3code/commit/bc357ee0f9bf9f944ee62d3541ced375f4437c76?format=markdown) — bc357ee0f9bf9f944ee62d3541ced375f4437c76; Julius Marminge

- [fix\(mcp\): preserve actionable project failures](https://git.cafe/pingdotgg/t3code/commit/406a4afa9ecb73f18029a5b362d8cf48e7a6c0ef?format=markdown) — 406a4afa9ecb73f18029a5b362d8cf48e7a6c0ef; Julius Marminge

- [feat\(mcp\): expose existing project operations](https://git.cafe/pingdotgg/t3code/commit/b924136974464e7207e4cbba14190d1c5290ad9f?format=markdown) — b924136974464e7207e4cbba14190d1c5290ad9f; Julius Marminge

- [feat\(mcp\): expose manual scheduled task execution](https://git.cafe/pingdotgg/t3code/commit/06de99030122b641312c452007302d6bd8f99887?format=markdown) — 06de99030122b641312c452007302d6bd8f99887; Julius Marminge

- [feat\(mcp\): expose existing thread search](https://git.cafe/pingdotgg/t3code/commit/6342c1cb4b4f4484047fb16175163020b27dbab2?format=markdown) — 6342c1cb4b4f4484047fb16175163020b27dbab2; Julius Marminge

- [test\(mcp\): cover bounded preference output in core tests](https://git.cafe/pingdotgg/t3code/commit/d971e17ad8998b8147cac026bf213707dfc0f571?format=markdown) — d971e17ad8998b8147cac026bf213707dfc0f571; Julius Marminge

- [feat\(mcp\): expose selected environment preferences](https://git.cafe/pingdotgg/t3code/commit/a36adcd013aad803387b73e4d04534fda5edbe9a?format=markdown) — a36adcd013aad803387b73e4d04534fda5edbe9a; Julius Marminge

- [feat\(mcp\): expose preview tab list and close](https://git.cafe/pingdotgg/t3code/commit/bcb7b210e0d6d4f2dd2bb3f698fcb36442b536ff?format=markdown) — bcb7b210e0d6d4f2dd2bb3f698fcb36442b536ff; Julius Marminge

- [feat\(mcp\): expose existing conversation transfers](https://git.cafe/pingdotgg/t3code/commit/e3e71c75fa04a4bdfc277c8eea3266686a56aa72?format=markdown) — e3e71c75fa04a4bdfc277c8eea3266686a56aa72; Julius Marminge

- [refactor\(mcp\): reuse model-selection command choice](https://git.cafe/pingdotgg/t3code/commit/b0152bc6413b878f786c6c2ef30770fde71e3bbc?format=markdown) — b0152bc6413b878f786c6c2ef30770fde71e3bbc; Julius Marminge

- [feat\(mcp\): expose current thread model selection](https://git.cafe/pingdotgg/t3code/commit/0ebe252abb0d841b61564887e62134db567f4eb0?format=markdown) — 0ebe252abb0d841b61564887e62134db567f4eb0; Julius Marminge

- [feat\(mcp\): expose pending user questions](https://git.cafe/pingdotgg/t3code/commit/51483abe7fe7d45839507cd982e24545658b95da?format=markdown) — 51483abe7fe7d45839507cd982e24545658b95da; Julius Marminge

- [test\(mcp\): cover queue output in the shared integration](https://git.cafe/pingdotgg/t3code/commit/0a74c9341cb5342e0e5f1d5697eebc5a7dc95a7e?format=markdown) — 0a74c9341cb5342e0e5f1d5697eebc5a7dc95a7e; Julius Marminge

- [feat\(mcp\): expose existing queued message operations](https://git.cafe/pingdotgg/t3code/commit/c1d4b349b4b244a8df77150305aae1b14c74ace0?format=markdown) — c1d4b349b4b244a8df77150305aae1b14c74ace0; Julius Marminge

- [feat\(mcp\): expose existing thread organization commands](https://git.cafe/pingdotgg/t3code/commit/c03cefcfbabc1310d8c3f824f47d3e3b1115a0d7?format=markdown) — c03cefcfbabc1310d8c3f824f47d3e3b1115a0d7; Julius Marminge

- [refactor\(rpc\): map launch errors by their typed tags](https://git.cafe/pingdotgg/t3code/commit/4cfe3581d49e2e0e43ff30bae928ca53c3a4bcaa?format=markdown) — 4cfe3581d49e2e0e43ff30bae928ca53c3a4bcaa; Julius Marminge

- [fix\(server\): release proven unused attachment claims](https://git.cafe/pingdotgg/t3code/commit/c80aae28752480aca3d0ec0d9a773dca4586e821?format=markdown) — c80aae28752480aca3d0ec0d9a773dca4586e821; Julius Marminge

- [refactor\(server\): share attachment message intake](https://git.cafe/pingdotgg/t3code/commit/43e6ee2a70694c56dabfca8a91c966e8ba9c6d5c?format=markdown) — 43e6ee2a70694c56dabfca8a91c966e8ba9c6d5c; Julius Marminge

- [chore: tidy shared project schema extraction](https://git.cafe/pingdotgg/t3code/commit/80736156baa52edd357468cb49a39fd3782d4ad0?format=markdown) — 80736156baa52edd357468cb49a39fd3782d4ad0; Julius Marminge

- [refactor\(project\): derive service inputs from shared payloads](https://git.cafe/pingdotgg/t3code/commit/5eb6b6b7c72bce36403a8423648994957df846ed?format=markdown) — 5eb6b6b7c72bce36403a8423648994957df846ed; Julius Marminge

- [refactor\(contracts\): share project mutation payloads](https://git.cafe/pingdotgg/t3code/commit/2568ec811127b8dc20d582c8f845222729b7a9e3?format=markdown) — 2568ec811127b8dc20d582c8f845222729b7a9e3; Julius Marminge

- [refactor: share model-selection command choice](https://git.cafe/pingdotgg/t3code/commit/a645d4e33015b8657503ca7f978ab56b2d106f93?format=markdown) — a645d4e33015b8657503ca7f978ab56b2d106f93; Julius Marminge

- [fix\(server\): keep old failures from waking snoozed V2 threads \(\#9903\)](https://git.cafe/pingdotgg/t3code/commit/415ed0f73b97f1655b6282492f81d0b2bba3a9cc?format=markdown) — 415ed0f73b97f1655b6282492f81d0b2bba3a9cc; Alex Southwell

- [feat\(mcp\): update thread metadata \(\#8690\)](https://git.cafe/pingdotgg/t3code/commit/26a48b0070a0d81477804809c93d017d6d448a20?format=markdown) — 26a48b0070a0d81477804809c93d017d6d448a20; Julius Marminge

- [fix\(orchestration\): persist linked pull requests \(\#8689\)](https://git.cafe/pingdotgg/t3code/commit/792e2811a08c9d619bd240f4aaf1b35a3cccd0c4?format=markdown) — 792e2811a08c9d619bd240f4aaf1b35a3cccd0c4; Julius Marminge

- [fix\(mobile\): use the archive eligibility guard when dispatching \(\#9930\)](https://git.cafe/pingdotgg/t3code/commit/315f53f00688197519c067331f38a2fb079f3776?format=markdown) — 315f53f00688197519c067331f38a2fb079f3776; Alex Southwell

- [fix\(mobile\): render generic message attachments \(\#9929\)](https://git.cafe/pingdotgg/t3code/commit/475aa8cc59c500996a479dc6073c3385fe90e7af?format=markdown) — 475aa8cc59c500996a479dc6073c3385fe90e7af; Alex Southwell

- [fix\(server\): make project removal honor v2 threads](https://git.cafe/pingdotgg/t3code/commit/b9fa1399cfbacf23f35ba9201af8aebe3f41e807?format=markdown) — b9fa1399cfbacf23f35ba9201af8aebe3f41e807; Julius Marminge

- [fix: reconcile upstream fixes with orchestration v2](https://git.cafe/pingdotgg/t3code/commit/2ac9bfedf7a8960694963dd7a6ce64de470eee04?format=markdown) — 2ac9bfedf7a8960694963dd7a6ce64de470eee04; Julius Marminge

- [fix\(server\): explain fetch failures during worktree preparation](https://git.cafe/pingdotgg/t3code/commit/8905dacfdbbab8e654e3a2c45549b9fb7d98dbda?format=markdown) — 8905dacfdbbab8e654e3a2c45549b9fb7d98dbda; Julius Marminge

- [fix: reconcile main updates with orchestration v2](https://git.cafe/pingdotgg/t3code/commit/c9e77581ee65d9e16eab0d5dce53c8e113502dc6?format=markdown) — c9e77581ee65d9e16eab0d5dce53c8e113502dc6; Julius Marminge

- [test\(server\): use Effect Vitest for Cursor provider checks](https://git.cafe/pingdotgg/t3code/commit/8072d19c9a5c067ba028e6c250e10bce7ade1911?format=markdown) — 8072d19c9a5c067ba028e6c250e10bce7ade1911; Julius Marminge

- [ci: run checks on v2 branch pushes](https://git.cafe/pingdotgg/t3code/commit/fd632e42fbd624e8bfc65b942b495809701bae23?format=markdown) — fd632e42fbd624e8bfc65b942b495809701bae23; Julius Marminge

- [test\(server\): correlate OpenCode replay message identities](https://git.cafe/pingdotgg/t3code/commit/992a70481d754f0c9ee9c4c8bbf183797ba2dea8?format=markdown) — 992a70481d754f0c9ee9c4c8bbf183797ba2dea8; Julius Marminge

- [test\(server\): refresh replay runtime instruction expectations](https://git.cafe/pingdotgg/t3code/commit/497419e59c375fb3dfed26efc7de7a8e0956c42e?format=markdown) — 497419e59c375fb3dfed26efc7de7a8e0956c42e; Julius Marminge

- [fix\(client-runtime\): resolve work log source imports](https://git.cafe/pingdotgg/t3code/commit/41675661f1dbeac7bf88e127b5220b777ece8072?format=markdown) — 41675661f1dbeac7bf88e127b5220b777ece8072; Julius Marminge

- [fix\(mobile\): pin the patched notifications dependency](https://git.cafe/pingdotgg/t3code/commit/0805dd54d5f5108fb8d3aa98e6416d5053ee44f1?format=markdown) — 0805dd54d5f5108fb8d3aa98e6416d5053ee44f1; Julius Marminge

- [test\(server\): include the shell indexes migration](https://git.cafe/pingdotgg/t3code/commit/83a241da0215534e22716c8b62347c6fd0d2d671?format=markdown) — 83a241da0215534e22716c8b62347c6fd0d2d671; Julius Marminge

- [chore: format v2 files flagged by CI](https://git.cafe/pingdotgg/t3code/commit/8bb2b08131bf69c5ce657e6fe9b6e25e3b81553d?format=markdown) — 8bb2b08131bf69c5ce657e6fe9b6e25e3b81553d; Julius Marminge

- [fix\(orchestrator\): Stop finished Codex turns from sitting on Waiting \(\#7105\)](https://git.cafe/pingdotgg/t3code/commit/19444d5f3ccf2fc309c405cca2dc584481ab58cc?format=markdown) — 19444d5f3ccf2fc309c405cca2dc584481ab58cc; Mike Olson

- [fix\(orchestrator\): Show when a completed delegated child still has work \(\#4793\)](https://git.cafe/pingdotgg/t3code/commit/5670f7709fcf2b708c4b3a3fe9163ccf6dc78b75?format=markdown) — 5670f7709fcf2b708c4b3a3fe9163ccf6dc78b75; Mike Olson

- [fix\(orchestrator\): Stop treating a wait timeout as a dead child \(\#7427\)](https://git.cafe/pingdotgg/t3code/commit/1eb7dfa61abfc07449630ddaeb253fca81c828cc?format=markdown) — 1eb7dfa61abfc07449630ddaeb253fca81c828cc; Mike Olson

- [fix\(mobile\): restore composer and timeline behavior from main](https://git.cafe/pingdotgg/t3code/commit/7d703c2245f57dc2bb0b5ac60f1a7c5e7f1758b1?format=markdown) — 7d703c2245f57dc2bb0b5ac60f1a7c5e7f1758b1; Julius Marminge

- [fix\(chat\): match main timer and task placement](https://git.cafe/pingdotgg/t3code/commit/e1898cf13d7a1e4885706933fb2eab0df9b73517?format=markdown) — e1898cf13d7a1e4885706933fb2eab0df9b73517; Julius Marminge

- [fix\(orchestration\): stabilize Codex turn mapping and settlement](https://git.cafe/pingdotgg/t3code/commit/6502e22dc96bb7dfbaca8ffd446f162cc8bcd5c2?format=markdown) — 6502e22dc96bb7dfbaca8ffd446f162cc8bcd5c2; Julius Marminge

- [fix: reconcile main updates with orchestration v2](https://git.cafe/pingdotgg/t3code/commit/25d2531cae540bdc1697db5062d3c3e21b945c2c?format=markdown) — 25d2531cae540bdc1697db5062d3c3e21b945c2c; Julius Marminge

- [fix\(server\): reduce v2 recovery and runtime resource usage](https://git.cafe/pingdotgg/t3code/commit/036b87669570ea8b333c13846fb3341c83ca5d95?format=markdown) — 036b87669570ea8b333c13846fb3341c83ca5d95; Julius Marminge

- [fix: reconcile main's round-20 features after the rebase](https://git.cafe/pingdotgg/t3code/commit/d36b2bc008f146cf0551c1953f4f08ce83b5b12d?format=markdown) — d36b2bc008f146cf0551c1953f4f08ce83b5b12d; Julius Marminge

- [fix\(web\): realign the composer and timeline with main](https://git.cafe/pingdotgg/t3code/commit/1f285d975d215454b43ad57b3fb3270e5e20d2e8?format=markdown) — 1f285d975d215454b43ad57b3fb3270e5e20d2e8; Julius Marminge

- [fix\(web\): right-align the stash shoulder tab again](https://git.cafe/pingdotgg/t3code/commit/5c4cee53f97988314a5e86bcfd1fa7876ddedf09?format=markdown) — 5c4cee53f97988314a5e86bcfd1fa7876ddedf09; Julius Marminge

- [fix: reconcile main's round-19 features after the rebase](https://git.cafe/pingdotgg/t3code/commit/446c14ac7561db28528110f90ecb4dbe14801ad2?format=markdown) — 446c14ac7561db28528110f90ecb4dbe14801ad2; Julius Marminge

- [feat\(server\): evaluate automatic thread settlement in the v2 orchestrator](https://git.cafe/pingdotgg/t3code/commit/41a58eec417497e3c98194873c15eda7241878e8?format=markdown) — 41a58eec417497e3c98194873c15eda7241878e8; Julius Marminge

- [fix: reconcile main's round-18 features after the rebase](https://git.cafe/pingdotgg/t3code/commit/7b13bca643f4bfdce8d2989ea9264ea57492f0ce?format=markdown) — 7b13bca643f4bfdce8d2989ea9264ea57492f0ce; Julius Marminge

- [feat\(web\): port working and thinking timeline rows to orchestration v2](https://git.cafe/pingdotgg/t3code/commit/786a258cba4b9636ff4c69e7ac1daabdd204decd?format=markdown) — 786a258cba4b9636ff4c69e7ac1daabdd204decd; Julius Marminge

- [fix: reconcile main's round-17 features after the rebase](https://git.cafe/pingdotgg/t3code/commit/9d90e5b55c932baefe09817f01c2848a1dc441fa?format=markdown) — 9d90e5b55c932baefe09817f01c2848a1dc441fa; Julius Marminge

- [fix\(mobile\): keep scroll bounds current after animations](https://git.cafe/pingdotgg/t3code/commit/46ccba0eb1f8390d0984bea9f53261aa986c16c9?format=markdown) — 46ccba0eb1f8390d0984bea9f53261aa986c16c9; Julius Marminge

- [fix\(chat\): remove added tool summary status counts](https://git.cafe/pingdotgg/t3code/commit/ed00e2c6d79b7396b3d2b2061967a2a87b22ae89?format=markdown) — ed00e2c6d79b7396b3d2b2061967a2a87b22ae89; Julius Marminge

- [feat\(mobile\): port chat summaries and transitions to orchestration v2](https://git.cafe/pingdotgg/t3code/commit/a1859c1070652fe6bacc2c94e8e748885be54427?format=markdown) — a1859c1070652fe6bacc2c94e8e748885be54427; Julius Marminge

- [feat\(web\): summarize T3 orchestration actions](https://git.cafe/pingdotgg/t3code/commit/e3cf4e701349600530bd078da85f231db0272a9b?format=markdown) — e3cf4e701349600530bd078da85f231db0272a9b; Julius Marminge

- [fix\(web\): keep composer shortcut tooltip stable on Mod](https://git.cafe/pingdotgg/t3code/commit/9704a94c1a444703e8dba7e60046cde4148b973e?format=markdown) — 9704a94c1a444703e8dba7e60046cde4148b973e; Julius Marminge

- [fix\(web\): match composer actions to draft and modifier state](https://git.cafe/pingdotgg/t3code/commit/f4990e88c51a38dfd297b36016eb8969df26af8e?format=markdown) — f4990e88c51a38dfd297b36016eb8969df26af8e; Julius Marminge

- [fix\(web\): keep queued messages in place while editing](https://git.cafe/pingdotgg/t3code/commit/52c04315c5f22b70e9ba0ac8058e669eabd96103?format=markdown) — 52c04315c5f22b70e9ba0ac8058e669eabd96103; Julius Marminge

- [fix\(web\): keep queued message editing inside the queue panel](https://git.cafe/pingdotgg/t3code/commit/1dba1e9d62f17c16fa052417683d393355546ebd?format=markdown) — 1dba1e9d62f17c16fa052417683d393355546ebd; Julius Marminge

- [refactor\(web\): use shared banner rows for queued messages](https://git.cafe/pingdotgg/t3code/commit/d237255a288799fdd7cd5b01a89e2c7d1c99ddbb?format=markdown) — d237255a288799fdd7cd5b01a89e2c7d1c99ddbb; Julius Marminge

- [fix\(web\): keep stash separate from the composer activity column](https://git.cafe/pingdotgg/t3code/commit/d46cee69daddfae86d4df44b79ca282feab42f6c?format=markdown) — d46cee69daddfae86d4df44b79ca282feab42f6c; Julius Marminge

- [fix\(web\): share the outline for joined composer tabs](https://git.cafe/pingdotgg/t3code/commit/d29886b1dd8d7d67964c6cc0aef12d5115717a9e?format=markdown) — d29886b1dd8d7d67964c6cc0aef12d5115717a9e; Julius Marminge

- [fix\(web\): align queue headers and prevent stash overlap](https://git.cafe/pingdotgg/t3code/commit/041c2ef8bc97f2f8cfb74688edadf6075a4301ff?format=markdown) — 041c2ef8bc97f2f8cfb74688edadf6075a4301ff; Julius Marminge

- [fix\(web\): port composer activity and grouping to orchestration v2](https://git.cafe/pingdotgg/t3code/commit/cc8c66364164421f50f7a56643cd79276309b01b?format=markdown) — cc8c66364164421f50f7a56643cd79276309b01b; Julius Marminge

- [fix\(orchestration\): select visible history before limiting SQL](https://git.cafe/pingdotgg/t3code/commit/bb95b1f5e49a007a1e7c0551bfde43078e4937da?format=markdown) — bb95b1f5e49a007a1e7c0551bfde43078e4937da; Julius Marminge

- [fix\(server\): recover OpenCode status reconciliation](https://git.cafe/pingdotgg/t3code/commit/f1478a98418cc8e84a1f3818cd9749c39c8a7c3b?format=markdown) — f1478a98418cc8e84a1f3818cd9749c39c8a7c3b; Julius Marminge

- [fix\(orchestration\): retain nested fork history when paging](https://git.cafe/pingdotgg/t3code/commit/e5ae3d476c71e400413f8fcd5c819057d18b0a79?format=markdown) — e5ae3d476c71e400413f8fcd5c819057d18b0a79; Julius Marminge

- [fix\(server\): cancel pending OpenCode prompts safely](https://git.cafe/pingdotgg/t3code/commit/1106aea50c9f11d99c0529fcacdc6a610b3a66a4?format=markdown) — 1106aea50c9f11d99c0529fcacdc6a610b3a66a4; Julius Marminge

- [fix\(orchestration\): page history through its true end](https://git.cafe/pingdotgg/t3code/commit/d4c2e7898c5361fd680837d062c444af0c834bd3?format=markdown) — d4c2e7898c5361fd680837d062c444af0c834bd3; Julius Marminge

- [fix\(web\): retain markdown workspace ownership](https://git.cafe/pingdotgg/t3code/commit/0b9a275bdde41e7a88977b9d5f9534f204a16511?format=markdown) — 0b9a275bdde41e7a88977b9d5f9534f204a16511; Julius Marminge

- [fix\(clients\): anchor feedback in conversation order](https://git.cafe/pingdotgg/t3code/commit/54044e36b8ba008ffdc1ac71aebcf7c3ca9b3bd0?format=markdown) — 54044e36b8ba008ffdc1ac71aebcf7c3ca9b3bd0; Julius Marminge

- [fix\(server\): correlate OpenCode prompt admission](https://git.cafe/pingdotgg/t3code/commit/7ac8986ab73c7e249d50985bffeebf540c3f4a77?format=markdown) — 7ac8986ab73c7e249d50985bffeebf540c3f4a77; Julius Marminge

- [fix\(server\): normalize Claude question answers](https://git.cafe/pingdotgg/t3code/commit/96d86de9e6bd2dfd2711666c6c5a8b252b5498bd?format=markdown) — 96d86de9e6bd2dfd2711666c6c5a8b252b5498bd; Julius Marminge

- [fix\(server\): preserve Claude planning lifecycle](https://git.cafe/pingdotgg/t3code/commit/ef7f80547262d86ae77ce25ee07c14fdd34e975d?format=markdown) — ef7f80547262d86ae77ce25ee07c14fdd34e975d; Julius Marminge

- [fix\(server\): preserve provider usage in persisted turns](https://git.cafe/pingdotgg/t3code/commit/d81a2f05563aa5e27e66272ee8662df1d3a55171?format=markdown) — d81a2f05563aa5e27e66272ee8662df1d3a55171; Julius Marminge

- [fix\(server\): allow protocol negotiation in CORS](https://git.cafe/pingdotgg/t3code/commit/22acb619ed72c0dc9cf99959339fa0f36b36a3d8?format=markdown) — 22acb619ed72c0dc9cf99959339fa0f36b36a3d8; Julius Marminge

- [fix\(server\): restore Claude resume compaction](https://git.cafe/pingdotgg/t3code/commit/f7511d3e31c55c7495401bfb857a439ee03bda3d?format=markdown) — f7511d3e31c55c7495401bfb857a439ee03bda3d; Julius Marminge

- [perf\(orchestration\): bound complete thread snapshots](https://git.cafe/pingdotgg/t3code/commit/3467a5121161411bb51794c9307659d7cf0bd5c1?format=markdown) — 3467a5121161411bb51794c9307659d7cf0bd5c1; Julius Marminge

- [perf\(orchestration\): bound history reads in SQL](https://git.cafe/pingdotgg/t3code/commit/34c720d50e1586da8434adc5ab1c74bab6ac23c0?format=markdown) — 34c720d50e1586da8434adc5ab1c74bab6ac23c0; Julius Marminge

- [fix\(server\): project Claude plans and todos](https://git.cafe/pingdotgg/t3code/commit/9d8ad3a48488305c69446be4e581528f1e2083a1?format=markdown) — 9d8ad3a48488305c69446be4e581528f1e2083a1; Julius Marminge

- [fix\(server\): restore Claude structured questions](https://git.cafe/pingdotgg/t3code/commit/ee8d6f875986080a45cac15a56d50b8205d2de67?format=markdown) — ee8d6f875986080a45cac15a56d50b8205d2de67; Julius Marminge

- [fix\(server\): guard OpenCode prompt admission races](https://git.cafe/pingdotgg/t3code/commit/312d998c9f9097aee183eec5353fdcbfbe488a31?format=markdown) — 312d998c9f9097aee183eec5353fdcbfbe488a31; Julius Marminge

- [chore\(repo\): remove tracked audit scratch files](https://git.cafe/pingdotgg/t3code/commit/b3bd9c4ecc80c66f6a584001a27920cf340f8c7d?format=markdown) — b3bd9c4ecc80c66f6a584001a27920cf340f8c7d; Julius Marminge

- [docs: state portable handoff limits](https://git.cafe/pingdotgg/t3code/commit/01fb9b2f8be65aeadd0a3ce385f5650ed84635ff?format=markdown) — 01fb9b2f8be65aeadd0a3ce385f5650ed84635ff; Julius Marminge

- [docs: explain legacy thread migration](https://git.cafe/pingdotgg/t3code/commit/b991834aeff5102be46694d5af81cf6749da898c?format=markdown) — b991834aeff5102be46694d5af81cf6749da898c; Julius Marminge

- [fix\(protocol\): reject incompatible orchestration peers](https://git.cafe/pingdotgg/t3code/commit/76430cd1cfcb2034aa9c3268749a51afb69bcc0d?format=markdown) — 76430cd1cfcb2034aa9c3268749a51afb69bcc0d; Julius Marminge

- [fix\(web\): scope markdown actions to their environment](https://git.cafe/pingdotgg/t3code/commit/e111c0543d37824faebd04b056549e4dc0d5d01d?format=markdown) — e111c0543d37824faebd04b056549e4dc0d5d01d; Julius Marminge

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