# Commit history · pingdotgg/t3code

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

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

Visibility: public

Requested revision: 7c16a4008a2750ed043031997a67aae15da37802

Requested commit: 7c16a4008a2750ed043031997a67aae15da37802

- [test\(mobile\): prune low-value tests in mobile \(second pass\) \(\#22588\)](https://git.cafe/pingdotgg/t3code/commit/7c16a4008a2750ed043031997a67aae15da37802?format=markdown) — 7c16a4008a2750ed043031997a67aae15da37802; Julius Marminge

- [chore\(web\): remove "use client" directives \(\#22587\)](https://git.cafe/pingdotgg/t3code/commit/a01f4107ca46b8688e3f81c8878e37fdfadc3fd7?format=markdown) — a01f4107ca46b8688e3f81c8878e37fdfadc3fd7; oliver

- [fix\(server\): idle orphaned follow-ups can be cancelled without a running parent \(\#22581\)](https://git.cafe/pingdotgg/t3code/commit/849b3f894803a4f04672fa7e9881aa140106d261?format=markdown) — 849b3f894803a4f04672fa7e9881aa140106d261; Theo Browne

- [ci\(release\): build Windows x64 on Linux like arm64 \(\#22584\)](https://git.cafe/pingdotgg/t3code/commit/569bd029ea446414f0bba171713ac290532dd58d?format=markdown) — 569bd029ea446414f0bba171713ac290532dd58d; Theo Browne

- [fix\(web\): dialogs keep their content while they close \(\#21960\)](https://git.cafe/pingdotgg/t3code/commit/5bc19ac641e9835eeaff28b424168b04c2d8c8ad?format=markdown) — 5bc19ac641e9835eeaff28b424168b04c2d8c8ad; oliver

- [fix\(mobile\): iOS new-thread skill picker stops shifting the screen \(\#22121\)](https://git.cafe/pingdotgg/t3code/commit/3719fd228b388e234900aacd5e451be8838bcd7c?format=markdown) — 3719fd228b388e234900aacd5e451be8838bcd7c; oliver

- [test: warn on polling loops in tests and make adapter test harnesses event-driven \(\#22565\)](https://git.cafe/pingdotgg/t3code/commit/08dbf834d9ad9644305a40a6bece14279ec75bc1?format=markdown) — 08dbf834d9ad9644305a40a6bece14279ec75bc1; Julius Marminge

- [test\(server\): ban real-clock waits in tests \(\#22564\)](https://git.cafe/pingdotgg/t3code/commit/bde62061d2a2074d250b1715da5eaacc50ec6a71?format=markdown) — bde62061d2a2074d250b1715da5eaacc50ec6a71; Julius Marminge

- [test: ban wall-clock readings in tests \(\#22562\)](https://git.cafe/pingdotgg/t3code/commit/dd4506a1308b2c7cae7dc3377aa4509c4dbfb8ef?format=markdown) — dd4506a1308b2c7cae7dc3377aa4509c4dbfb8ef; Julius Marminge

- [test\(web\): ban frame and transition waits in browser tests \(\#22561\)](https://git.cafe/pingdotgg/t3code/commit/7895a2bc9d419d9868f038226a6a6dcf442bee66?format=markdown) — 7895a2bc9d419d9868f038226a6a6dcf442bee66; Julius Marminge

- [test\(lint\): ban per-test timeouts and unreasoned skips \(\#22560\)](https://git.cafe/pingdotgg/t3code/commit/b280e7d385fc52edc54a33da4c830452a03dfa13?format=markdown) — b280e7d385fc52edc54a33da4c830452a03dfa13; Julius Marminge

- [fix\(web,mobile\): list database space for all machines in one notice \(\#22575\)](https://git.cafe/pingdotgg/t3code/commit/8cd561ef6f8d09e22b50429982acaf1e9b896086?format=markdown) — 8cd561ef6f8d09e22b50429982acaf1e9b896086; Julius Marminge

- [fix\(mobile\): thread rows show wake status and elapsed time \(\#21394\)](https://git.cafe/pingdotgg/t3code/commit/2085ea32cc72882cfef3db1f73b2c8381e8065b6?format=markdown) — 2085ea32cc72882cfef3db1f73b2c8381e8065b6; maria

- [test: delete 11k low-signal tests so CI runs faster and flakes less \(\#22557\)](https://git.cafe/pingdotgg/t3code/commit/05696c636ec2a101a763505d820b83891e529ccd?format=markdown) — 05696c636ec2a101a763505d820b83891e529ccd; Theo Browne

- [fix\(web\): main typecheck passes again after the Mermaid switch to pele \(\#22570\)](https://git.cafe/pingdotgg/t3code/commit/c3540a7854f693db52dc61e6920295665538fabc?format=markdown) — c3540a7854f693db52dc61e6920295665538fabc; Theo Browne

- [fix\(web\): keep approval menu actions compact \(\#22566\)](https://git.cafe/pingdotgg/t3code/commit/d356059c84cfcd8c3a7d3a2042e8b3637c5a40e8?format=markdown) — d356059c84cfcd8c3a7d3a2042e8b3637c5a40e8; Yash Singh

- [fix\(mobile\): expose background work and thread status actions \(\#21395\)](https://git.cafe/pingdotgg/t3code/commit/fe414ebdd3cb883436803d49672cbc4cf080bafa?format=markdown) — fe414ebdd3cb883436803d49672cbc4cf080bafa; maria

- [fix\(mobile\): restore archive and thread action undo \(\#21401\)](https://git.cafe/pingdotgg/t3code/commit/6efe9a088eb37e06df24af2012b11d6463e8864f?format=markdown) — 6efe9a088eb37e06df24af2012b11d6463e8864f; maria

- [fix\(mobile\): bring model controls in line with web \(\#21406\)](https://git.cafe/pingdotgg/t3code/commit/f16251f164f80caebd051394cfefdbb6c855d4f4?format=markdown) — f16251f164f80caebd051394cfefdbb6c855d4f4; maria

- [fix\(mobile\): lock the composer while queued edits save \(\#21390\)](https://git.cafe/pingdotgg/t3code/commit/834ae4f9faad33d27f7df9b9119c4ad2b4475c6c?format=markdown) — 834ae4f9faad33d27f7df9b9119c4ad2b4475c6c; maria

- [fix\(mobile\): open transcript file links at the resolved path \(\#21403\)](https://git.cafe/pingdotgg/t3code/commit/afc33ff6bf0e64fc31e472869602dd09b503e0ca?format=markdown) — afc33ff6bf0e64fc31e472869602dd09b503e0ca; maria

- [fix\(mobile\): show plans and fold settled progress notes \(\#21393\)](https://git.cafe/pingdotgg/t3code/commit/77e4f561f58b8539f0e37deb32eb2ba56912a140?format=markdown) — 77e4f561f58b8539f0e37deb32eb2ba56912a140; maria

- [fix\(mobile\): add project and checkout removal \(\#21409\)](https://git.cafe/pingdotgg/t3code/commit/0dc38c75f5704e2308bf93954910a6ab0c393a74?format=markdown) — 0dc38c75f5704e2308bf93954910a6ab0c393a74; maria

- [fix\(mobile\): use current checkout for non-git projects \(\#21404\)](https://git.cafe/pingdotgg/t3code/commit/4db2533f5575b58bd09d807c4241261a714ea3ea?format=markdown) — 4db2533f5575b58bd09d807c4241261a714ea3ea; maria

- [fix\(mobile\): live activity tracks thread status and settlement \(\#21405\)](https://git.cafe/pingdotgg/t3code/commit/2f6755b7e32d74f120de4b19b21ed9e4b43fcf34?format=markdown) — 2f6755b7e32d74f120de4b19b21ed9e4b43fcf34; maria

- [fix\(mobile\): update outdated servers and respect provider permissions \(\#21402\)](https://git.cafe/pingdotgg/t3code/commit/145d73b42e067ecdffacc50af0ccd6fd6e1afcf2?format=markdown) — 145d73b42e067ecdffacc50af0ccd6fd6e1afcf2; maria

- [fix\(mobile\): show terminal arrow keys before secondary controls \(\#21398\)](https://git.cafe/pingdotgg/t3code/commit/e27fffa7273a7960f67374ef6d6556f04250ed1e?format=markdown) — e27fffa7273a7960f67374ef6d6556f04250ed1e; maria

- [fix\(mobile\): collapse pull request repository errors \(\#21389\)](https://git.cafe/pingdotgg/t3code/commit/043c9c3169596864fff5ff018c9b877509acb93c?format=markdown) — 043c9c3169596864fff5ff018c9b877509acb93c; maria

- [fix\(mobile\): keep home brand visible during secondary retries \(\#21388\)](https://git.cafe/pingdotgg/t3code/commit/327f3fc72cee0a51079f40980373f5e87fbd497d?format=markdown) — 327f3fc72cee0a51079f40980373f5e87fbd497d; maria

- [feat\(web\): render Mermaid diagrams with pele \(\#21472\)](https://git.cafe/pingdotgg/t3code/commit/fcb20e49aa0c1c5fc736034687c42e20cd2637b3?format=markdown) — fcb20e49aa0c1c5fc736034687c42e20cd2637b3; maria

- [test: remove the timing races behind recurring CI and release failures \(\#22523\)](https://git.cafe/pingdotgg/t3code/commit/f9dd25914dbd5f061f2685965bcbe2db8cfb912e?format=markdown) — f9dd25914dbd5f061f2685965bcbe2db8cfb912e; Theo Browne

- [test\(server\): Claude steer test no longer hangs for 120s under CI load \(\#22533\)](https://git.cafe/pingdotgg/t3code/commit/5d27ecd79c33a642efcdf259e89e3eba5a560247?format=markdown) — 5d27ecd79c33a642efcdf259e89e3eba5a560247; Theo Browne

- [ci\(release\): release tests stop timing out and finish in about 5 minutes \(\#22524\)](https://git.cafe/pingdotgg/t3code/commit/fe27e8e3dc12dcbb108e9a28fd9b8cb65f34ae92?format=markdown) — fe27e8e3dc12dcbb108e9a28fd9b8cb65f34ae92; Theo Browne

- [fix\(mobile\): folded Back clears the detail route before the next selection \(\#22526\)](https://git.cafe/pingdotgg/t3code/commit/4af32312db6eebad26b158e65a0f2771abecd543?format=markdown) — 4af32312db6eebad26b158e65a0f2771abecd543; Julius Marminge

- [fix\(mobile\): connecting an environment no longer crashes the header \(\#22521\)](https://git.cafe/pingdotgg/t3code/commit/c8667fd5f4cd635b82b70d9e082c98c06eb78dcc?format=markdown) — c8667fd5f4cd635b82b70d9e082c98c06eb78dcc; Julius Marminge

- [test\(web\): fix release browser test failures \(\#22508\)](https://git.cafe/pingdotgg/t3code/commit/5bcc90e1116e396a86cb1802fd26361457c9548a?format=markdown) — 5bcc90e1116e396a86cb1802fd26361457c9548a; Theo Browne

- [refactor\(source-control\): GitCafe creates repositories and pull requests over REST \(\#22495\)](https://git.cafe/pingdotgg/t3code/commit/ca140c435f38612656dd655fc42e2f78efbfb4c9?format=markdown) — ca140c435f38612656dd655fc42e2f78efbfb4c9; Julius Marminge

- [ci\(release\): Windows arm64 verify no longer runs the crashing ARM PowerShell \(\#22494\)](https://git.cafe/pingdotgg/t3code/commit/4c48118da2fa45c5cbd10a87b8fc6db003cad907?format=markdown) — 4c48118da2fa45c5cbd10a87b8fc6db003cad907; Theo Browne

- [ci\(release\): Make Windows arm64 CI job 50% faster \(\#22428\)](https://git.cafe/pingdotgg/t3code/commit/14b47ee1b83aa302cb8c5cc511b56da16f2bcbc2?format=markdown) — 14b47ee1b83aa302cb8c5cc511b56da16f2bcbc2; Jacob Hands

- [feat\(scheduled-tasks\): replay dedupe and coalescing for webhook deliveries \(\#22234\)](https://git.cafe/pingdotgg/t3code/commit/2ebe280e5602f23fc2742297da3d3b6f2b1b8fca?format=markdown) — 2ebe280e5602f23fc2742297da3d3b6f2b1b8fca; Julius Marminge

- [fix\(mobile\): prevent update checker from crashing iOS at launch \(\#22488\)](https://git.cafe/pingdotgg/t3code/commit/ec585729e0a48c318f4cfb0c232b816c029d0541?format=markdown) — ec585729e0a48c318f4cfb0c232b816c029d0541; Julius Marminge

- [feat\(scheduled-tasks\): event filters for webhook deliveries \(\#22194\)](https://git.cafe/pingdotgg/t3code/commit/0c85b0d9977fe9376bf9a4b063a4dd8ab8c97ae6?format=markdown) — 0c85b0d9977fe9376bf9a4b063a4dd8ab8c97ae6; Julius Marminge

- [fix\(web\): restore left-aligned markdown table cells \(\#22482\)](https://git.cafe/pingdotgg/t3code/commit/860e6d2cc6b9a03e2fdb34deb0d0ecc90ad2857d?format=markdown) — 860e6d2cc6b9a03e2fdb34deb0d0ecc90ad2857d; t3-code\[bot\]

- [fix\(mobile\): the composer stays one row until the draft wraps \(\#20812\)](https://git.cafe/pingdotgg/t3code/commit/dac3437d94129a7a072d19ffa482845624a25d14?format=markdown) — dac3437d94129a7a072d19ffa482845624a25d14; Julius Marminge

- [test\(web\): pooled Limits segments narrower than 6px draw no pace mark; fixture README \(\#22453\)](https://git.cafe/pingdotgg/t3code/commit/7e289ae1f77b9137580688aaccf00d48906984ad?format=markdown) — 7e289ae1f77b9137580688aaccf00d48906984ad; Julius Marminge

- [fix\(web,mobile\): Limits bars show the even-pace mark as a tick in a gap \(\#22408\)](https://git.cafe/pingdotgg/t3code/commit/5d4c202e3f5be0993efea751ca0f0bd4dedb64d4?format=markdown) — 5d4c202e3f5be0993efea751ca0f0bd4dedb64d4; Julius Marminge

- [test\(web\): migrate the last \.ts browser tests and stop wrapping userEvent in act \(\#22424\)](https://git.cafe/pingdotgg/t3code/commit/f7f9e217857ecb5c25ec9164e2b490801e74b514?format=markdown) — f7f9e217857ecb5c25ec9164e2b490801e74b514; Julius Marminge

- [test\(web\): require-disposable-render is now an error \(\#22410\)](https://git.cafe/pingdotgg/t3code/commit/6ab39ff6b8f60447c2580b818351fe4387fffa82?format=markdown) — 6ab39ff6b8f60447c2580b818351fe4387fffa82; Julius Marminge

- [test\(ssh\): unreaped-server test no longer loses its zombie fixture \(\#22427\)](https://git.cafe/pingdotgg/t3code/commit/2893437f261dd50b96010dda3cbf518a28765b80?format=markdown) — 2893437f261dd50b96010dda3cbf518a28765b80; Julius Marminge

- [fix\(mobile\): use native sheet headers and toolbar filters \(\#22390\)](https://git.cafe/pingdotgg/t3code/commit/be5a5cd01cb0c2519963a65b277f5905d8c3109c?format=markdown) — be5a5cd01cb0c2519963a65b277f5905d8c3109c; Julius Marminge

- [test\(web\): disposable render helper and lint rule for browser tests \(\#22187\)](https://git.cafe/pingdotgg/t3code/commit/81dea7821dca30b417182db6fa0cb99a0195bfd8?format=markdown) — 81dea7821dca30b417182db6fa0cb99a0195bfd8; Julius Marminge

- [fix\(relay\): run the relay Worker next to its database \(\#22065\)](https://git.cafe/pingdotgg/t3code/commit/758d773f578f168d8830c097f96f8400fdcdc5c4?format=markdown) — 758d773f578f168d8830c097f96f8400fdcdc5c4; Julius Marminge

- [fix\(contracts\): settings save again when the writing style has default fields \(\#22203\)](https://git.cafe/pingdotgg/t3code/commit/d65249074b54d7e8a72cb9a9e7f8b37bbd0a89a6?format=markdown) — d65249074b54d7e8a72cb9a9e7f8b37bbd0a89a6; MatiasGadeberg

- [fix\(web\): normalize disabled terminal button opacity \(\#22389\)](https://git.cafe/pingdotgg/t3code/commit/2229efcbe22c5616b8186e2b018e7a996cd4693b?format=markdown) — 2229efcbe22c5616b8186e2b018e7a996cd4693b; Utkarsh Patil

- [fix\(mobile\): chat chips match desktop and the composer again \(\#22169\)](https://git.cafe/pingdotgg/t3code/commit/cdaaa742c9cf0637b80c4bb5d7fe2c1c26b64b63?format=markdown) — cdaaa742c9cf0637b80c4bb5d7fe2c1c26b64b63; oliver

- [fix\(server\): updates no longer keep every old runtime on disk \(\#22253\)](https://git.cafe/pingdotgg/t3code/commit/2b28b46daa10d419bb79613139e046a9324b86b0?format=markdown) — 2b28b46daa10d419bb79613139e046a9324b86b0; Julius Marminge

- [fix\(mobile\): pin expo-modules-core so the release smoke patch stays in use \(\#22343\)](https://git.cafe/pingdotgg/t3code/commit/8ecb607de44ec3cef2854bf0ea7ea5c1aed01d08?format=markdown) — 8ecb607de44ec3cef2854bf0ea7ea5c1aed01d08; project516

- [revert: limit bars with many accounts no longer clip names to one letter \(\#19964\) \(\#22395\)](https://git.cafe/pingdotgg/t3code/commit/573d376e4c2f621d2147d06ea83310f531e17bb1?format=markdown) — 573d376e4c2f621d2147d06ea83310f531e17bb1; Julius Marminge

- [fix\(web\): use the shared markdown scrollbar width \(\#22200\)](https://git.cafe/pingdotgg/t3code/commit/b5a0696a989a171530cc3c0ff831a99f51ce6f09?format=markdown) — b5a0696a989a171530cc3c0ff831a99f51ce6f09; Utkarsh Patil

- [fix\(web\): show pointer cursors on changed-file controls \(\#22266\)](https://git.cafe/pingdotgg/t3code/commit/72ebd98cc61ae26c7ee852143eb268b6e48b3d4a?format=markdown) — 72ebd98cc61ae26c7ee852143eb268b6e48b3d4a; Utkarsh Patil

- [fix\(web\): pinned threads' pin icon stays put on hover \(\#22303\)](https://git.cafe/pingdotgg/t3code/commit/67c0fc0cdaf963b103518862dd7b68a9c758ecf2?format=markdown) — 67c0fc0cdaf963b103518862dd7b68a9c758ecf2; Theo Browne

- [fix\(desktop\): macOS release signing works on macOS 26.6 runners \(\#22277\)](https://git.cafe/pingdotgg/t3code/commit/d36b7da2485bc889b320a285deea181f637d760a?format=markdown) — d36b7da2485bc889b320a285deea181f637d760a; Theo Browne

- [ci\(release\): build macOS desktop on GitHub macos-26-xlarge runners \(\#22264\)](https://git.cafe/pingdotgg/t3code/commit/e9a5974379943e471aa340e683b47cc89db60015?format=markdown) — e9a5974379943e471aa340e683b47cc89db60015; Theo Browne

- [test\(web\): isolate diff worker idle clock \(\#22259\)](https://git.cafe/pingdotgg/t3code/commit/30afc56076c86580d5d913897280bea660d44c79?format=markdown) — 30afc56076c86580d5d913897280bea660d44c79; Theo Browne

- [feat\(clients\): every PR \+/\- shows its code, tests, and docs split, without the hover wait \(\#22255\)](https://git.cafe/pingdotgg/t3code/commit/962428df104d1958ff58a3b205e64a07117e7781?format=markdown) — 962428df104d1958ff58a3b205e64a07117e7781; Theo Browne

- [fix\(web,server\): adding a project to another machine takes you there, with no toasts and the right favicon \(\#22254\)](https://git.cafe/pingdotgg/t3code/commit/54346a617c60ded22c1d37b4c14b2bb6ae83d7df?format=markdown) — 54346a617c60ded22c1d37b4c14b2bb6ae83d7df; Theo Browne

- [test\(ssh\): wait for server exit during handover \(\#22252\)](https://git.cafe/pingdotgg/t3code/commit/729c56c3cb63e7ee4b855690c27daf5c9e77131b?format=markdown) — 729c56c3cb63e7ee4b855690c27daf5c9e77131b; Theo Browne

- [revert\(web\): restore grouped projects in the new thread selector \(\#22242\)](https://git.cafe/pingdotgg/t3code/commit/774c6c1953677094662e4ff83590e787aa19dcb2?format=markdown) — 774c6c1953677094662e4ff83590e787aa19dcb2; Theo Browne

- [feat\(server,web,mobile\): a host that drops because it froze now says why \(\#22213\)](https://git.cafe/pingdotgg/t3code/commit/d7bc3a2f49f0f8dd9d5441f2ee4f0377367bcd91?format=markdown) — d7bc3a2f49f0f8dd9d5441f2ee4f0377367bcd91; Theo Browne

- [fix\(client\): a frozen host no longer shows a heartbeat as slow or blames your DNS \(\#22212\)](https://git.cafe/pingdotgg/t3code/commit/45ad8d9f0077e3dd6cd82a50df239bd8e18e0f7f?format=markdown) — 45ad8d9f0077e3dd6cd82a50df239bd8e18e0f7f; Theo Browne

- [revert: "fix\(web\): show idle server updates on environment controls" \(\#21950\) \(\#22233\)](https://git.cafe/pingdotgg/t3code/commit/5547d7c13cf7298a7ccef05ad6325f687f9a40a3?format=markdown) — 5547d7c13cf7298a7ccef05ad6325f687f9a40a3; Theo Browne

- [revert: "fix\(web\): preserve snapshot thumbnail context and detail" \(\#18440\) \(\#22231\)](https://git.cafe/pingdotgg/t3code/commit/23dd7e70073be98a499048268f9af93edab215a4?format=markdown) — 23dd7e70073be98a499048268f9af93edab215a4; Theo Browne

- [revert: "fix\(scheduler\): label fixed-time tasks with the server timezone" \(\#18653\) \(\#22230\)](https://git.cafe/pingdotgg/t3code/commit/86729b45f92490946f0fcda9f9f454fabfea8bcb?format=markdown) — 86729b45f92490946f0fcda9f9f454fabfea8bcb; Theo Browne

- [revert: "fix\(web\): keep subagent links visible in long background-work banners" \(\#20054\) \(\#22228\)](https://git.cafe/pingdotgg/t3code/commit/bd659881876e2d2b9be0c48817dfedc283a0df89?format=markdown) — bd659881876e2d2b9be0c48817dfedc283a0df89; Theo Browne

- [revert: "fix\(web\): stop composer banner glass overlap" \(\#8034\) \(\#22227\)](https://git.cafe/pingdotgg/t3code/commit/818f09611d64bdf514247fb1399fa3cd4630aaaf?format=markdown) — 818f09611d64bdf514247fb1399fa3cd4630aaaf; Theo Browne

- [revert: "fix\(clients\): show question option previews" \(\#21933\) \(\#22229\)](https://git.cafe/pingdotgg/t3code/commit/8eafe058ca7720219e9466e9c6ed8e59a2276dee?format=markdown) — 8eafe058ca7720219e9466e9c6ed8e59a2276dee; Theo Browne

- [fix\(ci\): recover from transient download and stale report failures \(\#22232\)](https://git.cafe/pingdotgg/t3code/commit/b14ae647a311b3e5be0487fe3f6bae217cd88ff5?format=markdown) — b14ae647a311b3e5be0487fe3f6bae217cd88ff5; Theo Browne

- [revert: "fix\(web\): worktree threads warn when the checkout branch changes" \(\#14883\) \(\#22225\)](https://git.cafe/pingdotgg/t3code/commit/90c3f8350d777f09c7afdf643db63bf8135161e6?format=markdown) — 90c3f8350d777f09c7afdf643db63bf8135161e6; Theo Browne

- [revert: fourteen unverified desktop fixes from the takeover campaign \(\#22222\)](https://git.cafe/pingdotgg/t3code/commit/8fc72daee4fd63615e2c1eb2dcbe070f20ec907b?format=markdown) — 8fc72daee4fd63615e2c1eb2dcbe070f20ec907b; Julius Marminge

- [revert: "fix\(web\): pinned thread marker stays put when hovering the row" \(\#11122\) \(\#22223\)](https://git.cafe/pingdotgg/t3code/commit/2d1119681a6d92de3ad7a0d6a0cf3d7f3301bf22?format=markdown) — 2d1119681a6d92de3ad7a0d6a0cf3d7f3301bf22; Theo Browne

- [revert: "fix\(desktop\): saved connections survive the Beta rename on macOS and Linux" \(\#20907\) \(\#22219\)](https://git.cafe/pingdotgg/t3code/commit/41b513d99aac6ba4d4a4000a3a3a1320b0f79dad?format=markdown) — 41b513d99aac6ba4d4a4000a3a3a1320b0f79dad; Julius Marminge

- [fix\(threads\): snoozed threads stay hidden through background wakes \(\#22202\)](https://git.cafe/pingdotgg/t3code/commit/d2fb83a973b53edcca1ab0677f99dac7e2d302ce?format=markdown) — d2fb83a973b53edcca1ab0677f99dac7e2d302ce; Theo Browne

- [feat\(connect\): t3 connect checks that other devices can reach this machine \(\#22172\)](https://git.cafe/pingdotgg/t3code/commit/91d7bf3eefec7390ef7e38124db1062bc429c0c1?format=markdown) — 91d7bf3eefec7390ef7e38124db1062bc429c0c1; Theo Browne

- [perf\(web\): pre-bundle startup chunks when a shared dev server starts \(\#22210\)](https://git.cafe/pingdotgg/t3code/commit/72bdf1e658c6f875534b870fa02e38c5648ccec3?format=markdown) — 72bdf1e658c6f875534b870fa02e38c5648ccec3; Theo Browne

- [fix\(server\): preview downloads no longer echo data: URL contents \(\#22156\)](https://git.cafe/pingdotgg/t3code/commit/b7b53d404e72df21854bf7861dfc2f3106e3294d?format=markdown) — b7b53d404e72df21854bf7861dfc2f3106e3294d; Julius Marminge

- [fix\(mobile\): skill chips in messages open their instructions \(\#22120\)](https://git.cafe/pingdotgg/t3code/commit/d3415f36d0cfe733010378bb4dbd53f2a452231f?format=markdown) — d3415f36d0cfe733010378bb4dbd53f2a452231f; oliver

- [fix\(web\): HTML visualizations show their full height instead of cropping and scrolling \(\#22131\)](https://git.cafe/pingdotgg/t3code/commit/500a52e839b5ee16e0c697ac04694068a2e084eb?format=markdown) — 500a52e839b5ee16e0c697ac04694068a2e084eb; Theo Browne

- [feat\(web\): show how much of a PR is code vs tests, mocks, and generated files \(\#22189\)](https://git.cafe/pingdotgg/t3code/commit/92a6f6d731dd8c263434c645a6ec16001eb8a67b?format=markdown) — 92a6f6d731dd8c263434c645a6ec16001eb8a67b; Theo Browne

- [feat\(web\): set up EAS Simulator hosts in Settings \(\#21846\)](https://git.cafe/pingdotgg/t3code/commit/d18352e378c530dc41f3dfa2ffc3f2b263e38914?format=markdown) — d18352e378c530dc41f3dfa2ffc3f2b263e38914; Julius Marminge

- [feat\(server\): EAS Simulator device hosts \(\#21844\)](https://git.cafe/pingdotgg/t3code/commit/aee25acd17aa9e3e56db319f71b31f82744bc54b?format=markdown) — aee25acd17aa9e3e56db319f71b31f82744bc54b; Julius Marminge

- [feat\(server\): Expo credentials, EAS Simulator API, and EAS project lookup \(\#21843\)](https://git.cafe/pingdotgg/t3code/commit/99209c7ffaee17b984405040d015dccb4b33d0c5?format=markdown) — 99209c7ffaee17b984405040d015dccb4b33d0c5; Julius Marminge

- [feat\(contracts\): device hosts as a tagged union with EAS hosts \(\#21842\)](https://git.cafe/pingdotgg/t3code/commit/c273a8f6fa921f02e7f2fc2d055aa6891cfe04f9?format=markdown) — c273a8f6fa921f02e7f2fc2d055aa6891cfe04f9; Julius Marminge

- [feat\(device\): stream iOS devices that serve WebRTC only \(\#21841\)](https://git.cafe/pingdotgg/t3code/commit/6dc63bd85bf6930191e4ee858fdc7d940ab5bd5d?format=markdown) — 6dc63bd85bf6930191e4ee858fdc7d940ab5bd5d; Julius Marminge

- [refactor\(server\): device hosts own their device operations \(\#21835\)](https://git.cafe/pingdotgg/t3code/commit/83e0f7a822ecc280624b43bbb22b3debc43c138d?format=markdown) — 83e0f7a822ecc280624b43bbb22b3debc43c138d; Julius Marminge

- [fix\(mobile\): thread links long-press to Open thread or Copy link \(\#22153\)](https://git.cafe/pingdotgg/t3code/commit/e5c6083c25a1ddd22ceff3fd24507d3da4baa278?format=markdown) — e5c6083c25a1ddd22ceff3fd24507d3da4baa278; oliver

- [feat\(web,server\): add a project to another machine from Run on, \.env files included \(\#22180\)](https://git.cafe/pingdotgg/t3code/commit/effb4337e58b1db215e8293f48bc110e6b2176a4?format=markdown) — effb4337e58b1db215e8293f48bc110e6b2176a4; Theo Browne

- [fix\(mobile\): Android no longer freezes when you go back from a running thread \(\#19292\)](https://git.cafe/pingdotgg/t3code/commit/5a86fe433f895149f7330f3daea63afec3a5e93c?format=markdown) — 5a86fe433f895149f7330f3daea63afec3a5e93c; shivam

- [feat\(server\): analytics records a stable install id and who owns each install \(\#21506\)](https://git.cafe/pingdotgg/t3code/commit/e2875821820e34047bc70bc786b8b39ef3fc35eb?format=markdown) — e2875821820e34047bc70bc786b8b39ef3fc35eb; Theo Browne

- [fix\(connect\): show which part of a T3 Connect connection failed and how to fix it \(\#22171\)](https://git.cafe/pingdotgg/t3code/commit/e0092765769fe66ebdd0ce257689e07df60becea?format=markdown) — e0092765769fe66ebdd0ce257689e07df60becea; Theo Browne

- [fix\(server\): verify the native display viewport capture without a window resize \(\#22176\)](https://git.cafe/pingdotgg/t3code/commit/b69703ccc240b9ecc6582be024f199d6d8dd44da?format=markdown) — b69703ccc240b9ecc6582be024f199d6d8dd44da; Julius Marminge

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