* chore(npm): rebrand packages to @opengsd scope Rename: - get-shit-done-redux → @opengsd/get-shit-done-redux - @gsd-redux/sdk → @opengsd/gsd-sdk Add publishConfig.access=public for first-time scoped publish. CLI binary names (get-shit-done-redux, gsd-sdk, gsd-tools) unchanged. Sweeps install commands, npx invocations, CI publish/version-check workflows, tests, docs, READMEs (all translations), and the PACKAGE_NAME constant in check-latest-version. Bumps qs 6.15.1 → 6.15.2 to clear a moderate advisory surfaced by the audit-clean test (GHSA-q8mj-m7cp-5q26). Closes #126 * chore: pin 2.0.0 release + remove canary workflow - Bump both packages 1.50.0-canary.0 → 2.0.0 for first @opengsd publish - Remove .github/workflows/canary.yml and canary dist-tag handling in release.yml / release-sdk.yml - Drop canary section from VERSIONING.md Refs #126 * chore: address review findings + harden tarball-smoke timeout - .changeset/opengsd-org-rename.md: match project's custom parse.cjs frontmatter (type: Changed / pr: 127); the scoped @changesets/cli keys were silently rejected. - CONTEXT.md: drop two canary-stream policy lines and a dangling DEFECT.CANARY-VERSION-LEAK.cross-ref now that canary.yml is gone. - tests/release-tarball-smoke.install.test.cjs: pass timeout: 600_000 for npm pack + global install; the 3-minute runNpm default was timing out on slower Docker hosts (cartographer). Refs #126 * fix(sdk): add missing type/runtime devDependencies for build prepublishOnly invokes tsc which couldn't resolve @types/node, @types/ws, or synckit. They had been hoisted from root but were not declared in sdk/'s own package.json — first publish from a clean SDK tree failed. Refs #126 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): use npm pack stdout instead of glob to find tarball `npm pack --silent` for a scoped package (@opengsd/get-shit-done-redux) produces `opengsd-get-shit-done-redux-*.tgz`, not `get-shit-done-redux-*.tgz`. Capture the filename from stdout instead of a hardcoded glob so the step works regardless of package name format. Fixes smoke (ubuntu-latest, 22, false) CI failure. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * ci: treat workflow-file changes as test-skip eligible `.github/workflows/install-smoke.yml` (and other workflow files) were in neither `test.yml` paths nor `test-skip.yml` paths-ignore, so neither workflow ran on a workflow-only commit — leaving the required test-skip check perpetually missing. Refs #126 * chore: reset version to 1.0.0 for first @opengsd publish Nothing has been published yet under the @opengsd scope, so the inaugural release uses 1.0.0 rather than 2.0.0. The "major bump" in the changeset reflects the breaking install-command change for users migrating from the prior unscoped `get-shit-done-redux`, not a numeric continuation from a 1.x line under the new identity. Refs #126 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
137 lines
6.4 KiB
Markdown
137 lines
6.4 KiB
Markdown
# v1.40.0-rc.1 Release Notes
|
||
|
||
Pre-release candidate. Published to npm under the `next` tag.
|
||
|
||
```bash
|
||
npx @opengsd/get-shit-done-redux@next
|
||
```
|
||
|
||
---
|
||
|
||
## What's in this release
|
||
|
||
rc.1 opens the 1.40.0 train. The headline change is the **skill-surface
|
||
consolidation** ([#2790](https://github.com/GSD-redux/get-shit-done-redux/issues/2790))
|
||
and the new **two-stage hierarchical namespace routing** that sits on top of it
|
||
([#2792](https://github.com/GSD-redux/get-shit-done-redux/issues/2792)) — together
|
||
they drop the cold-start system-prompt overhead from ~2,150 tokens (86 flat skills)
|
||
to ~120 tokens (6 namespace routers). The release also adds the read-side of the
|
||
phase-lifecycle status-line, hardens multi-runtime installs, and clears a backlog of
|
||
correctness fixes for Gemini, Copilot, Codex, and the canary publish workflow.
|
||
|
||
### Added
|
||
|
||
- **Six namespace meta-skills with keyword-tag descriptions** — replace the flat
|
||
86-skill listing with a two-stage hierarchical routing layer. The model sees 6
|
||
namespace routers (`gsd:workflow`, `gsd:project`, `gsd:review`, `gsd:context`,
|
||
`gsd:manage`, `gsd:ideate`) instead of 86 entries; selects a namespace, then routes
|
||
to the sub-skill. Existing sub-skills are unchanged and still invocable directly.
|
||
([#2792](https://github.com/GSD-redux/get-shit-done-redux/issues/2792))
|
||
|
||
- **`/gsd-health --context` utilization guard** — context-window quality guard with
|
||
two thresholds: 60 % warns ("consider `/gsd-thread`"), 70 % is critical ("reasoning
|
||
quality may degrade"). Also exposed as `gsd-tools validate context`.
|
||
([#2792](https://github.com/GSD-redux/get-shit-done-redux/issues/2792))
|
||
|
||
- **Phase-lifecycle status-line — read-side** — `parseStateMd()` now reads four new
|
||
STATE.md frontmatter fields: `active_phase`, `next_action`, `next_phases`, and
|
||
`progress`. `formatGsdState()` gains scenes for in-flight, idle, and progress
|
||
display. Write-side wiring follows in a later RC.
|
||
([#2833](https://github.com/GSD-redux/get-shit-done-redux/issues/2833))
|
||
|
||
- **`--minimal` install flag** (alias `--core-only`) — writes only the six core
|
||
skills needed for the main workflow loop; no `gsd-*` subagents. Drops cold-start
|
||
overhead from ~12k tokens to ~700. Useful for local LLMs with 32K–128K context.
|
||
([#2762](https://github.com/GSD-redux/get-shit-done-redux/issues/2762))
|
||
|
||
### Changed
|
||
|
||
- **Skill surface consolidated 86 → 59 `commands/gsd/*.md` entries** — four new
|
||
grouped skills replace clusters of micro-skills (`capture`, `phase`, `config`,
|
||
`workspace`); six existing parents absorb wrap-up and sub-operations as flags
|
||
(`update --sync/--reapply`, `sketch --wrap-up`, `spike --wrap-up`,
|
||
`map-codebase --fast/--query`, `code-review --fix`, `progress --do/--next`).
|
||
Zero functional loss — 31 micro-skills deleted, all behavior preserved via flags.
|
||
([#2790](https://github.com/GSD-redux/get-shit-done-redux/issues/2790))
|
||
|
||
- **Canary release workflow now publishes from `dev` branch only** — aligns with
|
||
the branch→dist-tag policy (`dev` → `@canary`, `main` → `@next`/`@latest`).
|
||
`workflow_dispatch` on `main` now completes build/test/dry-run validation but
|
||
skips publish and tag.
|
||
([#2868](https://github.com/GSD-redux/get-shit-done-redux/issues/2868))
|
||
|
||
- **PRs missing `Closes #NNN` are auto-closed** — the `Issue link required`
|
||
workflow now auto-closes any PR opened without a closing keyword, posting a
|
||
comment that points to the contribution guide.
|
||
([#2872](https://github.com/GSD-redux/get-shit-done-redux/issues/2872))
|
||
|
||
### Fixed
|
||
|
||
- **Gemini slash commands now namespaced as `/gsd:<cmd>` instead of `/gsd-<cmd>`** —
|
||
Gemini CLI namespaces commands under `gsd:` so `/gsd-plan-phase` was unexecutable.
|
||
The install path now converts every body-text reference via a roster-checked regex,
|
||
consistently rewriting command files, agent bodies, and banners.
|
||
([#2768](https://github.com/GSD-redux/get-shit-done-redux/issues/2768),
|
||
[#2783](https://github.com/GSD-redux/get-shit-done-redux/issues/2783))
|
||
|
||
- **GSD slash-command namespace drift cleaned up across docs, workflows, and
|
||
autocomplete** — remaining stale `/gsd:<cmd>` references now use canonical
|
||
`/gsd-<cmd>`; `scripts/fix-slash-commands.cjs` rewrites retired colon syntax.
|
||
([#2858](https://github.com/GSD-redux/get-shit-done-redux/pull/2858))
|
||
|
||
- **`SKILL.md` description quoted for Copilot / Antigravity / Trae / CodeBuddy** —
|
||
descriptions starting with a YAML 1.2 flow indicator crashed gh-copilot's strict
|
||
YAML loader. Six emission sites now wrap descriptions in `yamlQuote(...)`.
|
||
([#2876](https://github.com/GSD-redux/get-shit-done-redux/issues/2876))
|
||
|
||
- **`gsd-tools` invocations use the absolute installed path** — bare `gsd-tools …`
|
||
calls inside skill bodies relied on PATH resolution not guaranteed in every runtime;
|
||
replaced with the absolute path emitted at install time.
|
||
([#2851](https://github.com/GSD-redux/get-shit-done-redux/issues/2851))
|
||
|
||
- **Codex installer preserves trailing newline when stripping legacy hooks** — the
|
||
legacy-hook strip ran against files with no terminating newline at EOF, breaking
|
||
downstream parsers.
|
||
([#2866](https://github.com/GSD-redux/get-shit-done-redux/issues/2866))
|
||
|
||
---
|
||
|
||
## What was in rc.7
|
||
|
||
[`RELEASE-v1.39.0-rc.7.md`](RELEASE-v1.39.0-rc.7.md) — first 1.39.0 RC to roll in
|
||
post-rc.5 fixes from `main`. Includes the `extractCurrentMilestone` fenced-code-block
|
||
fix ([#2787](https://github.com/GSD-redux/get-shit-done-redux/issues/2787)), `audit-uat`
|
||
frontmatter parse fix ([#2788](https://github.com/GSD-redux/get-shit-done-redux/issues/2788)),
|
||
skill description budget + lint gate ([#2789](https://github.com/GSD-redux/get-shit-done-redux/issues/2789)),
|
||
`gsd-sdk` workstream + binary-collision fixes ([#2791](https://github.com/GSD-redux/get-shit-done-redux/issues/2791)),
|
||
and nine additional correctness fixes across OpenCode, Codex, and Gemini runtimes.
|
||
|
||
---
|
||
|
||
## Installing the pre-release
|
||
|
||
```bash
|
||
# npm
|
||
npm install -g @opengsd/get-shit-done-redux@next
|
||
|
||
# npx (one-shot)
|
||
npx @opengsd/get-shit-done-redux@next
|
||
```
|
||
|
||
To pin to this exact RC:
|
||
|
||
```bash
|
||
npm install -g @opengsd/get-shit-done-redux@1.40.0-rc.1
|
||
```
|
||
|
||
---
|
||
|
||
## What's next
|
||
|
||
- Soak rc.1 against real installs across Claude Code, Codex, Copilot, Gemini,
|
||
OpenCode, and Antigravity runtimes.
|
||
- Wire write-side phase-lifecycle status-line on top of the
|
||
[#2833](https://github.com/GSD-redux/get-shit-done-redux/issues/2833) read-side.
|
||
- Run `finalize` on the release workflow to promote `1.40.0` to `latest` once
|
||
the train has soaked.
|