Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Clean up worktrees when archiving threads - #13

Open
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees
Open

Clean up worktrees when archiving threads#13
tim-smart wants to merge 4 commits into
t3code/truncate-mobile-footerfrom
t3code/cleanup-archived-worktrees

Conversation

@tim-smart

Copy link
Copy Markdown
Owner

Summary

  • Add server-authoritative cleanup for the last active thread linked to a worktree, while preserving shared worktrees and branches.
  • Prompt on web and mobile before removal, stop associated provider sessions, and report nonfatal cleanup failures.
  • Recreate missing worktrees when threads are unarchived and rerun project setup.
  • Remove legacy background-service and server self-update infrastructure, with related UI and documentation cleanup.

Testing

  • Added focused coverage for worktree cleanup, restoration, concurrency, projection queries, and provider shutdown behavior.
  • Added client-runtime and mobile prompt tests for archive confirmation and cleanup outcomes.
  • Not run; test execution results were not included in the supplied change details.

@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 5ba5539 to 72a3336CompareJuly 23, 2026 21:20
tim-smart added a commit that referenced this pull request Jul 23, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from ace56f7 to 2dae1a1CompareJuly 24, 2026 00:44
tim-smart added a commit that referenced this pull request Jul 24, 2026
tim-smart added a commit that referenced this pull request Jul 24, 2026
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 7e08a6b to 923f77aCompareJuly 24, 2026 03:34
@github-actionsgithub-actionsBot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@tim-smart
tim-smart changed the base branch from main to t3code/truncate-mobile-footerJuly 24, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 9f8ba9d to e59bc3aCompareJuly 24, 2026 08:52
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 9defffa to a7d163eCompareJuly 24, 2026 14:12
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from a7d163e to a23f42dCompareJuly 25, 2026 10:26
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from c958bb4 to e6f1b06CompareJuly 27, 2026 10:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 27, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from e6f1b06 to 7c4acbfCompareJuly 28, 2026 00:30
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 7c4acbf to a14221bCompareJuly 28, 2026 03:34
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch 2 times, most recently from 0660f1c to 5355818CompareJuly 28, 2026 22:54
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 5355818 to 55fd8eeCompareJuly 29, 2026 03:38
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from 55fd8ee to d4d9bb5CompareJuly 29, 2026 09:08
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
@github-actions
github-actionsBotforce-pushed the t3code/cleanup-archived-worktrees branch from d4d9bb5 to 4a51bc7CompareJuly 29, 2026 11:45
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 29, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 30, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
- Prompt to remove the last active worktree when archiving
- Restore missing worktrees on unarchive and retain shared worktrees
- Stop provider sessions reliably after archival
Allow up to 30 seconds for Git worktree cleanup to complete.
@tim-smart
tim-smartforce-pushed the t3code/cleanup-archived-worktrees branch from 4a51bc7 to 89c4d46CompareJuly 31, 2026 00:49
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Jul 31, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 4, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
patroza pushed a commit to patroza/t3code that referenced this pull request Aug 5, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
omegent-appBot pushed a commit to patroza/t3code that referenced this pull request Aug 6, 2026
Clean up worktrees when archiving threads
Source: tim-smart#13
Source head: a23f42d
Source commits: 4a19470,1b6688aa5b641010cb2e9dad23d36d87257403ad,9ed32aa3923fb674380564b1ffcb3268290069b9,a23f42d6ac671ea36b8db5d03934c089a31be448
Imported: complete product delta from the source PR.
(cherry picked from commit 7e02dc9)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXLvouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@tim-smart