- TaskRunner: extract worktree-vs-sandbox selection into
PrepareRunDirectoryAsync so RunAsync reads linearly (a small helper, not
a Strategy pattern — overkill for a two-way branch).
- App: drop the public static ServiceProvider locator; inject the provider
via constructor through AppBuilder.Configure(() => new App(services)).
Parameterless ctor + BuildAvaloniaApp() retained for the XAML designer.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>