docs: update changelog for v2.4.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Lex Christopherson 2026-03-12 11:16:12 -06:00
parent 631b2e0b86
commit f8c33aeea9
3 changed files with 22 additions and 4 deletions

View file

@ -19,3 +19,4 @@
| D011 | M001/S01 | arch | GitService reuses worktree.ts pure utilities | Import detectWorktreeName, getSliceBranchName, SLICE_BRANCH_RE from worktree.ts | These are pure functions with no side effects. Reimplementing would create drift. S02 facade wiring won't break these exports. | No |
| D012 | M001/S01 | arch | RUNTIME_EXCLUSION_PATHS defined independently | Define exclusion paths in git-service.ts independently of gitignore.ts BASELINE_PATTERNS | Keeps S01 self-contained without touching gitignore.ts. BASELINE_PATTERNS is unexported. Converge later if needed. | Yes — converge in future cleanup |
| D013 | M001/S01 | impl | COMMIT_TYPE_RULES includes plural keyword forms | Added "docs" and "tests" as explicit keywords alongside singular "doc" and "test" | Word-boundary regex `\bdoc\b` doesn't match "docs" — the trailing `s` is a word character. Plurals are common in slice titles. | No |
| D014 | M001/S02 | impl | MergeSliceResult re-export uses `export type` | `export type { MergeSliceResult }` instead of value `export { MergeSliceResult }` | Circular dependency (git-service.ts ↔ worktree.ts) causes ESM live binding resolution failure with value re-exports. Type-only re-export is erased at runtime, avoiding the cycle. MergeSliceResult is an interface so this is semantically correct and transparent to consumers. | No |

View file

@ -2,17 +2,18 @@
**Active Milestone:** M001 — Deterministic GitService
**Active Slice:** S02 — Wire GitService into codebase
**Phase:** planning
**Phase:** executing
**Current Task:** T01 complete
**Requirements Status:** 18 active · 0 validated · 3 deferred · 6 out of scope
## Milestone Registry
- 🔄 **M001:** Deterministic GitService
## Recent Decisions
- None recorded
- Used `export type` for MergeSliceResult re-export to avoid circular dependency crash (worktree.ts ↔ git-service.ts)
## Blockers
- None
## Next Action
Plan slice S02 (Wire GitService into codebase).
T01 is the only task in S02. Slice verification complete — all tests pass, tsc clean, consumers unchanged. Ready for slice completion.

View file

@ -6,6 +6,21 @@ Format based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
## [Unreleased]
## [2.4.0] - 2026-03-12
### Added
- Automatic migration of provider credentials from existing Pi installations — skip re-authentication when switching to GSD
- Pi extensions from `~/.pi/agent/extensions/` discoverable in interactive mode
- GitService core implementation for programmatic git operations
### Changed
- System prompt compressed by 48% (360 → 187 lines) for better context efficiency
- Refined agent character and communication style prompts
- Added craft standards, self-debugging awareness, and work narration to agent prompts
### Fixed
- RPC mode crash when `ctx.ui.theme` is undefined (#121)
## [2.3.11] - 2026-03-12
### Added
@ -197,7 +212,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.3.11...HEAD
[Unreleased]: https://github.com/gsd-build/gsd-2/compare/v2.4.0...HEAD
[2.4.0]: https://github.com/gsd-build/gsd-2/compare/v2.3.11...v2.4.0
[2.3.11]: https://github.com/gsd-build/gsd-2/compare/v2.3.10...v2.3.11
[2.3.10]: https://github.com/gsd-build/gsd-2/compare/v2.3.9...v2.3.10
[2.3.9]: https://github.com/gsd-build/gsd-2/compare/v2.3.8...v2.3.9