skill-family-harness-node 0.22.0 → 0.23.0
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/CHANGELOG.md +16 -0
- package/CHANGELOG.zh-CN.md +16 -0
- package/README.md +11 -15
- package/README.zh-CN.md +11 -15
- package/package.json +2 -2
- package/release-notes/0.23.0.yaml +17 -0
- package/src/version.mjs +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
<!-- release-skill:changelog:start version=0.23.0 locale=en baseline=sha256:e4a97088bca9e0c1f48f2bfd5860dbd8be041a9d0a5e42051422767b3b284303 -->
|
|
4
|
+
## [0.23.0] - 2026-09-26
|
|
5
|
+
|
|
6
|
+
Harness 0.23.0 aligns its package coordinate with Foundation 0.23.0 and adds no runtime mechanism. This note records the local lockstep candidate and does not claim remote publication or real-host acceptance.
|
|
7
|
+
|
|
8
|
+
### Changed
|
|
9
|
+
|
|
10
|
+
- Aligns package identity and `FOUNDATION_PACKAGE_VERSION` with the lockstep Foundation 0.23.0 coordinate. The exported file-set apply, recovery, and material-cleanup surface, and the bounded state-store lock inspection and recovery extension, stay as published in 0.22.0.
|
|
11
|
+
- Adds no root export, locking algorithm, directory operation, or platform qualification.
|
|
12
|
+
|
|
13
|
+
### Upgrade Notes
|
|
14
|
+
|
|
15
|
+
Pin all three Foundation packages to exactly 0.23.0. Callers keep the 0.22.0 Harness mechanism. Contracts remains specification 1.20.0. Remote publication and real-host verification are outside this note.
|
|
16
|
+
<!-- release-skill:changelog:end version=0.23.0 locale=en -->
|
|
17
|
+
|
|
18
|
+
|
|
3
19
|
<!-- release-skill:changelog:start version=0.22.0 locale=en baseline=sha256:704d9a47cc28bc1f7358e2817b266cbc83c27a5d3bded306299705a59f7bb05b -->
|
|
4
20
|
## [0.22.0] - 2026-09-18
|
|
5
21
|
|
package/CHANGELOG.zh-CN.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# 变更日志
|
|
2
2
|
|
|
3
|
+
<!-- release-skill:changelog:start version=0.23.0 locale=zh-CN baseline=sha256:4cfe7a3090bb5589fdbfec555506c0f6a6c668aa872c85c627153e7efa8a6371 -->
|
|
4
|
+
## [0.23.0] - 2026-09-26
|
|
5
|
+
|
|
6
|
+
Harness 0.23.0 与 Foundation 0.23.0 对齐包坐标,不增加运行时机制。本说明只记录本地锁步候选,不表示已经远端发布,也不表示真实宿主已经接受。
|
|
7
|
+
|
|
8
|
+
### 变更
|
|
9
|
+
|
|
10
|
+
- 包身份和 `FOUNDATION_PACKAGE_VERSION` 与 Foundation 0.23.0 锁步坐标对齐。0.22.0 已发布的文件集合应用、恢复和材料清理导出,以及状态底座上有界的锁观察与锁恢复扩展,保持不变。
|
|
11
|
+
- 不新增包根导出、锁算法、目录操作或平台资格。
|
|
12
|
+
|
|
13
|
+
### 升级说明
|
|
14
|
+
|
|
15
|
+
三个 Foundation 包须一起精确锁定到 0.23.0。调用方继续使用 0.22.0 的 Harness 机制。Contracts 规格仍是 1.20.0。远端发布和真实宿主验证不在本说明范围内。
|
|
16
|
+
<!-- release-skill:changelog:end version=0.23.0 locale=zh-CN -->
|
|
17
|
+
|
|
18
|
+
|
|
3
19
|
<!-- release-skill:changelog:start version=0.22.0 locale=zh-CN baseline=sha256:c06c001717b465cbff9ff239961fc3c873a2c0d39e09594ed885b84323da5bb5 -->
|
|
4
20
|
## [0.22.0] - 2026-09-18
|
|
5
21
|
|
package/README.md
CHANGED
|
@@ -4,27 +4,23 @@
|
|
|
4
4
|
|
|
5
5
|
# skill-family-harness-node
|
|
6
6
|
|
|
7
|
-
<!-- release-skill:release-version: 0.
|
|
7
|
+
<!-- release-skill:release-version: 0.23.0 -->
|
|
8
8
|
|
|
9
9
|
The **single default Node implementation** of the Contracts mechanism protocol. This is a thin runtime: it only implements the mechanism protocol, introduces no business semantics, and does not provide a second-language implementation.
|
|
10
10
|
|
|
11
11
|
<!-- release-skill:managed:start id=latest-release -->
|
|
12
|
-
**0.
|
|
12
|
+
**0.23.0** (2026-09-26)
|
|
13
13
|
|
|
14
|
-
Harness 0.
|
|
15
|
-
|
|
16
|
-
**Added**
|
|
17
|
-
|
|
18
|
-
- Adds `applyFileSet`, `recoverFileSet`, and `pruneFileSetRecovery` as package-root exports of `skill-family-harness-node`, composing the existing strict single-file primitives, bound read, and durable state store.
|
|
19
|
-
- Adds `inspectStateStoreLock` and `recoverStateStoreLock` so a caller can observe lock state and repair an interrupted state-store operation without clearing the store's internal files.
|
|
14
|
+
Harness 0.23.0 aligns its package coordinate with Foundation 0.23.0 and adds no runtime mechanism. This note records the local lockstep candidate and does not claim remote publication or real-host acceptance.
|
|
20
15
|
|
|
21
16
|
**Changed**
|
|
22
17
|
|
|
23
|
-
-
|
|
18
|
+
- Aligns package identity and `FOUNDATION_PACKAGE_VERSION` with the lockstep Foundation 0.23.0 coordinate. The exported file-set apply, recovery, and material-cleanup surface, and the bounded state-store lock inspection and recovery extension, stay as published in 0.22.0.
|
|
19
|
+
- Adds no root export, locking algorithm, directory operation, or platform qualification.
|
|
24
20
|
|
|
25
21
|
**Upgrade Notes**
|
|
26
22
|
|
|
27
|
-
Pin all three Foundation packages to exactly 0.
|
|
23
|
+
Pin all three Foundation packages to exactly 0.23.0. Callers keep the 0.22.0 Harness mechanism. Contracts remains specification 1.20.0. Remote publication and real-host verification are outside this note.
|
|
28
24
|
<!-- release-skill:managed:end id=latest-release -->
|
|
29
25
|
|
|
30
26
|
## Problem It Solves
|
|
@@ -37,7 +33,7 @@ The Harness consumes `skill-family-contracts` (a workspace dependency), reusing
|
|
|
37
33
|
|
|
38
34
|
## Installation and Minimal Example
|
|
39
35
|
|
|
40
|
-
Version 0.
|
|
36
|
+
Version 0.23.0 is the local source candidate and is not yet formally published. Version 0.22.0 remains the published package. Build all three tarballs into one temporary directory and install those exact files for a candidate check:
|
|
41
37
|
|
|
42
38
|
```sh
|
|
43
39
|
pack_dir="$(mktemp -d)"
|
|
@@ -45,13 +41,13 @@ pack_dir="$(mktemp -d)"
|
|
|
45
41
|
(cd packages/skill-family-harness-node && pnpm pack --pack-destination "$pack_dir")
|
|
46
42
|
(cd packages/skill-family-engineering-kit && pnpm pack --pack-destination "$pack_dir")
|
|
47
43
|
mkdir "$pack_dir/consumer" && (cd "$pack_dir/consumer" && npm init -y)
|
|
48
|
-
(cd "$pack_dir/consumer" && npm install "$pack_dir/skill-family-contracts-0.
|
|
44
|
+
(cd "$pack_dir/consumer" && npm install "$pack_dir/skill-family-contracts-0.23.0.tgz" "$pack_dir/skill-family-harness-node-0.23.0.tgz" "$pack_dir/skill-family-engineering-kit-0.23.0.tgz")
|
|
49
45
|
```
|
|
50
46
|
|
|
51
|
-
After
|
|
47
|
+
After 0.23.0 is formally published, use the registry coordinate:
|
|
52
48
|
|
|
53
49
|
```sh
|
|
54
|
-
npm install skill-family-harness-node@0.
|
|
50
|
+
npm install skill-family-harness-node@0.23.0
|
|
55
51
|
npm info skill-family-harness-node --help
|
|
56
52
|
```
|
|
57
53
|
|
|
@@ -291,4 +287,4 @@ When the actual threat includes malicious concurrency, return a minimal upstream
|
|
|
291
287
|
|
|
292
288
|
The separate candidate `observeExecutableIdentity({ boundRoots, lookup, interpreterPolicy? })` provides a read-only point-in-time observation of only the caller-explicit roots and lookup paths, for an immediate re-observation before launch. When an `/usr/bin/env` shebang resolves an interpreter through explicit `pathEntries`, the observation preserves the interpreter candidate's complete symlink chain rather than collapsing it to the final file. It is not part of `host-adapter` and does not prove wrapper control flow, ambient `PATH`, fd-exec/kernel image, signature trust, cross-call caching, host support/lifecycle, or domain acceptance; the caller owns those semantics. The candidate entry alone does not qualify a host.
|
|
293
289
|
|
|
294
|
-
Version 0.
|
|
290
|
+
Version 0.23.0 is the local source candidate and is not yet formally published. Version 0.22.0 remains the published package. Remote availability of 0.23.0 must be established by the corresponding release-skill post-release evidence. Consume the three locally verified tarballs for candidate checks; a version marker, unit test, or successful install is not complete contract integration, migration completion, or real-host qualification.
|
package/README.zh-CN.md
CHANGED
|
@@ -5,27 +5,23 @@
|
|
|
5
5
|
|
|
6
6
|
# skill-family-harness-node
|
|
7
7
|
|
|
8
|
-
<!-- release-skill:release-version: 0.
|
|
8
|
+
<!-- release-skill:release-version: 0.23.0 -->
|
|
9
9
|
|
|
10
10
|
Contracts 机制协议的**唯一默认 Node 实现**。这是一个薄运行时(thin runtime):只实现机制协议,不引入业务语义,不做第二语言实现。
|
|
11
11
|
|
|
12
12
|
<!-- release-skill:managed:start id=latest-release -->
|
|
13
|
-
**0.
|
|
13
|
+
**0.23.0** (2026-09-26)
|
|
14
14
|
|
|
15
|
-
Harness 0.
|
|
16
|
-
|
|
17
|
-
**新增**
|
|
18
|
-
|
|
19
|
-
- 增加 `applyFileSet`、`recoverFileSet`、`pruneFileSetRecovery` 三个 `skill-family-harness-node` 包根导出,组合既有的严格单文件原语、绑定读取和持久状态底座。
|
|
20
|
-
- 增加 `inspectStateStoreLock` 与 `recoverStateStoreLock`,调用方可以观察锁状态并修复被中断的状态底座操作,而不清理其内部文件。
|
|
15
|
+
Harness 0.23.0 与 Foundation 0.23.0 对齐包坐标,不增加运行时机制。本说明只记录本地锁步候选,不表示已经远端发布,也不表示真实宿主已经接受。
|
|
21
16
|
|
|
22
17
|
**变更**
|
|
23
18
|
|
|
24
|
-
-
|
|
19
|
+
- 包身份和 `FOUNDATION_PACKAGE_VERSION` 与 Foundation 0.23.0 锁步坐标对齐。0.22.0 已发布的文件集合应用、恢复和材料清理导出,以及状态底座上有界的锁观察与锁恢复扩展,保持不变。
|
|
20
|
+
- 不新增包根导出、锁算法、目录操作或平台资格。
|
|
25
21
|
|
|
26
22
|
**升级说明**
|
|
27
23
|
|
|
28
|
-
三个 Foundation 包须一起精确锁定到 0.22.0
|
|
24
|
+
三个 Foundation 包须一起精确锁定到 0.23.0。调用方继续使用 0.22.0 的 Harness 机制。Contracts 规格仍是 1.20.0。远端发布和真实宿主验证不在本说明范围内。
|
|
29
25
|
<!-- release-skill:managed:end id=latest-release -->
|
|
30
26
|
|
|
31
27
|
## 解决的问题
|
|
@@ -38,7 +34,7 @@ Harness 消费 `skill-family-contracts`(工作区依赖),复用其方言
|
|
|
38
34
|
|
|
39
35
|
## 安装和最小示例
|
|
40
36
|
|
|
41
|
-
0.22.0
|
|
37
|
+
0.23.0 是尚未正式发布的本地源码候选;0.22.0 是已发布包。候选验证先把三个包分别打入同一个临时目录,再安装这三个精确 tarball:
|
|
42
38
|
|
|
43
39
|
```sh
|
|
44
40
|
pack_dir="$(mktemp -d)"
|
|
@@ -46,13 +42,13 @@ pack_dir="$(mktemp -d)"
|
|
|
46
42
|
(cd packages/skill-family-harness-node && pnpm pack --pack-destination "$pack_dir")
|
|
47
43
|
(cd packages/skill-family-engineering-kit && pnpm pack --pack-destination "$pack_dir")
|
|
48
44
|
mkdir "$pack_dir/consumer" && (cd "$pack_dir/consumer" && npm init -y)
|
|
49
|
-
(cd "$pack_dir/consumer" && npm install "$pack_dir/skill-family-contracts-0.
|
|
45
|
+
(cd "$pack_dir/consumer" && npm install "$pack_dir/skill-family-contracts-0.23.0.tgz" "$pack_dir/skill-family-harness-node-0.23.0.tgz" "$pack_dir/skill-family-engineering-kit-0.23.0.tgz")
|
|
50
46
|
```
|
|
51
47
|
|
|
52
|
-
|
|
48
|
+
0.23.0 正式发布后,再使用对应的 registry 坐标:
|
|
53
49
|
|
|
54
50
|
```sh
|
|
55
|
-
npm install skill-family-harness-node@0.
|
|
51
|
+
npm install skill-family-harness-node@0.23.0
|
|
56
52
|
npm info skill-family-harness-node --help
|
|
57
53
|
```
|
|
58
54
|
|
|
@@ -290,4 +286,4 @@ const store = await recoverStateStoreLock(stateStoreRoot, {
|
|
|
290
286
|
|
|
291
287
|
另一个独立候选 `observeExecutableIdentity({ boundRoots, lookup, interpreterPolicy? })` 只对调用方显式提供的根和查找路径做逐次只读观察,供正式启动前紧邻重观察。`/usr/bin/env` shebang 通过显式 `pathEntries` 找到解释器时,结果保留解释器候选的完整 symlink chain,不折叠成最终文件。它不属于 `host-adapter`,也不证明 wrapper 控制流、ambient `PATH`、fd-exec/内核映像、签名信任、跨调用缓存、宿主支持/生命周期或领域接受;这些语义仍由调用方负责。候选入口存在不等于宿主已获资格。
|
|
292
288
|
|
|
293
|
-
0.22.0
|
|
289
|
+
0.23.0 是尚未正式发布的本地源码候选;0.22.0 是已发布包。0.23.0 的远端可用性须由对应的 release-skill 发布后证据证明。候选检查使用本地已验证的三包 tarball;版本标记、单元测试或安装成功都不等于契约接入完成、迁移完成或真实宿主资格。
|
package/package.json
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"@pnpm/lockfile.fs": "1001.1.35",
|
|
12
12
|
"ipaddr.js": "2.5.0",
|
|
13
|
-
"skill-family-contracts": "0.
|
|
13
|
+
"skill-family-contracts": "0.23.0",
|
|
14
14
|
"yaml": "2.9.0"
|
|
15
15
|
},
|
|
16
16
|
"description": "Thin Node.js mechanism runtime for Skill Family engineering contracts.",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"url": "https://github.com/ifoohoo/skill-family-harness-node.git"
|
|
50
50
|
},
|
|
51
51
|
"type": "module",
|
|
52
|
-
"version": "0.
|
|
52
|
+
"version": "0.23.0",
|
|
53
53
|
"scripts": {
|
|
54
54
|
"check": "node --test",
|
|
55
55
|
"test": "node --test"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
version: 0.23.0
|
|
2
|
+
date: 2026-09-26
|
|
3
|
+
locales:
|
|
4
|
+
en:
|
|
5
|
+
summary: Harness 0.23.0 aligns its package coordinate with Foundation 0.23.0 and adds no runtime mechanism. This note records the local lockstep candidate and does not claim remote publication or real-host acceptance.
|
|
6
|
+
changes:
|
|
7
|
+
changed:
|
|
8
|
+
- Aligns package identity and `FOUNDATION_PACKAGE_VERSION` with the lockstep Foundation 0.23.0 coordinate. The exported file-set apply, recovery, and material-cleanup surface, and the bounded state-store lock inspection and recovery extension, stay as published in 0.22.0.
|
|
9
|
+
- Adds no root export, locking algorithm, directory operation, or platform qualification.
|
|
10
|
+
upgradeNotes: Pin all three Foundation packages to exactly 0.23.0. Callers keep the 0.22.0 Harness mechanism. Contracts remains specification 1.20.0. Remote publication and real-host verification are outside this note.
|
|
11
|
+
zh-CN:
|
|
12
|
+
summary: Harness 0.23.0 与 Foundation 0.23.0 对齐包坐标,不增加运行时机制。本说明只记录本地锁步候选,不表示已经远端发布,也不表示真实宿主已经接受。
|
|
13
|
+
changes:
|
|
14
|
+
changed:
|
|
15
|
+
- 包身份和 `FOUNDATION_PACKAGE_VERSION` 与 Foundation 0.23.0 锁步坐标对齐。0.22.0 已发布的文件集合应用、恢复和材料清理导出,以及状态底座上有界的锁观察与锁恢复扩展,保持不变。
|
|
16
|
+
- 不新增包根导出、锁算法、目录操作或平台资格。
|
|
17
|
+
upgradeNotes: 三个 Foundation 包须一起精确锁定到 0.23.0。调用方继续使用 0.22.0 的 Harness 机制。Contracts 规格仍是 1.20.0。远端发布和真实宿主验证不在本说明范围内。
|
package/src/version.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/** Exact Foundation release coordinate shared by the public Harness exports. */
|
|
2
|
-
export const FOUNDATION_PACKAGE_VERSION = "0.
|
|
2
|
+
export const FOUNDATION_PACKAGE_VERSION = "0.23.0";
|