release-skill 0.2.7 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.codebuddy-plugin/plugin.json +1 -1
  4. package/.codex-plugin/plugin.json +2 -2
  5. package/.kimi-plugin/plugin.json +1 -1
  6. package/CHANGELOG.md +36 -0
  7. package/INSTALL.md +4 -4
  8. package/INSTALL.zh-CN.md +4 -4
  9. package/README.md +7 -13
  10. package/README.zh-CN.md +7 -13
  11. package/adapters/claude/.claude-plugin/marketplace.json +1 -1
  12. package/adapters/claude/.claude-plugin/plugin.json +1 -1
  13. package/adapters/claude/bin/release-skill.bundle.mjs +1153 -620
  14. package/adapters/claude/schemas/.render-manifest.json +2 -2
  15. package/adapters/claude/schemas/release-project.schema.json +60 -0
  16. package/adapters/codex/.codex-plugin/plugin.json +2 -2
  17. package/adapters/codex/bin/release-skill.bundle.mjs +1153 -620
  18. package/adapters/codex/schemas/.render-manifest.json +2 -2
  19. package/adapters/codex/schemas/release-project.schema.json +60 -0
  20. package/adapters/kimi/.kimi-plugin/plugin.json +1 -1
  21. package/adapters/kimi/bin/release-skill.bundle.mjs +1153 -620
  22. package/adapters/kimi/schemas/.render-manifest.json +2 -2
  23. package/adapters/kimi/schemas/release-project.schema.json +60 -0
  24. package/adapters/workbuddy/.codebuddy-plugin/plugin.json +1 -1
  25. package/adapters/workbuddy/bin/release-skill.bundle.mjs +1153 -620
  26. package/adapters/workbuddy/schemas/.render-manifest.json +2 -2
  27. package/adapters/workbuddy/schemas/release-project.schema.json +60 -0
  28. package/bin/release-skill-cli.mjs +4 -0
  29. package/bin/release-skill.bundle.mjs +1153 -620
  30. package/package.json +1 -1
  31. package/schemas/.render-manifest.json +2 -2
  32. package/schemas/release-project.schema.json +60 -0
  33. package/src/commands/assess.mjs +18 -5
  34. package/src/commands/prepare.mjs +59 -1
  35. package/src/core/config.mjs +48 -0
  36. package/src/core/public-surface.mjs +535 -0
@@ -9,7 +9,7 @@
9
9
  {
10
10
  "name": "release-skill",
11
11
  "source": "./",
12
- "version": "0.2.7",
12
+ "version": "0.2.9",
13
13
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification"
14
14
  }
15
15
  ]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-skill",
3
- "version": "0.2.7",
3
+ "version": "0.2.9",
4
4
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
5
5
  "author": {
6
6
  "name": "广州市风荷科技有限公司"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-skill",
3
- "version": "0.2.7",
3
+ "version": "0.2.9",
4
4
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
5
5
  "author": {
6
6
  "name": "广州市风荷科技有限公司"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-skill",
3
- "version": "0.2.7",
3
+ "version": "0.2.9",
4
4
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
5
5
  "author": {
6
6
  "name": "广州市风荷科技有限公司"
@@ -19,7 +19,7 @@
19
19
  ],
20
20
  "defaultPrompt": [
21
21
  "Assess this project for release readiness.",
22
- "Prepare a release plan for version 0.2.7.",
22
+ "Prepare a release plan for version 0.2.9.",
23
23
  "Help me understand the release workflow."
24
24
  ]
25
25
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-skill",
3
- "version": "0.2.7",
3
+ "version": "0.2.9",
4
4
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
5
5
  "author": {
6
6
  "name": "广州市风荷科技有限公司"
package/CHANGELOG.md CHANGED
@@ -1,5 +1,41 @@
1
1
  # Changelog
2
2
 
3
+ <!-- release-skill:changelog:start version=0.2.9 locale=en baseline=sha256:22b3d94c5d99fca0e6016334a108e4be5f3419f45507fae795b4d0714ca7ad6d -->
4
+ ## [0.2.9] - 2026-07-31
5
+
6
+ v0.2.9 makes missing expected public-surface configuration visible during assessment and preparation without blocking existing projects.
7
+
8
+ ### Added
9
+
10
+ - **Adoption warning**: assess reports `PUBLIC_SURFACE_CONFIG_MISSING` for every release unit that has not configured `expectedPublicSurface`.
11
+
12
+ ### Changed
13
+
14
+ - **Prepare visibility**: prepare records and returns the same non-blocking warning, and the CLI exposes it in both JSON and human-readable output.
15
+ <!-- release-skill:changelog:end version=0.2.9 locale=en -->
16
+
17
+
18
+ <!-- release-skill:changelog:start version=0.2.8 locale=en baseline=sha256:ad6e8910f1af206463b5decf134b82590787b77f5a88faca3d8985d3686b111b -->
19
+ ## [0.2.8] - 2026-07-30
20
+
21
+ v0.2.8 adds a project-configurable expected public-surface gate so newly added or omitted release files cannot silently disappear from a frozen snapshot.
22
+
23
+ ### Added
24
+
25
+ - **Expected public surface**: release units can declare physical scan roots with compact `include` and `exclude` globs instead of maintaining a second per-file checker.
26
+ - **Exhaustive classification diagnostics**: prepare reports missing mappings, unexpected mappings, unclassified files, and files that ambiguously match both include and exclude rules.
27
+
28
+ ### Changed
29
+
30
+ - **Post-build release gate**: prepare scans the actual workspace after build hooks and blocks before source-authority closure, baseline capture, snapshot construction, or plan creation.
31
+ - **Bounded glob and path safety**: the built-in scanner supports `*`, `?`, and `**`, rejects overlapping or escaping scan roots, and keeps workspace control paths outside the project classification surface.
32
+
33
+ ### Fixed
34
+
35
+ - **Silent release-file omission**: a file classified for publication can no longer be absent from `publicFiles` while the release still reaches `PREPARED`.
36
+ <!-- release-skill:changelog:end version=0.2.8 locale=en -->
37
+
38
+
3
39
  <!-- release-skill:changelog:start version=0.2.7 locale=en baseline=sha256:05d12ddcc435b3c4438561dba780481ead1ac7662d946c3c36ddf8123dcaebe3 -->
4
40
  ## [0.2.7] - 2026-07-29
5
41
 
package/INSTALL.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [简体中文](INSTALL.zh-CN.md)
4
4
 
5
- <!-- release-skill:release-version: 0.2.7 -->
5
+ <!-- release-skill:release-version: 0.2.9 -->
6
6
  ## Prerequisites
7
7
 
8
8
  - Node.js 22.0.0 or later
@@ -128,7 +128,7 @@ as a version-pinned **manual** install plus trusted observation/attestation:
128
128
  frozen version; otherwise do NOT issue an attestation.
129
129
 
130
130
  ```
131
- /plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.2.7
131
+ /plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.2.9
132
132
  /plugins reload
133
133
  ```
134
134
 
@@ -140,7 +140,7 @@ as a version-pinned **manual** install plus trusted observation/attestation:
140
140
  ```json
141
141
  {
142
142
  "platform": "kimi",
143
- "version": "0.2.7",
143
+ "version": "0.2.9",
144
144
  "planDigest": "<64-hex frozen plan digest>",
145
145
  "result": "passed",
146
146
  "actor": "<person who confirmed>",
@@ -204,7 +204,7 @@ attestation (the same capability gap and closed loop as Kimi Code):
204
204
  ```json
205
205
  {
206
206
  "platform": "codebuddy",
207
- "version": "0.2.7",
207
+ "version": "0.2.9",
208
208
  "planDigest": "<64-hex frozen plan digest>",
209
209
  "result": "passed",
210
210
  "actor": "<person who confirmed>",
package/INSTALL.zh-CN.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [English](INSTALL.md)
4
4
 
5
- <!-- release-skill:release-version: 0.2.7 -->
5
+ <!-- release-skill:release-version: 0.2.9 -->
6
6
  ## 前置条件
7
7
 
8
8
  - Node.js 22.0.0 或更高版本
@@ -112,7 +112,7 @@ release-skill 把 Kimi 安装建模为“版本钉死的手动安装 + 可信观
112
112
  必须核实已安装插件清单版本等于冻结版本;否则**不得**出具证明。
113
113
 
114
114
  ```
115
- /plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.2.7
115
+ /plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.2.9
116
116
  /plugins reload
117
117
  ```
118
118
 
@@ -124,7 +124,7 @@ release-skill 把 Kimi 安装建模为“版本钉死的手动安装 + 可信观
124
124
  ```json
125
125
  {
126
126
  "platform": "kimi",
127
- "version": "0.2.7",
127
+ "version": "0.2.9",
128
128
  "planDigest": "<64 位十六进制冻结计划摘要>",
129
129
  "result": "passed",
130
130
  "actor": "<确认人>",
@@ -178,7 +178,7 @@ codebuddy CLI 可以添加市场并安装插件,但 **`plugin marketplace add`
178
178
  ```json
179
179
  {
180
180
  "platform": "codebuddy",
181
- "version": "0.2.7",
181
+ "version": "0.2.9",
182
182
  "planDigest": "<64 位十六进制冻结计划摘要>",
183
183
  "result": "passed",
184
184
  "actor": "<确认人>",
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [简体中文](README.zh-CN.md) · Installation: [English](INSTALL.md) / [简体中文](INSTALL.zh-CN.md)
4
4
 
5
- <!-- release-skill:release-version: 0.2.7 -->
5
+ <!-- release-skill:release-version: 0.2.9 -->
6
6
  Release preparation for Claude Code, CodeBuddy, WorkBuddy, Codex, and Kimi Code, with human-edited files kept intact.
7
7
 
8
8
  release-skill helps a maintainer answer three questions: what will be released,
@@ -14,27 +14,21 @@ Setup surfaces only the deterministic `compactSummary` review view; the full
14
14
  report stays in a temporary session directory.
15
15
 
16
16
  <!-- release-skill:managed:start id=latest-release -->
17
- **0.2.7** (2026-07-29)
17
+ **0.2.9** (2026-07-31)
18
18
 
19
- v0.2.7 prevents npm packages with missing declared runtime entries from being prepared, published, reconciled, or marked as verified.
19
+ v0.2.9 makes missing expected public-surface configuration visible during assessment and preparation without blocking existing projects.
20
20
 
21
21
  **Added**
22
22
 
23
- - **Static npm entry closure**: release-skill checks `bin`, `main`, `module`, `types`, `typings`, and concrete local `exports` targets against the exact frozen tarball and the freshly installed package.
24
- - **Setup diagnostics**: setup reports declared npm entry candidates as tracked, untracked, ignored, missing, or non-regular without modifying project configuration.
23
+ - **Adoption warning**: assess reports `PUBLIC_SURFACE_CONFIG_MISSING` for every release unit that has not configured `expectedPublicSurface`.
25
24
 
26
25
  **Changed**
27
26
 
28
- - **Fail-closed unsupported exports**: wildcard exports and fallback arrays remain outside the minimal resolver boundary and now block release instead of being guessed or silently skipped.
29
- - **Final write-boundary verification**: the npm adapter rechecks the same digest-verified tarball buffer immediately before registry publication.
30
-
31
- **Fixed**
32
-
33
- - **Empty-shell package verification**: a package can no longer reach `PREPARED`, remote publication, reconciliation, or `VERIFIED` when its declared runtime or type entry is absent.
27
+ - **Prepare visibility**: prepare records and returns the same non-blocking warning, and the CLI exposes it in both JSON and human-readable output.
34
28
  <!-- release-skill:managed:end id=latest-release -->
35
29
 
36
30
  <!-- release-skill:capability:external-write-boundary -->
37
- > **Current boundary:** v0.2.7 is the current release (v0.2.2 previously held
31
+ > **Current boundary:** v0.2.9 is the current release (v0.2.2 previously held
38
32
  > published status before the platform verification convergence fix was added).
39
33
  > v0.1.1 completed a real production release to GitHub and npm — the first
40
34
  > production-verified milestone — followed by
@@ -52,7 +46,7 @@ v0.2.7 prevents npm packages with missing declared runtime entries from being pr
52
46
  > publish global preflight.
53
47
 
54
48
  <!-- release-skill:capability:safe-first-command -->
55
- > **Production path verified since the v0.1.1 milestone; v0.2.7 is the current
49
+ > **Production path verified since the v0.1.1 milestone; v0.2.9 is the current
56
50
  > release.** The npm-installed CLI is the supported user entry. Source checkout
57
51
  > is the development/contributor fallback.
58
52
  >
package/README.zh-CN.md CHANGED
@@ -2,33 +2,27 @@
2
2
 
3
3
  [English](README.md) · 安装指南:[中文](INSTALL.zh-CN.md) / [English](INSTALL.md)
4
4
 
5
- <!-- release-skill:release-version: 0.2.7 -->
5
+ <!-- release-skill:release-version: 0.2.9 -->
6
6
  面向 Claude Code、CodeBuddy、WorkBuddy、Codex 和 Kimi Code 的发布准备工具,完整保留人工维护的文件内容。
7
7
 
8
8
  release-skill 帮助维护者回答三个问题:准备发布什么、还有哪些检查未通过、最终发布的内容是什么。它不重新生成、也不回写项目源文件。`prepare` 把每个配置的公开文件复制到隔离快照并验证字节——先冻结并供人工审阅,再从同一份冻结产物发布。`setup` 只显示确定性的 `compactSummary` 审阅视图,完整报告保留在临时会话目录中。
9
9
 
10
10
  <!-- release-skill:managed:start id=latest-release -->
11
- **0.2.7** (2026-07-29)
11
+ **0.2.9** (2026-07-31)
12
12
 
13
- v0.2.7 阻止缺少已声明运行入口的 npm 包进入准备、发布、协调或已验证终态。
13
+ v0.2.9 会在评估和准备阶段提示缺少期望发布面配置,同时保持现有项目兼容,不立即阻断发布。
14
14
 
15
15
  **新增**
16
16
 
17
- - **npm 静态入口闭包**:release-skill 针对精确冻结 tarball 和全新安装包检查 `bin`、`main`、`module`、`types`、`typings` 及具体本地 `exports` 目标。
18
- - **setup 诊断**:setup 将声明的 npm 入口报告为已跟踪、未跟踪、已忽略、缺失或非普通文件,但不会修改项目配置。
17
+ - **采用提醒**:assess 会为每个尚未配置 `expectedPublicSurface` 的发布单元报告 `PUBLIC_SURFACE_CONFIG_MISSING`。
19
18
 
20
19
  **变更**
21
20
 
22
- - **不支持的 exports 失败关闭**:通配符 exports fallback array 仍处于最小解析边界之外,并改为阻断发布,不猜测展开或静默跳过。
23
- - **最终写入边界复检**:npm 适配器在提交注册表前,对同一份已通过摘要校验的 tarball Buffer 再次检查入口闭包。
24
-
25
- **修复**
26
-
27
- - **空壳包验证漏洞**:当已声明的运行入口或类型入口缺失时,包不再能够进入 `PREPARED`、远端发布、协调或 `VERIFIED`。
21
+ - **prepare 可见性**:prepare 会记录并返回同一条非阻断警告,CLI JSON 与人类可读输出都会显示该提醒。
28
22
  <!-- release-skill:managed:end id=latest-release -->
29
23
 
30
24
  <!-- release-skill:capability:external-write-boundary -->
31
- > **当前边界:** v0.2.7 是当前发布版本(v0.2.2 曾处于已发布状态,后因平台验证收敛修复而更新)。
25
+ > **当前边界:** v0.2.9 是当前发布版本(v0.2.2 曾处于已发布状态,后因平台验证收敛修复而更新)。
32
26
  > v0.1.1 已完成 GitHub 与 npm 的
33
27
  > 真实生产发布,是首次生产验证的历史里程碑,并从冻结 Git ref 完成精确 npm
34
28
  > 安装及 Claude/Codex 消费者安装验证;"当前发布版本"与"首次生产验证里程碑"
@@ -41,7 +35,7 @@ v0.2.7 阻止缺少已声明运行入口的 npm 包进入准备、发布、协
41
35
  > 远端唯一性检查在 `publish` 全局预检执行。
42
36
 
43
37
  <!-- release-skill:capability:safe-first-command -->
44
- > **生产路径自 v0.1.1 里程碑起已完成真实生产验证;v0.2.7 是当前发布版本。**
38
+ > **生产路径自 v0.1.1 里程碑起已完成真实生产验证;v0.2.9 是当前发布版本。**
45
39
  > npm 安装的 CLI 是受支持的用户入口;源码 checkout 保留为开发/贡献者路径。
46
40
  >
47
41
  > **第一条命令:**
@@ -9,7 +9,7 @@
9
9
  {
10
10
  "name": "release-skill",
11
11
  "source": "./",
12
- "version": "0.2.7",
12
+ "version": "0.2.9",
13
13
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification"
14
14
  }
15
15
  ]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-skill",
3
- "version": "0.2.7",
3
+ "version": "0.2.9",
4
4
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
5
5
  "author": {
6
6
  "name": "广州市风荷科技有限公司"