From 78f3a38ffc40e2b04ee1152f6a640da9acd85105 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 19 Aug 2026 21:14:56 +0000 Subject: [PATCH] Version Packages --- .changeset/add-init-language-option.md | 5 ----- .changeset/drop-postinstall-script.md | 5 ----- .changeset/quiet-cli-update.md | 7 ------- .changeset/store-aware-main-spec-paths.md | 5 ----- .changeset/tidy-moons-smell.md | 5 ----- .changeset/tidy-tasks-verify.md | 5 ----- CHANGELOG.md | 20 ++++++++++++++++++++ package.json | 2 +- 8 files changed, 21 insertions(+), 33 deletions(-) delete mode 100644 .changeset/add-init-language-option.md delete mode 100644 .changeset/drop-postinstall-script.md delete mode 100644 .changeset/quiet-cli-update.md delete mode 100644 .changeset/store-aware-main-spec-paths.md delete mode 100644 .changeset/tidy-moons-smell.md delete mode 100644 .changeset/tidy-tasks-verify.md diff --git a/.changeset/add-init-language-option.md b/.changeset/add-init-language-option.md deleted file mode 100644 index edf06521e6..0000000000 --- a/.changeset/add-init-language-option.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@fission-ai/openspec': minor ---- - -Add `openspec init --language ` to configure the language used for artifacts in new projects. diff --git a/.changeset/drop-postinstall-script.md b/.changeset/drop-postinstall-script.md deleted file mode 100644 index b4a885240a..0000000000 --- a/.changeset/drop-postinstall-script.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@fission-ai/openspec": patch ---- - -Drop the npm `postinstall` script. Its only job was printing a one-line tip about opt-in shell completions, but shipping any install script made `npm install -g @fission-ai/openspec` emit an `allow-scripts` warning that reads as a packaging fault (and `npm approve-scripts` then fails with `ENOMATCH` on a global install, since it looks in the local project). The tip now prints from the CLI on its first run — to stderr, in an interactive terminal, once, and not at all if you already have completions installed — and the published package declares no `preinstall`/`install`/`postinstall` script, so a registry install runs no OpenSpec code. Suppress the tip with `OPENSPEC_NO_COMPLETIONS=1`. diff --git a/.changeset/quiet-cli-update.md b/.changeset/quiet-cli-update.md deleted file mode 100644 index 2ccf0b9a70..0000000000 --- a/.changeset/quiet-cli-update.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@fission-ai/openspec": patch ---- - -### Bug Fixes - -- `openspec update` now suggests restarting an IDE only when it updates an IDE-resident tool. CLI tools such as Claude Code, Codex, and Gemini CLI no longer show an unnecessary restart hint. diff --git a/.changeset/store-aware-main-spec-paths.md b/.changeset/store-aware-main-spec-paths.md deleted file mode 100644 index 1ca82e9a33..0000000000 --- a/.changeset/store-aware-main-spec-paths.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@fission-ai/openspec": patch ---- - -Point the spec-driven `specs` instruction's main-spec read and edit at the store-aware root. It named `openspec/specs//spec.md`, a path relative to the current directory, for both step 1 of the MODIFIED workflow ("locate the existing requirement") and the edit that fixes a leftover `TBD` Purpose. When the change lives in a store — whether selected with `--store`, a project `store:` pointer, or a global default store — the main spec is under the store root, so that read missed it, or silently returned a different capability when a local one happened to share the name, and the MODIFIED block was then copied from the wrong requirement. Both operations now use `/openspec/specs/...`, the root already returned by `openspec instructions ... --json` and the same convention the sync and archive workflows use. Fixes #1702. diff --git a/.changeset/tidy-moons-smell.md b/.changeset/tidy-moons-smell.md deleted file mode 100644 index 746b2e47cd..0000000000 --- a/.changeset/tidy-moons-smell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@fission-ai/openspec': patch ---- - -archive: tell the author how to retire a capability when the emptied spec also holds content the merge cannot account for. That combination printed only "Spec must have at least one requirement" and no guidance at all; the abort now names the blocking lines and reports a `retire_capabilities` marker that is present but cannot be honored. Authored content quoted in those messages - the blocking lines, and the marker's own reason, which `openspec validate` prints too - is stripped of control characters and bounded in length before it reaches the terminal. diff --git a/.changeset/tidy-tasks-verify.md b/.changeset/tidy-tasks-verify.md deleted file mode 100644 index 783dd473f6..0000000000 --- a/.changeset/tidy-tasks-verify.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@fission-ai/openspec": patch ---- - -Require generated tasks to state how their completion can be verified. diff --git a/CHANGELOG.md b/CHANGELOG.md index f8e5c11d17..18d36bf9d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,25 @@ # @fission-ai/openspec +## 1.10.0 + +### Minor Changes + +- [#1685](https://github.com/Fission-AI/OpenSpec/pull/1685) [`c747ed1`](https://github.com/Fission-AI/OpenSpec/commit/c747ed1f34459ca6bc15d43ad9f68dfdf7750875) Thanks [@clay-good](https://github.com/clay-good)! - Add `openspec init --language ` to configure the language used for artifacts in new projects. + +### Patch Changes + +- [#1704](https://github.com/Fission-AI/OpenSpec/pull/1704) [`7276c6c`](https://github.com/Fission-AI/OpenSpec/commit/7276c6c26832f699a63544302d38b1af8ddb9844) Thanks [@clay-good](https://github.com/clay-good)! - Drop the npm `postinstall` script. Its only job was printing a one-line tip about opt-in shell completions, but shipping any install script made `npm install -g @fission-ai/openspec` emit an `allow-scripts` warning that reads as a packaging fault (and `npm approve-scripts` then fails with `ENOMATCH` on a global install, since it looks in the local project). The tip now prints from the CLI on its first run — to stderr, in an interactive terminal, once, and not at all if you already have completions installed — and the published package declares no `preinstall`/`install`/`postinstall` script, so a registry install runs no OpenSpec code. Suppress the tip with `OPENSPEC_NO_COMPLETIONS=1`. + +- [#1656](https://github.com/Fission-AI/OpenSpec/pull/1656) [`a72a74d`](https://github.com/Fission-AI/OpenSpec/commit/a72a74de6571c26fd79a193bb33fa3b8e1a767fb) Thanks [@clay-good](https://github.com/clay-good)! - ### Bug Fixes + + - `openspec update` now suggests restarting an IDE only when it updates an IDE-resident tool. CLI tools such as Claude Code, Codex, and Gemini CLI no longer show an unnecessary restart hint. + +- [#1703](https://github.com/Fission-AI/OpenSpec/pull/1703) [`9643888`](https://github.com/Fission-AI/OpenSpec/commit/9643888a7525467c7a076bfec9bb075910e78bb8) Thanks [@clay-good](https://github.com/clay-good)! - Point the spec-driven `specs` instruction's main-spec read and edit at the store-aware root. It named `openspec/specs//spec.md`, a path relative to the current directory, for both step 1 of the MODIFIED workflow ("locate the existing requirement") and the edit that fixes a leftover `TBD` Purpose. When the change lives in a store — whether selected with `--store`, a project `store:` pointer, or a global default store — the main spec is under the store root, so that read missed it, or silently returned a different capability when a local one happened to share the name, and the MODIFIED block was then copied from the wrong requirement. Both operations now use `/openspec/specs/...`, the root already returned by `openspec instructions ... --json` and the same convention the sync and archive workflows use. Fixes [#1702](https://github.com/Fission-AI/OpenSpec/issues/1702). + +- [#1699](https://github.com/Fission-AI/OpenSpec/pull/1699) [`18688c8`](https://github.com/Fission-AI/OpenSpec/commit/18688c8b27820da3435a47a7f11e90073724b728) Thanks [@clay-good](https://github.com/clay-good)! - archive: tell the author how to retire a capability when the emptied spec also holds content the merge cannot account for. That combination printed only "Spec must have at least one requirement" and no guidance at all; the abort now names the blocking lines and reports a `retire_capabilities` marker that is present but cannot be honored. Authored content quoted in those messages - the blocking lines, and the marker's own reason, which `openspec validate` prints too - is stripped of control characters and bounded in length before it reaches the terminal. + +- [#1660](https://github.com/Fission-AI/OpenSpec/pull/1660) [`7da3f34`](https://github.com/Fission-AI/OpenSpec/commit/7da3f34fb66d602bd987caa7dddcf3d6621e7d44) Thanks [@clay-good](https://github.com/clay-good)! - Require generated tasks to state how their completion can be verified. + ## 1.9.0 ### Minor Changes diff --git a/package.json b/package.json index d25a4b84cb..256a135704 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@fission-ai/openspec", - "version": "1.9.0", + "version": "1.10.0", "description": "AI-native system for spec-driven development", "keywords": [ "openspec",