# Changelog ## v1.8.0 — 2026-06-09 ### Features - richer diff viewer + surface child roadblocks on parents (f21c65b) - allow cancelling a WaitingForChildren parent (d6e0953) - single approve action merges the whole unit (a8b86e2) - approve drives the unit merge for parents with children (1abb429) - planning finalize enters WaitingForChildren (12732d6) - add get_task_config, continue_task; fix status enum, branchDeleted, merge-from-review (9f19a71) - surface agent roadblocks and run outcome in the detail pane (763732a) - localize task-header, task-row and prime-schedule tooltips (a41b8de) - wire layer A/B conflict seams to the inline resolver (7f173da) - expose conflict-resolver factory and dialog seam for integrator (72687e9) - add inline conflict resolver view and localization (8cafad3) - add inline conflict resolver view-model (d8a973d) - add inline conflict model (file/hunk with resolution) (0b623b8) - batch-merge cockpit view with checkboxes and conflicts panel (5edb433) - add batch-merge cockpit strings (en/de) (c8f82ed) - wire batch selection, target loading and resolve seam (1aa0607) - expose conflict-resolution merge methods (cb20877) - read conflict stages and write user resolutions (dcbf67c) - add skip-and-continue batch merge orchestration (02b11c7) - add conflict-stage blob reads and single-path staging (74afc46) - add batch-merge row state to worktrees cockpit VM (ef3fba1) - fuse git tab into one approve+merge cockpit (3596053) - route single-task merge conflicts into a resolution seam (4bf4a27) - maximize work console via green traffic-light dot (de4ad5d) - add conflict-resolution worker contract (foundation for merge rework) (2dfc455) - rename review Retry to Continue and make Reset discard the worktree (42bb79e) - send Retry on Enter in the review prompt (9c5872e) - rework review into terminal footer and add Git tab (8819a56) - add IsGitTab flag to work console view model (6c65158) - add mergeability indicator and Merge button to work console (de01579) - show mergeability and surface approve conflicts in the work console (0d8999d) - wire merge-aware approve and preview into the worker client (3202c76) - expose PreviewMerge hub method and merge-on-approve (43f8f7f) - approve merges worktree before marking task done (b817c87) - add Refine button, icon, and command to task card (2a6781f) - add non-destructive merge-tree conflict probe (4098f7f) - add RefineTask client call and refine events (8239004) - wire RefineTask hub method, broadcaster events, and DI (e523ed8) - add RefineRunner, prompt/args helper, and interfaces (0460d7b) - add Refine prompt kind and default (eca6813) - add add_subtask tool to claudedo MCP (22830d3) - resize detail split by dragging the console's top edge (b840655) - rework work console — single Session tab, right-aligned header, turns x/y (ac9bae9) - make steps visible at a glance; lift details card off background (99c6bf4) - wire redesigned detail island (header + description/steps card + work console) (c71026d) - add WorkConsole detail component (ce50f9f) - add DescriptionStepsCard detail component (c323953) - add TaskHeaderBar detail component (9f95942) - compose task prompt from title + description + open steps only (299867d) - fold parent branch into combined-diff for improvement parents (469e68b) - focused custom prompt for improvement children so they stay narrow (176b985) - show improvement-child outcomes on the parent review card + enable tree-merge (5d34f95) - mark agent-suggested improvement children in the task tree (0e13017) - surface WaitingForChildren status (chip, color, agent-strip, labels) (5363570) - instruct agents to offload out-of-scope work via SuggestImprovement (f60beca) - fold parent branch into tree-merge for improvement parents (519bfbe) - mint per-run MCP token + emit run-scoped --mcp-config (06e3acd) - resolve per-run tokens in MCP auth + register TaskRunMcpService (f3052dc) - add SuggestImprovement tool (server-stamped, one layer deep) (9d133e2) - add TaskRunMcpContext + accessor (7542bc2) - add per-run TaskRunTokenRegistry (ef86a8c) - base improvement-child worktree on parent HEAD (da23b6c) - route standalone success with children to WaitingForChildren + enqueue them (c10f564) - advance WaitingForChildren parent to review when children terminal (7873e60) - add SubmitForChildrenAsync (Running -> WaitingForChildren) (6f4b5d5) - generalize CreateChildAsync for any parent + CreatedBy stamp (6fdf04d) - add WaitingForChildren task status value (ee0d125) - roadblock badge on the task card; relocate review actions off the row (2455eac) - host review actions in the details panel; show review state and diff meter (d8b86e3) - persist roadblock count on the task (49b9f1f) - surface reported roadblocks in the review result (1e547de) - carry blocks through RunResult (56ebc28) - collect and strip CLAUDEDO_BLOCKED markers in StreamAnalyzer (cf7f0da) - weekly-report instructions from file, point at data sections (ac1e9b0) - daily-prep prompt from file, English default (79bfc79) - expose all editable prompt files, drop agent prompt (bd1e3db) - retry prompt from file, append only real captured errors (edc9f77) - externalize prompt kinds with defaults and token renderer (9bdf99d) - show inherited markers and max-turns override in task flyout (cd683ba) - show inherited markers and max-turns override in list settings (d0ab382) - add reusable inherited-source badge control (3e3041c) - add inheritance resolver returning value and source (92cee12) - add inherited-marker, turns, and prepended-prompt strings (bba3c55) - mirror max-turns field on signalr config dtos (26f5936) - expose max-turns override over signalr and mcp config tools (b72a788) - resolve max-turns from task then list then global default (beae2d6) - persist max_turns in list and task repositories (ac137f7) - add nullable max_turns override to list_config and tasks (97e38fb) - replace Plan-My-Day header icon with a stroked sun icon (52e3980) - trigger planning from inside the prep-log window with an empty-state hint (7d743f1) - load persisted prep log into the terminal on open (914095d) - persist last prep run to a log file and serve it via GetLastPrepLog (4d82079) - move Clear-day and Prep-log into MyDay header icon row (c764b2b) - reuse SessionTerminal for prep log; fix invisible Sort icon; add Broom/List icons (f7d1b37) - clear textbox focus on click outside any text box (fab1772) - add Prep-log and Clear-day buttons to MyDay header (c45f892) - add live prep-output mode to the Details island (a8670ee) - expose prep stream events and ClearMyDay on the UI worker client (7676ecf) - add ClearMyDay hub method (fa83d7f) - stream prep output via PrepStarted/PrepLine/PrepFinished (e48475d) - add Prepare-day button to MyDay header (46ac3fc) - add DailyPrepMaxTasks editor to Prime Claude settings (5e0859f) - add RunDailyPrepNow hub method and expose DailyPrepMaxTasks (2d00160) - run daily prep from PrimeRunner via allowed MCP tools (20b3a29) - add set_my_day MCP tool with cap-guard (fd7f8ac) - add get_daily_prep_candidates MCP tool (0bb8094) - add DailyPrepMaxTasks app setting (3c66d65) ### Fixes - mark task Done on every successful merge path, not just approve (f56cc61) - merge_task marks the task Done after a successful merge (ca8326c) - drop unique index on lists.name (allow duplicate list names) (f5d165b) - harden FK pragma per-connection and seed concurrency (7f1a14a) - harden CLI injection, stuck-Running, chain wedge, and Fail guard (33bdff8) - serialize concurrent worktree add to prevent commondir race (b672c9a) - dispose VM subscriptions/timers, guard offline Stop, align review delta-path (01e0c1d) - populate review queue from WaitingForReview tasks (00a065b) - set prompt-action resting color on ContentPresenter (561028e) - discard stale mergeability probe after task or target switch (6e3f90d) - guard blank working dir in approve-merge before resolving target (f1cf29b) - update TaskMergeService ctor calls after ITaskStateService injection (98b0d58) - stop the console clipping the last log line (1603be0) - render Output log directly on the console, not as a nested card (71a3765) - stop app crash when approving review after Merge all (cc7355e) - live-update child outcomes + enable Review combined diff for improvement parents (a3f407b) - only planning-active children are drafts; allow improvement children to queue (8036de1) - exempt improvement children from orphan-dequeue sweep (f25c759) - populate diff meter when selecting a finished task (c035720) - warning icon fill-rule and dedicated review section header (4522ac9) - apply system default on every run; dedupe roadblocks (9a117a5) - clean up orphaned worktree when the DB row insert fails (71ac481) - hide task header, footer and agent strip in prep/notes mode (39fa83a) - register IWorkerClient mapping for WeeklyReportModalViewModel (46f42a4) ### Refactoring - single parent-advance path for planning + improvement (b3a2daf) - render worktree modal diff via canonical DiffLinesView (d52243c) - blend review prompt into the terminal instead of a boxed footer (e22a326) - remove dead inline-layout handlers from DetailsIslandView (3e84871) - share color-coded diff rendering between per-task and combined diff viewers (22a1ba7) - planning prompts read from editable files (1b3c6bd) - collapse agent prompt into system prompt (883dbc6) - address code smells (run-dir helper, App DI injection) (3756b81) - remove unused Sort button from MyDay header (3a40e39) ### Documentation - document the unified parent-task model (c300f8c) - Task 4 = full approve/merge UX consolidation (803c04d) - spec + plan for unifying the parent-task model (8f49ebb) - add CHANGELOG (Keep a Changelog format) (384e058) - Layer C inline conflict resolver (ef2f5c5) - Layer B multi-worktree merge cockpit plan (3060cb0) - foundation + Layer A plan and Layer B/C parallel kickoff prompts (dd3b03b) - git tab merge & review rework — shared foundation + 3 layers (f4416ee) - add implementation plan for terminal-style review controls (096519b) - spec terminal-style review with Git tab and footer actions (266e6d1) - document real git merge on approve, PreviewMerge hub method, and new GitService/WorkerClient members (cb4c396) - add approve-merge + conflict-preview implementation plan (75ad7b1) - add approve-merge + conflict-preview design spec (66a7b23) - add Refine Task implementation plan (3573548) - add Refine Task design spec (0867bc8) - add ClaudeDo distribution website design spec (a2c339c) - task-detail island redesign spec + component build prompts (8f7e289) - implementation plan for build-config logging + traceability (c5a4e35) - runtime build-config detection, Warning in Release, retain 2 (e547921) - design for build-config debug logging + task traceability (f1316df) - align Task 6 with rebased HandleSuccess (preserve SetRoadblockCount) (204b089) - child tasks + agent improvement loop implementation plan (da4ab0c) - plan for review & roadblock UX follow-up (4d52845) - refresh prompt inventory for externalized prompts + roadblock marker (202e8de) - implementation plan for bundled-prompts overhaul (c8f468f) - child base off parent HEAD, shared planning-style tree merge (84fd2c1) - design for reusable child tasks + agent improvement loop (30b49d1) - design for bundled-prompts overhaul (ad7d748) - note max-turns override and inherited markers in module docs (75aa42b) - implementation plan for inherited markers, overrides, and Turns (b63c78c) - spec for inherited-settings display, overrides, and Turns (37ce673) - slim open.md down to open items only (b9741ef) - park mailbox proposal; skip architecture.md and ADRs (0a0d7e8) - drop CI-pipeline item (push-to-main + release workflow makes it redundant) (72a86fc) - regenerate open.md against verified current state (bcf5e2f) - document daily-prep across area CLAUDE.md files; add Installer CLAUDE.md (fb055ce) - add autonomous working-style loop and agent gotchas to CLAUDE.md (9e7f37b) - add plan-day-in-log-window plan (53d897a) - add prep-log persistence plan (26758b6) - add MyDay icons + terminal-reuse plan (2e73d33) - add design specs and implementation plans (9470c5b) ## v1.7.0 — 2026-06-03 ### Features - localize installer with language picker and config write-through (364a037) - add WPF localization primitives and Language config to installer (2fbf054) - localize ViewModel-built strings via ambient Loc accessor (350a89f) - localize Avalonia view strings via loc:Tr markup (086c6f6) - add language dropdown to settings and persist selection (070f5de) - initialize Localizer at app startup from config/OS culture (f529a5f) - add Language preference and Save() to AppSettings (6a85d82) - add Avalonia loc:Tr markup extension and LocalizedString (35ad171) - seed en.json and wire locale copy to app output (3c40bb5) - add CultureResolver for OS-culture mapping (d95d55e) - add Localizer with fallback chain and change event (d22b50e) - add LocaleStore folder discovery (a83a0c4) - add ClaudeDo.Localization project with nested-JSON locale parser (9efde2b) - pinned Notes row in My Day opens the notes editor (a8943a9) - notes mode in the Details island (eccd06e) - NotesEditorView (731c291) - NotesEditorViewModel with day navigation and bullet CRUD (c8b5ed3) - INotesApi wrapper for daily notes (9bf44da) - open Weekly Report modal from the menu (b748c15) - WeeklyReportModalView (74fc39f) - WeeklyReportModalViewModel with default-range logic (ccd2ee2) - persist report excluded paths and standup weekday (5b89e3d) - WorkerClient methods for week report and daily notes (e106b00) - hub methods for week report and daily notes (d7558ef) - register report reader and service in DI (4aa4353) - WeekReportService orchestrates generate + store (50d84f1) - week report prompt builder (day-major pivot) (e2271b5) - ClaudeHistoryReader distills session logs (bec87b3) - report activity models and reader interface (4cb7ad8) - add WeekReportRepository with tests (992fbf0) - add DailyNoteRepository with tests (1d7b86d) - migration for daily notes and week reports (036586e) - configure daily note + week report tables (d9e5d26) - add daily note + week report entities and report settings (10d86b4) ### Fixes - live-refresh smart/virtual list names on language change (00ef11a) - notes add row stays visible, English 'Add' label, Enter to add (2d55f88) - sanitize report model arg, fix multi-repo summary attribution and standup-weekday sentinel (a8d8a8b) ### Documentation - localization implementation plan (8dc8b8b) - localization (i18n) design spec (baeea9c) - document weekly report and daily notes feature (0bc3d2a) - add weekly report implementation plan (f72cfae) - add report prompt and day-major pivot to weekly report spec (e5a2ed2) - add weekly report feature design spec (536d819) ## v1.6.0 — 2026-06-02 ### Features - use a 24h TimePicker for prime schedule time entry (869cf72) - replace prime date range with weekday toggle buttons (7db8f21) - drive prime schedule rows from weekday toggles (37738e3) - map prime schedule weekday bitmask over the hub (81fd186) - compute prime due-time from weekday bitmask (bed4255) - migrate prime schedules to days_of_week bitmask (dff06d9) - persist weekday bitmask in prime schedule repo (0efad7a) - model Prime schedule as weekday bitmask (eaf27e8) - surface review actions and WaitingForReview status in task rows (6c27ffb) - add review hub methods and worker client wrappers (21f1cf2) - add review_task MCP tool and status reference updates (c88ed9d) - route standalone success to review and resume on re-queue (9c1f20f) - add review state transitions to TaskStateService (e8d018d) - add WaitingForReview status and review_feedback column (1ca32a6) ### Fixes - manual modal dragging, maximize/restore icon, day-toggle style (f1715a3) - harden review re-run, timestamps, and queue affordance (1cb5171) ### Documentation - describe recurring-weekday Prime schedule (26998f0) - implementation plan for recurring-weekday Prime (13c3393) - spec for recurring-weekday Prime schedules (4704a28) - document WaitingForReview state across project CLAUDE.md files (4684a0a) - waiting-for-review implementation plan (b86677d) - waiting-for-review task state design (3e072fa) ## v1.5.0 — 2026-06-01 ### Features - replay run log in session terminal, drop per-row live tail (4a36fbe) - optionally register ClaudeDo MCP server with Claude (5170914) - configurable max parallel task executions (b1f4349) - list reordering, quick actions, and resizable modals (ab44ba5) ## v1.4.2 — 2026-06-01 ### Fixes - stop the running app before updating, not just the worker (4148dcd) - keep step badges green and reset state on re-run (5783790) ## v1.4.1 — 2026-06-01 ### Fixes - track EF migration Designer files (were gitignored) (edfb702) ## v1.4.0 — 2026-06-01 ### Features - wire worker connection modal and make status pill clickable (1246bf7) - prompt once on worker connection failure with grace timer (00dc7eb) - add worker connection help modal (0139607) - remove Startup worker shortcut on uninstall (759d905) - start worker via Process.Start, drop schtasks stop (2f1dcdc) - register autostart via Startup shortcut, drop scheduled task (133f2d2) - add AutostartShortcut helper for Startup-folder lnk (e2bb43a) - unify type scale to 11/13/18/24 and add canonical text classes (b00e4d9) - add reusable ModalShell control (c20fbe3) - set global Inter Tight font default on all windows (5a25818) - add named tint and hairline overlay brush tokens (f0f8cd1) ### Fixes - restore resize and full-width rows in WorktreesOverview modal (16717ab) - unclip Edit/Preview buttons; enlarge section labels and use mono field labels (e86464e) - correct SettingsModal font snap (11px is Mono, not Body) (b1006ac) - use LineBrush for schedule flyout border and tokenize TaskRowView (3d4a64a) ### Refactoring - rename StopWorkerStep.TaskName to LegacyTaskName (400a078) - stop auto-spawning the worker on app start (4ecd855) - extract ShortcutFactory COM helper (867dc37) - migrate PlanningDiffView to ModalShell (926471d) - drop double padding in Tasks island header (9be8e6b) - drop double padding in Lists island header (b9e5dfc) - class schedule-flyout cancel in TaskRowView (c669370) - class merge-section buttons in DetailsIslandView (4688e88) - class update-banner buttons in MainWindow (8b21b0e) - normalize buttons/footer/padding in ConflictResolutionView (4a786eb) - normalize buttons/footer/padding in DiffModal (cd64f28) - normalize buttons/footer/padding in WorktreesOverviewModal (3585ad5) - normalize buttons/footer/padding in RepoImportModal (990935e) - normalize buttons/footer/padding in UnfinishedPlanningModal (1b5a928) - normalize buttons/footer/padding in AboutModal (e8f880e) - normalize buttons/footer/padding in MergeModal (3228a08) - normalize buttons/footer/padding in ListSettingsModal (ccec791) - normalize buttons/footer/padding in SettingsModal (187fb64) - make primary/danger buttons self-contained, drop unused btn.primary (0a71956) - inherit terminal font for SelectableTextBlock (ccec591) - use sidebar-pane in PlanningDiffView (a4cb03b) - use diff-lineno and sidebar-pane in DiffModal (f53292e) - use danger-box in MergeModal (539ebec) - use danger-box in SettingsModal (dff5651) - use shared section style in ListSettingsModal (9f49b01) - reuse task-row style for worktree rows (fb3a6ac) - use section-divider in DetailsIslandView (4f84b15) - drop duplicate converters and normalize binding in ListsIslandView (27b0d51) - merge task-row styles and add shared section/danger-box/sidebar/accent styles (2a38104) - unify text and close button in ThemedDatePicker (bddef5a) - unify text and close button in ConflictResolutionView (51d3ea2) - unify text and close button in PlanningDiffView (335b422) - unify text and close button in DiffModalView (08f3bab) - unify text and close button in WorktreeModalView (9082f2e) - unify text and close button in WorktreesOverviewModalView (0f64b1c) - unify text and close button in RepoImportModalView (dd45387) - unify text and close button in UnfinishedPlanningModalView (00e1d2d) - unify text and close button in AboutModalView (9a91135) - unify text and close button in MergeModalView (8e595a1) - unify text and close button in ListSettingsModalView (97fc715) - unify text and close button in SettingsModalView (ed8607d) - apply text classes to SessionTerminalView (929e0ca) - apply text classes to AgentStripView (40a3630) - apply text classes to TaskRowView (b9f5d82) - apply text classes to DetailsIslandView (e0dda3e) - apply text classes to TasksIslandView (d4c66de) - apply text classes to ListsIslandView (a132127) - apply text classes to MainWindow (6e3125e) - consolidate list-section-label into shared section-label (7af892f) - fold selected-day White to TextBrush token (8944074) - tokenize WorktreeModalView font sizes (fbd5d9f) - tokenize and dynamic-ize PlanningDiffView (5fdd9f0) - migrate ConflictResolutionView to ModalShell and use dynamic resources (bce4e0a) - migrate DiffModal to ModalShell and use dynamic resources (229f865) - migrate WorktreesOverviewModal to ModalShell (a444033) - migrate RepoImportModal to ModalShell (2265829) - migrate UnfinishedPlanningModal to ModalShell (50e05b9) - migrate AboutModal to ModalShell (538839c) - migrate MergeModal to ModalShell (8d07fc2) - migrate ListSettingsModal to ModalShell (e1bfbb0) - migrate SettingsModal to ModalShell (4f5db36) - tokenize ThemedDatePicker (16b0d11) - tokenize SessionTerminalView (a1f05da) - tokenize AgentStripView (0c0c73b) - tokenize DetailsIslandView (bff15c9) - tokenize TasksIslandView (f40de4b) - tokenize ListsIslandView (e120b0f) - tokenize MainWindow (e8ce725) - tokenize IslandStyles values and add shared modal styles (7a6bfbe) ### Documentation - reflect Startup-shortcut worker autostart (549b87b) - add worker lifecycle implementation plan (5baa1d7) - add worker lifecycle redesign spec (4963a72) - add visual-check checklist for normalization pass (df73378) - add UI normalization design spec and implementation plan (d52f23f) ## v1.3.0 — 2026-05-30 ### Features - register new external MCP tool classes (b41a78e) - add external MCP app-settings read tool (9ea6070) - add external MCP reset-failed-task tool (5a592c4) - add external MCP agent-listing tool (7196aab) - add external MCP run-history and log tools (3afe29d) - add external MCP list/task config tools (c3493a3) - add external MCP list-management tools (53f4e2d) - run worker as per-user logon task instead of Windows service (26c4e57) - repo-import modal — remember folders, search, compact rows, no auto-select (6d0973c) - add delete-list button to List Settings modal (128fb7d) - add 'Add repos as lists' Help-menu entry point (9c638e7) - add repo import button to Lists island (c43b06d) - add RepoImportModalView (e4d958d) - add RepoImportModalViewModel with candidate merge logic (50b1589) - add RepoImportItemViewModel (1c689a8) - add RepoScanner for git repo discovery (03617ee) - gate subtask queueing behind plan finalization (ce79a2d) - merge action and robust jump-to-task in worktrees overview (967e0cd) - hide list chip outside virtual list views (2223839) - auto-select first changed file in diff modal (3587703) - polish worktrees overview modal (ca71275) - wire worktree overview modal entry points (789094f) - add WorktreesOverviewModalView (9f70f67) - add WorktreesOverviewModalViewModel (182a9df) - add WorktreeStateColorConverter (79131f8) - expose worktree overview client methods (b888a5f) - expose worktree overview, state mutation, force-remove (046da0f) - add ForceRemoveAsync for targeted removal (b095a29) - add GetOverviewAsync for overview modal (ce30d01) - allow CleanupFinishedAsync to filter by list (89f6b83) - add Restart worker menu entry under Help (8d34db3) - prevent orphaned subtasks via guards + startup repair (d094a21) - add Claude CLI preflight on startup (df66c4a) - cascade dequeue to queued children for any parent (4c92da5) - refine planning chain re-shape on re-run (d4d5a4b) - status/tag context menu + ThemedDatePicker in task row (9ba238f) - editable task status and tags from details panel (c185665) - add ThemedDatePicker control and adopt in Prime settings (47b0737) - add hub methods to set task status and tags freely (121e8cd) - drop 'agent' tag gate from queue claim (cfbe2fd) - show transient prime status in footer (5079a5f) - add About modal opened from Help menu (618235d) - refactor Settings to TabControl + add Prime Claude tab (bca8c9e) - split SettingsModalViewModel into per-tab VMs + add PrimeClaudeTabViewModel (8b02b63) - add Prime schedule client + PrimeFired event (f890fa8) - register Prime services in DI (71c6c68) - add Prime schedule hub methods (507f59f) - broadcast PrimeFired SignalR event (13c280f) - add PrimeScheduler hosted service (09e3e7e) - add NextDueCalculator with workday + catch-up logic (975db8a) - add Prime scheduler abstractions + runner (f383645) - add PrimeScheduleDto (4e90828) - add PrimeScheduleRepository (a335a3b) - add AddPrimeSchedules migration (0b90df6) - add PrimeScheduleEntity + configuration (6c9ccf6) - consolidate finalize+chain via TaskStateService, fix queue pickup (4ab906f) - add Idle/Cancelled status, PlanningPhase enum, BlockedByTaskId field (7b737e6) - show dequeue affordance on planning parents with queued children (bdb709b) - allow status changes and post-finalize edits in active session (2d7f825) - add SetTaskTags (59dc1e2) - add DeleteTask (31a394e) - add UpdateTask for content/tag patching (d99cb68) - AddTask accepts tags on creation (1a74e1c) - add ListTags + inject TagRepository (e6846b7) - add TaskRepository.SetTagsAsync for full tag-set replacement (2549352) - default permission mode to auto and surface it in UI (14cc9fb) - add editable system/planning/agent prompt files (7f96ae9) - add Run interactively action to task context menu (6c54759) - make island layout user-resizable with grid splitters (e192285) - add MarkdownView control and editable description in details island (a6ca1c0) - queue planning subtasks sequentially and surface waiting status (8f94ddd) - add external MCP endpoint with API-key auth (4532042) - add PlanningChainCoordinator for sequential subtask execution (16e1ddd) - add Waiting task status and CreatedBy column (288d2ec) - run planning agent in plan permission mode and enforce brainstorming skill (8e9f09a) - register planning services and add Merge-all hub methods (3008c36) - add pre-flight checks and idempotent restart to PlanningMergeOrchestrator (e58cac2) - add PlanningMergeOrchestrator.AbortAsync (b989639) - add PlanningMergeOrchestrator.ContinueAsync to resume merge after conflict (7d87c03) - add PlanningMergeOrchestrator happy path with merge event broadcasts (3142ba2) - add conflict resolution dialog for planning merge-all (bc788e1) - add aggregated diff viewer for planning tasks (a6ebff3) - add PlanningAggregator.CleanupIntegrationBranchAsync (389d904) - add merge-target dropdown and merge-all controls to planning detail (4c6fd9f) - add PlanningAggregator.BuildIntegrationBranchAsync (2cab33d) - add PlanningAggregator.GetAggregatedDiffAsync (a1727b6) - add AbortMergeAsync to cancel a conflicted merge (bc0f1e3) - add ContinueMergeAsync to resume a conflicted merge (62106ff) - add leaveConflictsInTree option to TaskMergeService.MergeAsync (e77ba35) - broadcast child TaskUpdated events on planning CRUD (5a03dc8) - launcher passes planning token via env, drops --mcp-config (6800852) - cleanup planning worktree and branch on finalize/discard (48899b3) - create ephemeral worktree and write .mcp.json in StartAsync (fce91bc) - live task updates from worker events + planning polish (b7c60f5) - SignalR hub endpoints for planning sessions (7b67e35) - map MCP HTTP endpoint and broadcast TaskUpdated (6cb20a9) - MCP tools update_planning_task and finalize (99c6a71) - MCP tools for child-task CRUD (0088d6e) - MCP bearer-token auth middleware (b115a4c) - WindowsTerminalPlanningLauncher with pre-flight checks (43a3740) - PlanningSessionManager.GetPendingDraftCountAsync (d28164c) - PlanningSessionManager.FinalizeAsync (77f7cf1) - PlanningSessionManager.DiscardAsync (84e6c2d) - PlanningSessionManager.ResumeAsync (84b0ba8) - PlanningSessionManager.StartAsync (b6bec1e) - friendly error when deleting task with children (0e116be) - unfinished planning session dialog (47b4974) - draft and planning badge styles (506caa2) - planning entries in task context menu (388a8c1) - TaskRowView hierarchy indentation, chevron, badges, draft italic (42b208f) - planning commands and expand/collapse in TasksIslandViewModel (309f84b) - WorkerClient planning-session methods (0060840) - TaskRowViewModel gains planning hierarchy flags (229d4bb) - hook TryCompleteParentAsync after MarkDone/MarkFailed (d4a4642) - TaskRepository.TryCompleteParentAsync (b7464c9) - TaskRepository.DiscardPlanningAsync (524aaf8) - TaskRepository.FinalizePlanningAsync (a9e7479) - TaskRepository.FindByPlanningTokenAsync (2e80cc6) - TaskRepository.UpdatePlanningSessionIdAsync (d099138) - TaskRepository.SetPlanningStartedAsync (2278d97) - TaskRepository.CreateChildAsync (74255dd) - TaskRepository.GetChildrenAsync (b466246) - migration AddPlanningSupport (b3eb39a) - configure planning columns and self-ref FK with Restrict (253e6f0) - add planning columns and self-ref navigations to TaskEntity (042a1b4) - add Planning, Planned, Draft task statuses (7a20534) - move list-settings access from lists pane to tasks header (ee2cbc9) - add update banner and Help menu to MainWindow (00c6217) - wire update-check state and commands into shell VM (bbe7d73) - register UpdateCheckService and InstallerLocator in DI (0934b29) - show worker log line in footer (b28d8f2) - add worker log state and 30s timer to shell VM (ec4ec44) - add InstallerLocator (ee09706) - add UpdateCheckService (c06d1d6) - add WorkerLogLevelToBrushConverter with tests (f906e70) - self-update pre-flight before wizard (caf900b) - subscribe to WorkerLog SignalR event (e80e3fc) - emit WorkerLog for merge, discard, reset (e805655) - emit WorkerLog events from TaskRunner (ea4d2d7) - add SelfUpdater.DownloadAndVerifyAsync (98c188a) - add SelfUpdater.HandleReplaceSelfAsync (0c3dcb0) - add SelfUpdater.DecideUpdateAsync (e017d66) - add SelfUpdater installer-asset matching (ba0b38b) - add VersionComparer (7c0f8d8) - add WorkerLog SignalR event (0a7fcae) - add WorkerLogLevel enum (80f6669) - add empty ClaudeDo.Releases library (86012e0) - replay persisted task log when selecting a task (c8c8bb4) - add queueing and scheduling from task row context menu (6f725d1) - use ClaudeTask icon for window and taskbar (9952ff9) - show version info and offer worker restart in settings (4a6d96b) - record data directory in install manifest (2690332) - harden database init and service setup steps (31218fc) - add Restore default agents button to Settings modal (e70ae7f) - add RestoreDefaultAgentsAsync to WorkerClient (1830273) - expose RestoreDefaultAgents hub method (1a10e6f) - seed default agents on startup (df57c2b) - add DefaultAgentSeeder for first-launch agent seeding (990be09) - add bundled default agent definitions (ff3de1d) - always-visible Steps section at top of DetailsIsland with add-step input (b0b15e4) - per-task agent settings in DetailsIsland (bba5778) - open ListSettingsModal via context menu and gear button (5784dbe) - add ListSettingsModalView (5348220) - add ListSettingsModalViewModel (cd0b95e) - WorkerClient supports list/task agent settings + ListUpdated event (fc1cfe5) - add hub methods for list and task agent settings (7c31216) - add TaskRepository.UpdateAgentSettingsAsync (480eb08) - add ListRepository.DeleteConfigAsync (1b94fa5) - show status messages and real diff-stats in DiffModal (3142057) - add Merge button to DiffModal (1bc7fcc) - add Merge command to DiffModal (c911717) - attach MergeModal to DetailsIsland (949911f) - wire DetailsIsland ApproveMerge through MergeModal (f3a58a6) - add MergeModalView (e11b019) - add MergeModalViewModel (3d0cc4f) - add MergeTaskAsync and GetMergeTargetsAsync to WorkerClient (4585b20) - expose MergeTask and GetMergeTargets on WorkerHub (c53b587) - implement TaskMergeService happy path (3331c24) - scaffold TaskMergeService with pre-flight checks (1c20d8f) - add ListConflictedFilesAsync (77a1460) - add MergeAbortAsync (21a1870) - add MergeNoFfAsync returning (exitCode, stderr) (3ebbdb3) - add IsMidMergeAsync (535d0c5) - add ListLocalBranchesAsync (2d807aa) - add GetCurrentBranchAsync (93ee7b7) - add Continue and Reset buttons to agent strip (2ce6b7b) - add Continue and Reset commands to DetailsIslandViewModel (b03e858) - add ContinueTaskAsync and ResetTaskAsync to WorkerClient (2278b51) - expose ResetTask hub method (219a231) - add TaskResetService for discard + reset flow (74eb36d) - add TaskRepository.ResetToManualAsync (202236a) - add WorktreeManager.DiscardAsync for task reset (44203f3) - add settings modal and wire to worker hub (e6b3762) - extend ClaudeArgsBuilder with MaxTurns and PermissionMode (fca5d57) - add WorktreeMaintenanceService for idle-worktree cleanup (cfb9ca1) - add AppSettings entity, migration, and repository (62a1121) - render user tool_result blocks as one-line summaries (374e811) - render assistant tool_use blocks with per-tool args (3a67fe8) - render assistant text blocks, skip thinking (dc6e3fe) - format system init message in StreamLineFormatter (b525498) - keyboard shortcuts (/ Ctrl+N Space Esc) (6dade01) - pulse, hover, modal, and row-add animations (47e8e1f) - worktree modal with tree view and M/A badges (abd7733) - diff modal with file sidebar and tinted hunks (4d68543) - tasks island with rows, chips, add-task, selection (f94bb35) - details island with agent strip, terminal, subtasks, notes (4f41b08) - DetailsIslandViewModel with agent state and log (fcf53ab) - TasksIslandViewModel with smart/virtual/user filtering (0034acc) - Lists island view with search and nav items (f167120) - TaskRowViewModel with status chip mapping (dc1b648) - ListsIslandViewModel with smart/virtual/user lists (06cc141) - chromeless three-island shell (05404f4) - scaffold islands shell and child VMs (8909119) - merge Tokens and IslandStyles into App (55917c9) - embed Inter Tight and JetBrains Mono fonts (1893576) - add design Tokens resource dictionary (92a6e06) - add island control styles (579b527) - seed default Lists (My Day, Important, Planned) (bd8a4d0) - migration for IsStarred/IsMyDay/Notes columns (928dde1) - add IsStarred, IsMyDay, Notes to TaskEntity (a1190a3) ### Fixes - cap run-log read size and harden run-history tests (fec2fe2) - reuse shared hub fake and guard blank list name (ac2f1d8) - apply blue PLANNED badge for finalized planning, drop dead converter statics (7a88e8a) - strip prerelease and build metadata before version compare (b84716f) - narrow delete-list FK catch to SqliteException (6e3947c) - narrow RepoScanner catch to filesystem exceptions (4877c11) - widen About modal so folder Open buttons are not clipped (c1c7862) - restore Ui.Tests build by implementing ListUpdatedEvent in fakes (12668f6) - dispatch WorkerLog events to UI thread (7d61d38) - wire details-island buttons and drop dead handlers (e55367a) - default-expand diff tree; reliable row-click toggle (7e3ae70) - toggle expand on full folder row click (232d7cb) - use BorderOnly chrome; color diff +/- lines (6c8048d) - make overview modal resizable; add diff content pane (6670771) - resizable modal, drop branch column, show committed diff (bc15c16) - preserve status message after cleanup; English label (8f4e37e) - restore green test suite across all projects (8eafa71) - attach agent tag to chained children for queue pickup (721c36a) - emit PlanningMergeAborted (not Conflict) on non-conflict merge failures (ce23f64) - prevent PlanningMergeOrchestrator double-drain race and orphaned state (ef070dd) - reorder PlanningAggregator checkout/delete and kill git on cancel (9d04d1d) - align virtual list semantics and complete planning roll-up coverage (6bdfa73) - wrap MergeAbortAsync in AbortMergeAsync for consistent error handling (ada4d9f) - planning parents roll up child status; children stay nested until parent Done (6d460ea) - tighten ContinueMergeAsync guards and commit error handling (63759ee) - derive planning MCP URL from configured SignalRPort (e62485d) - register TaskRepository in DI and guard null WorkingDir (c048264) - planning launcher — avoid cmd shell to prevent prompt injection (9e09ae6) - enable foreign_keys pragma in MigrateAndConfigure (7821106) - select task on left-click even when reorder is disabled (1344beb) - session terminal scrolls to end after layout so last line is fully visible (7de5510) - pin AgentStrip above metadata footer, terminal sits above it (5e54275) - session terminal auto-sizes to output, caps at 420px before scrolling (6ac8823) - move agent-settings expander out of capped scroller so it expands properly (839f862) - use PlaceholderText instead of obsolete Watermark in ListSettingsModalView (2901a76) - use UTF-8 encoding for git process stdio (07dee31) - disable Merge button after worktree is no longer Active (4debd5c) - return Blocked when MergeAbortAsync fails to avoid stuck repo (1495c63) - honour targetBranch in MergeAsync by checking out before merge (953d931) - correct Reset button tooltip wording (58c8210) - early-return in ResetAsync when ConfirmAsync is unwired (f90d3d8) - prefix broadcast lines with [stdout] so UI parser routes them (4283c67) - truncate WebFetch URL in tool_use arg (ec679e4) - filled window icons, boxed task rows, proper explorer button (e19a9d3) - NAVIGATOR eyebrow — drop broken converter binding (42fb7ce) - wire delete confirm, close-details, uppercase eyebrow, explorer button (5acc896) - drop icon-btn sizing from AgentStrip text buttons (27c6a4b) - use Tag-attribute selectors for terminal log colors (2d1a488) - guard Bind/LoadForList against interleaved DbContext awaits (62aac7e) - wire modal delegates from DetailsIslandView owner (279f2c7) - remove stale brush overrides in App.axaml (9514651) - restore ViewModels using for IslandsShellViewModel (eee98b7) ### Refactoring - merge TaskRunner failure handlers and reuse NullIfBlank (1856943) - fold single-consumer helper types into their owners (ce9fadc) - remove dead PlanningMergeEvents records and unused RunNowRequestedEvent (25ee623) - extract interfaces to Interfaces folders and consolidate filters (41da124) - consolidate commit types into CommitTypeRegistry (5da69ee) - consolidate permission modes into PermissionModeRegistry (5308ba3) - consolidate model aliases into ModelRegistry (a62ef24) - remove tag entity and all references (623ebf1) - dequeue orphans instead of promoting, restore lost lineage (0d55002) - consolidate task list filters into single strategy registry (e68bb73) - retire legacy TaskStatus values and backfill existing rows (dc3fc44) - extract OverrideSlotService and reorganize Worker/Services into domain folders (ff7c239) - split queue waker and picker, auto-wake on enqueue (064a903) - introduce TaskStateService and route mutations through it (8823265) - use --permission-mode auto instead of --dangerously-skip-permissions (b2eb5fc) - test planning detail pane via real ViewModel and restore merge-all IsEnabled binding (1aead9d) - switch MCP config to env-var token expansion (975e1ce) - add worktree path and token file helpers (1d61df8) - inject GitService and WorkerConfig into PlanningSessionManager (1370bf3) - drop McpConfigPath from PlanningSessionFiles (f2db5f4) - extend planning contexts with token and worktree (fd2ac48) - use shared VersionComparer in InstallModeDetector (5b4cdd3) - move release-API + checksum types to ClaudeDo.Releases (46e01ae) - redesign list settings and merge modals with custom chrome (5ced1b9) - single scrollable DetailsIsland body with agent-settings gear flyout, remove Notes (c599fdc) - skeleton dispatch for StreamLineFormatter rewrite (668087c) - centralize list seeding in MigrateAndConfigure, add default-value test (9a05907) ### Documentation - sync CLAUDE.md files with current architecture (cfc4511) - correct external MCP tool inventory, drop removed tag tools (32daa4a) - clarify SetTaskConfig null-clears-override wording (f3f8af4) - add external MCP UI-parity spec and plan (99dc084) - clarify repo-import checkbox default intent (2f7f00d) - add repo import list helper implementation plan (5b15e30) - document RepoImportModalView (e5bce07) - add repo import list helper design spec (7869c2a) - add planning draft/planned queue gate design spec (09a930e) - add worktree overview modal spec and plan (b944597) - regenerate against current code state (a6608bf) - add design + plan for tabbed settings + Prime Claude (2ff0971) - add session prompts for worker state consolidation slices 2-6 (cf7a6e4) - add worker state and queue consolidation spec (43af17e) - add external MCP CRUD extensions spec and plan (10b2ca8) - document new external MCP tools (1b9f2d4) - add planning UX spec/plan and prompts/mailbox proposals (615c1da) - add spec and plan for planning merge-all feature (8afbf20) - add worktree-isolated MCP session design and plan (4de2dea) - add planning-session manual verification checklist (450e685) - add planning sessions implementation plans A, B, C (43d517d) - add planning sessions design (8891d48) - add self-update manual verification checklist (a41e5b5) - add worker-log footer implementation plan (ea76945) - add worker-log footer implementation plan (41e0bea) - add worker-log footer design spec (da19eb8) - add implementation plan (0d37473) - add design spec for app + installer self-update (6a4bf67) - add default-agents plan and design spec (a135485) - refresh CLAUDE.md files for agent settings UI (e74e7ee) - agent settings UI implementation plan (02464b7) - agent settings per list and per task UI reimplementation (68f461d) - add 2026-04-21 open-items consolidation (cb43bcd) - clarify merged-with-cleanup-warning result shape (32ef1b3) - add worktree merge implementation plan (0885518) - add worktree merge design spec (944d3bd) - note ResetTask hub method and TaskResetService (fb89e02) - add implementation plan for continue and reset buttons (133774c) - add spec for continue and reset buttons on failed tasks (a3bb557) - add UI-rewrite notes, plans, and stream-formatter spec (23f8fdd) - add design spec (b474113) ## v1.2.0 — 2026-04-17 ### Features - add subtask tree view with expand/collapse in task list (32bb528) ### Fixes - expand ~ in UiDbPath (2a8cd97) - init editor TCS before dialog can complete (09e8b1f) - reset stale worktree state on TaskDetail reload (92d8d90) - capture CurrentListId before await in AddTask (aa1008d) - make user-data deletion on uninstall opt-in (5f3d41e) - rollback-safe extract with .bak stash (7d48f34) - move service start out of RegisterServiceStep (51a1bbe) - escape newline/tab in CLI args (ad7c9fa) - guard against same task in queue and override slot (11a4376) - reject CurrentUser service account without password (f10ad69) - swallow DB errors in TaskListViewModel.OnTaskUpdated (dc4571a) - emit RunCreated after run row exists (4fb6ba6) - resolve critical bugs and improve reliability across worker, data, UI (3423919) ### Documentation - add subtask tree view design spec (4f25c3d) ## v1.1.0 — 2026-04-16 ### Features - wire EF Core into DI and update all consumers to IDbContextFactory (36484ed) - rewrite all repositories to use EF Core ClaudeDoDbContext (34ca1b0) - add ClaudeDoDbContext with Fluent API configurations (51a5dcb) - add navigation properties to all entity models (f8f1386) ### Fixes - address code review findings (611454d) ### Refactoring - switch InitDatabaseStep to EF Core migrations (7d0ca45) ### Documentation - update CLAUDE.md files for EF Core migration (8d61b05) - add EF Core migration implementation plan (9236ca6) - add EF Core migration design spec (9e1f137) ## v1.0.0 — 2026-04-15 ### Features - add app and installer icons (3b1f148) - agent config inline in detail panel, file picker, subtask UI (9a407bd) - add subtasks table, repository and prompt integration (8c051d8) - remove MaxWidth on main columns to use full window width (8577c55) - mode-aware wizard page list + Update-mode step pipeline (b5455a1) - Config view — Save/Repair/Uninstall commands + footer buttons (2898bec) - add UninstallRunner (service + shortcuts + dirs) (ac38ea8) - rewrite WelcomePage for download-mode + update heading (da1fe21) - async mode detection + mode-aware DI wiring (01c29bb) - add WriteInstallManifestStep (5482518) - add DownloadAndExtractStep with SHA256 verify (c1e3301) - add Stop/StartServiceStep sc.exe wrappers (d87de15) - replace sync ModeDetector with async InstallModeDetector (97fb215) - add IReleaseClient + Gitea ReleaseClient (5603fd4) - add ChecksumVerifier (SHA256 + checksums.txt parser) (d0c0e2c) - add InstallManifest + json-backed store (921e626) - add Gitea Actions release workflow (aea0909) - add WPF installer/configurator project (78831b2) - add config override fields to TaskEditorView (f8be2c1) - complete Batch 2 — LiveText display, start feedback, modal theming, ListEditor config (699fe8a) - replace LiveLines with formatted LiveText, add log reload and start feedback (0764bb3) - add starting state feedback to task list (503fd69) - add StreamLineFormatter for NDJSON stream parsing (365ecba) - default to claude-sonnet-4-6 when no model configured (945a1ee) - add RunNowRequestedEvent and GetAgentsAsync to WorkerClient (026df8d) - add ContinueTask routing to QueueService (adc5a16) - add ContinueTask, GetAgents, RefreshAgents hub methods and RunCreated broadcast (6cb8012) - add AgentFileService for filesystem agent management (8825351) - extend RunResult with structured output, session ID, and token metrics (54c4d3c) - extend TaskRepository with model, system_prompt, agent_path columns (f57cdb7) - add StreamAnalyzer for rich NDJSON stream parsing (8b342bc) - add ClaudeArgsBuilder for dynamic CLI argument construction (dab461c) - add GetConfigAsync and SetConfigAsync to ListRepository (5232d5f) - add TaskRunRepository with CRUD and query methods (19a2104) - add ListConfigEntity, TaskRunEntity, AgentInfo models and task config fields (02aaa9d) - add list_config, task_runs tables and task config columns (36ae653) - add global keyboard shortcuts (Ctrl+N, Ctrl+L, Ctrl+R, Ctrl+Shift+N) (ff5e56a) - add inline add handlers, checkbox click, and task keyboard shortcuts (2dcfc7e) - add auto-save LostFocus handlers and tag input KeyDown (a44c104) - wire TaskDetail changes back to task list refresh (f51278e) - make TaskDetailViewModel editable with auto-save and tag CRUD (28a0d9b) - add inline task creation, toggle-done, and list name to TaskListViewModel (a4da2e2) - add ToggleDone command and checkbox state to TaskItemViewModel (0796b3c) - add colored dot brush to ListItemViewModel (3c52e9c) - add CheckboxBorderConverter for task status circles (a548d41) - add context menus for lists and tasks (3653dca) - open editor on double-click for lists and tasks (db5a447) - wire avalonia desktop ui to data and worker (48e4aab) - add git worktree support and conventional commits (01235d9) - add claude-cli runner, queue service, and hub api (e5038d7) - add repositories, stale-task recovery, and test foundation (9f51ff0) - add db schema init and signalr hub skeleton (f81ef02) ### Fixes - prevent async void races and leak-on-exit (2b3fe02) - address concurrency, cancellation, and resource issues (d3b85f2) - wait for prior service registration to clear before create (fc9029d) - publish framework-dependent single-file (1c764da) - disable single-file compression to prevent WPF startup AV (cfec329) - service hosting, dark theme, uninstall polish (f599f8d) - set EnableWindowsTargeting so Linux Gitea runners can publish (9b928c6) - UninstallRunner abort-on-stop-fail + path guard + partial-failure reporting (5d42438) - null-defensive WelcomePage heading + guard unreachable modes (8d2f7e9) - fall back to Config on detection timeout when install.json exists (5e432a4) - wrap WriteInstallManifestStep I/O in try/catch like sibling steps (12e5327) - harden DownloadAndExtractStep per review (ea32a74) - check exit code (not stdout) for ERROR_SERVICE_ALREADY_RUNNING (5b4af29) - propagate cancellation + defensive asset parsing in ReleaseClient (83d7058) - fix live output visibility and editor dialog graying out (2a1f26d) - address code review findings (7363e48) - allow RunNow for any non-running task, not just queued (95c8cc8) - update QueueServiceTests for new TaskRunner constructor signature (26c2445) - replace deprecated Watermark with PlaceholderText (5f51fe9) - register TagRepository in TaskDetailViewModel constructor (5b6c095) - re-evaluate RunNow CanExecute when worker connection changes (473e0f7) - make list and task rows fully hit-testable for clicks (981b8e4) - context menu operates on right-clicked item and gates new-task on list selection (5d5a583) - harden worker auto-reconnect lifecycle (fdf357b) - cancel retry loop before disposing worker connection (36ef624) - auto-reconnect worker connection with retry backoff (c6522cf) ### Refactoring - replace SourceDirectory with Mode/Version fields in InstallContext (4fab048) - remove source-build steps (replaced by DownloadAndExtractStep) (0989176) - remove MessageParser (replaced by StreamAnalyzer) (c1c4c75) - rewrite TaskRunner with config resolution, retry, and continue support (76473dd) - simplify ClaudeProcess to accept pre-built args and use StreamAnalyzer (1cdaaf9) - harden context menu event handling and simplify bindings (7838f08) - harden double-click edit handlers (6727cc4) ### Documentation - add download-mode implementation plan (c0bd465) - finalize decisions — self-contained, auto-check, full uninstall (0498fba) - pin release target to releases/ClaudeDo (43a10cf) - add download-mode + Gitea Releases design spec (bd7d594) - add implementation plan for UI fixes (a6fe91d) - add design spec for post-integration UI fixes (fb3c96c) - update CLAUDE.md with CLI modernization changes (03728c8) - add UX redesign implementation plan (16 tasks) (9f61cd1) - add UX redesign spec (Microsoft To Do style) (0e41c37)