# Release v0.20.x - Changelog

Released: 2026-02-24

## Overview

Productivity insights, worktree control for task creation.

## Features

### Worktree control for CoS tasks
- **Branch + PR checkbox** on the task creation form lets users explicitly choose whether a task should use a git worktree (branch + PR to default branch) or commit directly — defaults to unchecked
- **Per-app default override** via `defaultUseWorktree` in the app settings page — when enabled, the checkbox auto-checks for tasks targeting that app
- Agent spawner respects the explicit flag: when set, it takes priority over auto-detection; when not set, existing managed-app and conflict-based worktree logic applies unchanged

### Optimal time indicator in QuickSummary
- **Peak hour detection** analyzes hourly success rate patterns to show whether the current hour is a peak productivity window
- Displays "Peak Hour" (top 25% hours), "Good" (above average), or next peak hour time when suboptimal
- Requires 3+ hours of historical data with 3+ tasks each before activating
- Hover tooltip shows current success rate or next peak time for quick context

### Enhanced decision log transparency
- **Capacity details** now shown when agent slots are full — displays current/max agent count and per-project limits
- **Cooldown context** surfaces the app name and cooldown window duration so users can see why a task was deferred
- **Task switch flow** renders from→to task type with arrow for switch decisions, replacing opaque reason-only text
- **Idle breakdown** shows running agent count and pending approval count when CoS has no work
- **Attempt count** displayed for skipped tasks alongside success rate, giving full context on learning decisions
- **Quick stats row** now includes "deferred" (capacity) and "cooldowns" badges — previously only showed skipped/switched/selected/adjusted
- **Color-coded success rates** in decision entries (red <30%, yellow <60%, green 60%+) for at-a-glance health
