remove tmux as a required tool (dead since D-77)

Nothing has spawned tmux since D-77 moved Claude session persistence to
`--resume`; Claude and terminal panes spawn `claude` or the shell directly.
But the toolchain still resolved tmux and listed it in `missing`, so on
mac/linux a box without tmux showed a spurious "tmux not found" warning in
the welcome view + status bar. The windows-support branch had special-cased
that away with a `!Platform.isWindows` guard — the tell that the requirement
was dead everywhere, not platform-specific.

Drop tmux from ResolvedPaths / ToolchainView / Toolchain (field, getter,
`missing`, PATH resolution) on every platform, removing the Windows guards
with it. Strip the testmode tmux probes and the comments / CLAUDE.md line
that claimed clide spawns tmux. (The dead ToolCheck class that also gated on
tmux was already deleted on main and dropped in the preceding merge.)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-14 18:22:04 +02:00
co-authored by Claude Opus 4.8
parent 84a6ef7c77
commit 431e26d659
12 changed files with 29 additions and 60 deletions
+3 -12
View File
@@ -13,26 +13,17 @@ void main() {
final t = Toolchain();
expect(t.git, 'git');
expect(t.pql, 'pql');
expect(t.tmux, 'tmux');
expect(t.shell, '/bin/bash');
expect(t.resolved, isFalse);
expect(t.allOk, isFalse);
expect(t.missing, ['git', 'pql', 'tmux']);
expect(t.missing, ['git', 'pql']);
});
test('applyResolved with full paths flips resolved + allOk + clears missing', () {
final t = Toolchain();
var calls = 0;
t.addListener(() => calls++);
t.applyResolved(
const ResolvedPaths(
git: '/usr/bin/git',
pql: '/usr/bin/pql',
tmux: '/usr/bin/tmux',
shell: '/bin/bash',
gitEnv: {'GIT_EXEC_PATH': '/usr/lib/git-core'},
),
);
t.applyResolved(const ResolvedPaths(git: '/usr/bin/git', pql: '/usr/bin/pql', shell: '/bin/bash', gitEnv: {'GIT_EXEC_PATH': '/usr/lib/git-core'}));
expect(t.resolved, isTrue);
expect(t.allOk, isTrue);
expect(t.missing, isEmpty);
@@ -46,7 +37,7 @@ void main() {
t.applyResolved(const ResolvedPaths(pql: '/usr/bin/pql'));
expect(t.resolved, isTrue);
expect(t.allOk, isFalse);
expect(t.missing, ['git', 'tmux']);
expect(t.missing, ['git']);
});
test('waitForResolution completes immediately when already resolved', () async {