release: v2.66.0

This commit is contained in:
github-actions[bot] 2026-04-08 03:07:16 +00:00
parent 2d58b3fc1b
commit 0d69b9c57d
9 changed files with 125 additions and 9 deletions

View file

@ -6,6 +6,121 @@ Format based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
## [Unreleased]
## [2.66.0] - 2026-04-08
### Added
- **gsd**: add fast path for queued milestone discussion
- **gsd**: add /gsd show-config command
- **reactive**: graph diagnostics and subagent_model config
- **dispatch**: parallel research slices and parallel milestone validation
- **parallel**: worker model override for parallel milestone workers
### Fixed
- **gsd**: validate depth verification answer before unlocking write-gate
- **gsd**: revert unknown artifact check to warn-and-proceed
- **gsd**: add missing cmd field to test base WorkflowEvent
- **gsd**: address remaining adversarial review findings for wave 3
- **gsd**: detect concurrent event log growth during reconcile
- **gsd**: address adversarial review findings for wave 3
- **gsd**: address adversarial review findings for wave 2
- **gsd**: address adversarial review findings for wave 1
- **gsd**: WAL-safe migration backup + stronger regression tests
- **gsd**: consistency and cleanup (wave 5/5)
- **gsd**: write safety — atomic writes and randomized tmp paths (wave 4/5)
- **gsd**: session and recovery robustness (wave 3/5)
- **gsd**: event log and reconciliation robustness (wave 2/5)
- **gsd**: critical state machine data integrity fixes (wave 1/5)
- **gsd**: critical state machine data integrity fixes (wave 1/5)
- **gsd**: remove ecosystem research stub and address adversarial review
- **gsd**: suppress model change notification in auto-mode unless verbose
- **gsd**: exclude task.files from checkTaskOrdering to prevent false positives
- **state**: skip ghost check for queued milestones in registry build
- **ci**: replace empty catch blocks and raw stderr with logWarning
- **logging**: add debugLog to empty catch in reopen-milestone
- **state-machine**: 9 resilience fixes + 86 regression tests (#3161)
- **gsd**: add incremental persistence to discuss prompts
- replace empty catch with logWarning for silent-catch-diagnostics test
- **test**: escape regex metacharacters in skip-by-preference pattern test
- **test**: search for numbered step definitions in prompt ordering test
- **test**: update notes loop test for notesVisible guard behavior
- **test**: update action count for note captures now included in results
- **test**: remove extraneous test file from wrong branch
- **test**: update worktree sync tests to use separate milestone IDs
- **gsd**: use valid LogComponent type for stale branch guard warning
- **test**: update rogue detection test for auto-remediation behavior
- **test**: update stuck-planning test to expect executing after reconciliation
- **test**: update file path consistency tests for inputs-only checking
- **test**: add CONTEXT file to queued milestone ghost detection test
- **test**: update needs-remediation test to expect validating-milestone phase
- **gsd**: import all-done milestones as complete during DB migration
- **gsd**: allow milestone completion when validation skipped by preference
- **gsd**: set slice sequence at all three insertion sites
- **gsd**: four prompt/runtime fixes for completion and session stability
- **gsd**: default insertMilestone status to queued instead of active
- **gsd**: suppress repeated frontmatter YAML parse warnings
- **gsd**: normalize list inputs in complete-task + fix roadmap dep parsing
- **gsd**: open DB before status derivation + respect isolation:none in quick
- **gsd**: add .bg-shell/ to baseline gitignore patterns
- **tui**: prevent Enter key infinite loop in interview notes mode
- **provider**: handle Enter key to initiate auth setup in provider manager
- **gsd**: cap run-uat dispatch attempts to prevent infinite replay loop
- **mcp**: use createRequire to resolve SDK wildcard subpath imports
- **gsd**: mark note captures as executed in executeTriageResolutions
- **gsd**: validate main_branch preference exists before using in merge
- **gsd**: handle deleted cwd in projectRoot to prevent ENOENT crash
- **gsd**: skip current milestone in syncWorktreeStateBack to prevent merge conflicts
- **gsd**: add structuredQuestionsAvailable conditional to slice discuss
- **gsd**: restore full tool set after discuss flow scoping
- **gsd**: tighten verifyExpectedArtifact to prevent rogue-write false positives
- **gsd**: add verification gate to complete-slice tool
- **gsd**: fix pre-execution-checks false positives from backticks and task.files
- **gsd**: stop renderAllProjections from overwriting authoritative PLAN.md
- **gsd**: auto-checkout to main when isolation:none finds stale milestone branch
- **gsd**: auto-remediate stale slice DB status when SUMMARY exists on disk
- **gsd**: open DB on demand in gsd_milestone_status for non-auto sessions
- **gsd**: detect phantom milestones from abandoned gsd_milestone_generate_id
- **gsd**: force re-validation when verdict is needs-remediation
- **gsd**: exclude closed slices from findMissingSummaries check
- **gsd**: recover from stale lockfile after crash or SIGKILL
- **gsd**: add createdAt timestamp and 30s age guard to staleness check
- **gsd**: clear stale pendingAutoStart after /clear interrupts discussion
- **gsd**: suppress misleading warnings for expected ENOENT/EISDIR conditions
- **gsd**: extract real error from message content when errorMessage is useless
- **gsd**: extract real error from message content when errorMessage is useless
- **gsd**: show accurate pause message for queued-user-message skip
- **gsd**: treat queued-user-message skip as non-retryable interruption
- **gsd**: recognize "Not provided." default in isVerificationNotApplicable
- **gsd**: discoverManifests skips symlinked extension directories
- **gsd**: recognize "Not provided." default in isVerificationNotApplicable
- **gsd**: reconcile plan-file tasks into DB when planner skips persistence (#3600)
- **gsd**: use isClosedStatus() in dispatch guard instead of raw complete check
- **browser-tools**: make sharp an optional lazy dependency
- **gsd**: pass required arguments in defer-milestone-stamp test
- **gsd**: replace remaining empty catch with logWarning
- **gsd**: use logWarning instead of raw stderr in catch blocks
- **gsd**: log error instead of empty catch in STATE.md rebuild
- **gsd**: log error instead of empty catch in skip_slice
- **gsd**: cast milestone classification to string for type safety
- **gsd**: treat zero-slice roadmap as pre-planning in guided flow
- **gsd**: rebuild STATE.md after skip-slice and strengthen rethink prompt
- **gsd**: use main_branch preference in worktree creation
- **gsd**: stamp defer and milestone captures as executed after triage
- **tui**: treat absolute file paths as plain text, not commands
- **tui**: break infinite re-render loop for images in cmux
- **gsd**: rebuild STATE.md before guided-flow dispatch
- **gsd**: defer queued shells in active milestone selection
- **retry**: prevent 429 quota cascade and 30-min lockout
- **gsd**: add fastPathInstruction to buildDiscussMilestonePrompt loadPrompt call
### Changed
- auto-commit after quick-task
- auto-commit after quick-task
- auto-commit after quick-task
- auto-commit after quick-task
- auto-commit after quick-task
- auto-commit after quick-task
- auto-commit after quick-task
## [2.65.0] - 2026-04-07
### Added
@ -2436,7 +2551,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.65.0...HEAD
[Unreleased]: https://github.com/gsd-build/gsd-2/compare/v2.66.0...HEAD
[2.66.0]: https://github.com/gsd-build/gsd-2/compare/v2.65.0...v2.66.0
[2.65.0]: https://github.com/gsd-build/gsd-2/compare/v2.64.0...v2.65.0
[2.64.0]: https://github.com/gsd-build/gsd-2/compare/v2.63.0...v2.64.0
[2.63.0]: https://github.com/gsd-build/gsd-2/compare/v2.62.1...v2.63.0

View file

@ -1,6 +1,6 @@
{
"name": "@gsd-build/engine-darwin-arm64",
"version": "2.65.0",
"version": "2.66.0",
"description": "GSD native engine binary for macOS ARM64",
"os": [
"darwin"

View file

@ -1,6 +1,6 @@
{
"name": "@gsd-build/engine-darwin-x64",
"version": "2.65.0",
"version": "2.66.0",
"description": "GSD native engine binary for macOS Intel",
"os": [
"darwin"

View file

@ -1,6 +1,6 @@
{
"name": "@gsd-build/engine-linux-arm64-gnu",
"version": "2.65.0",
"version": "2.66.0",
"description": "GSD native engine binary for Linux ARM64 (glibc)",
"os": [
"linux"

View file

@ -1,6 +1,6 @@
{
"name": "@gsd-build/engine-linux-x64-gnu",
"version": "2.65.0",
"version": "2.66.0",
"description": "GSD native engine binary for Linux x64 (glibc)",
"os": [
"linux"

View file

@ -1,6 +1,6 @@
{
"name": "@gsd-build/engine-win32-x64-msvc",
"version": "2.65.0",
"version": "2.66.0",
"description": "GSD native engine binary for Windows x64 (MSVC)",
"os": [
"win32"

View file

@ -1,6 +1,6 @@
{
"name": "gsd-pi",
"version": "2.65.0",
"version": "2.66.0",
"description": "GSD — Get Shit Done coding agent",
"license": "MIT",
"repository": {

View file

@ -1,6 +1,6 @@
{
"name": "@gsd/pi-coding-agent",
"version": "2.65.0",
"version": "2.66.0",
"description": "Coding agent CLI (vendored from pi-mono)",
"type": "module",
"piConfig": {

View file

@ -1,6 +1,6 @@
{
"name": "@glittercowboy/gsd",
"version": "2.65.0",
"version": "2.66.0",
"piConfig": {
"name": "gsd",
"configDir": ".gsd"