Releases: baremetallabs-ai/shipper
Releases · baremetallabs-ai/shipper
v3.1.0
What's Changed
- docs: add RELEASING.md by @dnsquared in #777
- fix(#775): unlock discarded desktop grooming sessions by @dnsquared in #778
- feat(#774): add shipper init drift guard by @dnsquared in #790
- fix(#773): normalize desktop GitHub release state by @dnsquared in #793
- chore(#776): add dependabot updates by @dnsquared in #794
- fix(#787): reject headless setup and remove claude sandbox by @dnsquared in #804
- docs(#780): fill out recipes guide by @dnsquared in #805
- feat(#781): add troubleshooting guide by @dnsquared in #806
- docs(#782): add environment variables reference by @dnsquared in #807
- docs(#783): add shipper directory reference by @dnsquared in #808
- docs(#784): add hooks reference by @dnsquared in #809
- docs(#785): add end-to-end MCP setup guide by @dnsquared in #810
- docs(#786): add supported coding agents page by @dnsquared in #811
- docs(#792): expand architecture coverage by @dnsquared in #812
- chore(deps): bump actions/setup-node from 4 to 6 by @dependabot[bot] in #795
- chore(deps): bump actions/deploy-pages from 4 to 5 by @dependabot[bot] in #796
- chore(deps): bump actions/upload-pages-artifact from 3 to 5 by @dependabot[bot] in #798
- chore(deps): bump actions/checkout from 4 to 6 by @dependabot[bot] in #797
- chore(deps-dev): bump @commitlint/cli from 19.8.1 to 21.0.0 by @dependabot[bot] in #800
- chore(deps-dev): bump electron-vite from 3.1.0 to 5.0.0 by @dependabot[bot] in #801
- chore(deps-dev): bump electron from 41.3.0 to 42.0.1 by @dependabot[bot] in #803
- chore(deps): bump the npm-minor-patch group across 1 directory with 12 updates by @dependabot[bot] in #813
- chore(deps-dev): bump vitest from 3.2.4 to 4.1.5 by @dependabot[bot] in #802
- fix(#814): queue headless AskUserQuestion batches by @dnsquared in #816
- docs(#815): deduplicate hook context env docs by @dnsquared in #819
- fix(#817): rename action queue success label by @dnsquared in #822
- docs(#788): expand docs index overviews by @dnsquared in #823
- docs(#818): document desktop operational workflows by @dnsquared in #824
- feat(#825): restore closed groom outcomes by @dnsquared in #828
- fix(#826): buffer interactive lock renewal logs by @dnsquared in #829
- feat(#827): move new issue creation to output protocol by @dnsquared in #830
- docs: declare Linux support for the CLI and MCP by @dnsquared in #832
- fix(#831): keep action log modal contained by @dnsquared in #834
- fix(groom): forbid treating the issue body as resolving product decisions by @dnsquared in #833
- fix(#836): accept full grooming without parent by @dnsquared in #838
- feat(design): experimental adversarial design review loop by @dnsquared in #837
- fix(#835): restrict ask-user bridge to mcp runs by @dnsquared in #839
- fix(#840): relax version freshness gating by @dnsquared in #841
- feat(#842): rename action queue to activity by @dnsquared in #843
- chore(release): bump to 3.1.0 by @dnsquared in #844
New Contributors
- @dependabot[bot] made their first contribution in #795
Full Changelog: v3.0.1...v3.1.0
v3.0.1
What's Changed
- fix(ci): unblock v3.0.0 publish (electron-builder + npm Trusted Publishers) by @dnsquared in #760
- chore: bump our own .shipper/settings.json cliVersion to 3.0.0 by @dnsquared in #762
- fix(desktop): empty-state crosshair SVG was blocking the Add repository button by @dnsquared in #763
- fix(#766): guard CLI version fingerprint drift by @dnsquared in #768
- fix(#765): preserve gh diagnostics for review retries by @dnsquared in #769
- fix(#767): use result json for mcp issue creation by @dnsquared in #770
- docs(#761): prepare package docs for 3.0.1 by @dnsquared in #771
Full Changelog: v3.0.0...v3.0.1
v2.0.0
What's Changed
- feat(#189): migrate to monorepo structure by @dnsquared in #192
- feat(#190): extract core package from CLI by @dnsquared in #194
- feat(#195): refactor shipper core to async by @dnsquared in #198
- fix(#193): unify command mode handling by @dnsquared in #199
- feat: add retry logic for transient gh CLI failures by @dnsquared in #202
- chore(#204): migrate shipper worktree hook config to file-based hook by @dnsquared in #206
- refactor(core): make @dnsquared/shipper-core electron-safe by @dnsquared in #207
- feat(#205): use XML envelope for formatIssue and formatPR output by @dnsquared in #209
- feat(lock): add heartbeat to renew lock during long runs by @dnsquared in #211
- feat(core): add listIssues() function for structured issue data by @dnsquared in #210
- feat(#212): add configurable agent timeout for stuck commands by @dnsquared in #222
- feat(#213): update setup and plan prompts to allow new dependency installation by @dnsquared in #221
- feat(#214): add environment failure escape hatch to agent prompts by @dnsquared in #224
- feat(#215): add --agent flag to commands for per-invocation agent override by @dnsquared in #225
- feat(#216): add --add-dir for Codex worktree git metadata access by @dnsquared in #226
- fix(groom): prohibit decomposition questions and add confirmation gate by @dnsquared in #227
- feat: replace 'pitch' terminology with 'request' across codebase by @dnsquared in #228
- feat(plan): add gitignore audit step to prevent worktree mismatch spirals by @dnsquared in #229
- fix(#220): remove scripts/ from .shipper/.gitignore template by @dnsquared in #230
- feat(reset): clean up local branches and worktrees by @dnsquared in #234
- feat(desktop): scaffold Electron desktop app (#196) by @dnsquared in #236
- fix(core): log gh retry command and stderr (#231) by @dnsquared in #235
- fix(init): eliminate retry noise by syncing labels with --force by @dnsquared in #237
- refactor(#238): consolidate label definitions into single source of truth by @dnsquared in #246
- docs(#241): add settings schema and troubleshooting to setup prompts by @dnsquared in #249
- docs(#243): sync README, CLAUDE.md, and state-machine.md with current codebase by @dnsquared in #259
- fix(ship): add merge-state pre-checks to ship --merge by @dnsquared in #256
- fix(ship): replace review-cycle cap with total-transition cap by @dnsquared in #261
- feat(core): move git transport operations out of sandboxed agent by @dnsquared in #266
- feat(desktop): adopt shadcn/ui for UI components by @dnsquared in #267
- fix(scripts): return comment databaseId from gh-api-get-review-threads by @dnsquared in #274
- fix(#258): complete shipper:failed label integration by @dnsquared in #276
- feat(unlock): add --stale flag to clear all stale locks by @dnsquared in #272
- feat(core): sandbox-proof worktree environments for package manager caches by @dnsquared in #273
- feat(settings): support model override in command settings by @dnsquared in #275
- feat(desktop): restyle app with retro terminal theme by @dnsquared in #277
- refactor(lint): enable strict preset and promote warnings to errors (#278) by @dnsquared in #281
- feat(ship): park sequential auto issues during pr-remediate waits by @dnsquared in #271
- feat(desktop): add test infrastructure and baseline test (#282) by @dnsquared in #284
- feat(test): add code coverage measurement for unit tests by @dnsquared in #288
- feat(cli): separate blocked and failed issue list sections by @dnsquared in #287
- feat(desktop): support multiple repos with tab UX by @dnsquared in #286
- fix(ship): stop auto loop on shipper:new regression (#270) by @dnsquared in #285
- feat(core): add push retry loop in withGitTransport by @dnsquared in #295
- fix(core): redirect XDG_CACHE_HOME into worktree by @dnsquared in #297
- chore(core): move worktree caches under .shipper/tmp (#300) by @dnsquared in #302
- fix(reset): preserve branches when resetting to implemented by @dnsquared in #303
- docs(session-debugger): use static skill paths (#290) by @dnsquared in #301
- feat(desktop): convert issue list to kanban pipeline board by @dnsquared in #304
- feat(core): add file-based output protocol infrastructure (#248) by @dnsquared in #307
- feat(prompts): surface pre-push hook checks in planner verification by @dnsquared in #310
- refactor(prompts): migrate design/plan/implement/unblock to output protocol by @dnsquared in #312
- feat(core): add priority labels that influence grooming and auto-selection by @dnsquared in #313
- refactor(settings): remove deprecated hooks property by @dnsquared in #311
- refactor(prompts): migrate pr_open/pr_review to file protocol (#251) by @dnsquared in #315
- feat(worktree): move groom, design, plan, pr-review to worktrees (#316) by @dnsquared in #320
- refactor(#252): restructure pr_remediate into multi-pass loop by @dnsquared in #321
- feat(prompts): add opt-in agent feedback section to stage comments by @dnsquared in #314
- refactor(#279): enable type-aware linting by @dnsquared in #318
- fix(prompts): add file-output gitignore guardrail (#317) by @dnsquared in #322
- refactor(lint): add targeted lint rules (#280) by @dnsquared in #323
- feat(core): add session logging infrastructure for headless runs by @dnsquared in #325
- feat(#326): add agent as alias for setup command by @dnsquared in #329
- chore(#328): remove dead bundled scripts by @dnsquared in #330
- fix(#331): scaffold shipper input and output dirs by @dnsquared in #333
- docs(#327): audit and update all user-facing documentation by @dnsquared in #335
- fix(#332): skip successful auto issues on re-selection by @dnsquared in #334
- feat(#336): add --mode support to ship and next commands by @dnsquared in #342
- feat(#338): add retry loop for malformed agent output by @dnsquared in #345
- feat(#343): enrich ci-status.json with step names and log URLs by @dnsquared in #346
- fix(#344): recover push retries with fetch and rebase by @dnsquared in #348
- feat(#339): move desktop terminal into collapsible right-hand drawer by @dnsquared in #351
- feat(#347): add duplicate issue handling to grooming prompts by @dnsquared in #353
- feat(#350): allow common build-time asset domains in sandbox by @dnsquared in #354
- feat(#340): add multi-session terminal tabs with idle indicator by @dnsquared in #355
- feat(#341): add Groom button to desktop pipeline issue cards by @dnsquared in #360
- feat(#356): log all ship runs, not just parallel mode by @dnsquared in #363
- feat(#357): rework pr review prompt to elimi...