# Changelog

All notable changes to the Bernstein VS Code extension will be documented in this file.

## [0.2.0] - 2026-04-05

### Added
- **Approve/reject task commands** - new context menu actions for tasks pending approval
- **Cost budget warning notifications** - toast alerts when spend exceeds configurable threshold
- **Task grouping by status** - tasks tree view now groups items by status (open, in progress, done, failed)
- **Agent tree: model badge** - agents display their assigned model in the tree view
- **Agent tree: file ownership display** - see which files each agent owns
- **Additional task status icons** - distinct icons for `pending_approval`, `orphaned`, and `waiting_for_subtasks` states

### Improved
- **Dashboard UI** - task breakdown chart, auto-refresh indicator, empty states for when no agents or tasks exist
- **Dashboard auto-refresh** - visual indicator showing when data was last updated

### Configuration
- `bernstein.showNotifications` (boolean, default `true`) - control notification toasts for task completions and failures
- `bernstein.costWarningThreshold` (number, default `80`) - percentage threshold for cost budget warnings
- `bernstein.autoStart` (boolean, default `false`) - automatically start Bernstein when opening a workspace with a `.sdd` directory

## [0.1.0] - 2026-03-29

### Added
- Initial release of Bernstein VS Code extension
- **Activity bar panel** with three views:
  - Agents tree - view current team, status, cost per agent
  - Tasks tree - view open, running, completed, and failed tasks
  - Dashboard - overview stats and alerts
- **Status bar integration** - quick view of agent count, task progress, and total cost
- **Real-time monitoring** - SSE connection to Bernstein orchestrator for live updates
- **Agent control** - kill agents, inspect logs, view output
- **Task inspection** - click tasks to view execution output and diffs
- **Dashboard browser** - open full dashboard in VS Code webview
- **Auto-connect** - automatically detects running Bernstein server on localhost:8052
- **Configuration** - customizable API URL, optional token auth, refresh interval

### Details

#### Views & Navigation
- **Agents** - shows running agents with role, model, runtime, and cumulative cost
- **Tasks** - grouped by status (open, running, done, failed) with assignment info
- **Overview** - at-a-glance stats: active agents, task completion, success rate, cost
- **Alerts** - operator notifications for failures, resource limits, and recommendations

#### Interaction Patterns
- Click agent → opens output channel with execution logs
- Click task → opens file diff or output file
- Right-click agent → context menu: Kill, Inspect, Show Logs
- Right-click task → context menu: Prioritize, Cancel, Re-assign
- Status bar click → opens dashboard

#### Performance & Reliability
- SSE connection (not polling) - minimal latency and CPU
- Debounced UI updates (max 2/second)
- Lazy-loaded webview - doesn't block VS Code startup
- Graceful offline state - "Not connected" message, no error spam
- Auto-reconnect with backoff

#### UX Polish
- Monochrome icon (no rainbow colors)
- Clean status bar - essential info only
- Tight typography - 13px text, tabular figures for numbers
- Status dots for states
- Respects VS Code light/dark theme

---

### Known Limitations
- Extension size: ~800KB (within 1MB budget)
- Webview cannot iframe localhost due to CSP - opens dashboard in browser
- No offline mode - requires running Bernstein server

### Support

Questions or issues? File a bug: [github.com/sipyourdrink-ltd/bernstein/issues](https://github.com/sipyourdrink-ltd/bernstein/issues)
