release-skill 0.1.10 → 0.2.1
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.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.codebuddy-plugin/plugin.json +10 -0
- package/.codex-plugin/plugin.json +2 -2
- package/.kimi-plugin/plugin.json +1 -1
- package/CHANGELOG.md +33 -0
- package/INSTALL.md +24 -4
- package/INSTALL.zh-CN.md +22 -4
- package/README.md +19 -32
- package/README.zh-CN.md +14 -25
- package/adapters/claude/.claude-plugin/marketplace.json +1 -1
- package/adapters/claude/.claude-plugin/plugin.json +1 -1
- package/adapters/claude/bin/release-skill.bundle.mjs +2721 -1843
- package/adapters/claude/schemas/.render-manifest.json +8 -8
- package/adapters/claude/schemas/approval-record.schema.json +1 -1
- package/adapters/claude/schemas/release-plan.schema.json +6 -2
- package/adapters/claude/schemas/release-project.schema.json +14 -0
- package/adapters/codex/.codex-plugin/plugin.json +2 -2
- package/adapters/codex/bin/release-skill.bundle.mjs +2721 -1843
- package/adapters/codex/schemas/.render-manifest.json +8 -8
- package/adapters/codex/schemas/approval-record.schema.json +1 -1
- package/adapters/codex/schemas/release-plan.schema.json +6 -2
- package/adapters/codex/schemas/release-project.schema.json +14 -0
- package/adapters/kimi/.kimi-plugin/plugin.json +1 -1
- package/adapters/kimi/bin/release-skill.bundle.mjs +2721 -1843
- package/adapters/kimi/schemas/.render-manifest.json +8 -8
- package/adapters/kimi/schemas/approval-record.schema.json +1 -1
- package/adapters/kimi/schemas/release-plan.schema.json +6 -2
- package/adapters/kimi/schemas/release-project.schema.json +14 -0
- package/adapters/workbuddy/.codebuddy-plugin/plugin.json +10 -0
- package/adapters/workbuddy/bin/release-skill.bundle.mjs +85363 -0
- package/adapters/workbuddy/bin/release-skill.mjs +54 -0
- package/adapters/workbuddy/native/safe-write/binding.gyp +41 -0
- package/adapters/workbuddy/native/safe-write/prebuilds/darwin-arm64/safe_write.node +0 -0
- package/adapters/workbuddy/native/safe-write/prebuilds.json +24 -0
- package/adapters/workbuddy/native/safe-write/src/safe_write.cc +2032 -0
- package/adapters/workbuddy/schemas/.render-manifest.json +37 -0
- package/adapters/workbuddy/schemas/approval-record.schema.json +115 -0
- package/adapters/workbuddy/schemas/artifact-lock.schema.json +111 -0
- package/adapters/workbuddy/schemas/artifact-plan.schema.json +52 -0
- package/adapters/workbuddy/schemas/artifact-policy.schema.json +76 -0
- package/adapters/workbuddy/schemas/evidence-event.schema.json +89 -0
- package/adapters/workbuddy/schemas/release-plan.schema.json +882 -0
- package/adapters/workbuddy/schemas/release-project.schema.json +909 -0
- package/adapters/workbuddy/schemas/release-run.schema.json +343 -0
- package/adapters/workbuddy/skills/release-assess/SKILL.md +51 -0
- package/adapters/workbuddy/skills/release-help/SKILL.md +77 -0
- package/adapters/workbuddy/skills/release-prepare/SKILL.md +92 -0
- package/adapters/workbuddy/skills/release-publish/SKILL.md +57 -0
- package/adapters/workbuddy/skills/release-reconcile/SKILL.md +73 -0
- package/adapters/workbuddy/skills/release-setup/SKILL.md +95 -0
- package/adapters/workbuddy/skills/release-verify/SKILL.md +70 -0
- package/bin/release-skill-cli.mjs +3 -0
- package/bin/release-skill.bundle.mjs +2721 -1843
- package/package.json +9 -2
- package/references/.render-manifest.json +8 -8
- package/references/01-state-machine.md +5 -5
- package/references/02-project-config.md +1 -1
- package/references/05-evidence-and-errors.md +1 -1
- package/references/06-adapter-contract.md +41 -1
- package/schemas/.render-manifest.json +8 -8
- package/schemas/approval-record.schema.json +1 -1
- package/schemas/release-plan.schema.json +6 -2
- package/schemas/release-project.schema.json +14 -0
- package/scripts/sync-public-files.mjs +481 -0
- package/src/adapters/contract.mjs +60 -0
- package/src/adapters/plugin-marketplace.mjs +289 -736
- package/src/commands/prepare.mjs +195 -182
- package/src/commands/publish.mjs +438 -122
- package/src/commands/reconcile.mjs +369 -191
- package/src/commands/verify.mjs +13 -2
- package/src/core/approval.mjs +72 -45
- package/src/core/baseline.mjs +5 -0
- package/src/core/checkpoints.mjs +143 -0
- package/src/core/evidence.mjs +30 -3
- package/src/core/hook-cache.mjs +254 -0
- package/src/core/hooks.mjs +37 -1
- package/src/core/observe-retry.mjs +223 -0
- package/src/core/plan.mjs +162 -253
- package/src/platforms/kimi.mjs +514 -0
- package/src/platforms/registry.mjs +393 -0
- package/src/producers/build-adapters.mjs +49 -23
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "release-skill",
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "广州市风荷科技有限公司"
|
|
7
|
+
},
|
|
8
|
+
"license": "MIT",
|
|
9
|
+
"skills": "./adapters/workbuddy/skills/"
|
|
10
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "release-skill",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
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.1.
|
|
22
|
+
"Prepare a release plan for version 0.2.1.",
|
|
23
23
|
"Help me understand the release workflow."
|
|
24
24
|
]
|
|
25
25
|
}
|
package/.kimi-plugin/plugin.json
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
<!-- release-skill:changelog:start version=0.2.1 locale=en baseline=sha256:7d616df824b1d28f9939ef181d6a5d5928d3e0f0455974bebb356c742992ac81 -->
|
|
4
|
+
## [0.2.1] - 2026-07-25
|
|
5
|
+
|
|
6
|
+
v0.2.1 adds a fourth platform adapter — workbuddy (CodeBuddy/WorkBuddy plugin) — using a build-only distribution model. The build-adapters generator and platform registry now register workbuddy alongside claude, codex, and kimi, producing a self-contained adapter directory at `adapters/workbuddy/` with a `.codebuddy-plugin/plugin.json` manifest, bundled CLI entry, native prebuilds, schemas, and skills. The sync-public-files and sync-version scripts cover the new manifest, and the adapter-contract standard documents build-only distribution. README and INSTALL (en + zh-CN) register the CodeBuddy installation entry. Installation is manual — the automated marketplace install checkpoint does not cover CodeBuddy yet.
|
|
7
|
+
|
|
8
|
+
### Added
|
|
9
|
+
|
|
10
|
+
- **WorkBuddy/CodeBuddy build-only distribution adapter**: new fourth platform adapter `workbuddy` registered in the platform registry and build-adapters generator. The generated self-contained adapter directory (`adapters/workbuddy/`) ships a `.codebuddy-plugin/plugin.json` manifest, a bundled CLI entry (`bin/release-skill.bundle.mjs`), native safe-write prebuilds, JSON schemas, and the full skill set. Skills resolve the CLI entry via `${CODEBUDDY_PLUGIN_ROOT}`, which CodeBuddy expands inline.
|
|
11
|
+
- **Build-only distribution model in adapter-contract standard**: both the parent `standards/06-adapter-contract.md` and the public `references/06-adapter-contract.md` now document the build-only distribution scope — the adapter is generated and self-contained, installation is manual, and the automated preflight/execute/observe/verify marketplace checkpoint is not yet wired for CodeBuddy.
|
|
12
|
+
- **sync-public-files and sync-version coverage for `.codebuddy-plugin`**: the `sync-public-files.mjs` script now validates the `.codebuddy-plugin/plugin.json` manifest as a public asset, and `sync-version.mjs` propagates the package version into it. The build-adapters generator produces workbuddy artifacts alongside the existing three platforms.
|
|
13
|
+
- **README and INSTALL registration (en + zh-CN)**: all four public documents (README.md, README.zh-CN.md, INSTALL.md, INSTALL.zh-CN.md) now list the CodeBuddy/WorkBuddy adapter, its manual installation path, and the scope limitation that the automated marketplace install checkpoint does not yet cover CodeBuddy.
|
|
14
|
+
<!-- release-skill:changelog:end version=0.2.1 locale=en -->
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<!-- release-skill:changelog:start version=0.2.0 locale=en baseline=sha256:cc9236e620cdb2d9eef6fede00c54095bf0cc0ccdfeb9c1e584f063ff3af7e23 -->
|
|
18
|
+
## [0.2.0] - 2026-07-25
|
|
19
|
+
|
|
20
|
+
v0.2.0 is a hardening release that improves publish reliability, digest reproducibility, version management, and platform registry data-driven architecture. Nine hardening tasks are completed: observe retry backoff, digest decoupling with planVersion 2, declared-manifest payload contract, single-source versioning, real CLI contract tests, incremental hook caching, tiered parallel checkpoint execution, observe-before-execute idempotent skip, and platform registry data-driven architecture. The npm package name (`release-skill`), publishing identity (`publisher: mzdbxqh`), public repository (`ifoohoo/release-skill`), and corporate maintainer remain unchanged.
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- **Observe retry backoff (`observeWithRetry`)**: post-execute observe in publish/reconcile now uses bounded exponential backoff for transient failures. Transient classification is propagating — retries only on transient errors (network timeouts, 5xx); CONFLICTING errors are never retried. Marketplace retry window is clamped to action `timeoutMs`. This resolves intermittent PARTIAL failures caused by transient observe timeouts on real networks.
|
|
25
|
+
- **Digest decoupling with planVersion 2**: plan fields split into binding layer (frozen artifacts, actions, versions, config) vs record layer (baseline, createdAt, status). Frozen commit timestamp derived from `headCommit` for reproducible digests. Approval no longer invalidated by tree/workspace digest drift (v2 plans); baseline check demoted to evidence warning. v1 legacy behavior preserved byte-for-byte (golden-value tested).
|
|
26
|
+
- **Declared-manifest payload contract for marketplace installs**: replace whole-tree byte equality with declared-manifest comparison. Authority entries must exist and match byte-for-byte in the install dir; host-added files are recorded (`extraInstalledPaths`, capped) instead of failing. Legacy plans without `payloadContract` keep exact whole-tree semantics. `consumerTransportExclusions` deprecated (legacy path only).
|
|
27
|
+
- **Single-source versioning with `sync-version` script**: `package.json` version is now the sole handwritten source. New `sync-version.mjs` propagates it to plugin manifests, marketplace.json, README boundary lines, and INSTALL docs (idempotent, `--check` mode, defensive whitelist). `smokeExpectedJson.version` is injected at runtime from `targetVersion`, ending the bump-invalidates-plan loop. docs hook now runs `check-docs-drift.mjs` (render check + sync-version check). Hardcoded version literals in tests replaced with dynamic reads.
|
|
28
|
+
- **Real CLI contract tests for claude/codex/kimi adapters**: isolated-HOME contract tests asserting adapter assumptions against real CLI protocol shapes (`list --json` output forms, subcommand existence), gated by `RELEASE_SKILL_LIVE_CLI=1` with skip-not-fail semantics. Static contract locks in 'kimi has no scriptable install' to prevent fabricated CLI commands from regressing silently.
|
|
29
|
+
- **Incremental hook caching for prepare**: hooks can declare `cacheable`+`cacheInputs`; results cached under `.release-skill/cache/hooks/<name>/<key>.json` keyed by hook config and input content hashes. Failures never cached; hits skip execution but not authorization gates; `--no-hook-cache` escape hatch. Cache dir registered in baseline control-plane exclusions and gitignore. test/typecheck hooks cached in this project: second prepare drops to ~2s with test hook served from cache.
|
|
30
|
+
- **Tiered parallel checkpoint execution for publish**: publish checkpoints grouped into hard-coded `TIER_TABLE` layers. Layers run sequentially, actions within a layer run concurrently with `allSettled` semantics (no fail-fast, successes preserved). State persistence moves to per-layer snapshots keeping the appendRunState hash chain intact; crash recovery verified via SIGKILL-mid-tier integration test. Evidence appends serialized through a mutex chain with sequence starting at 1 and tier info in `details.tier`.
|
|
31
|
+
- **Observe-before-execute idempotent skip**: publish each checkpoint execute now has a single read-only pre-observe. Four-way classification: CONSISTENT→SKIPPED / MISSING→execute / CONFLICTING→FAILED / not observable→execute. Two-layer preflight shares `classifyPreObservation` single source (global Safety Gate 10 arbitration). SKIPPED downstream adaptation: layer folding recognizes success, three `every` checks expanded to SUCCEEDED||SKIPPED, `buildPersistedState` maps skipped, TOCTOU as usual.
|
|
32
|
+
- **Platform registry data-driven architecture**: new `src/platforms/registry.mjs` with `PLATFORMS`/`getPlatform`/`assertRegistry` module self-validation. Three platforms complete description (§3.4 matrix full dimensions) + pure strategy functions. Golden tests 12 cases solidify three platforms execute/observe/list current behavior. `src/producers/build-adapters.mjs` PLATFORMS now derived from registry; `scripts/build-adapters.mjs` duplicate platform table removed for single-source. `build:adapters:check` byte-zero diff (zero behavior change strong evidence).
|
|
33
|
+
<!-- release-skill:changelog:end version=0.2.0 locale=en -->
|
|
34
|
+
|
|
35
|
+
|
|
3
36
|
<!-- release-skill:changelog:start version=0.1.10 locale=en baseline=sha256:ec4dbf3f44f1295d9af20e0fbf1ced4341d9b65d0c93598104e228244e33fa2b -->
|
|
4
37
|
## [0.1.10] - 2026-07-24
|
|
5
38
|
|
package/INSTALL.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[简体中文](INSTALL.zh-CN.md)
|
|
4
4
|
|
|
5
|
-
<!-- release-skill:release-version: 0.1
|
|
5
|
+
<!-- release-skill:release-version: 0.2.1 -->
|
|
6
6
|
## Prerequisites
|
|
7
7
|
|
|
8
8
|
- Node.js 22.0.0 or later
|
|
@@ -68,7 +68,7 @@ as a version-pinned **manual** install plus trusted observation/attestation:
|
|
|
68
68
|
default branch), confirm the trust prompt, then reload:
|
|
69
69
|
|
|
70
70
|
```
|
|
71
|
-
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.1
|
|
71
|
+
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.2.1
|
|
72
72
|
/plugins reload
|
|
73
73
|
```
|
|
74
74
|
|
|
@@ -83,10 +83,10 @@ as a version-pinned **manual** install plus trusted observation/attestation:
|
|
|
83
83
|
{
|
|
84
84
|
"consumer": "kimi",
|
|
85
85
|
"plugin": "release-skill",
|
|
86
|
-
"version": "0.1
|
|
86
|
+
"version": "0.2.1",
|
|
87
87
|
"entrySkill": "release-help",
|
|
88
88
|
"repo": "ifoohoo/release-skill",
|
|
89
|
-
"ref": "release-skill-v0.1
|
|
89
|
+
"ref": "release-skill-v0.2.1",
|
|
90
90
|
"installPath": "<kimiCodeHome>/plugins/managed/release-skill",
|
|
91
91
|
"planDigest": "<64-hex frozen plan digest>",
|
|
92
92
|
"payloadDigest": "<64-hex frozen snapshot payload digest>",
|
|
@@ -106,6 +106,26 @@ attested `installPath` must resolve inside the requirement's isolated
|
|
|
106
106
|
`KIMI_CODE_HOME` managed root, otherwise verification fails closed and the Kimi
|
|
107
107
|
unit never reaches `VERIFIED`.
|
|
108
108
|
|
|
109
|
+
## Install as a CodeBuddy/WorkBuddy plugin
|
|
110
|
+
|
|
111
|
+
The package also ships a generated, self-contained CodeBuddy/WorkBuddy adapter
|
|
112
|
+
at `adapters/workbuddy/`, next to `adapters/claude/`, `adapters/codex/`, and
|
|
113
|
+
`adapters/kimi/`. Its manifest lives at `.codebuddy-plugin/plugin.json` (the
|
|
114
|
+
components — `skills/`, `bin/`, `schemas/`, `native/` — sit at the plugin
|
|
115
|
+
root, per the CodeBuddy plugin reference), and its skills resolve the CLI
|
|
116
|
+
entry via `${CODEBUDDY_PLUGIN_ROOT}`, which CodeBuddy expands inline like
|
|
117
|
+
Claude Code expands `${CLAUDE_PLUGIN_ROOT}`.
|
|
118
|
+
|
|
119
|
+
CodeBuddy/WorkBuddy installation is a **manual** step today: the automated
|
|
120
|
+
marketplace install checkpoint (`publish`/`verify`) does not cover CodeBuddy
|
|
121
|
+
yet. To use the adapter, point CodeBuddy at the generated plugin directory —
|
|
122
|
+
for a single session run CodeBuddy with `--plugin-dir <path>/adapters/workbuddy`,
|
|
123
|
+
or add the directory as a marketplace source you control
|
|
124
|
+
(`codebuddy plugin marketplace add <source>`) and install from it
|
|
125
|
+
(`codebuddy plugin install release-skill@<marketplace>`, or the interactive
|
|
126
|
+
`/plugin` manager). The installed copy lands in CodeBuddy's versioned plugin
|
|
127
|
+
cache; the adapter never references files outside its own directory.
|
|
128
|
+
|
|
109
129
|
## Development Install (Local Checkout)
|
|
110
130
|
|
|
111
131
|
For development or when working from source:
|
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.1
|
|
5
|
+
<!-- release-skill:release-version: 0.2.1 -->
|
|
6
6
|
## 前置条件
|
|
7
7
|
|
|
8
8
|
- Node.js 22.0.0 或更高版本
|
|
@@ -62,7 +62,7 @@ release-skill 把 Kimi 安装建模为“版本钉死的手动安装 + 可信观
|
|
|
62
62
|
它会安装最新 release 或默认分支),确认信任提示后重新加载:
|
|
63
63
|
|
|
64
64
|
```
|
|
65
|
-
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.1
|
|
65
|
+
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.2.1
|
|
66
66
|
/plugins reload
|
|
67
67
|
```
|
|
68
68
|
|
|
@@ -76,10 +76,10 @@ release-skill 把 Kimi 安装建模为“版本钉死的手动安装 + 可信观
|
|
|
76
76
|
{
|
|
77
77
|
"consumer": "kimi",
|
|
78
78
|
"plugin": "release-skill",
|
|
79
|
-
"version": "0.1
|
|
79
|
+
"version": "0.2.1",
|
|
80
80
|
"entrySkill": "release-help",
|
|
81
81
|
"repo": "ifoohoo/release-skill",
|
|
82
|
-
"ref": "release-skill-v0.1
|
|
82
|
+
"ref": "release-skill-v0.2.1",
|
|
83
83
|
"installPath": "<kimiCodeHome>/plugins/managed/release-skill",
|
|
84
84
|
"planDigest": "<64 位十六进制冻结计划摘要>",
|
|
85
85
|
"payloadDigest": "<64 位十六进制冻结快照载荷摘要>",
|
|
@@ -98,6 +98,24 @@ release-skill 把 Kimi 安装建模为“版本钉死的手动安装 + 可信观
|
|
|
98
98
|
必须解析到 requirement 给出的隔离 `KIMI_CODE_HOME` managed 根之内,否则验证
|
|
99
99
|
失败关闭,Kimi 单元绝不进入 `VERIFIED`。
|
|
100
100
|
|
|
101
|
+
## 安装为 CodeBuddy/WorkBuddy 插件
|
|
102
|
+
|
|
103
|
+
本包还随 `adapters/claude/`、`adapters/codex/`、`adapters/kimi/` 一并提供生成的
|
|
104
|
+
自包含 CodeBuddy/WorkBuddy 适配器 `adapters/workbuddy/`。其清单位于
|
|
105
|
+
`.codebuddy-plugin/plugin.json`(组件——`skills/`、`bin/`、`schemas/`、
|
|
106
|
+
`native/`——按 CodeBuddy 插件规范位于插件根目录),技能通过
|
|
107
|
+
`${CODEBUDDY_PLUGIN_ROOT}` 解析 CLI 入口;CodeBuddy 会像 Claude Code 展开
|
|
108
|
+
`${CLAUDE_PLUGIN_ROOT}` 一样内联展开该变量。
|
|
109
|
+
|
|
110
|
+
CodeBuddy/WorkBuddy 安装目前是**手动**步骤:自动化 marketplace 安装检查点
|
|
111
|
+
(`publish`/`verify`)尚未覆盖 CodeBuddy。使用该适配器时,把 CodeBuddy 指向
|
|
112
|
+
生成的插件目录——单会话可用 `--plugin-dir <path>/adapters/workbuddy` 启动
|
|
113
|
+
CodeBuddy;或把该目录作为你控制的 marketplace 源
|
|
114
|
+
(`codebuddy plugin marketplace add <source>`)再从中安装
|
|
115
|
+
(`codebuddy plugin install release-skill@<marketplace>`,或交互式 `/plugin`
|
|
116
|
+
管理器)。安装后的副本落在 CodeBuddy 的版本化插件缓存中;适配器不引用自身
|
|
117
|
+
目录之外的任何文件。
|
|
118
|
+
|
|
101
119
|
## 开发安装(本地源码)
|
|
102
120
|
|
|
103
121
|
用于开发或尚未公开发布的源码候选:
|
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.1
|
|
5
|
+
<!-- release-skill:release-version: 0.2.1 -->
|
|
6
6
|
Release preparation for Claude Code, 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,
|
|
@@ -11,40 +11,20 @@ reviewed artifacts first and publishes those same artifacts later; it does not
|
|
|
11
11
|
regenerate a README or re-pack the live workspace at the last step.
|
|
12
12
|
|
|
13
13
|
<!-- release-skill:managed:start id=latest-release -->
|
|
14
|
-
**0.1
|
|
15
|
-
|
|
16
|
-
v0.1
|
|
17
|
-
|
|
18
|
-
**
|
|
19
|
-
|
|
20
|
-
- **
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
whole-tree comparison failed every real codex marketplace install; the
|
|
25
|
-
codex consumer transport exemptions widen from `['.git']` to
|
|
26
|
-
`['.git', '.codex-plugin/migrated-command-skills']`. Claude (`.in_use`) and
|
|
27
|
-
Kimi (`.git`) exemptions are unchanged, and the exemption deliberately
|
|
28
|
-
never widens to `.codex-plugin/*` or arbitrary extra files. Verified
|
|
29
|
-
against a real flow-architect install: the installed tree is byte-identical
|
|
30
|
-
to the frozen snapshot except for the migrated-command-skills directory.
|
|
31
|
-
Already-frozen plans reconcile unchanged because the sealed digest, plan
|
|
32
|
-
schema, and prepare-side freezing are untouched.
|
|
33
|
-
- **Multi-segment snapshot exclusions, fail-closed**:
|
|
34
|
-
`computeFrozenSnapshot`'s `excludeRootEntries` now accepts multi-segment
|
|
35
|
-
relative path prefixes naming an exact excluded subtree (required for the
|
|
36
|
-
`.codex-plugin/migrated-command-skills` exemption); single-segment entries
|
|
37
|
-
keep the historical root-only matching. Malformed entries (non-string,
|
|
38
|
-
absolute, `..`, backslash) fail closed: a bad exclusion list is a caller
|
|
39
|
-
bug, not transport metadata.
|
|
40
|
-
- **Regression coverage**: new protocol-level tests cover the root-layout
|
|
41
|
-
codex execute→observe→verify cycle with the CLI-generated
|
|
42
|
-
migrated-command-skills tree present, including byte-tamper and extra-file
|
|
43
|
-
negatives that must still fail closed.
|
|
14
|
+
**0.2.1** (2026-07-25)
|
|
15
|
+
|
|
16
|
+
v0.2.1 adds a fourth platform adapter — workbuddy (CodeBuddy/WorkBuddy plugin) — using a build-only distribution model. The build-adapters generator and platform registry now register workbuddy alongside claude, codex, and kimi, producing a self-contained adapter directory at `adapters/workbuddy/` with a `.codebuddy-plugin/plugin.json` manifest, bundled CLI entry, native prebuilds, schemas, and skills. The sync-public-files and sync-version scripts cover the new manifest, and the adapter-contract standard documents build-only distribution. README and INSTALL (en + zh-CN) register the CodeBuddy installation entry. Installation is manual — the automated marketplace install checkpoint does not cover CodeBuddy yet.
|
|
17
|
+
|
|
18
|
+
**Added**
|
|
19
|
+
|
|
20
|
+
- **WorkBuddy/CodeBuddy build-only distribution adapter**: new fourth platform adapter `workbuddy` registered in the platform registry and build-adapters generator. The generated self-contained adapter directory (`adapters/workbuddy/`) ships a `.codebuddy-plugin/plugin.json` manifest, a bundled CLI entry (`bin/release-skill.bundle.mjs`), native safe-write prebuilds, JSON schemas, and the full skill set. Skills resolve the CLI entry via `${CODEBUDDY_PLUGIN_ROOT}`, which CodeBuddy expands inline.
|
|
21
|
+
- **Build-only distribution model in adapter-contract standard**: both the parent `standards/06-adapter-contract.md` and the public `references/06-adapter-contract.md` now document the build-only distribution scope — the adapter is generated and self-contained, installation is manual, and the automated preflight/execute/observe/verify marketplace checkpoint is not yet wired for CodeBuddy.
|
|
22
|
+
- **sync-public-files and sync-version coverage for `.codebuddy-plugin`**: the `sync-public-files.mjs` script now validates the `.codebuddy-plugin/plugin.json` manifest as a public asset, and `sync-version.mjs` propagates the package version into it. The build-adapters generator produces workbuddy artifacts alongside the existing three platforms.
|
|
23
|
+
- **README and INSTALL registration (en + zh-CN)**: all four public documents (README.md, README.zh-CN.md, INSTALL.md, INSTALL.zh-CN.md) now list the CodeBuddy/WorkBuddy adapter, its manual installation path, and the scope limitation that the automated marketplace install checkpoint does not yet cover CodeBuddy.
|
|
44
24
|
<!-- release-skill:managed:end id=latest-release -->
|
|
45
25
|
|
|
46
26
|
<!-- release-skill:capability:external-write-boundary -->
|
|
47
|
-
> **Current boundary:** v0.1
|
|
27
|
+
> **Current boundary:** v0.2.1 is the current release (v0.1.9 previously held
|
|
48
28
|
> published status before the codex migrated-command-skills fix was added).
|
|
49
29
|
> v0.1.1 completed a real production release to GitHub and npm — the first
|
|
50
30
|
> production-verified milestone — followed by
|
|
@@ -914,6 +894,11 @@ Successful reconcile returns `PUBLISHED`, not `VERIFIED`; only the fresh
|
|
|
914
894
|
Code (no scriptable install API) it emits a version-pinned manual install
|
|
915
895
|
requirement and proves the entry Skill and payload digest only from a trusted
|
|
916
896
|
attestation bound to the frozen plan digest;
|
|
897
|
+
- ships a generated, self-contained CodeBuddy/WorkBuddy adapter
|
|
898
|
+
(`adapters/workbuddy/`, manifest `.codebuddy-plugin/plugin.json`, skills
|
|
899
|
+
rendered with `${CODEBUDDY_PLUGIN_ROOT}`) alongside the Claude/Codex/Kimi
|
|
900
|
+
adapters; CodeBuddy installation is manual — the automated marketplace
|
|
901
|
+
install checkpoint does not cover CodeBuddy yet;
|
|
917
902
|
- distinguishes `PUBLISHED` (writes completed) from `VERIFIED` (remote and
|
|
918
903
|
consumer installation evidence completed);
|
|
919
904
|
- stops subsequent checkpoints on failure and writes a separate run record
|
|
@@ -999,6 +984,8 @@ npm publish may never be hooks/gates; they remain controlled plan actions.
|
|
|
999
984
|
- no overwrite of branches/tags/releases or npm unpublish; create-only refs use
|
|
1000
985
|
`--force-with-lease=<ref>:` solely as an atomic compare-and-set assertion that
|
|
1001
986
|
the ref is absent, while existing branches use an ordinary non-force push;
|
|
987
|
+
- no automated CodeBuddy/WorkBuddy marketplace install checkpoint — the
|
|
988
|
+
generated `adapters/workbuddy/` distribution adapter is installed manually;
|
|
1002
989
|
- no promise of Windows or broad multi-platform native write support;
|
|
1003
990
|
- no hidden commit, push, tag, release, or package publication.
|
|
1004
991
|
|
package/README.zh-CN.md
CHANGED
|
@@ -2,39 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
[English](README.md) · 安装指南:[中文](INSTALL.zh-CN.md) / [English](INSTALL.md)
|
|
4
4
|
|
|
5
|
-
<!-- release-skill:release-version: 0.1
|
|
5
|
+
<!-- release-skill:release-version: 0.2.1 -->
|
|
6
6
|
面向 Claude Code、Codex 和 Kimi Code 的发布准备工具,完整保留人工维护的文件内容。
|
|
7
7
|
|
|
8
8
|
release-skill 帮助维护者回答三个问题:准备发布什么、还有哪些检查未通过、最终发布的内容是什么。它先冻结并供人工审阅,再从同一份冻结产物发布,不会在最后一步重新生成 README、重新打包当前工作区或覆盖人工内容。
|
|
9
9
|
|
|
10
10
|
<!-- release-skill:managed:start id=latest-release -->
|
|
11
|
-
**0.1
|
|
12
|
-
|
|
13
|
-
v0.1
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
- **
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
传输豁免从 `['.git']` 扩为 `['.git', '.codex-plugin/migrated-command-skills']`。
|
|
22
|
-
Claude(`.in_use`)与 Kimi(`.git`)豁免不变,且豁免刻意不扩大为
|
|
23
|
-
`.codex-plugin/*` 或任意多余文件。flow-architect 真实安装实测验证:除
|
|
24
|
-
migrated-command-skills 目录外,安装内容与冻结快照逐字节一致。密封摘要、
|
|
25
|
-
计划 schema 与 prepare 冻结均未改动,已冻结计划可以不变地 reconcile 收口。
|
|
26
|
-
- **多段快照排除,失败关闭**:`computeFrozenSnapshot` 的
|
|
27
|
-
`excludeRootEntries` 现在接受多段相对路径前缀,命名一个精确排除的子树
|
|
28
|
-
(`.codex-plugin/migrated-command-skills` 豁免所必需);单段条目保持历史
|
|
29
|
-
的根直接子项匹配。畸形条目(非字符串、绝对路径、`..`、反斜杠)失败关闭:
|
|
30
|
-
错误的排除清单是调用方 bug,不是传输元数据。
|
|
31
|
-
- **回归覆盖**:新增协议级测试覆盖带 CLI 生成 migrated-command-skills 树的
|
|
32
|
-
根布局 codex execute→observe→verify 完整链路,包含必须仍然失败关闭的字节
|
|
33
|
-
篡改与多余文件负例。
|
|
11
|
+
**0.2.1** (2026-07-25)
|
|
12
|
+
|
|
13
|
+
v0.2.1 新增第四个平台适配器 workbuddy(CodeBuddy/WorkBuddy 插件),采用 build-only 分发模式。build-adapters 生成器与平台注册表现在将 workbuddy 与 claude、codex、kimi 并列登记,在 `adapters/workbuddy/` 产出包含 `.codebuddy-plugin/plugin.json` 清单、打包 CLI 入口、native 预编译、JSON schemas 与全套技能的自包含适配器目录。sync-public-files 与 sync-version 脚本覆盖新清单,适配器契约标准补充 build-only 分发说明。README 与 INSTALL(中英四份)登记 CodeBuddy 安装入口。安装为手动步骤——自动化 marketplace 安装检查点尚未覆盖 CodeBuddy。
|
|
14
|
+
|
|
15
|
+
**新增**
|
|
16
|
+
|
|
17
|
+
- **WorkBuddy/CodeBuddy build-only 分发适配器**:新增第四个平台适配器 `workbuddy`,在平台注册表和 build-adapters 生成器中登记。生成的自包含适配器目录(`adapters/workbuddy/`)附带 `.codebuddy-plugin/plugin.json` 清单、打包 CLI 入口(`bin/release-skill.bundle.mjs`)、native safe-write 预编译、JSON schemas 与全套技能。技能通过 `${CODEBUDDY_PLUGIN_ROOT}` 解析 CLI 入口,CodeBuddy 会内联展开该变量。
|
|
18
|
+
- **适配器契约标准补充 build-only 分发模型**:父级 `standards/06-adapter-contract.md` 与公开 `references/06-adapter-contract.md` 均补充 build-only 分发范围说明——适配器由生成器产出且自包含,安装为手动步骤,CodeBuddy 的自动化 preflight/execute/observe/verify marketplace 检查点尚未接入。
|
|
19
|
+
- **sync-public-files 与 sync-version 覆盖 `.codebuddy-plugin`**:`sync-public-files.mjs` 脚本现在将 `.codebuddy-plugin/plugin.json` 清单作为公开资产校验,`sync-version.mjs` 将包版本同步到该清单。build-adapters 生成器将 workbuddy 产物与既有三平台并列生成。
|
|
20
|
+
- **README 与 INSTALL 登记(中英四份)**:四份公开文档(README.md、README.zh-CN.md、INSTALL.md、INSTALL.zh-CN.md)均列出 CodeBuddy/WorkBuddy 适配器、其手动安装路径以及自动化 marketplace 安装检查点尚未覆盖 CodeBuddy 的范围限制。
|
|
34
21
|
<!-- release-skill:managed:end id=latest-release -->
|
|
35
22
|
|
|
36
23
|
<!-- release-skill:capability:external-write-boundary -->
|
|
37
|
-
> **当前边界:** v0.1
|
|
24
|
+
> **当前边界:** v0.2.1 是当前发布版本(v0.1.9 曾处于已发布、待独立验证状态)。
|
|
38
25
|
> v0.1.1 已完成 GitHub 与 npm 的
|
|
39
26
|
> 真实生产发布,是首次生产验证的历史里程碑,并从冻结 Git ref 完成精确 npm
|
|
40
27
|
> 安装及 Claude/Codex 消费者安装验证;“当前发布版本”与“首次生产验证里程碑”
|
|
@@ -608,6 +595,7 @@ reconcile 成功只返回 `PUBLISHED`,不会返回 `VERIFIED`;只有全新
|
|
|
608
595
|
- 用计划摘要、有效期和显式 action allowlist 绑定人工批准;
|
|
609
596
|
- 从冻结 Git object 和 npm tarball 发布,并核对远端 commit/tree/tag/integrity;
|
|
610
597
|
- 从冻结 Git ref 安装配置的 Claude/Codex 插件,证明入口 Skill 和安装载荷摘要;对 Kimi Code(无可脚本化安装接口)产出版本钉死的手动安装要求,仅依据绑定到冻结计划摘要的可信证明来确认入口 Skill 和载荷摘要;
|
|
598
|
+
- 随 Claude/Codex/Kimi 适配器一并提供生成的自包含 CodeBuddy/WorkBuddy 适配器(`adapters/workbuddy/`,清单 `.codebuddy-plugin/plugin.json`,技能以 `${CODEBUDDY_PLUGIN_ROOT}` 渲染);CodeBuddy 安装为手动步骤——自动化 marketplace 安装检查点尚未覆盖 CodeBuddy;
|
|
611
599
|
- 明确区分 `PUBLISHED`(外写完成)与 `VERIFIED`(远端和消费者安装证据完成);
|
|
612
600
|
- 中途失败停止后续动作,记录独立 run;不修改冻结 plan,不自动撤销已成功动作。
|
|
613
601
|
|
|
@@ -659,6 +647,7 @@ push、tag、默认分支修改、GitHub Release 和 npm publish 不能放进 ho
|
|
|
659
647
|
- 不声称已经替项目完成真实生产 canary;
|
|
660
648
|
- `prepare --online` 只观察 bound 前序基线;目标唯一性由 publish 全局预检完成;
|
|
661
649
|
- 不覆盖已有 branch/tag/Release,不 unpublish npm;
|
|
650
|
+
- 不提供自动化 CodeBuddy/WorkBuddy marketplace 安装检查点——生成的 `adapters/workbuddy/` 分发适配器需手动安装;
|
|
662
651
|
- 不承诺 Windows 或广泛的跨平台原生写入;
|
|
663
652
|
- 不会隐藏地 commit、push、打 tag、创建 Release 或发布包。
|
|
664
653
|
|