GSD Release Notes
13 release notes curated from 1 source by the Releasebot Team. Last updated: May 14, 2026
GSD Products
- May 14, 2026
- Date parsed from source:May 14, 2026
- First seen by Releasebot:May 14, 2026
v3.0.0
GSD 2 releases broad orchestration and auto-mode updates with new /gsd verdict, visual brief, resumable isolated launches, improved dispatch and milestone recovery, safer verification and worktree handling, plus knowledge projection and memory-store ADR changes.
Added
- gsd: add /gsd verdict command for milestone override recovery
- gsd: add visual brief command
- subagent: add random tracking names
- subagent: add resumable isolated launch records
- web: update visualizer tabs
- gsd: dispatch adapter receives full session inputs (#5789)
- gsd: orchestrator parity with runPreDispatch (#5788)
- gsd: move stuck-loop detection into Auto Orchestration (#5787)
- gsd: widen AutoAdvanceResult with unit + action (#5786)
- adr-013: stop decisions-table writes from gsd_save_decision (stage 3)
- adr-013: /gsd knowledge routes pattern + lesson to memories (stage 2c)
- adr-013: KNOWLEDGE.md backfill + hybrid projection (stage 2b)
- adr-013: DECISIONS.md projection sources from memories (stage 2a)
- adr-013: switch prompt-inline decisions read to memories (stage 1)
- adr-013: memory-store cutover preflight scanner
- adr-011: ROADMAP shows [sketch] badge on unrefined slices
- adr-005: declare producesImages on always-image browser tools
- adr-005: surface ProviderSwitchReport via audit, notification, counter
Fixed
- pi-agent: default tool output expanded
- gsd: preserve paused cleanup and verify guidance
- gsd: refresh db before post-unit verification
- gsd: clarify step mode next action
- gsd: preserve step-mode completion surface
- gsd: remove tracker refs from user messages
- pi-coding-agent: skip empty reasoning transcript rails
- issue: Worktree plan-slice renders artifacts to project .gsd instead of worktree-local .gsd
- issue: clearLock() never marks stale DB worker as stopping — blocks resume after crash
- issue: Auto-mode artifact retry budget resets across pause/resume, causing repeated execute-task redispatch
- issue: [Bug]: gsd causes cmux to become unusable after exit
- issue: gsd.db corrupts repeatedly on WSL2 9p mounts (/mnt/d, /mnt/c) — WAL+mmap pragmas unsafe
- auto: rollback model state on workflow-capability block
- issue: crash-recovery: stale lock not cleared when worker PID is dead
- issue: [Bug]: Model Preference Selection does not include discovered models
- issue: GSD milestone completion falsely reports no implementation files when .gsd is external/ignored
- issue: auto: state mutations + journal emission happen before pre-dispatch validation succeeds (Change 4-B from #4959)
- issue: [Bug]: auto-mode aborts on provider 500 errors instead of pausing and retrying
- issue: [Bug]: Milestone merge fails silently on Windows when gsd.db has SQLite WAL lock
- issue: [Bug]: Misleading Cloud Code Assist 404 error when Antigravity models are removed
- issue: [Bug]: Queue reorder overlay does not scroll with arrow keys
- issue: [Bug]: Web UI cannot access projects outside C: drive
- issue: claude-code-cli adapter misclassifies SDK abort throws as generic errors, surfacing 'aborted by user' for non-user aborts
- issue: [Bug]: run-uat stuck in dispatched loop — slice already complete but runtime unit never resolves
- issue: Auto-mode crash: MCP tool resolution failure causes research-slice false success and dispatch loop
- issue: [Bug]: auto-mode: milestone completed without user UAT — needs-attention verdict not guarded in dispatch
- issue: validate-milestone unit gets stuck in infinite loop if LLM fails to call gsd_validate_milestone tool
- issue: Milestone status drift makes planned future milestones inconsistently discoverable
- issue: Bug: Milestone completion blocked by 'no implementation files' check for planning-only milestones
- issue: Branch-mode milestone entry fails on dirty working tree (no stash guard)
- issue: bug: milestone integration branch can be corrupted to milestone/* and break complete-milestone artifact checks
- gsd: repair empty milestone worktree recovery
- gsd: preserve phase handoff outcome
- gsd: route guided execute through worktree bootstrap
- gsd: route planning prompts through db tools
- gsd: keep markdown projections subordinate to db
- gsd: reject unsafe verify commands before execution
- issue: DB-backed stale worker cleanup leaves crashed hook dispatch active
- issue: auto-mode silently disables milestone lease + dispatch ledger because enterMilestone runs before registerAutoWorkerForSession
- issue: worktree-sync: git ls-files cleanup fails on .gsd-managed dirs ("fuera del repositorio")
- issue: /gsd doctor command crashes/exits prematurely during health checks
- gsd: clean orphan worktree dirs whose milestone branch was already deleted
- issue: [Bug]: Auto-commit fails when keyFiles is empty — 'git add -- (none)' causes GSD_GIT_ERROR
- issue: [Bug]: Bedrock models fail with context overflow in --print mode
- issue: auto-mode: crashed-worker dispatch rows poison next-session stuck-detector window (getRecentUnitKeysForProjectRoot)
- issue: Dispatch guard ignores DB status "parked"/"deferred", blocks newer milestones with no escape in DB-mode
- issue: [Bug]: Auto-commit fails when keyFiles are inside git submodule — git add throws 'pathspec is in submodule'
- issue: Post-exec import checker treats import-looking strings as blocking missing imports
- validate memory pressure check interval
- issue: gsd_plan_slice persists invalid task input paths before pre-exec validation
- issue: Memory guard blindspot: first 4 iterations of each auto-mode session unprotected from jetsam kill
- issue: loadPrompt("guided-discuss-milestone") crash: 6 callsites in guided-flow.js missing workingDirectory arg + format-string typo at prompt-loader.js:154
- issue: Slice title with '/' causes empty ROADMAP.md + TypeError 'Cannot read properties of undefined (reading indexOf)' stuck loop
- issue: isLikelyCommand() treats Chinese/non-ASCII prose as shell command - verification gate false failure
- issue: ENOBUFS from spawnSync git is not treated as transient — git commit fails with no retry
- issue: plan-slice/plan-task stuck loops due to prompt/schema drift and subagent extension block
- issue: Auto-mode 3-strike hard-stop on git dubious ownership: getMainBranch() uncaught in dispatch guard path
- issue: gsd-progress widget not torn down after step-mode natural loop exit (cleanupAfterLoopExit missing setWidget teardown)
- issue: v1→v2 migration parser doesn't handle emoji markers or version-prefix milestones
- issue: gsd_plan_slice leaves omitted stale tasks in DB, causing pre-exec to validate old task plans
- ci: remove unpublished pi-tui native dependency
- issue: openai-codex-responses.ts — 429 retries fire inside provider cooldown window, Gemini path handles it correctly
- issue: [Bug]: thinkingLevel "off" persists silently to global default and propagates across reasoning models
- gsd: harden GSD HTML shell and brief flow
- issue: Auto resume does not clearly surface needs-remediation/all-slices-complete blocker
- issue: [Feature]: Unify HTML artifact shell across /gsd export and /gsd brief
- issue: Bug: auto-mode complete-slice 死循环 + run-uat tools-policy 阻断
- issue: [Bug]: Auto-mode can get stuck retrying a unit when the underlying milestone worktree is no longer a valid Git worktree.
- issue: [Feature]: Add security-audit pipeline (Dependabot + CI npm audit workflow)
- issue: auto-mode: git-closeout-failure after verified task causes hard stop with no recovery retry
- issue: step mode exits after complete-milestone before mergeAndExit, orphaning milestone branch/worktree
- issue: dispatch-rule fires discuss-milestone for complete milestones with no CONTEXT file; squash-merge guard has double-trigger on teardown
- issue: auto-mode stops on aborted plan-slice after clean complete-slice (two bugs in abort recovery path)
- issue: stuck detection key mismatch: derivedKey uses unitType/unitId but DB persistence uses bare unitId — cross-session stuck detection defeated
- issue: bug: /gsd park refuses active milestone with blocked SUMMARY.md
- issue: complete-milestone blocked by planning-dispatch tools policy — stuck loop on bash verification commands
- issue: GSD auto-mode loops completing milestone when validation verdict is needs-attention
- issue: Premature auto-compaction with claude-code provider: SDK result.usage is cumulative across agentic loop, mistaken for current context size
- issue: plan-slice infinite loop: is_sketch never cleared after full plan written (progressive_planning=OFF)
- gsd: fail closed execute-task verification
- gsd: reconcile preflight stash collisions
- gsd: order restoreToProjectRoot chdir before throwable work (#5693)
- mcp-server: expose reopen workflow tools
- gsd: verify migration imports
- pi-tui: keep turn end visible after tall shrink
- gsd: clear completion rollup on session switch
- prompts: require read before write
- doctor: block snapshots with conflict markers
- gsd: pause transient aborted units
Changed
- clarify integration branch fallback logic
- gsd: enforce guided unit tool contracts
- gsd: isolate pending auto start state
- gsd: pass guided dispatch project root
- gsd: extract smart entry task routing
- gsd: close ADR-016 phase 3 chdir residuals (#5693)
- adr-013: loadKnowledgeBlock injects Rules from project KNOWLEDGE.md only
- May 10, 2026
- Date parsed from source:May 10, 2026
- First seen by Releasebot:May 11, 2026
v2.82.0
GSD 2 adds a refreshed operations console design, milestone completion rollups, stronger recovery and verification handling, and a series of ADR-016 and ADR-017 extension updates that improve drift detection, worktree management, and CI stability.
Added
- tui: refresh operations console design
- gsd: show milestone completion rollup
Fixed
- gsd: ignore completed-content aborts during session switch
- gsd-extension: drop duplicate resolveGitDir import in merge-state.ts
- run stuck detection during verification retries
- complete auto timeout recovery journaling
- skip ignored task key files during auto commit
- defer run-unit failsafe during recovery
- close all unit-end iteration exits
- journal post-unit finalize stops
- gsd: keep complete-slice closeout read-only
- gsd: unblock CI tests on PR #5679
- gsd: unblock CI typecheck on PR #5678
- auto: guard ghost completions before milestone stop
- gsd: gate unmerged exit telemetry on active worktrees
- gsd: back off verification retries
Changed
- gsd-extension: ADR-017 / strict caller closure for parallel spawns (#5707)
- gsd-extension: ADR-017 / missing-completion-timestamp drift (#5706)
- gsd-extension: ADR-017 / roadmap-divergence drift (#5705)
- gsd-extension: ADR-017 / unregistered-milestone drift (#5704)
- gsd-extension: ADR-017 / stale-worker drift detection and repair (#5703)
- gsd-extension: ADR-017 / migrate stale-render drift (#5702)
- gsd-extension: ADR-017 / migrate merge-state drift (#5701)
- gsd-extension: ADR-017 phase 1 / sketch-flag drift pattern proof (#5700)
- gsd-extension: ADR-016 phase 3 / R2 + R4 + ADR carve-outs (#5693)
- gsd-extension: ADR-016 phase 2 / C4 — gitServiceFactory + final dep bag ≤6
- gsd-extension: ADR-016 phase 2 / C3 — inline cache + preferences + paths
- gsd-extension: ADR-016 phase 2 / C2 — inline worktree-manager helpers
- gsd-extension: ADR-016 phase 2 / C1 — inline fs + git-CLI primitives
- gsd-extension: ADR-016 phase 2 / B5 — route stop-path through restoreToProjectRoot
- gsd-extension: ADR-016 phase 2 / B4 — adoptOrphanWorktree verb
- gsd-extension: ADR-016 phase 2 / B3 — resumeFromPausedSession verb
- gsd-extension: ADR-016 phase 2 / B2 — adoptSessionRoot verb
- gsd-extension: ADR-016 phase 2 / A3 — privatize mergeMilestoneToMain
- gsd-extension: ADR-016 phase 2 / A2 — extract mergeMilestoneStandalone
All of your release notes in one feed
Join Releasebot and get updates from GSD and hundreds of other software products.
- May 9, 2026
- Date parsed from source:May 9, 2026
- First seen by Releasebot:May 10, 2026
v2.81.0
GSD 2 releases broader worktree safety, auto-mode recovery, and TUI improvements, with smarter memory scoring, request-time tool scoping, and database upgrades for integrity, freshness, and cleanup telemetry.
Added
- tui: show tool targets in compact output
- gsd: scope provider tools at request time
- pi-agent-core: add provider-boundary token audit
- gsd: startup audit reapplies orphaned gsd-preflight-stash entries
- db: V28 — last_hit_at on memories + time-decay in relevance scoring
- db: V27 — content_hash on artifacts for integrity fingerprinting
- tui: align chat and tool cards with terminal design
- tui: summarize low-signal tool output by phase
- tui: wire adaptive refresher layouts
- tui: add adaptive style primitives
- legacy: add cleanup evidence runner
- legacy: flush zero-use telemetry snapshots
- legacy: add cleanup telemetry gate
- legacy: persist cleanup telemetry snapshots
- legacy: warn on deprecated paths
- legacy: count component format usage
- legacy: count mcp alias usage
- legacy: count provider default usage
- legacy: count uok fallback usage
- legacy: count workflow engine usage
- legacy: add cleanup telemetry counters
- process: add process baseline metrics
- process: recommend task paths by size
- refactor: add contract drift baseline metrics
- refactor: add phase 0 baseline harness
Fixed
- test: align loop-deps mocks with slice 7's LoopDeps + WorktreeLifecycleDeps
- drop accidentally-committed node_modules symlink
- gsd: use truthy check for activeEngineId in Worktree Safety bypass
- gsd: skip Worktree Safety check for custom-engine units
- test: drop duplicate lifecycle key in custom-engine-loop-integration.test.ts
- gsd: repoint orchestrator worktree adapter at new safety module
- auto: tag session-transition aborts
- gsd-tui: header lifecycle, scroll stability, and wizard step guidance
- gsd: route claude code through session cwd
- gsd: heal dangling write-gate state symlink
- gsd: repair complete-milestone closeout drift
- gsd: harden auto-mode closeout
- gsd: use s.basePath for pre-execution file checks in worktree isolation
- gsd: clean milestone squash conflict state
- gsd: harden milestone merge closeout
- gsd: recover stale milestone leases before dispatch
- gsd: ignore stale Claude Code aborts after session switch
- tui: render welcome header inside TUI
- gsd: fast-forward reused milestone branch in parallel-orchestrator
- gsd: wrap survivor-finalize merge in try/catch with clean abort
- gsd: actively merge orphan completed milestone in bootstrap
- gsd: enforce request-time tool scoping
- gsd: skip fast-forward when reused branch is checked out in another worktree
- vscode: report session tokens separately from context
- gsd: handle already-restored files in orphan-stash audit
- gsd: fast-forward reused milestone branch onto integration before re-attaching worktree
- gsd: fail loud when branch-mode merge runs from wrong branch
- gsd: rederive currentMilestoneId from orphan branches at bootstrap
- gsd: always restore preflight stash after milestone merge
- gsd: drop session-switch user-abort misclassification in agent-end recovery
- gsd: scope loadEffectiveGSDPreferences to workspace basePath at two call sites
- gsd: break pre-exec failure loop and improve planner guidance
- gsd: avoid empty auto worktree dispatch
- gsd: use explicit workspace roots
- gsd: resolve dispatch unit before health checks
- gsd: check worktree health before stuck detection
- gsd: close auto recovery review gaps
- gsd: harden auto-mode closeout recovery
- gsd: defer discussion approval gate
- gsd: skip runtime pre-exec inputs
- git-service: drop missing keyFiles + fall back to smartStage
- memory-store: honor include_superseded in no-query ranked path
- context-budget: per-provider empirical cache + test reset hook
- memory-store: decay-aware ranking + NaN guards on memoryDecayFactor
- gsd-db: preserve content_hash + memory metadata in worktree reconcile
- auto: handle initTokenCounter rejection to avoid unhandled promise
- test: add last_hit_at to compaction-snapshot Memory fixtures
- memory-tools: add last_hit_at to includeSupersededMemories Memory rows
- address codex peer review medium findings
- gsd: reacquire stale auto-mode leases
- token-counter: warm tiktoken encoder at extension startup
- prompt-loader: prime template cache synchronously after initResources
- memory-store: cap LIKE fallback scan and warn on FTS5 unavailability
- gsd: stop stale milestone completion replay
- gsd: honor db-complete timeout recovery
- gsd: pause stale execute-task recovery
- gsd: prevent auto-mode session handoff exits
- gsd: close context mode gaps
- compaction: apply compaction_threshold_percent from GSD prefs (#5475)
- gsd: prefer explicit projectRootOverride for worker registration
- pi-tui: keep auto-mode tui anchored to bottom
- gsd: recover migrated planning state into db
- gsd: address crash recovery review
- gsd: harden auto crash recovery
- gsd: register worker before bootstrap milestone entry
- pi-coding-agent: persist sql.js snapshots atomically (#5426)
- gsd: dispatch quick task menu selection
- gsd: preserve injected worktree health in auto tests
- gsd: fail closed on invalid project classification
- gsd: tighten validation coverage and classification reuse
- gsd: tighten project detection and validation trust
- gsd: address workflow closeout review findings
- gsd: right-size planning and dedupe closeout
- gsd: classify untyped projects and harden milestone cleanup
- tui: roll up direct tool execution rows
- gsd: keep detached auto-mode alive
- gsd: stop complete projects from restarting deep setup
- tui: preserve tool hook shutdown contract
- tui: prevent lifecycle hooks from closing ui
- gsd: bound milestone memory dedupe queries
- gsd: backfill milestone commit attribution
- gsd: honor implementation commits during milestone closeout
- gsd-extension: enforce worktree-isolation contract on write/edit (#5199)
- tui: update input controller host mock
- gsd: tolerate missing working message UI hook
- tui: clear stale adaptive error state
- repair tui input and auto progress messaging
- docker-e2e: build core before npm pack so tarball has dist/
- e2e harness: isolate HOME per process to avoid CI ENOTEMPTY race
- e2e harness: isolate HOME per process to avoid CI ENOTEMPTY race
- e2e harness: isolate HOME per process to avoid CI ENOTEMPTY race
- e2e harness: isolate HOME per process to avoid CI ENOTEMPTY race
- e2e harness: isolate HOME per process to avoid CI ENOTEMPTY race
- docker-e2e: bypass bin shim, use node + loader directly
- docker-e2e: skip postinstall + verify bin shim at build time
- e2e,studio: unbreak docker-e2e tarball + studio preload format
- gsd: harden pr-evidence input against trailer/HTML-comment injection
- gsd: restore ## Blockers section + add PR-body golden fixtures
- github-sync: escape backticks in PR body inline-code spans
- gsd: restore sidecar-dequeue-before-session-lock ordering
- pi-tui: use actual cursor row for editor diffs
- gsd: stop blocked custom workflow loops
- gsd: provide prompt template path defaults
- build: restore contracts build order for TUI paths
- refactor: address auto loop review findings
- workflow: narrow custom engine dispatch actions
- gsd: quiet auto-mode warning noise
- gsd: address pr review feedback
- gsd: address gate progress review feedback
- gsd: persist gate confirmations from mcp questions
- test: accept since in changed src verifier
- gsd: make milestone completion idempotent
- pi-tui: use content-bottom baseline for diff cursor math
- pi-tui: separate content cursor baseline from IME cursor row
- prompt: use portable plan template paths
- prompt: use portable task summary template path
- prompt: resolve template paths dynamically
Changed
- gsd-extension: retire _*ForTest suffix on production helpers
- gsd-extension: retire *ByScope projection wrappers
- gsd-extension: retire WorktreeResolver
- gsd-extension: move merge logic from WorktreeResolver into Lifecycle
- gsd-extension: wire Lifecycle → Projection on enter
- gsd-extension: close Projection bypass for post-unit + phases
- gsd-extension: move Projection bodies into WorktreeStateProjection
- gsd-extension: WorktreeStateProjection.finalizeProjectionForMerge
- gsd: wire worktree safety checks
- gsd: add worktree safety contract
- gsd-extension: WorktreeStateProjection.projectWorktreeToRoot
- gsd-extension: WorktreeStateProjection skeleton + projectRootToWorktree
- gsd-extension: add Lifecycle queries + degradeToBranchMode + restoreToProjectRoot
- gsd-extension: WorktreeLifecycle.exitMilestone (delegating wrapper)
- gsd-extension: implement ADR-015 runtime invariant modules
- agents: add docs/agents/ config + docs/adr/ scaffold
- gsd-extension: extract Worktree Lifecycle Module — enterMilestone
- gsd: cap repeated workflow prompt context
- gsd: make preExecRetryCount readonly, use .clear() in reset
- ci: trim retired workflow paths
- triage: enforce needs-triage at issue intake
- src: group root files by concern
- src: move headless runtime under src/headless
- src: move extension runtime helpers
- web-services: rename internal service layer
- process: share github sync pr evidence
- process: share pr evidence generation
- app-surface: import state row contracts
- app-surface: import renderer row contracts
- app-surface: import verification task contract
- app-surface: import task row contract
- app-surface: import workflow row contracts
- db: extract data-copy migration control
- db: extract remaining ddl migration steps
- db: extract early migration steps
- db: extract migration backup helper
- db: extract base schema ddl
- db: extract lightweight query row mappers
- db: extract milestone artifact gate row mappers
- db: extract task slice row mappers
- db: extract decision requirement row mappers
- db: extract memory fts schema helper
- db: extract verification evidence schema helper
- db: extract coordination schema helper
- db: extract runtime kv schema helper
- db: centralize schema version metadata
- db: extract schema metadata helpers
- db: extract transaction runner
- db: extract open status state
- db: extract workspace connection cache
- db: extract sqlite provider loader
- db: extract sqlite adapter wrapper
- auto: extract custom engine dispatch outcome
- auto: extract custom engine verify outcomes
- auto: extract custom engine reconcile outcome
- auto: extract custom engine reconcile handling
- auto: extract custom engine retry handling
- auto: extract custom engine iteration data
- auto: extract unit dispatch adapter
- auto: extract sidecar iteration data
- auto: extract memory pressure adapter
- auto: extract worker heartbeat adapter
- auto: extract session lock validation
- auto: extract dispatch claim adapter
- auto: extract custom verify retry store
- auto: extract sidecar queue dequeue
- auto: extract iteration completion cleanup
- auto: extract dispatch ledger settles
- auto: kernelize unit request timestamp
- auto: kernelize custom engine path decision
- auto: kernelize dispatch ledger summaries
- auto: kernelize dispatch node kind
- auto: extract workflow phase reporter
- auto: extract workflow journal reporter
- auto: kernelize model policy block
- auto: kernelize infrastructure error stop
- auto: kernelize custom engine retry recovery
- auto: kernelize iteration error recovery
- auto: kernelize cooldown recovery
- auto: kernelize request throttle decision
- auto: kernelize memory pressure stop
- auto: extract workflow turn reporter
- auto: kernelize engine reconcile decision
- auto: kernelize finalize decisions
- auto: kernelize engine dispatch decision
- auto: kernelize dispatch claim decision
- auto: route loop guards through kernel
- auto: add pure workflow kernel decisions
- test: surface phase 3 baseline metrics
- test: add changed src test runner
- test: cache dist-test compile artifacts
- prompt: close phase 2 reduction gate
- prompt: compact task execution guidance
- prompt: compact headless discussion guidance
- prompt: compact project bootstrap discussion guidance
- prompt: compact project discussion guidance
- prompt: compact slice planning guidance
- prompt: compact queue discussion guidance
- prompt: compact milestone discussion guidance
- prompt: compact milestone completion guidance
- prompt: compact milestone planning guidance
- prompt: compact task execution guidance
- prompt: compact forensics guidance
- prompt: compact system guidance
- prompt: compact requirements discussion guidance
- prompt: compact project bootstrap guidance
- prompt: compact headless discussion guidance
- prompt: compact project discussion guidance
- prompt: compact slice completion guidance
- prompt: compact slice planning guidance
- prompt: compact milestone planning guidance
- prompt: compact queue guidance
- prompt: compact task execution guidance
- prompt: compact forensics guidance
- prompt: compact interactive discussion guidance
- prompt: compact gsd system guidance
- prompt: compact headless discussion guidance
- prompt: compact milestone completion guidance
- prompt: compact requirements discussion guidance
- prompt: compact project discussion guidance
- prompt: compact milestone discussion guidance
- prompt: compact project research guidance
- prompt: compact capture triage guidance
- prompt: compact milestone rethink guidance
- prompt: compact worktree merge guidance
- prompt: compact slice refinement guidance
- prompt: compact slice research guidance
- prompt: compact milestone validation guidance
- prompt: compact slice discussion guidance
- prompt: compact project research guidance
- prompt: compact slice completion guidance
- prompt: compact milestone completion guidance
- prompt: compact requirements discussion guidance
- prompt: compact slice planning guidance
- prompt: compact milestone planning guidance
- prompt: compact task execution guidance
- prompt: compact queue milestone guidance
- prompt: compact requirements discussion guidance
- prompt: compact milestone completion guidance
- prompt: compact milestone discussion guidance
- prompt: compact project discussion guidance
- prompt: compact forensic investigation guidance
- prompt: compact queue discussion guidance
- prompt: compact slice planning guidance
- prompt: compact task execution guidance
- prompt: compact milestone planning guidance
- prompt: compact headless discussion guidance
- prompt: compact discuss investigation guidance
- prompt: compact src system guidance
- contracts: share daemon rpc event types
- contracts: share vscode stats and bash types
- contracts: share web ui request types
- contracts: share rpc event contract types
- contracts: share workflow tool registry
- contracts: share mcp blocker shape
- contracts: share rpc state types with vscode
- contracts: use shared rpc types in web bridge
- contracts: introduce shared rpc contracts
- May 4, 2026
- Date parsed from source:May 4, 2026
- First seen by Releasebot:May 8, 2026
v2.80.0
GSD 2 adds authoritative contract context mode, fully wires auto-run context mode, and improves auto orchestration with pause handling, milestone tracking, artifact recovery, and cross-platform path fixes. It also tightens post-exec guards and sync behavior.
Added
gsd: make uok contracts db authoritative
context-mode: fully wire auto-run context modeFixed
post-exec: tighten explicit extension fallback and +types guard
post-exec: handle dotted module stems and ignore React Router +types imports
gsd: recover planned slices after artifact writes
auto: emit stopped lifecycle event on recovery stop
gsd-extension: address remaining CodeRabbit auto seam feedback
gsd-extension: address auto orchestration review findings
gsd-extension: type pauseAuto error context in loop deps
shared: preserve submitted interview answers on abort
gsd-extension: type pauseAuto error context in loop deps
gsd-extension: preserve cancellation context for auto-mode pauses
mcp-server: update gsd_summary_save PROJECT test fixture for R3a contract
gsd: address PR5279 review — basePath threading + cache invalidation + Gate 1a test rigor
gsd: close depth-verification gate workflow regressions
gsd: resolve plan-slice artifacts case-insensitively
gsd: guard onTurnResult phaseResults access with Array.isArray
gsd: address PR5266 review — trace correlation, cleanup-on-throw, audit context reset
gsd: continue deep queued milestones
gsd: bind task commits to milestone completion guard
gsd: keep project save success if registration fails
mcp-server: Windows path-sep test regex + gate gsd_exec writes
gsd: register deep project milestones
gsd: use homedir() fallback in currentDirectoryRoot for cross-platform consistencyChanged
auto: dedupe pauseAuto callback signature
Original source
gsd-extension: introduce auto orchestration seams and contracts
prefs: rename KNOWN_UNIT_TYPES → KNOWN_UNIT_LABELS in preferences-types
sync package-lock.json (add @emnapi/runtime)
sync package-lock.json (add @emnapi/runtime) - May 3, 2026
- Date parsed from source:May 3, 2026
- First seen by Releasebot:May 8, 2026
v2.79.0
GSD 2 adds DB-backed coordination, stronger workspace and worktree safety, deeper planning and review flows, expanded /gsd commands, and broader MCP and model-routing improvements. It also hardens recovery, locking, and cross-platform behavior across the agent stack.
Added
gsd: DB-backed auto-mode coordination tables (workers, leases, dispatches, command queue)
workspace: introduce GsdWorkspace and MilestoneScope handle types
dispatch: annotate dispatch actions with delegation-policy verdict
delegation: codify per-tool background-safety policy
discuss: scale questioning depth via project shape classifier
headless: add gsd headless recover for non-TTY DB recovery
gsd: doctor flags exhausted run-uat retry counters
gsd: emit pre-ship soft warning on EVAL-REVIEW status
gsd: register /gsd eval-review in catalog and ops dispatcher
gsd: add /gsd eval-review command handler
gsd: add EVAL-REVIEW frontmatter schema module
gsd: add artifact validators for Phase 11 deep mode
gsd: add /gsd new-project and --deep flag for Phase 11
gsd: add research-decision and research-project dispatch units (Phase 11)
gsd: add deep planning mode dispatch units (Phase 11)
gsd: add worktree {list,merge,clean,remove} commands to TUI dispatcher
unit-manifest: introduce planning-dispatch mode for slice plan/complete
auto-prompts: surface manifest skills via recommendations + auto-match
auto-dispatch: default reactive-execute on at >=3 ready tasks
subagent: add dispatch telemetry and stronger prompt guidelines
ollama: configurable probe/request timeouts via env vars
pi-coding-agent: opt-in per-call token telemetry (#5023)
auto: proactive rate limiting via min_request_interval_ms (#2996)
gsd: add doctor check for orphan milestone directories (#4996)
mcp-client: read global MCP config from ~/.gsd/mcp.json
gsd: runtime tools-policy enforcement for planning units (#4934)
gsd: add disabled model provider routing denylist
model-routing: cross-provider tier resolution and provider-agnostic profile defaultsFixed
gsd: preserve policy-block pause through dispatch errors
gsd: surface DB-backed stale lock in doctor
gsd: canonicalize deriveState read root and cache key for symlinked worktrees
gsd: persist skip-validation state and clear gate rows on recover
gsd: drop false plain-text claim from cancelled-gate hard block
gsd: redirect cancelled-gate hard block to ask_user_questions
tests: finalize write-gate basePath threading and workspace mock typing
metrics: correct logWarning component in saveLedger fallback
paths: canonicalize gsdRoot result before caching
auto-worktree: validate milestoneId match in ByScope wrappers
workspace: canonicalize base before resolving contract
metrics: invalidate scoped ledger cache after prune
metrics: abort saveLedger when lock not acquired
gsd-db: restore previous connection on openDatabase failure
db-writer: replace startsWith path containment with path.relative
tests: thread basePath through write-gate calls in pre-existing tests
auto-worktree: broaden teardown try/finally to cover chdir
guided-flow: correct Gate 1b escalation message and counter increment ordering
worktree-resolver: use isSamePath instead of string ==/!= for originalBase
auto: warn on resume when persisted worktree is missing
metrics: stale-lock detection + PID stamp + async yield
db-writer: guard saveArtifactToDb root-artifact path
auto-worktree: guarantee activeWorkspace cleared on teardown failure
workspace: unify path normalization on realpathSync.native
guided-flow: bound Gate 1b recovery with retry counter
auto-worktree: mirror cleanup steps in teardownAutoWorktree abort path
guided-flow: discriminate plan-blocked from discuss-incomplete in Gate 1b
write-gate: require basePath; remove process.cwd() defaults
paths: normalize gsdRootCache keys and invalidate via clearPathCache
metrics: atomic merge for parallel-mode metrics.json writes
paths: guard git-root anchor against ~/.gsd resolution
mcp: preserve multi-select array shape and explicit cancellation
mcp: normalize remote ask_user_questions answers into structuredContent
mcp: attach structuredContent to ask_user_questions results
guided-flow: bust path cache before ready-signal validation
tests: live-regression — recover from markdown before headless query
gsd: address db-authoritative review findings
gsd: disable implicit markdown runtime fallback
gsd: complete db-authoritative state contract
gsd: preserve worktree isolation in /gsd handlers + harden MCP cwd
gsd: defer empty-turn nudge on mid-line approval prompts
gsd: refuse project writes when run from $HOME
gsd: allow user gsd integration branches
gsd: honor skip git during init
gsd: sanitize generated commit subjects
github-sync: defer slice prs until completion
vscode: scope agent diff to tracked files
vscode: register checkpoint tree view
vscode: restore checkpoint file existence
vscode: track rpc file mutation events
core: protect bundled gsd slash command
gsd: scope task commits to reported files
gsd: block startup on git index lock
gsd: avoid pushing pr base before draft pr
github-sync: avoid closing issues before delivery
github-sync: keep failed task closure retryable
github-sync: keep slice pr sync retryable
github-sync: use safe git environment
github-sync: scope config cache by project
gsd: use actual branch in worktree cli
gsd: run hooks for automated commits
gsd: block on post-unit git failures
gsd: detect auto worktree by supplied path
gsd: surface branch deletion failures
gsd: validate worktree start branch preference
gsd: detect default branch during init
gsd: preserve current milestone artifacts after merge
gsd: advance checked-out slice worktrees safely
gsd: use integration branch for slice cadence
gsd: preserve dirty worktree state on merge
gsd: per-record advisory lock for unit runtime writes
gsd: self-heal missing workflow_prefs_captured flag
gsd: stop deep setup gate from hijacking executing phases
gsd: atomicize runtime artifact writes
gsd: short-circuit bare /gsd next-action prompt when no UI
gsd: make summary save schema OpenAI-compatible
resources: resync nested compiled extension drift
gsd: reduce duplicate planning noise
gsd: keep planning depth project-local
gsd: align milestone artifact path resolution
native: fall back when stream processor is missing
gsd: keep bare command in smart entry
ci: mirror package dist for Windows tests
mcp-server: resolve Windows Path env lookup
mcp-server: use Windows-safe env CLI shims
mcp-server: address secure env and cache review
mcp-server: unblock test build, sync server version, surface auth failures, propagate cancellation
mcp-server: harden security across workflow handlers, env writer, and session lookup
mcp-server: use compiled imports in dist-test
gsd: cap claude-code context budgeting
mcp-server: try host elicitation before remote channel for ask_user_questions
prefer source workflow modules in mcp tools
keep requirements db as source of truth
harden deep requirements workflow
gsd: rederive zero-slice plan v2 graphs
gsd: prefer nearest bootstrapped project root
gsd: keep deep new-project rooted in cwd
gsd: gate workflow mcp questions safely
gsd: require verified deep approval gates
gsd: keep deep approval gates in chat
gsd: pause milestone approval questions
gsd: bootstrap deep setup git head
gsd: close deep planning audit gaps
gsd: harden deep planning plan gates
gsd: avoid aborting discovery questions
gsd: avoid approval abort on grounding questions
gsd: avoid aborting opening deep interview question
gsd: keep approval question text visible on external CLI
gsd: rederive state on empty plan graph
resolve slice isolation from project root
route slice merge isolation through resolver
gsd: skip worktree isolation before first commit
gsd: avoid worktree setup before initial commit
gsd: keep sqlite fallback optional
gsd: make deep project research opt-in
gsd: auto-skip stale tiny app research blockers
gsd: gate plain-text setup approvals
gsd: cap project research for tiny apps
gsd: pause deep setup on approval questions
gsd: guard deep project dispatch state
gsd: three CodeRabbit findings on eval-review prompt and budgeting
gsd: bound eval-review reads to cap and surface AI-SPEC errors
gsd: clean legacy deep setup milestone dirs
gsd: allow root summary saves over workflow mcp
gsd: preserve dev CLI entrypoint for subagents
gsd: three CodeRabbit findings — control flow, marker budget, Windows test
gsd: handle UTF-8 multi-byte chars at the truncation boundary
gsd: clamp computeOverallScore to MIN_SCORE..MAX_SCORE
gsd: align deep research dispatch policy
gsd: degrade AI-SPEC.md read failure to a marker instead of throwing
gsd: stabilize deep new-project workflow
gsd: include eval-review in /gsd help full output
tool-bootstrap: skip provisioning on Windows when tools are on PATH
gsd: wire planning_depth through the prefs load pipeline
cross-platform: consolidate .gsd path resolution into gsdHome()
gsd: wire deep-mode kickoff into showSmartEntry
gsd: block deep research while marker is in flight
gsd: tighten deep planning review contracts
gsd: resolve deep planning review issues
gsd: allow review-tier subagent dispatch from validate-milestone
gsd: address deep planning review feedback
claude-code-cli: persist Always Allow for non-Bash tools
gsd: empty-turn nudge no longer auto-replies to user questions
gsd: address audit findings on deep planning mode (B1, B2, I1-I8)
agent-session: skip idle wait after agent_end
agent-session: guard synthetic agent_end transitions
gsd: preserve auto session handoff in terminals
gsd: anchor cwd without cwd guard
gsd: anchor cwd at project root in mergeAndExit (closes #5079)
gsd: dispatch new debug sessions
gsd: harden worktree dispatch cwd handling
gsd: stop dispatch on cwd anchor failures
use ?? consistently for modelOverride, add filePath to test helper
gsd: anchor subagent dispatch to canonical worktree path
gsd: harden worktree dirty handling
safety: persist bash evidence at tool_call to close mid-unit re-dispatch race (#5056)
clarify worktree clean retention reasons
clarify worktree merge cleanup failures
gsd: preserve inspected empty subagent inputs
gsd: normalize auto worktree loop roots
gate planning subagent dispatch
gsd: normalize worktree project roots
gsd: restore prompt contract CI
ollama: clamp timeout env timer values
ollama: correct context window for cloud / long-variant models
extensions: drop semver dep, replace with inline isVersionGreater
windows: avoid DEP0190 in Claude CLI binary probes
gsd: normalize self-merge ref guard
gsd: guard milestone message scan
gsd: refuse self-merge when integration branch == milestone branch (#5024)
gsd: bind milestone-tagged commits when .gsd/ is gitignored (#5033)
gsd: run slice workers through headless auto
gsd: resolve home directory correctly on Windows (#5015)
startup: address PR review feedback
pi-coding-agent,gsd: preserve Anthropic prompt cache (#5019)
gsd: classify stream internal errors as transient
gsd: preserve infrastructure git add failures
auto: stamp request interval at dispatch
web: guard shutdown gate process handlers
web: keep shutdown gate out of middleware runtime
web: prevent boot/shutdown phantom race (#4950)
web: block new work in middleware during pending shutdown (#4950)
web: drain SSE streams on shutdown (#4950)
tui: preserve pasted images on regular submit
report orphan milestone dirs without db
gsd: surface real SQL errors from capture_thought instead of swallowing
harden milestone id reservation
include db rows in milestone id reservation
model-routing: normalize resolved tier model IDs
gsd: defer milestone dir creation until first artifact write (#4996)
gsd: reuse ghost milestone IDs in nextMilestoneId to close gap (#4996)
gsd: guard ensurePreconditions against phantom milestone IDs (#4996)
pi-ai: repair dangling xml tool parameters
gsd: enforce manifest tool policy docs
gsd: point orphan branch hint to doctor fix
gsd: preserve disabled model providers in effective prefs
model-routing: document provider-agnostic profile tiers
gsd: cover full help command list
model-routing: address PR #3115 review — implement findModelForTier, behavioral tests, threading
extension-sdk: repair broken pi-ui-tui doc paths and restore dropped hint branches
subagent: seed result model from effective override, not agent default
subagent: thread model override through subagent spawning
remove ADR/PRD docs from PR #4935 (unrelated to test fix)
web: report terminal creation failures
gsd: checkpoint planning slices without active tasks
gsd: checkpoint all session phases during compaction, not just executing (#4258)
extension-sdk: correct broken link, wrong import, and invalid method in rules
ci: resolve docs-check and lint failures
gsd: guard worktree creation against repos with no commits
gsd: add 12 missing commands to /gsd help menuChanged
gsd: migrate auto.lock + paused-session.json to DB-backed coordination (Phase C pt 2)
Original source
gsd: canonicalize auto-mode writers + delete copyPlanningArtifacts/reconcile + migrate stuck-state to DB
metrics: sleep between lock acquire retries
paths: decouple gsdRootCache from per-turn clearPathCache
auto-worktree: replace originalBase singleton with workspace registry
gsd-db: scope DB connection by workspace identity
metrics: replace module singleton with explicit workspace
db-writer: route saveArtifactToDb through workspace contract
auto-worktree: sync layer takes explicit workspace pair
guided-flow: validators take MilestoneScope
auto: thread MilestoneScope through session state
guided-flow: pin MilestoneScope at discuss reservation time
prefer canonical tool names over aliases in prompts and prose
gsd: make db state authoritative
remove auto-loop.ts barrel, import from ./auto/* directly
prompts: delete superseded guided-.md files
route guided-flow.ts callers to auto-prompts builders
prompts: backport guided doctrine into auto-.md
mcp-server: remove copyright headers
mcp-server: cache .gsd path resolution and milestone/slice walks
web: pin postcss dependency
web: migrate proxy convention and refresh audits
gsd: strip PR/issue references from eval-review code comments
gsd: drop "Phase 11" from deep-planning-mode code
gsd: expose 11 previously-invisible bundled skills to system prompt
welcome-screen: surface MCP server count in banner, suppress google_search deprecation
gsd: migrate remaining files to getHomeDir() + harden forensics redaction
mcp-server: instrument 11 gsd_* alias tools with usage telemetry (#5031)
pi-ai: cache breakpoint after compaction summary boundary (#5027)
remove copyright headers from startup changes
startup: reduce GSD launch overhead
ci: retry transient macOS RTK check
mcp-client: surface $GSD_HOME in user copy + add collision test - Apr 25, 2026
- Date parsed from source:Apr 25, 2026
- First seen by Releasebot:May 8, 2026
v2.78.1
GSD 2 fixes claude-code-cli candidate iteration and restores Claude subscription detection on Windows.
Fixed
claude-code-cli: catch-all candidate iteration + auth-status fallback
Original source
claude-code-cli: restore Claude subscription detection on Windows - Apr 25, 2026
- Date parsed from source:Apr 25, 2026
- First seen by Releasebot:May 8, 2026
v2.78.0
GSD 2 releases a broad platform update with stronger workflow automation, safer recovery and state handling, new extension management, richer TUI and headless tooling, and added GPT-5.5 Codex and Claude Code support across the component system.
Added
- workflow: close single-writer-v3 control plane gaps
- auto: UnitContextManifest tools-policy field — declarative-only (#4934)
- auto: UnitContextManifest v2 contract — typed computed artifacts (#4924)
- auto: migrate complete-slice through composer — #4782 phase 3 batch 3
- auto: migrate research-milestone through composer — #4782 phase 3 batch 2
- auto: migrate run-uat through composer — #4782 phase 3 batch 1
- auto: compose reassess-roadmap context from manifest — #4782 phase 2
- auto: wire pipeline variant into dispatch — phase 2 of #4781
- auto: milestone scope classifier — phase 1 of #4781
- auto: UnitContextManifest schema + data + CI guard — phase 1 of #4782
- claude-code: add permission granularity picker for Always Allow
- pi-coding-agent: add skillFilter option to buildSystemPrompt
- gsd: narrow component system foundation
- gsd: add uok swarm contract foundation
- gsd: add GPT-5.5 Codex model support
- pi-coding-agent: show auth mode alongside providers in /model
- 10-02: replace google-search source with deprecation stub
- 10-01: add validateExtensionPackage function and validate subcommand
- 10-01: create extracted @gsd-extensions/google-search workspace package
- 09-02: wire sortExtensionPaths into loader and initialize warnings
- 09-02: add ExtensionLoadWarning type and warnings[] to LoadExtensionsResult
- 09-01: implement extension topological sort using Kahn's algorithm
- 08-03: add update subcommand and enhance list/info with user metadata
- 08-03: add uninstall subcommand with dependency warnings
- 08-02: add extensions install subcommand for npm, git, and local sources
- 08-01: thread mergeExtensionEntryPaths into loader and add tests
- 08-01: extend registry schema and add mergeExtensionEntryPaths
- 07-01: create extension-validator.ts with validation functions and types
- 06-02: replace cmux->gsd imports with local structural types and event subscriptions (DECOUPLE-03)
- 06-02: replace gsd->cmux static imports with event emitters and dynamic imports (DECOUPLE-02)
- 06-01: create cmux-events.ts shared event contract module
- pr-risk: enhance verification prompt with copy-pasteable code block
- visual postinstall with spinner/banner UX (#4641)
- wire component system into runtime — skills, agents, telemetry, dispatch
- unified component system — skills, agents, pipelines, marketplace
Fixed
- gsd: match canonical tool-block types in empty-turn recovery
- test: use real temp basePath in dispatch-rule depth-mark test
- gsd: harden git process recovery
- git: clarify TOCTOU ancestry guard and throttle slice persist
- git: harden stash and slice recovery safety
- git: repair integration regressions in safety audit
- gsd: derive milestone title from summary
- git: stash working tree before reset --hard in self-heal and rollback
- git: detect and abort rebase/cherry-pick/revert state in recovery
- git: force-reset ancestry guard, detached-HEAD refusal, stash-by-ref
- git: guard worktree create against unborn branch, force-reset orphans, and shared stash
- git: persist slice orchestrator state for crash recovery
- git: tokenize prefs.pre_merge_check before invocation
- git: atomic acquire and PID-verified stale override in sync-lock
- git: require .git/index.lock to be 5min old before force-removing
- git: strip GIT_DIR/GIT_WORK_TREE/GIT_INDEX_FILE from env overlay
- auto: harden state-machine edge cases
- git: run user hooks and honor commit.gpgsign on auto-commits
- auto: gate restoreToolBaseline by isAutoMode so guided-flow dispatches don't resurrect auto baseline (#4966)
- auto: codex review feedback (#4973)
- auto: classify deterministic policy errors as non-retriable (#4973)
- auto: bypass depth-verification gate in non-interactive sessions (#4973)
- gsd: make pre-exec failure notification actionable
- auto: clear verification retry count on success; remove dead state-rebuild constant
- tui: harden image-paste handling — reviewer feedback
- pi-ai: expose xhigh for gpt-5.5 custom models
- auto: stop using active-tool snapshot as model-policy gate; restore baseline between units (#4961)
- gsd: avoid write-gate snapshot temp collisions
- gsd: fail-closed depth confirmation when options missing (#4950)
- gsd: handle EXDEV in write-gate snapshot rename (#4950)
- uok: catch exceptions in gate.execute (#4950)
- gsd: default write-gate persistence to opt-out (#4950)
- uok: correct maxAttempts off-by-one (#4950)
- uok: emit audit + DB row for unknown gate id (#4950)
- headless: wire 'gsd headless doctor' so live-regression passes
- auto: #4926 review — single-source unitType across composer dispatch (#4924)
- auto: #4926 CI — dispatch through widened registry view (#4924)
- auto: #4925 review — knowledge splice header, UAT in-memory snapshot, test coverage
- auto: cap excerpt section bodies at 800 chars (coderabbit, #4780)
- auto: address coderabbit review on classifier (#4781)
- gsd: expose GPT-5.5 API model entry
- pi-coding-agent: guard skillFilter against consumer exceptions
- gsd: avoid complete-milestone self-diff failure
- skills: explicit user preferences bypass unit-type manifest
- native: collect every test file, install regression guard (Closes #4814) (#4855)
- install: surface err.cause in RTK fetch-failure log (#4852) (#4853)
- resource-loader: use content hash instead of path+size for prompt refresh (#4787) (#4819)
- gsd: harden component loader validation
- knowledge: scope + budget milestone KNOWLEDGE injection (#4721)
- pi-coding-agent: prettify TUI tool-call headers and compact args
- gsd: align headless milestone bootstrap with interactive flow
- gsd: route missing context through auto recovery
- gsd: recover stuck auto-mode when execution-entry phase lacks CONTEXT.md (#4671)
- mcp-server: surface plan_milestone sketch/full slice requirement in tool schema
- state: restore slice dependency fallback
- gsd: flush dirListCache at agent_end before artifact checks (#4648)
- auto: address peer review state hardening
- state: fail closed on unreadable milestone summaries
- auto: persist workflow retry and summary state
- auto: harden workflow state transitions
- tui: expire stale escape prefixes
- google-search: correct deprecation stub message
- agent-core: type restored session model
- security: harden project-controlled surfaces
- tui: expire stale escape prefixes
- provider: wire anthropic claude-code migration
- vscode: handle sidebar action commands
- web: surface terminal input failures
- auto: clear resolver on provider cancellation
- cli: forward model override to auto headless
- agent-core: restore keyless session models
- mcp-server: prevent defaultExecFn stdout-buffer deadlock
- claude-code-cli,mcp-server,mcp-client: globally unblock tools & close silent-failure gaps
- claude-code: restore Windows provider readiness and SDK executable resolution
- milestone-actions: assert not-auto-active at writer boundary (#4712)
- workflow: guard all durable-state interactive commands against auto-mode (#4712)
- auto-worktree: preserve milestone shelter when restore fails
- gsd: move turn-epoch bump from recoverTimedOutUnit entry to advance-only sites
- gsd: turn-epoch guard for timeout-recovery stale writes
- pi-coding-agent: retry after cancelled overflow compaction (#4030)
- gsd: honour require_slice_discussion in auto-mode dispatch (#3559)
- gsd: park milestone when rewrite-docs resolves abandon override (#3568)
- gsd: remove legacy ~/.gsd/agent/skills path from system prompt (#3657)
- gsd: idempotent shelter restore + await memory extraction
- gsd: atomic writes + lock-wrapped appends for .gsd/ state
- gsd: make file-lock actually lock and throw on contention
- auto-worktree: release gsd.db handles before pre-merge stash on Windows (#4704)
- runtime: classify .gsd/audit/ as runtime state (#4704)
- workflow: guard /gsd queue against auto-mode (#4704)
- validate: also flag @gsd/* in devDependencies, not just dependencies
- test pipeline: include extensions/* in dist-test compilation
- google-search stub: correct manifest to reflect deprecation
- extensions/google-search: restore Cloud Code Assist OAuth wire format
- tests: use process.cwd() for google-search package validation test
- tests: restore google-search package validation test
- tests: remove obsolete google-search tests after ADR-006 extraction
- ADR-006 revival: peer review round 2
- ADR-006 revival: address peer review findings
- loader: use package-local extension graph helpers
- 09-01: guard against non-array dependencies.extensions in sort
- 06-02: explicit arrow param types for handleLostSessionLock + CmuxStateInput for cmux tests
- 06-01: remove gsd/paths.js import from rtk-session-stats.ts (DECOUPLE-01)
- compaction: prevent silent chunk-drop and empty-summary writes (#4665 follow-up)
- compaction: prevent degenerate summaries by fixing chunker/truncation mismatch (#4665)
- deps: patch 3 transitive vulnerabilities via npm audit fix
- claude-code-cli: headless auto-mode permission default to bypassPermissions (#4657)
- gsd: require DB status or success SUMMARY for milestone skip (#4663)
- remove optional sequence properties from insertSlice/insertMilestone test calls
- gsd: fail closed on complete-milestone summary/db mismatch
- web: deep-sync settings onboarding and state surfaces
- web: sync token profile support with latest prefs
- gsd: expand pre-execution check notification with details + evidence path (#4259)
- resolve CI typecheck errors in component-loader and skill-discovery
- gsd: cap artifact-verification retries and fix stuck detection bypass
- tui: intercept image file paths from terminal emulator paste
- tui: show [Image #N] placeholder instead of file path when pasting images
Changed
- add npm run verify:pr to mirror CI build job locally (#4979)
- uok: derive retry ceiling from RETRY_MATRIX (#4950)
- gsd: tighten GateVerdict union, drop empty-string fallback (#4950)
- gsd: canonicalize omitted gate state on status=complete (#4950)
- auto: lazy-load slice summaries in complete-milestone (#4780)
- skills: expand skill manifest wirings to remaining unit types
- gsd: extract decideSurvivorAction + rewrite survivor-branch-complete as behaviour tests (Closes #4832) (#4859)
- skills: keep manifest PR scoped
- auto: execute ADR-003 §4 — reassess-roadmap is opt-in (#4778)
- skills: add per-unit-type skill manifest resolver (#4779)
- auto: gate reassess-roadmap dispatch behind skip_clean_reassess preference (#4778)
- pi-coding-agent: always prefer toolDefinition.label when provided
- ci: retrigger pr checks
- untrack repowise.db local cache
- 06-02: register cmux-events before hooks (defensive ordering)
- 08: add @types/semver for commands-extensions.ts
- 06-03: remove 4 misplaced deps from root package.json (DECOUPLE-04, DECOUPLE-05, DECOUPLE-06)
- workspace: gsd.linkable manifest — single source of truth + CI coverage gate (#4680)
- Apr 21, 2026
- Date parsed from source:Apr 21, 2026
- First seen by Releasebot:May 8, 2026
v2.77.0
GSD 2 adds dynamic verification checklists, new memory tools and a memories-table source of truth, with context mode now on by default and sandboxed tool-output execution. It also brings workflow, MCP, UI, and safety improvements across the platform.
Added
- ci: dynamic system-specific verification checklists in pr-risk-check
- gsd-exec: add clean-root preflight gate + auto-stash to milestone completion (#4604)
- prefs: expose all KNOWN_PREFERENCE_KEYS through /gsd prefs wizard
- gsd: default context_mode to ON (opt-out via enabled:false)
- gsd: add gsd_exec_search, gsd_resume, and compaction snapshot (slice 2)
- gsd: add gsd_exec sandboxed tool-output execution (context-mode slice 1)
- tui: render skill invocations in purple chat-frame style
- add Layer 0 shell hooks + new Layer 2 events
- skills: add 9 gap-closing skills for GSD workflow coverage
- gsd: cutover to memories table as single source of truth (ADR-013 step 6)
- gsd: backfill decisions table into memories (ADR-013 step 5)
- gsd: memory-store auto-injection parity (ADR-013 step 4)
- skills: bundle 6 planning/design skills and surface hidden ones
- mcp: expose memory tools to external clients (ADR-013 step 3)
- gsd: add structured_fields column to memories table (ADR-013 step 2)
- gsd: wire new memory tools across agents and extract-learnings (Option A' dual-write)
- Fixed
- gsd-db: writeBlockerPlaceholder DB update for plan-milestone + saveStuckState in standard path (#4634)
- gsd: add .mcp.json to ensureGitignore baseline
- worktree-resolver: re-throw all errors, not just MergeConflictError (#4633)
- run-unit: discard late-resolving newSession() after timeout to prevent root cwd tool runtime (#4632)
- auto-resume: use existing milestone worktree as dispatch context during crash recovery (#4628)
- gsd-db: prevent milestone status downgrade in reconcileWorktreeDb (#4372) (#4625)
- mcp-server: gsd_cancel falls back to milestone/process lookup for sessions without sessionId (#4618)
- worktree: prevent double-nested artifact paths when constructing paths inside worktree context (#4635)
- gsd-db: stamp SCHEMA_VERSION=21 inside v21 migration block (#4627)
- gsd-db: move memories.scope index creation inside v18 migration guard (#4630)
- auto-start: await showSmartEntry dispatch before checking milestone context in bootstrapAutoSession (#4631)
- register-hooks: pass toolName from tool_execution_start event to markToolStart (#4626)
- gsd-exec: derive artifact paths from meta file location, not JSON content (#4619)
- pre-execution-checks: strip backtick/quote annotation from input/output values before path check (#4623)
- dispatcher: guard SUMMARY.md write with existence check on re-dispatch (#4598) (#4622)
- ci: wrap agent prompt as numbered list in GitHub PR summary
- gsd: add doctor heal suggestion to plan gate failed error
- pi-coding-agent: apply redaction before file entry serialization in _rewriteFile() (#4617)
- welcome-screen: truncate Active row text to prevent terminal overflow
- gsd: handle worktree context fallback and sanitize paused session paths
- gsd: resolve three safety harness false-positive sources (#4576)
- gsd-exec: inject pre-exec gate failure context into re-dispatched plan-slice prompt (#4603)
- pi-ai: ensure tool function names non-empty for MiniMax (#4538) (#4602)
- mcp: add 10-minute timeout to ask_user_questions and secure_env_collect elicitation (#4597)
- db: repair invalid quality_gates DDL and add artifact-retry journal event (#4583)
- skills: quote descriptions containing colon-space in YAML frontmatter (#4595)
- auto-worktree: reorder shelter-before-stash and drop stash pathspec (#4600)
- safety: add file_change_allowlist to suppress false-positive unexpected-change warnings (#4596)
- gsd: parallel-research timeout no longer causes infinite dispatch loop (#4570)
- skills: quote SKILL.md description values containing ': '
- auto: pre-check provider request-readiness before unit dispatch (#4578)
- gsd: exempt completed-task outputs from ordering checks (#4071) (#4572)
- pi-ai: cap tool count at 128 for Groq provider (fixes #4376) (#4575)
- gsd: use cl100k_base encoding and provider-aware fallback in token counter (#4569)
- gsd: clear HARD BLOCK when write-gate state file is deleted (#4343) (#4577)
- gsd-extension: default permission mode to acceptEdits to prevent silent tool denial (#4383) (#4584)
- gsd-extension: wire tryRemoteQuestions into MCP ask_user_questions handler (#4585)
- model-routing: remove 32k cap for custom models and allow capabilities.supportsXhigh in models.json (#4587)
- tests: mark context_mode as exposed-outside-wizard
- gsd: update #3628 regression test anchor for multiple triggerTurn sites
- health-widget: guard requestRender after widget disposal
- auto: keep footer identical between normal and auto mode
- model-routing: probe claude.exe on Windows and guard OAuth routing for externalCli providers
- gsd: recover silent 'ready' signals and empty-intent turns in discuss flow
- pre-execution-checks: require import keyword before from-clause to prevent prose false positives (#4561)
- error-classifier: classify stream idle timeout and context overflow as transient (#4559)
- key-manager: add claude-code as first-class LLM provider in PROVIDER_REGISTRY
- gsd-exec: address adversarial review findings
- gsd: preserve slice parallel preferences
- gsd: strip stray backticks from annotated inputs
- gsd-exec: fix five code-review findings
- workflow-logger: add context-mode to LogComponent union
- pi-agent-core: cover sk-proj- and sk-admin- OpenAI key shapes
- db: guard idx_memories_scope on legacy schema (#4545)
- gsd: migrate legacy db before bootstrap indexes
- pi-agent-core: redact known secret shapes before persisting session log
- gsd: classify extra usage errors as rate limits
- gsd: load preferences from auto-start base path
- mcp: address CodeRabbit round-2 review on #4477 — 3 findings + regression test
- db: address review findings — closeDatabase resets unconditionally; add getDbStatus tests
- db: surface structured error on SQLite open failure; add open-time provider fallback
- file-change-validator: handle repos with single commit (no HEAD~1)
- resource-loader: sync bundled skills to ~/.agents/skills/ on launch
- init-wizard: create initial commit after git init (#4530)
- models: discover openai-compatible custom providers and parse think tags
- gsd: classify complete-slice as standard for routing
- gsd: preserve session model/thinking in auto mode
- mcp: address review feedback on #4477 — 4 bugs from Jeremy + CodeRabbit
- mcp: address CodeRabbit nitpicks on #4477
- mcp: rename details to structuredContent across MCP handlers
- gsd: classify complete-slice as standard for routing
- gsd: preserve session model/thinking in auto mode
- gsd: prefer valid user-local templates dir in prompt loader
- install: link @gsd-build/mcp-server workspace package
- search: narrow native web_search injection to providers that accept it
- gsd: preserve transient session-start reason
- blocklist account-unsupported models across auto restarts (#4513)
- gsd: pin explicit phase models
- gsd: pause transient session-start failures
- pi-ai: honor bearer auth for custom providers
- ci: address review findings and cross-platform hook tests
- ci: export hook event types and wire emitExtensionEvent in GSD wrapper
- gsd: return blocked instead of validating-milestone on stuck needs-remediation (#4506)
- gsd: bump remaining schema-version assertions to 21 after main merge
- gsd: second-round inline review fixes for ADR-013 migration
- gsd: honor models.json keys in provider doctor
- gsd: peer-review fixes for ADR-013 migration + CI failures
- skills: address PR 4505 inline review findings
- claude-code: preserve win32 claude.cmd selector in readiness check
- claude-code: fallback to claude shim when claude.cmd spawn fails on Windows
- gsd: detect Claude CLI on Windows PATH for provider doctor (#4503)
- gsd: migrate legacy db before bootstrap indexes
- gsd: require terminal milestone for doctor cleanup
- serialize saveDecisionToDb with async mutex to prevent file race condition
- prevent race condition in parallel decision saves
Changed
- skills: rename 4 skills to match GSD naming conventions
- consolidate OAuth provider tests into individual files and remove legacy test suite
- use regex patterns in .secretscanignore for OAuth credentials
- allowlist public Google OAuth credentials in secret scanner
- remove base64 obfuscation from Google OAuth credentials
- Apr 19, 2026
- Date parsed from source:Apr 19, 2026
- First seen by Releasebot:May 8, 2026
v2.76.0
GSD 2 ships memory management, onboarding fixes, a new debug session store, improved workflow routing, richer model support, and broader CLI and TUI updates across web, remote, and agent tooling.
Added
gsd: memory maintenance \u2014 cap cascade, decay observability, export/import (Phase 5)
gsd: memory relationships / knowledge graph (Phase 4)
gsd: hybrid keyword + semantic memory retrieval (Phase 3)
gsd: memory ingestion + scope/tags (Phase 2)
gsd: memory tools — capture_thought, memory_query, gsd_graph (Phase 1)
web: surface CLI onboarding completion record in settings
gsd: /gsd onboarding re-entry + setup hub disambiguation
tui: refresh chat, footer, and welcome screen
models: add gpt-5.4-mini to openai-codex list (#1215)
gsd: ADR-011 Phase 2 mid-execution escalation (#3789)
gsd: ADR-011 Phase 1 progressive planning (sketch-then-refine) (#3789)
routing: add allow_flat_rate_providers opt-in (#4386)
workflow: unified plugin system with modes and remote install
pi-ai: add claude-opus-4-7 for Bedrock, Antigravity and OpenRouter (#4348)
pi-ai: add claude-opus-4-7 model support
remote: add Telegram command interface for auto-mode control
theme: add tui-classic and web classic/vivid palettes (#4301)
Added /gsd debug GitBook and Mintlify feature pages, wired both…
Added specialistContext to debug-session-manager template and wir…
Wired checkpoint and TDD gate logic into the continue handler: di…
Extended session artifact with DebugCheckpoint/DebugTddGate inter…
Wired diagnose-only and continue flows to prompt dispatch with ex…
Implemented a V2 debug session store with atomic JSON persistence…
gsd: add /gsd scan command for rapid codebase assessment
pi-ai: support ANTHROPIC_BASE_URL env var for custom proxy endpoints (#4140)
ask-user-questions: add optional markdown preview panel with side-by-side layout
Fixed
extensions: widen emitBeforeProviderRequest model param with api
search: gate native web_search on api shape, not provider ID (#4478)
mcp: extend non-empty validation across all schema-loose/executor-strict tools
mcp: reject empty slice fields in gsd_plan_milestone at schema layer
gsd: normalize doctor worktree cwd paths
gsd: skip dashboard git log outside repos
gsd: handle symlinked gsd stash pathspec
pi-coding-agent: preserve subagent tool list when --tools uses casing or extension names
mcp: address peer review — narrow realpath catch, guard prefs throw, document queue race
mcp: schema parity, guard hardening, queue timeout, session eviction (#4475)
gsd: register memory-* LogComponent variants
gsd: thread modelRegistry and sessionContextWindow through dispatch (#4142)
gsd: /gsd onboarding no longer hangs the TUI on re-entry
gsd: address #4468 CodeRabbit review — mention same-task outputs in blocking message
gsd: exempt task's own output from pre-exec input check (#4459)
gsd: address #4463 CodeRabbit review — preserve error text, guard DB, test 'done'
onboarding: suppress duplicate intro banner on /gsd onboarding re-entry
gsd: preserve dynamic routing provider prefixes
gsd: resolve onboarding wizard module from deployed package root
gsd: wrap notifications with column-aware wrapper (#4465)
gsd: cascade skipped-slice status to its tasks (#4375)
gsd: forbid drafting tests that reference gitignored paths
gsd: address #4456 nitpicks — thread pi to setup hub, dedupe + O(1) step lookup
gsd: honor 'not_yet' defer + use basePath for prefs path (#4457 review)
gsd: promote CONTEXT-DRAFT.md in gsd_summary_save tool path
gsd: use workflow-logger in onboarding-state catch (silent-catch test)
gsd: respect resources rootDir in onboarding handler + state
gsd: re-normalize separators after tilde expansion in normalizeFilePath
gsd: pre-exec checks false-positive on directory inputs and ~/ paths
gsd: confirm projection file exists before reporting success
gsd: address CodeRabbit review on #4402 roadmap fix
gsd: preserve ROADMAP.md sections after projection hook
tui: CI green + apply review findings
remote-questions: normalize remote answers to RoundResult shape
gsd: reactivate deferred slice on plan-slice
gsd: block code-extension fallback for non-JS explicit imports
gsd: resolve asset imports in post-execution checks (#4411)
tui: skip pinned Latest Output when text still on-screen (#4440)
gsd: honour git.snapshots preference in doctor snapshot paths (#4420)
ci: make version-check workflow parse cleanly + harden to issues-only
gsd: cap dep summaries + scale preamble to context_window (#4435)
ci: move @next dist-tag when version already published
gsd: use path.relative() for LEARNINGS.md relative path (#4433 review)
gsd: wire /gsd extract-learnings into the cross-session knowledge workflow (#4429)
gsd: normalize python commands with leading whitespace (#4416)
gsd: rewrite full 'py -N' token in normalizePythonCommand (#4416)
gsd-db: add gsd_checkpoint_db tool to flush WAL during active session
gsd: heal .gsd.migrating on resume path in startAuto (#4416)
gsd: normalize python invocations on Windows in verification gate (#4416)
gsd: remove hardcoded rg guidance from planning prompt fallback (#4416)
gsd: self-heal symlinked .gsd staging to prevent silent data loss (#4423)
gsd: pre-exec checks false-positive on URL and prose-annotated inputs (#4421)
gsd: flip uok.gitops.turn_action default to "commit" (#4419)
claude-code-cli: extract test bodies to documented functions
claude-code-cli: address CodeRabbit review on #4425
claude-code-cli: detect Windows .cmd shim in CLI readiness checks
gsd: auto-mode stuck loop on research dispatch (#4414)
gsd: compensating rollback on escalation write failure (pause-required)
gsd: ADR-011 code-review findings — reconcile/restore state preservation, strict validation
pi-ai: address coderabbit review comments on #4392
pi-ai: wire thinking:{type} field and extend adaptive-thinking model coverage (#4392)
gsd: preserve ADR-011 P2 columns through reconcileWorktreeDb
gsd: post-ship review findings for ADR-011 Phase 2
gsd: add missing TaskRow escalation fields to tests + paramsToTaskRow
gsd: use valid LogComponent for escalation warnings
auth: self-heal stale Anthropic OAuth credential (#4399)
gsd: invalidate caches after branch-mode checkout and validate main_branch pref
test: add getIsolationMode override in worktree-skip journal test
gsd: create milestone branch on entry in isolation:branch mode (#4389)
gsd: handle auto-mode limit errors with model fallback (#4373)
ci: remove duplicate tmpdir import in journal-integration test
workflow: path containment, direct-dispatch overrides, gist ext fallback
pi-ai: pass xhigh effort natively for opus-4-7; fix Bedrock mapping; bump SDK to 0.90.0
notifications: fire remote notification before desktop guard
notifications: call sendRemoteNotification from sendDesktopNotification
gsd-scan: use .gsd/codebase/ instead of .planning/codebase/
gsd: redispatch active custom workflow steps
remove Claude Code reference from forensics comment
dispatch: reconcile DB when SUMMARY exists on disk (#4324)
gsd: stage untracked files on symlink add fallback
gsd: ignore glob-like plan inputs in pre-exec checks
ci: rewrite version-check comment as array join to fix YAML syntax
gsd: pause on complete-milestone disk/db mismatch
gsd: detect repeated units across the stuck window
dispatch: skip complete-milestone for DB-complete milestones (#4324)
gsd: restore slice parallel guard nesting
gsd: repair execute-task plan recovery checkboxes
gsd: fail closed on finalize timeouts
gsd: persist active custom workflow steps before dispatch
gsd: increment unit dispatch counts on dispatch
gsd: treat workflow validate and list as quick commands
gsd: treat unexpected eof as transient network error
gsd: preserve legacy cmux preference writes
gsd: track queued wrapup skips before execution
gsd: enable structured milestone questions in auto mode
gsd: prefer canonical preferences paths
gsd: cancel auto unit when model restore fails
gsd: suppress built-in footer on session_start when auto-mode is active
ci: resolve YAML syntax error in version-check workflow
pi-ai: remove decommissioned Groq models
ci: make rtk shared shim work in dist-test
ci: keep resource extension types self-contained
ci: avoid RpcClient private process type intersection
ci: import isTruthy in rtk runtime
doctor: suppress false Anthropic key missing warning when using claude-code
ci: add strip-types shim for rtk-shared
ci: restore canonical AssistantMessageEventStream export
update: detect bun install via argv[1] path (#4145)
gitignore: restore baseline ignore rules
tests: isolate ExternalCli provider check in web onboarding tests
web: add claude-code ExternalCli provider to onboarding catalog
agent-session: call abort() before _disconnectFromAgent() in newSession/resumeSession (#4243)
pi-ai: hide unsupported ChatGPT codex oauth models
test: add test environment isolation for worktree and RTK tests
Changed
gsd: route /gsd init preferences through unified writer
remove accidentally-committed .mcp.json and .worktrees/
gsd: address CodeRabbit review on #4433
code quality cleanup and contract hardening
remove local test.cmd helper from feature branch
auto-commit after complete-milestone
extract splitCompletedKey() helper, remove duplication (per review)
Original source - Apr 15, 2026
- Date parsed from source:Apr 15, 2026
- First seen by Releasebot:May 8, 2026
v2.75.0
GSD 2 adds a major knowledge graph and LEARNINGS.md extraction flow, expands /gsd command parity, and tightens UOK routing, gating, and audit handling. It also improves chat and TUI styling, session compaction, MCP worktree behavior, and release and CI reliability.
Added
- tui: render compaction notice in the shared chat-frame style
- prefs: add persistent language preference via /gsd language
- tui: align tool execution cards with chat frame styling
- tui: blend chat frame with shared timestamp and model header
- extensions: add GSDExtensionAPI for .gsd/extensions/ (#3338)
- graph: parse LEARNINGS.md into knowledge graph and rebuild after extraction
- gsd: add /gsd extract-learnings command
- gsd-uok: flip default to UOK with emergency legacy fallback
- gsd-uok: enforce plan-v2 compile gates and graph metadata
- gsd-uok: unify audit envelopes across logger metrics and activity
- gsd-uok: add turn-level git transaction modes and closeout gates
- gsd-uok: unify reactive and parallel scheduling via execution graph
- gsd-uok: enforce model policy filtering before routing
- gsd-uok: unify gate plane across pre/post validation checks
- graph: implement knowledge graph system (closes #4202)
- gsd: add v1→v2 command parity — 12 missing commands
Fixed
- ci: stage all workspace package.json files in release commit
- tui: pin rendered block to terminal bottom on clear
- gsd: silence benign auto-mode warnings and bind getProviderAuthMode correctly
- gsd: stop wiping the artifacts table on every cache invalidation
- tui: unstick tool cards after compaction and promote success notifications
- mcp: route tool writes to active worktree when milestone has one
- mcp: make projectDir optional in workflow tool schemas
- mcp: allow external-state worktree paths in workflow project root guard
- gsd: stop .mcp.json churn in auto-worktrees and fix evidence id matching
- auto: reset session timeout counter on auto-resume
- auto: schedule auto-resume timer for session creation timeouts
- agent-session: call abort() before _disconnectFromAgent() in newSession/resumeSession (#4243)
- gsd: checkpoint all session phases during compaction, not just executing (#4258)
- gsd: expand pre-execution check notification with details + evidence path (#4259)
- chat: replay final assistant content on message end
- interactive: preserve assistant-tool ordering on chat rebuild
- chat: preserve claude MCP thinking visibility during tool windows
- chat: cap claude reasoning blocks to keep chat visible
- chat: prune orphaned claude MCP provisional sub-turn text
- chat: prune orphaned claude MCP provisional sub-turn text
- chat: prune claude MCP provisional text above tool output
- ci: harden graph fallback and update regression guards
- gsd: restore autoCommit import after rebase conflict
- gsd: align ADR-009 integration with type-safe builds
- ci: remove unsound tsbuildinfo cache causing TS2307 on fresh runners
- pi-coding-agent: remove explanatory comment from agent_end handler
- pi-coding-agent: finalize streaming component on agent_end instead of removing it
- release: sync all workspace versions and harden release scripts
- ci: run CI on pipeline.yml changes
- ci: install web host deps in dev-publish job
- gsd: harden pr-branch/ship argv-safety and canonical artifact paths
- align v1→v2 commands with upstream types, remove engine-dependent slice mutations
- ci: disable incremental resources build cache state
- gsd: open project DB in headless query
- gsd: preserve quoted workflow run overrides
- gsd: replace execSync with execFileSync in nativeCommit, nativeIsRepo, nativeResetHard fallbacks
- ci: cache dist alongside tsbuildinfo and use workflow-logger in catch blocks
- gsd: isolate /gsd command registration from extension bootstrap failures
- gsd: close out cancelled auto units
- pi-coding-agent: fall back to env keys for built-ins
Changed
- gsd: remove /gsd map-codebase command
- gsd: enforce single-writer invariant for engine DB
- Apr 14, 2026
- Date parsed from source:Apr 14, 2026
- First seen by Releasebot:May 8, 2026
v2.74.0
GSD 2 adds smarter auto-mode, milestone, and CLI/TUI fixes, including clearer /gsd next-step guidance, custom model preservation, improved provider detection, inline tool calls, and performance and help handling updates.
Added
- gsd: extend flat-rate provider detection to custom/externalCli providers
- claude-code: pass thinking level as effort
Fixed
- claude-code-cli: forward image blocks in SDK query prompt (#4183)
- keep assistant text visible when thinking traces are long
- state: DB-authoritative milestone completeness (#4179)
- auto-mode: prevent false milestone merge after complete-milestone failure (#4175)
- auto: pause on validate-milestone needs-remediation without slices (#4094)
- gsd: notify users what to do next after /gsd step finishes
- cli: restore --help handling when it follows a subcommand or unknown flag
- tui: eliminate pinned output duplication and reduce render overhead
- auto: prevent premature auto-mode stops on blocked phase + missing reassessment
- cli: use junction symlinks in merged node_modules path
- tui: reset segment state on claude-code sub-turn shrink
- gsd: set completed_at when reconciling task status to complete
- tui: keep AUTO-mode widgets alive and drop duplicate health panel
- gsd: use bun for update when installed via Bun (#4145)
- tui: render assistant tool calls inline with text instead of grouped at end
- gsd: restore isAutoMode plumbing and workflow-logger catch in auto-model-selection
- gsd: preserve custom-model selection on /gsd auto bootstrap (#4122)
- pi-coding-agent: use safe compaction role markers
- pi-ai: detect claude-code overflow text
Changed
- remove stale src/app-paths.js leftover
- cli: slim down top-level src/ — dedup, unused fallbacks, onboarding
- Apr 13, 2026
- Date parsed from source:Apr 13, 2026
- First seen by Releasebot:May 8, 2026
v2.73.1
GSD 2 fixes silent-crash issues, tolerates corrupt task arrays, and cleans up milestone DB and worktree state. It also improves model resolver readiness, stream handling, subagent model routing, pipeline integrity, and removes dead files and orphaned tests.
Fixed
gsd: address 3 silent-crash secondary issues from #3348 post-#3696 (#4133)
gsd: tolerate corrupt task arrays (#4056)
gsd: discard milestone DB and worktree state (#4065)
model-resolver: gate saved default restore on provider readiness
tui: stop pinned latest-output mirror from duplicating streaming text
gsd: wire subagent_model preference through to dispatch prompt builders
ci: address 5 pipeline integrity issues from release audit (#4119)
ci: regenerate package-lock.json during version bump (#4116)
pi-coding-agent: skip localhost dummy key when fallback resolver provides a configured key
Changed
gsd: delete 3 unreferenced dead files and orphaned test (#3728)
Original source - Apr 13, 2026
- Date parsed from source:Apr 13, 2026
- First seen by Releasebot:May 8, 2026
v2.73.0
GSD 2 ships security hardening, smarter state and database recovery, and reliability fixes across jobs, depth checks, and roadmap handling. It also adds Alibaba DashScope and Ollama cloud auth support, plus Claude Code and provider workflow improvements.
Added
- pi-ai: add Alibaba DashScope as standalone provider (#3891)
- gsd: add layered depth enforcement to discuss.md (#4079)
Fixed
- gsd: reconcile stale slice rows and rebuild STATE.md before DB close (#3658)
- gsd: block direct writes to gsd.db via hooks to prevent corruption (#3674)
- gsd: break 3 circular dependencies in extension modules (#3730)
- claude-code: default GSD subagents to bypassPermissions and pre-authorize safe built-ins (#4099 follow-up)
- gsd: add memory pressure watchdog and persist stuck detection state (#3708)
- state: prevent false degraded-mode warning when DB not yet initialized (#3922)
- async-jobs: suppress stale follow-up for jobs consumed by await_job (#3787) (#3788)
- gsd: rebuild STATE.md after unit completion (#3876)
- gsd: let doctor heal dispatch fixable warnings (#3875)
- gsd: preserve experimental preferences in merges (#3847)
- gsd: heal legacy task arrays and evidence rows (#4027)
- gsd: unlock depth verification outside guided flow (#4058)
- gsd: preserve paused auto badge after provider pause (#4062)
- ollama: add cloud auth support and resolve real context window via /api/show (#4017)
- security: activate auth middleware and harden shutdown/update routes (#4023)
- gsd: normalize workingDirectory prompt paths (#4057)
- claude-code: pre-authorize workflow MCP tools so interactive acceptEdits mode stops blocking GSD commands
- cli: resolve duplicate validateConfiguredModel and missing getPiDefaultModelAndProvider import
- update GSD runtime ignore patterns for team mode (#2824)
- gsd: prevent double frontmatter in task SUMMARY.md from projection re-render (#2818)
- flush extension provider registrations before model resolution (#1923)
- gsd: reset db-open attempted flag on close (#4024)
- gsd: unblock mixed-dependency zero-dep slices (#4025)
- pi-tui: filter kitty keypad private-use input (#4026)
- gsd: disable db mmap on darwin (#4029)
- gsd: reject empty roadmap stubs as milestone plans (#4063)
- persist defaultProvider when user selects Claude Code CLI in onboarding (#4104)
- pi-ai: filter unavailable github copilot models (#4031)
- claude-code: wrap prompt history in XML tags to stop transcript fabrication
- clean up MCP tool rendering in Claude Code CLI stream
Changed
- pi-ai: regenerate model registry from upstream APIs (#3887)
- require linked issue in PR template (#4112)
This is the end. You've seen all the release notes in this feed!
Curated by the Releasebot team
Releasebot is an aggregator of official release notes from hundreds of software vendors and thousands of sources.
Our editorial process involves the manual review and audit of release notes procured with the help of automated systems.
Similar to GSD with recent updates:
- Smokeball release notes125 release notes · Latest May 13, 2026
- Cosmolex release notes20 release notes · Latest Jul 30, 2025
- PracticePanther release notes34 release notes · Latest Apr 8, 2026
- Salesforce release notes14 release notes · Latest May 1, 2026
- Microsoft release notes569 release notes · Latest May 28, 2026
- Zoom release notes145 release notes · Latest May 18, 2026