diff --git a/CHANGELOG.md b/CHANGELOG.md index b517db4e1..34aea54cc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,49 @@ Format based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## [Unreleased] +## [2.52.0] - 2026-03-27 + +### Added +- **vscode**: status bar, file decorations, bash terminal, session tree, conversation history, code lens [1/2] (#2651) +- **web**: Dark mode contrast — raise token floor and flatten opacity tier system (#2734) +- Wire --bare mode across headless → pi-coding-agent → resource-loa… +- Added runId generation on prompt/steer/follow_up commands, event… +- Added RPC protocol v2 types, init handshake with version detectio… + +### Fixed +- auto-mode stops after provider errors (#2762) (#2764) +- add missing runtime stage name to Dockerfile (#2765) +- make transaction() re-entrant and add slice_dependencies to initSchema +- remove preferences.md from ROOT_STATE_FILES to prevent back-sync overwrite +- wire tool handlers through DB port layer, remove _getAdapter from all tools +- **gsd**: move state machine guards inside transaction in 5 tool handlers (#2752) +- reconcile disk milestones into empty DB before deriveStateFromDb guard (#2686) +- **gsd**: seed preferences.md into auto-mode worktrees (#2693) +- **claude-import**: discover marketplace plugins nested inside container directories (#2718) +- exempt interactive tools from idle watchdog stall detection (#2676) +- guard allSlicesDone against vacuous truth on empty slice array (#2679) +- block complete-milestone dispatch when VALIDATION is needs-remediation (#2682) +- **gsd**: sync milestone DB status in parkMilestone and unparkMilestone (#2696) +- **web**: auth token gate — synthetic 401 on missing token, unauthenticated boot state, and recovery screen (#2740) +- **remote-questions**: empty-key entry in auth.json shadows valid Discord bot token (#2737) +- idle watchdog stalled-tool detection overridden by filesystem activity (#2697) +- surface exhausted Claude SDK streams as errors (#2719) +- **docker**: overhaul fragile setup, adopt proven container patterns (#2716) +- **gsd**: write DB before disk in validate-milestone to match engine pattern (#2742) +- **gsd**: extract and honor milestone argument in /gsd auto and /gsd next (#2729) +- **windows**: prevent EINVAL by disabling detached process groups on Win32 (#2744) +- **gsd**: delete orphaned verification_evidence rows on complete-task rollback (#2746) +- **gsd**: wire setLogBasePath into engine init to resurrect audit log (#2745) +- Remove premature pendingTools.delete in webSearchResult handler (#2743) +- **gsd**: remove redundant assertions that fail TS2367 typecheck +- include preferences.md in worktree sync and initial seed + +### Changed +- **pi-ai**: replace model-ID pattern matching with capability metadata (#2548) +- **gsd-db**: comprehensive SQLite audit fixes — indexes, caching, safety, reconciliation +- rename preferences.md to PREFERENCES.md for consistency (#2700) (#2738) +- **gsd**: unify three overlapping error classifiers into single classify→decide→act pipeline + ## [2.51.0] - 2026-03-26 ### Added @@ -2007,7 +2050,8 @@ Format based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ### Changed - License updated to MIT -[Unreleased]: https://github.com/gsd-build/gsd-2/compare/v2.51.0...HEAD +[Unreleased]: https://github.com/gsd-build/gsd-2/compare/v2.52.0...HEAD +[2.52.0]: https://github.com/gsd-build/gsd-2/compare/v2.51.0...v2.52.0 [2.51.0]: https://github.com/gsd-build/gsd-2/compare/v2.50.0...v2.51.0 [2.50.0]: https://github.com/gsd-build/gsd-2/compare/v2.49.0...v2.50.0 [2.49.0]: https://github.com/gsd-build/gsd-2/compare/v2.48.0...v2.49.0 diff --git a/native/npm/darwin-arm64/package.json b/native/npm/darwin-arm64/package.json index 88f6df2f4..223e08bd2 100644 --- a/native/npm/darwin-arm64/package.json +++ b/native/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@gsd-build/engine-darwin-arm64", - "version": "2.51.0", + "version": "2.52.0", "description": "GSD native engine binary for macOS ARM64", "os": [ "darwin" diff --git a/native/npm/darwin-x64/package.json b/native/npm/darwin-x64/package.json index 645271135..66de49e14 100644 --- a/native/npm/darwin-x64/package.json +++ b/native/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "@gsd-build/engine-darwin-x64", - "version": "2.51.0", + "version": "2.52.0", "description": "GSD native engine binary for macOS Intel", "os": [ "darwin" diff --git a/native/npm/linux-arm64-gnu/package.json b/native/npm/linux-arm64-gnu/package.json index 00db9b8dd..39a0377ea 100644 --- a/native/npm/linux-arm64-gnu/package.json +++ b/native/npm/linux-arm64-gnu/package.json @@ -1,6 +1,6 @@ { "name": "@gsd-build/engine-linux-arm64-gnu", - "version": "2.51.0", + "version": "2.52.0", "description": "GSD native engine binary for Linux ARM64 (glibc)", "os": [ "linux" diff --git a/native/npm/linux-x64-gnu/package.json b/native/npm/linux-x64-gnu/package.json index b6974bc35..9db49f48d 100644 --- a/native/npm/linux-x64-gnu/package.json +++ b/native/npm/linux-x64-gnu/package.json @@ -1,6 +1,6 @@ { "name": "@gsd-build/engine-linux-x64-gnu", - "version": "2.51.0", + "version": "2.52.0", "description": "GSD native engine binary for Linux x64 (glibc)", "os": [ "linux" diff --git a/native/npm/win32-x64-msvc/package.json b/native/npm/win32-x64-msvc/package.json index faaed6482..09e714247 100644 --- a/native/npm/win32-x64-msvc/package.json +++ b/native/npm/win32-x64-msvc/package.json @@ -1,6 +1,6 @@ { "name": "@gsd-build/engine-win32-x64-msvc", - "version": "2.51.0", + "version": "2.52.0", "description": "GSD native engine binary for Windows x64 (MSVC)", "os": [ "win32" diff --git a/package.json b/package.json index b9470dea4..98c4e5977 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gsd-pi", - "version": "2.51.0", + "version": "2.52.0", "description": "GSD — Get Shit Done coding agent", "license": "MIT", "repository": { diff --git a/packages/pi-coding-agent/package.json b/packages/pi-coding-agent/package.json index 54dcbffc7..7d3cb624e 100644 --- a/packages/pi-coding-agent/package.json +++ b/packages/pi-coding-agent/package.json @@ -1,6 +1,6 @@ { "name": "@gsd/pi-coding-agent", - "version": "2.51.0", + "version": "2.52.0", "description": "Coding agent CLI (vendored from pi-mono)", "type": "module", "piConfig": { diff --git a/pkg/package.json b/pkg/package.json index 84a0bdc88..6921ef3fc 100644 --- a/pkg/package.json +++ b/pkg/package.json @@ -1,6 +1,6 @@ { "name": "@glittercowboy/gsd", - "version": "2.51.0", + "version": "2.52.0", "piConfig": { "name": "gsd", "configDir": ".gsd"