|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), |
| 6 | +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 7 | + |
| 8 | +## [0.1.0] - 2026-02-28 |
| 9 | + |
| 10 | +### Added |
| 11 | + |
| 12 | +- Multi-signal orphan scoring engine with five weighted signals: `ppid_is_init`, `parent_ide_dead`, `exceeded_duration`, `has_listener`, `no_tty` |
| 13 | +- 18 built-in YAML process patterns across four categories: MCP servers, dev servers, headless browsers, and media tools |
| 14 | +- Pattern matching via embedded YAML files with `go:embed` (zero external dependencies at runtime) |
| 15 | +- MCP config cross-referencing — reads `~/.claude.json`, `~/.cursor/mcp.json`, `~/.vscode/mcp.json` to detect expected MCP servers |
| 16 | +- IDE detection using path-based signatures for 12 IDEs (VS Code, Cursor, Claude Code CLI, Windsurf, Zed, IntelliJ family, Xcode) |
| 17 | +- Background daemon with configurable scan interval (default 30s) |
| 18 | +- macOS LaunchAgent install/uninstall (`devreap install`, `devreap uninstall`) |
| 19 | +- Graceful multi-step signal delivery with PID reuse protection (SIGTERM -> wait -> SIGKILL; SIGINT first for ffmpeg) |
| 20 | +- Safety checks: never kills PID 1, own process, parent process, other users' processes, or blocklisted system processes |
| 21 | +- macOS notifications when the daemon kills an orphan |
| 22 | +- Structured JSON logging with rotation |
| 23 | +- CLI commands: `scan`, `start`, `stop`, `status`, `install`, `uninstall`, `kill`, `kill --port`, `logs`, `doctor`, `patterns`, `version` |
| 24 | +- `--json` output for `scan` and `logs` commands |
| 25 | +- `doctor` command for full diagnostics (config, patterns, permissions, MCP configs, LaunchAgent status) |
| 26 | +- User-configurable YAML config at `~/.config/devreap/config.yaml` (signal weights, thresholds, blocklist, allowlist, extra patterns) |
| 27 | +- Dry-run mode for testing without killing |
| 28 | +- CI pipeline: golangci-lint, race-detector tests on macOS + Linux, build verification |
| 29 | +- GoReleaser-based release workflow with Homebrew tap support |
| 30 | +- MIT license |
| 31 | + |
| 32 | +[0.1.0]: https://github.com/tjp2021/devreap/releases/tag/v0.1.0 |
0 commit comments