mika kuns
a6ebff3f34
feat(ui): add aggregated diff viewer for planning tasks
...
Implements Task 14: PlanningDiffView (Window), PlanningDiffViewModel,
ShowPlanningDiffModal callback wired in DetailsIslandView, and 5 xUnit tests.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-24 16:39:38 +02:00
mika kuns
1aead9dad0
refactor(ui): test planning detail pane via real ViewModel and restore merge-all IsEnabled binding
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-24 16:31:54 +02:00
mika kuns
4c6fd9f024
feat(ui): add merge-target dropdown and merge-all controls to planning detail
...
- Add SubtaskDiffDto and CombinedDiffResultDto to PlanningDtos.cs
- Extend IWorkerClient with 5 planning merge methods and 5 events
- Implement methods and hub subscriptions on WorkerClient
- Add Status and WorktreeState to SubtaskRowViewModel
- Add MergeTargetBranches, SelectedMergeTarget, CanMergeAll,
MergeAllDisabledReason, MergeAllError, RecomputeCanMergeAll,
MergeAllCommand, ReviewCombinedDiffCommand (Task 14 TODO)
to DetailsIslandViewModel
- Add planning merge section to DetailsIslandView.axaml
(merge target ComboBox + buttons + error label), gated on
Task.IsPlanningParent
- Add 4 xUnit tests covering CanMergeAll logic and DTO shape
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-24 16:22:27 +02:00
mika kuns
6bdfa73150
fix(ui): align virtual list semantics and complete planning roll-up coverage
2026-04-24 16:03:27 +02:00
mika kuns
6d460ea996
fix(ui): planning parents roll up child status; children stay nested until parent Done
2026-04-24 15:47:47 +02:00
mika kuns
0b72c0fb53
Merge branch 'feat/self-update'
...
Self-update for app and installer. Integrates cleanly with the
worker-log-footer feature that landed on main in parallel — the
shell VM now carries both worker-log state and update-check state,
and MainWindow hosts both the update banner and the footer log line.
Conflict resolved in IslandsShellViewModel.cs: kept nullable property
types from main's test-only parameterless constructor work, and added
the UpdateCheck property exposing the injected service.
2026-04-23 15:24:07 +02:00
mika kuns
ec4ec44603
feat(ui): add worker log state and 30s timer to shell VM
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-23 14:56:58 +02:00
mika kuns
ee09706811
feat(ui): add InstallerLocator
2026-04-23 14:56:57 +02:00
mika kuns
c06d1d6afb
feat(ui): add UpdateCheckService
2026-04-23 14:53:20 +02:00
mika kuns
f906e7086c
feat(ui): add WorkerLogLevelToBrushConverter with tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-23 14:53:03 +02:00
Mika Kuns
365ecba990
feat(ui): add StreamLineFormatter for NDJSON stream parsing
...
Parses Claude CLI stream-json output into human-readable text.
Handles text deltas, tool use, results, API retries, and trims large files.
All 13 tests pass.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-14 16:22:36 +02:00
Mika Kuns
aaaa93323c
test(ui): add ClaudeDo.Ui.Tests project to solution
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-14 16:22:26 +02:00