release-skill 0.8.0 → 0.9.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +2 -2
- package/.kimi-plugin/plugin.json +1 -1
- package/CHANGELOG.md +65 -7
- package/INSTALL.md +14 -2
- package/INSTALL.zh-CN.md +12 -2
- package/README.md +51 -31
- package/README.zh-CN.md +33 -20
- package/adapters/claude/.claude-plugin/marketplace.json +1 -1
- package/adapters/claude/.claude-plugin/plugin.json +1 -1
- package/adapters/claude/bin/error-codes.json +1 -1
- package/adapters/claude/bin/foundation-resource-binding.json +1 -1
- package/adapters/claude/bin/prebuild-manifest.json +8 -4
- package/adapters/claude/bin/prebuilds/darwin-arm64/bound_read.darwin-arm64.node +0 -0
- package/adapters/claude/bin/prebuilds/darwin-x64/bound_read.darwin-x64.node +0 -0
- package/adapters/claude/bin/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node +0 -0
- package/adapters/claude/bin/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node +0 -0
- package/adapters/claude/bin/registry.json +22 -1
- package/adapters/claude/bin/release-skill-local-finish.mjs +4 -0
- package/adapters/claude/bin/release-skill.bundle.mjs +7152 -4231
- package/adapters/claude/bin/rules.json +1 -1
- package/adapters/claude/schemas/release-plan.schema.json +43 -5
- package/adapters/claude/schemas/release-run.schema.json +35 -1
- package/adapters/claude/skills/release-finish/SKILL.md +65 -0
- package/adapters/claude/skills/release-verify/SKILL.md +6 -1
- package/adapters/claude/src/schemas/filesystem-tree-observation.schema.json +55 -0
- package/adapters/claude/src/schemas/host-verification-result.schema.json +2 -2
- package/adapters/claude/src/schemas/plugin-verification-request.schema.json +374 -0
- package/adapters/claude/src/schemas/plugin-verification-result.schema.json +799 -0
- package/adapters/claude/src/schemas/watchdog-termination-envelope.schema.json +16 -0
- package/adapters/codex/.codex-plugin/plugin.json +2 -2
- package/adapters/codex/bin/error-codes.json +1 -1
- package/adapters/codex/bin/foundation-resource-binding.json +1 -1
- package/adapters/codex/bin/prebuild-manifest.json +8 -4
- package/adapters/codex/bin/prebuilds/darwin-arm64/bound_read.darwin-arm64.node +0 -0
- package/adapters/codex/bin/prebuilds/darwin-x64/bound_read.darwin-x64.node +0 -0
- package/adapters/codex/bin/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node +0 -0
- package/adapters/codex/bin/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node +0 -0
- package/adapters/codex/bin/registry.json +22 -1
- package/adapters/codex/bin/release-skill-local-finish.mjs +4 -0
- package/adapters/codex/bin/release-skill.bundle.mjs +7152 -4231
- package/adapters/codex/bin/rules.json +1 -1
- package/adapters/codex/schemas/release-plan.schema.json +43 -5
- package/adapters/codex/schemas/release-run.schema.json +35 -1
- package/adapters/codex/skills/release-finish/SKILL.md +72 -0
- package/adapters/codex/skills/release-verify/SKILL.md +6 -1
- package/adapters/codex/src/schemas/filesystem-tree-observation.schema.json +55 -0
- package/adapters/codex/src/schemas/host-verification-result.schema.json +2 -2
- package/adapters/codex/src/schemas/plugin-verification-request.schema.json +374 -0
- package/adapters/codex/src/schemas/plugin-verification-result.schema.json +799 -0
- package/adapters/codex/src/schemas/watchdog-termination-envelope.schema.json +16 -0
- package/adapters/kimi/.kimi-plugin/plugin.json +1 -1
- package/adapters/kimi/bin/error-codes.json +1 -1
- package/adapters/kimi/bin/foundation-resource-binding.json +1 -1
- package/adapters/kimi/bin/prebuild-manifest.json +8 -4
- package/adapters/kimi/bin/prebuilds/darwin-arm64/bound_read.darwin-arm64.node +0 -0
- package/adapters/kimi/bin/prebuilds/darwin-x64/bound_read.darwin-x64.node +0 -0
- package/adapters/kimi/bin/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node +0 -0
- package/adapters/kimi/bin/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node +0 -0
- package/adapters/kimi/bin/registry.json +22 -1
- package/adapters/kimi/bin/release-skill-local-finish.mjs +4 -0
- package/adapters/kimi/bin/release-skill.bundle.mjs +7152 -4231
- package/adapters/kimi/bin/rules.json +1 -1
- package/adapters/kimi/schemas/release-plan.schema.json +43 -5
- package/adapters/kimi/schemas/release-run.schema.json +35 -1
- package/adapters/kimi/skills/release-finish/SKILL.md +72 -0
- package/adapters/kimi/skills/release-verify/SKILL.md +6 -1
- package/adapters/kimi/src/schemas/filesystem-tree-observation.schema.json +55 -0
- package/adapters/kimi/src/schemas/host-verification-result.schema.json +2 -2
- package/adapters/kimi/src/schemas/plugin-verification-request.schema.json +374 -0
- package/adapters/kimi/src/schemas/plugin-verification-result.schema.json +799 -0
- package/adapters/kimi/src/schemas/watchdog-termination-envelope.schema.json +16 -0
- package/adapters/workbuddy/.codebuddy-plugin/plugin.json +1 -1
- package/adapters/workbuddy/bin/error-codes.json +1 -1
- package/adapters/workbuddy/bin/foundation-resource-binding.json +1 -1
- package/adapters/workbuddy/bin/prebuild-manifest.json +8 -4
- package/adapters/workbuddy/bin/prebuilds/darwin-arm64/bound_read.darwin-arm64.node +0 -0
- package/adapters/workbuddy/bin/prebuilds/darwin-x64/bound_read.darwin-x64.node +0 -0
- package/adapters/workbuddy/bin/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node +0 -0
- package/adapters/workbuddy/bin/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node +0 -0
- package/adapters/workbuddy/bin/registry.json +22 -1
- package/adapters/workbuddy/bin/release-skill-local-finish.mjs +4 -0
- package/adapters/workbuddy/bin/release-skill.bundle.mjs +7152 -4231
- package/adapters/workbuddy/bin/rules.json +1 -1
- package/adapters/workbuddy/schemas/release-plan.schema.json +43 -5
- package/adapters/workbuddy/schemas/release-run.schema.json +35 -1
- package/adapters/workbuddy/skills/release-finish/SKILL.md +65 -0
- package/adapters/workbuddy/skills/release-verify/SKILL.md +6 -1
- package/adapters/workbuddy/src/schemas/filesystem-tree-observation.schema.json +55 -0
- package/adapters/workbuddy/src/schemas/host-verification-result.schema.json +2 -2
- package/adapters/workbuddy/src/schemas/plugin-verification-request.schema.json +374 -0
- package/adapters/workbuddy/src/schemas/plugin-verification-result.schema.json +799 -0
- package/adapters/workbuddy/src/schemas/watchdog-termination-envelope.schema.json +16 -0
- package/bin/error-codes.json +1 -1
- package/bin/foundation-resource-binding.json +1 -1
- package/bin/prebuild-manifest.json +8 -4
- package/bin/prebuilds/darwin-arm64/bound_read.darwin-arm64.node +0 -0
- package/bin/prebuilds/darwin-x64/bound_read.darwin-x64.node +0 -0
- package/bin/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node +0 -0
- package/bin/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node +0 -0
- package/bin/registry.json +22 -1
- package/bin/release-skill-cli.mjs +126 -1
- package/bin/release-skill-local-finish.mjs +4 -0
- package/bin/release-skill.bundle.mjs +7152 -4231
- package/bin/rules.json +1 -1
- package/package.json +4 -4
- package/platform-manifest.json +30 -4
- package/schemas/release-plan.schema.json +43 -5
- package/schemas/release-run.schema.json +35 -1
- package/skills/release-finish/SKILL.md +65 -0
- package/skills/release-verify/SKILL.md +6 -1
- package/skills-src/release-finish/SKILL.md +65 -0
- package/skills-src/release-verify/SKILL.md +6 -1
- package/src/commands/approve.mjs +14 -2
- package/src/commands/distribute.mjs +562 -321
- package/src/commands/post-release-local.mjs +611 -0
- package/src/commands/postverify.mjs +262 -155
- package/src/commands/prepare.mjs +83 -57
- package/src/commands/publish.mjs +11 -10
- package/src/commands/reconcile.mjs +11 -10
- package/src/commands/setup.mjs +26 -13
- package/src/commands/ship.mjs +45 -12
- package/src/commands/verify.mjs +81 -18
- package/src/core/adoption-assessment.mjs +0 -3
- package/src/core/approval.mjs +11 -8
- package/src/core/foundation-plugin-verification.mjs +247 -0
- package/src/core/hooks.mjs +0 -16
- package/src/core/plan.mjs +19 -11
- package/src/core/postpublish-approval.mjs +12 -2
- package/src/core/postpublish-bundle.mjs +51 -13
- package/src/core/postpublish.mjs +146 -6
- package/src/core/preset-executor.mjs +53 -0
- package/src/core/proposal-inbox.mjs +91 -27
- package/src/core/recovery.mjs +27 -12
- package/src/core/skill-resource-closure.mjs +8 -4
- package/src/producers/build-adapters.mjs +10 -1
- package/src/producers/foundation-resource-projection.mjs +3 -3
- package/src/schemas/filesystem-tree-observation.schema.json +55 -0
- package/src/schemas/host-verification-result.schema.json +2 -2
- package/src/schemas/plugin-verification-request.schema.json +374 -0
- package/src/schemas/plugin-verification-result.schema.json +799 -0
- package/src/schemas/watchdog-termination-envelope.schema.json +16 -0
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
"completed",
|
|
42
42
|
"child_exit",
|
|
43
43
|
"context_budget_exhausted",
|
|
44
|
+
"output_limit_exceeded",
|
|
44
45
|
null
|
|
45
46
|
]
|
|
46
47
|
},
|
|
@@ -55,6 +56,7 @@
|
|
|
55
56
|
"no_terminal_result",
|
|
56
57
|
"residual_process_group",
|
|
57
58
|
"context_budget_exhausted",
|
|
59
|
+
"output_limit_exceeded",
|
|
58
60
|
null
|
|
59
61
|
]
|
|
60
62
|
},
|
|
@@ -119,6 +121,8 @@
|
|
|
119
121
|
"terminalIdentity": { "type": "string" },
|
|
120
122
|
"terminalStatus": { "type": "string" },
|
|
121
123
|
"residualGroupCleanupCompleted": { "type": "boolean" },
|
|
124
|
+
"outputByteLimits": { "$ref": "#/$defs/outputByteLimits" },
|
|
125
|
+
"outputLimitExceeded": { "enum": ["stdout", "stderr", null] },
|
|
122
126
|
"guarantees": {
|
|
123
127
|
"type": "array",
|
|
124
128
|
"minItems": 1,
|
|
@@ -136,5 +140,17 @@
|
|
|
136
140
|
}
|
|
137
141
|
}
|
|
138
142
|
}
|
|
143
|
+
},
|
|
144
|
+
"$defs": {
|
|
145
|
+
"outputByteLimits": {
|
|
146
|
+
"description": "Optional per-stream raw-byte caps for bounded subprocess supervision (FND-DES-014 section 6.2). A closed object with at least one stream; each value is an integer byte count between 0 (no bytes allowed) and Number.MAX_SAFE_INTEGER. Absent streams stay unlimited. The mechanism counts raw Buffer.length bytes per data event; the first stream whose cumulative count exceeds its cap latches the fact and enters the existing termination path.",
|
|
147
|
+
"type": "object",
|
|
148
|
+
"additionalProperties": false,
|
|
149
|
+
"minProperties": 1,
|
|
150
|
+
"properties": {
|
|
151
|
+
"stdout": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 },
|
|
152
|
+
"stderr": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
|
|
153
|
+
}
|
|
154
|
+
}
|
|
139
155
|
}
|
|
140
156
|
}
|
package/bin/error-codes.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"kind":"skill-family.foundation-resource-binding","resources":[{"package":"skill-family-contracts","path":"bin/error-codes.json","rel":"src/error-codes.json","sha256":"4a2024c2637c33043acf1c9182924d1f56757ecef22c639b51600123bdd2fde4","size":5813},{"package":"skill-family-contracts","path":"bin/foundation-legal/skill-family-contracts/LICENSE","rel":"LICENSE","sha256":"4b1d761838e4612bac9c52ae388d261c8546f78d98c18d59c8e2babacfb96df0","size":11436},{"package":"skill-family-contracts","path":"bin/foundation-legal/skill-family-contracts/NOTICE","rel":"NOTICE","sha256":"0cdc3383ff384f6911679e601c4f541bc9b230a785c8aa11c2e23609618b6ac4","size":390},{"package":"skill-family-engineering-kit","path":"bin/foundation-legal/skill-family-engineering-kit/LICENSE","rel":"LICENSE","sha256":"4b1d761838e4612bac9c52ae388d261c8546f78d98c18d59c8e2babacfb96df0","size":11436},{"package":"skill-family-engineering-kit","path":"bin/foundation-legal/skill-family-engineering-kit/NOTICE","rel":"NOTICE","sha256":"0cdc3383ff384f6911679e601c4f541bc9b230a785c8aa11c2e23609618b6ac4","size":390},{"package":"skill-family-engineering-kit","path":"bin/foundation-legal/skill-family-engineering-kit/THIRD_PARTY_NOTICES","rel":"THIRD_PARTY_NOTICES","sha256":"2510a1fd30bf6e9c723b8b1e42d00bbe3d471747394475e841b4c85474d67973","size":6455},{"package":"skill-family-harness-node","path":"bin/foundation-legal/skill-family-harness-node/LICENSE","rel":"LICENSE","sha256":"4b1d761838e4612bac9c52ae388d261c8546f78d98c18d59c8e2babacfb96df0","size":11436},{"package":"skill-family-harness-node","path":"bin/foundation-legal/skill-family-harness-node/NOTICE","rel":"NOTICE","sha256":"0cdc3383ff384f6911679e601c4f541bc9b230a785c8aa11c2e23609618b6ac4","size":390},{"package":"skill-family-harness-node","path":"bin/foundation-legal/skill-family-harness-node/native-NOTICE","rel":"src/native/NOTICE","sha256":"9b5b2aa89db2ad1bfc1971789992160bc0b9ca3cd37411701d11b9a7ff13fac5","size":116},{"package":"skill-family-contracts","path":"bin/kernel-protocol.json","rel":"src/kernel-protocol.json","sha256":"7e0d0bb7223032e642f71af7125a37f0d9a32965b52f1d096cb7ff9a49b19864","size":2422},{"package":"skill-family-engineering-kit","path":"bin/license-texts/Apache-2.0.txt","rel":"src/license-texts/Apache-2.0.txt","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","size":11357},{"package":"skill-family-engineering-kit","path":"bin/license-texts/MIT.txt","rel":"src/license-texts/MIT.txt","sha256":"56016cbac6c1d3f565fc854356f6781757254ea34be30a0b75869ae2df0118b6","size":1081},{"package":"skill-family-harness-node","path":"bin/prebuild-manifest.json","rel":"src/native/prebuild-manifest.json","sha256":"1ded122cb8692d7ec6038bf79b11baaa330d94e3407cff159b9d94f61ee8337e","size":2074},{"package":"skill-family-harness-node","path":"bin/prebuilds/darwin-arm64/bound_read.darwin-arm64.node","rel":"src/native/prebuilds/darwin-arm64/bound_read.darwin-arm64.node","sha256":"edf0be6988f0c0d26ec03860e55d81be8ddf85fd82d29aba4ab6963bd58f9651","size":53232},{"package":"skill-family-harness-node","path":"bin/prebuilds/darwin-x64/bound_read.darwin-x64.node","rel":"src/native/prebuilds/darwin-x64/bound_read.darwin-x64.node","sha256":"cf11633c8ea804a4c9af58eb205852d38eb6f49979bdad21abc93ba49184ac41","size":28120},{"package":"skill-family-harness-node","path":"bin/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node","rel":"src/native/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node","sha256":"577db2c4b200ecddf0e5807034a57afa0f4d98fd6ee7cdbaeb358f3ff05313ae","size":73136},{"package":"skill-family-harness-node","path":"bin/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node","rel":"src/native/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node","sha256":"f12ed96d4b5a338d87232a074b5d95117d81c5fdeb31f79c664a93c17f28a809","size":27040},{"package":"skill-family-contracts","path":"bin/registry.json","rel":"src/registry.json","sha256":"a55141e7d173b296ccc02e13aba1c884bcebca5bde221624ef4288c48eea3b03","size":10942},{"package":"skill-family-contracts","path":"bin/rules.json","rel":"src/rules.json","sha256":"d87691ebaa9c771bc2190d3b3cbf0a3d5425d8a554b4f6d7cb2914fb2f4e9abb","size":3578},{"package":"skill-family-engineering-kit","path":"data/hosts/claude/host-descriptor.json","rel":"data/hosts/claude/host-descriptor.json","sha256":"c9e7899c7e69cfd3eaed82f30287f65e47e2839691b45dc42e0f4971e7523481","size":958},{"package":"skill-family-engineering-kit","path":"data/hosts/codebuddy/host-descriptor.json","rel":"data/hosts/codebuddy/host-descriptor.json","sha256":"1b3dddc296838672b3e7f15bee4e3df268ee151a80b83998bb6193005580a3e0","size":377},{"package":"skill-family-engineering-kit","path":"data/hosts/codex/host-descriptor.json","rel":"data/hosts/codex/host-descriptor.json","sha256":"eed872463ae3f638f9a899879ab23ec79f8f07ee1e874d749eb858c316b89946","size":942},{"package":"skill-family-engineering-kit","path":"data/hosts/deepseek-harness/host-descriptor.json","rel":"data/hosts/deepseek-harness/host-descriptor.json","sha256":"d5ab344ce02a300a3e4063fc2c7eb1862eeb3ddc460f4d9cde67773e1b3e6eed","size":415},{"package":"skill-family-engineering-kit","path":"data/hosts/kimi-code/host-descriptor.json","rel":"data/hosts/kimi-code/host-descriptor.json","sha256":"8e6e442180242daf947b9edbd1b6913dfaf0786d486db5826cf442c9c18816cd","size":706},{"package":"skill-family-engineering-kit","path":"data/hosts/qoder/host-descriptor.json","rel":"data/hosts/qoder/host-descriptor.json","sha256":"6ba5075bab5c30e4bb69c4f492fa3a04c5579cc5e6a752ca7679a67a8d4462eb","size":515},{"package":"skill-family-engineering-kit","path":"data/hosts/registry.json","rel":"data/hosts/registry.json","sha256":"052b9eb5ec9f771eb76009d522ddb1790f890481da7a103fe444dd1ce59adcd9","size":197},{"package":"skill-family-engineering-kit","path":"data/hosts/workbuddy/host-descriptor.json","rel":"data/hosts/workbuddy/host-descriptor.json","sha256":"221d6240f3428b75db80890d667f3100d9f21d7d656f25cb7f45c4fce478369a","size":702},{"package":"skill-family-engineering-kit","path":"data/licensing/registry.json","rel":"data/licensing/registry.json","sha256":"25e9eddb3e6774980dd44e9cb74a1457302ff7a01d77e6f4e142dd77ac6234c3","size":5838},{"package":"skill-family-engineering-kit","path":"data/licensing/schema.json","rel":"data/licensing/schema.json","sha256":"bd1ce24105cff39331a06e4cb08a5937f196ad6cd3c23db6d0b56440528bea21","size":5136},{"package":"skill-family-contracts","path":"src/schemas/adapter-build-manifest.schema.json","rel":"src/schemas/adapter-build-manifest.schema.json","sha256":"48e07bddd1d13a6942fff15a1843c6bb36706c83da1b584ad9b0773afeb4e829","size":2312},{"package":"skill-family-contracts","path":"src/schemas/adapter-peer-verification-request.schema.json","rel":"src/schemas/adapter-peer-verification-request.schema.json","sha256":"965d2017f130c39ad20abd28bb250a793004ec60c41b9394e54cdc2a2e0752c1","size":2223},{"package":"skill-family-contracts","path":"src/schemas/adapter-peer-verification-result.schema.json","rel":"src/schemas/adapter-peer-verification-result.schema.json","sha256":"574c0adf1337a16dde4fa96ca3361a145faa678d4d4fbc1c270edc7a26dbc7dc","size":2483},{"package":"skill-family-contracts","path":"src/schemas/adapter-source.schema.json","rel":"src/schemas/adapter-source.schema.json","sha256":"32d2647baead350e5784fe7d3ef52217e2e20f94b262e1b8cead23b757282d22","size":1434},{"package":"skill-family-contracts","path":"src/schemas/audit-baseline-pin.schema.json","rel":"src/schemas/audit-baseline-pin.schema.json","sha256":"5084590fe3870acbdd651946b5ab88541d042eaec19d03c8b01e466b149a5253","size":6043},{"package":"skill-family-contracts","path":"src/schemas/declared-read-surface-result.schema.json","rel":"src/schemas/declared-read-surface-result.schema.json","sha256":"5ab26f874818602ff640bd4cee3c743db3eb6767d676a43520b199b554cb0783","size":2459},{"package":"skill-family-contracts","path":"src/schemas/filesystem-root-binding.schema.json","rel":"src/schemas/filesystem-root-binding.schema.json","sha256":"5e54c0febdc6c831fcc94b7d1cfb8f14aef838d718eb5e80a4f1b63bef1e3e61","size":567},{"package":"skill-family-contracts","path":"src/schemas/fixed-set-publication-manifest.schema.json","rel":"src/schemas/fixed-set-publication-manifest.schema.json","sha256":"382bbf8fd1ba99ddefb1e3f6077f379f30cd58cbafbaf3c4191151b3703c2ed2","size":3959},{"package":"skill-family-contracts","path":"src/schemas/fixed-set-publication-receipt.schema.json","rel":"src/schemas/fixed-set-publication-receipt.schema.json","sha256":"ed460c723d8a041b4cb9355c251b9c8f78e4dc03cddaa06af21ed8b2b86389a8","size":5726},{"package":"skill-family-contracts","path":"src/schemas/host-capability-fact.schema.json","rel":"src/schemas/host-capability-fact.schema.json","sha256":"120de1d79649e5d9a905c2039211565a7eb68aa6ce170fe0c60bb0d77ae92b22","size":1932},{"package":"skill-family-contracts","path":"src/schemas/host-descriptor.schema.json","rel":"src/schemas/host-descriptor.schema.json","sha256":"9898d2d1be5a39a5d01835dd5c3446566d6f7a3ce1821a26b5055a8783c57443","size":5950},{"package":"skill-family-contracts","path":"src/schemas/host-operation-plan.schema.json","rel":"src/schemas/host-operation-plan.schema.json","sha256":"536766652ab73aef2e2133f3379a9db967e765521f132749fb358bc91ba2a1d4","size":4244},{"package":"skill-family-contracts","path":"src/schemas/host-operation-receipt.schema.json","rel":"src/schemas/host-operation-receipt.schema.json","sha256":"be0901a0bd7c7d133031a9d5572b738ae697c2c5c019e6aa7d7e1b470d5b2fc5","size":4431},{"package":"skill-family-contracts","path":"src/schemas/host-probe-result.schema.json","rel":"src/schemas/host-probe-result.schema.json","sha256":"decd7ed048e0a511e67c7c7142456257577e737f56eccfeb9acd8c6a7caf03ef","size":1380},{"package":"skill-family-contracts","path":"src/schemas/host-registry.schema.json","rel":"src/schemas/host-registry.schema.json","sha256":"1fab4fa7c2bf8973dd314711e901ea7b7d8ab41f1f90eb45dc4b0c47a23bd241","size":561},{"package":"skill-family-contracts","path":"src/schemas/host-verification-request.schema.json","rel":"src/schemas/host-verification-request.schema.json","sha256":"1b145aca7f422ace5d5d5606ac644ad5e0b92b1eb42efad8ab4a04159c3e220f","size":3048},{"package":"skill-family-contracts","path":"src/schemas/host-verification-result.schema.json","rel":"src/schemas/host-verification-result.schema.json","sha256":"b6456b80e378b3dd2c5dbfbc4a17b49d2f7ac879b084a4b1df63954a2dd29bbe","size":6406},{"package":"skill-family-contracts","path":"src/schemas/managed-file-lock.schema.json","rel":"src/schemas/managed-file-lock.schema.json","sha256":"1b182ac2276a6ca2827a59e754b7cefbbe4c2d67a79f79e448620c56749eee51","size":2575},{"package":"skill-family-contracts","path":"src/schemas/migration-manifest.schema.json","rel":"src/schemas/migration-manifest.schema.json","sha256":"297121243b92f1415b2e72285a9dcea4f9d90e349daf888617595b0845ab7d01","size":5964},{"package":"skill-family-contracts","path":"src/schemas/observation-scope.schema.json","rel":"src/schemas/observation-scope.schema.json","sha256":"bc02d18a985335d2cd4e844705092decd47a3f2ec11433c67a0722ce6e1b3d01","size":3196},{"package":"skill-family-contracts","path":"src/schemas/operation-request.schema.json","rel":"src/schemas/operation-request.schema.json","sha256":"4553f7936c01a290d9c7b5f7e3467050788a6dd1758289815b9484e1557c5f71","size":2052},{"package":"skill-family-contracts","path":"src/schemas/operation-result.schema.json","rel":"src/schemas/operation-result.schema.json","sha256":"ed3c1d6473be94ffa60d2113a73169a12bb841f3887ab2c8e243aba21a1e15a1","size":3512},{"package":"skill-family-contracts","path":"src/schemas/platform-difference-registry.schema.json","rel":"src/schemas/platform-difference-registry.schema.json","sha256":"9665995a3a061bae37dbd0df3bb8d86f6de0faf772e8ac3d3fe30ef11668bc44","size":3942},{"package":"skill-family-contracts","path":"src/schemas/profile-adoption-declaration.schema.json","rel":"src/schemas/profile-adoption-declaration.schema.json","sha256":"30ba6f637b0fa5e8a25f46d526b3c1103fbb936e7d83a49b8c0440ca2d553969","size":3896},{"package":"skill-family-contracts","path":"src/schemas/profile-descriptor.schema.json","rel":"src/schemas/profile-descriptor.schema.json","sha256":"603b166944aa1b1b8b944d1317b906f7a0a6d1e2f0e7e2f7108ffd3755985ec5","size":2999},{"package":"skill-family-contracts","path":"src/schemas/project-manifest.schema.json","rel":"src/schemas/project-manifest.schema.json","sha256":"ce3670b3aa00c92d5f5c060db251a6c1687acd0fd2c93710b1b176b07988d0c1","size":2199},{"package":"skill-family-contracts","path":"src/schemas/project-profile.schema.json","rel":"src/schemas/project-profile.schema.json","sha256":"228cb23a0983d746eaddd265deb270ccbf22f93b22d65f7ccab1ca469f3fc85d","size":1077},{"package":"skill-family-contracts","path":"src/schemas/public-boundary-declaration.schema.json","rel":"src/schemas/public-boundary-declaration.schema.json","sha256":"a22ae3dcf65138ea38058c8059fb06cff832f3017e339a50332ddf679c96195c","size":2937},{"package":"skill-family-contracts","path":"src/schemas/report-binding.schema.json","rel":"src/schemas/report-binding.schema.json","sha256":"8307e2e39ce4bc44d5c2921a0eb46fd269d416b61933468be39cc8e9ad0185c6","size":1831},{"package":"skill-family-contracts","path":"src/schemas/report-model.schema.json","rel":"src/schemas/report-model.schema.json","sha256":"edaaadec9459609a68f81f27d9a8c7404c32aea0db054240c8e34e3d7e09a461","size":10039},{"package":"skill-family-contracts","path":"src/schemas/source-authority-receipt.schema.json","rel":"src/schemas/source-authority-receipt.schema.json","sha256":"e512a0bd6583f7ec58bc344827b5ffd2cb9c496acfab946e3fa29d6aa095cedc","size":1307},{"package":"skill-family-contracts","path":"src/schemas/state-event-envelope.schema.json","rel":"src/schemas/state-event-envelope.schema.json","sha256":"93a727af23c157a98798e7942005b508a69489b755a411afb809dee470f1c6de","size":1543},{"package":"skill-family-contracts","path":"src/schemas/state-snapshot-metadata.schema.json","rel":"src/schemas/state-snapshot-metadata.schema.json","sha256":"0b17ad49d0be9355b3ac04091daf3c554547c9584e8e58ef4d0c9d782b681de2","size":934},{"package":"skill-family-contracts","path":"src/schemas/structured-scan-policy.schema.json","rel":"src/schemas/structured-scan-policy.schema.json","sha256":"81cd438da6ac6c81d1533796dfbd209becadc30c2483e3881b19a9923b767929","size":3556},{"package":"skill-family-contracts","path":"src/schemas/surface-scan-policy.schema.json","rel":"src/schemas/surface-scan-policy.schema.json","sha256":"5617ac4ca58a9a35f55c58d67a5246ae3805a817744bdaadbdfc51475f2fb9e4","size":2359},{"package":"skill-family-contracts","path":"src/schemas/timeout-policy.schema.json","rel":"src/schemas/timeout-policy.schema.json","sha256":"671ac0fcb1ca82db0ee5fa5a4aae70a0597ee2628a70340eb4dda8f5bcaa4c33","size":1459},{"package":"skill-family-contracts","path":"src/schemas/token-estimate-record.schema.json","rel":"src/schemas/token-estimate-record.schema.json","sha256":"b34b6bc215cf20f50ddd3d453cb5799644f7c665ac596162a3270a0ec8a1ff2a","size":2920},{"package":"skill-family-contracts","path":"src/schemas/token-estimate-result.schema.json","rel":"src/schemas/token-estimate-result.schema.json","sha256":"941621696604ed7aec425e19cff2f0c66612417f949b26d415e41bf124565e14","size":1493},{"package":"skill-family-contracts","path":"src/schemas/watchdog-termination-envelope.schema.json","rel":"src/schemas/watchdog-termination-envelope.schema.json","sha256":"bc94a4f1e38a12ff973ebbd83ee54d8bea20504cac6d41d869efd64a7f0831aa","size":5283}],"schemaVersion":1,"sourcePackages":{"skill-family-contracts":"0.12.0","skill-family-engineering-kit":"0.12.0","skill-family-harness-node":"0.12.0"}}
|
|
1
|
+
{"kind":"skill-family.foundation-resource-binding","resources":[{"package":"skill-family-contracts","path":"bin/error-codes.json","rel":"src/error-codes.json","sha256":"6cfc1942b7d0b0823437ff8460a07e4f6eaa78ff5abe966ac34b77dccb0359c2","size":5813},{"package":"skill-family-contracts","path":"bin/foundation-legal/skill-family-contracts/LICENSE","rel":"LICENSE","sha256":"4b1d761838e4612bac9c52ae388d261c8546f78d98c18d59c8e2babacfb96df0","size":11436},{"package":"skill-family-contracts","path":"bin/foundation-legal/skill-family-contracts/NOTICE","rel":"NOTICE","sha256":"0cdc3383ff384f6911679e601c4f541bc9b230a785c8aa11c2e23609618b6ac4","size":390},{"package":"skill-family-engineering-kit","path":"bin/foundation-legal/skill-family-engineering-kit/LICENSE","rel":"LICENSE","sha256":"4b1d761838e4612bac9c52ae388d261c8546f78d98c18d59c8e2babacfb96df0","size":11436},{"package":"skill-family-engineering-kit","path":"bin/foundation-legal/skill-family-engineering-kit/NOTICE","rel":"NOTICE","sha256":"0cdc3383ff384f6911679e601c4f541bc9b230a785c8aa11c2e23609618b6ac4","size":390},{"package":"skill-family-engineering-kit","path":"bin/foundation-legal/skill-family-engineering-kit/THIRD_PARTY_NOTICES","rel":"THIRD_PARTY_NOTICES","sha256":"2510a1fd30bf6e9c723b8b1e42d00bbe3d471747394475e841b4c85474d67973","size":6455},{"package":"skill-family-harness-node","path":"bin/foundation-legal/skill-family-harness-node/LICENSE","rel":"LICENSE","sha256":"4b1d761838e4612bac9c52ae388d261c8546f78d98c18d59c8e2babacfb96df0","size":11436},{"package":"skill-family-harness-node","path":"bin/foundation-legal/skill-family-harness-node/NOTICE","rel":"NOTICE","sha256":"0cdc3383ff384f6911679e601c4f541bc9b230a785c8aa11c2e23609618b6ac4","size":390},{"package":"skill-family-harness-node","path":"bin/foundation-legal/skill-family-harness-node/native-NOTICE","rel":"src/native/NOTICE","sha256":"9b5b2aa89db2ad1bfc1971789992160bc0b9ca3cd37411701d11b9a7ff13fac5","size":116},{"package":"skill-family-contracts","path":"bin/kernel-protocol.json","rel":"src/kernel-protocol.json","sha256":"7e0d0bb7223032e642f71af7125a37f0d9a32965b52f1d096cb7ff9a49b19864","size":2422},{"package":"skill-family-engineering-kit","path":"bin/license-texts/Apache-2.0.txt","rel":"src/license-texts/Apache-2.0.txt","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","size":11357},{"package":"skill-family-engineering-kit","path":"bin/license-texts/MIT.txt","rel":"src/license-texts/MIT.txt","sha256":"56016cbac6c1d3f565fc854356f6781757254ea34be30a0b75869ae2df0118b6","size":1081},{"package":"skill-family-harness-node","path":"bin/prebuild-manifest.json","rel":"src/native/prebuild-manifest.json","sha256":"76a1e6f99ef5980043df4f328bbe9623dfc8cbba6655e008a8bb1d53d9e49ace","size":2230},{"package":"skill-family-harness-node","path":"bin/prebuilds/darwin-arm64/bound_read.darwin-arm64.node","rel":"src/native/prebuilds/darwin-arm64/bound_read.darwin-arm64.node","sha256":"19ce71026b737ba6b56da78ffabca4bb25f21249c30b545d68633d4b77547fde","size":53424},{"package":"skill-family-harness-node","path":"bin/prebuilds/darwin-x64/bound_read.darwin-x64.node","rel":"src/native/prebuilds/darwin-x64/bound_read.darwin-x64.node","sha256":"e01e4a1df3554da857189f483174d0480eb36063ce17b5857a23fa8a02f4a664","size":28400},{"package":"skill-family-harness-node","path":"bin/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node","rel":"src/native/prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node","sha256":"7b7fd1188d2bbf356fe8c44690fd80bc7fb02e9f6f9dc7ee1c10834bf1c519b1","size":72672},{"package":"skill-family-harness-node","path":"bin/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node","rel":"src/native/prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node","sha256":"749b69ba1b7da3496e59f92f2ca8d04800031b2479c13b3ca63555ee69671acc","size":38904},{"package":"skill-family-contracts","path":"bin/registry.json","rel":"src/registry.json","sha256":"ca5c88fdc5d01b8f973e35f7ca4dd3a6dc9b401d039e96067c34c2a6e5e6d8f5","size":11767},{"package":"skill-family-contracts","path":"bin/rules.json","rel":"src/rules.json","sha256":"b97ebdb14fae1d73005c9912b379b549c25805d6d4f9fcdc94beb8ed6a2dd182","size":3578},{"package":"skill-family-engineering-kit","path":"data/hosts/claude/host-descriptor.json","rel":"data/hosts/claude/host-descriptor.json","sha256":"c9e7899c7e69cfd3eaed82f30287f65e47e2839691b45dc42e0f4971e7523481","size":958},{"package":"skill-family-engineering-kit","path":"data/hosts/codebuddy/host-descriptor.json","rel":"data/hosts/codebuddy/host-descriptor.json","sha256":"1b3dddc296838672b3e7f15bee4e3df268ee151a80b83998bb6193005580a3e0","size":377},{"package":"skill-family-engineering-kit","path":"data/hosts/codex/host-descriptor.json","rel":"data/hosts/codex/host-descriptor.json","sha256":"eed872463ae3f638f9a899879ab23ec79f8f07ee1e874d749eb858c316b89946","size":942},{"package":"skill-family-engineering-kit","path":"data/hosts/deepseek-harness/host-descriptor.json","rel":"data/hosts/deepseek-harness/host-descriptor.json","sha256":"d5ab344ce02a300a3e4063fc2c7eb1862eeb3ddc460f4d9cde67773e1b3e6eed","size":415},{"package":"skill-family-engineering-kit","path":"data/hosts/kimi-code/host-descriptor.json","rel":"data/hosts/kimi-code/host-descriptor.json","sha256":"8e6e442180242daf947b9edbd1b6913dfaf0786d486db5826cf442c9c18816cd","size":706},{"package":"skill-family-engineering-kit","path":"data/hosts/qoder/host-descriptor.json","rel":"data/hosts/qoder/host-descriptor.json","sha256":"6ba5075bab5c30e4bb69c4f492fa3a04c5579cc5e6a752ca7679a67a8d4462eb","size":515},{"package":"skill-family-engineering-kit","path":"data/hosts/registry.json","rel":"data/hosts/registry.json","sha256":"052b9eb5ec9f771eb76009d522ddb1790f890481da7a103fe444dd1ce59adcd9","size":197},{"package":"skill-family-engineering-kit","path":"data/hosts/workbuddy/host-descriptor.json","rel":"data/hosts/workbuddy/host-descriptor.json","sha256":"221d6240f3428b75db80890d667f3100d9f21d7d656f25cb7f45c4fce478369a","size":702},{"package":"skill-family-engineering-kit","path":"data/licensing/registry.json","rel":"data/licensing/registry.json","sha256":"25e9eddb3e6774980dd44e9cb74a1457302ff7a01d77e6f4e142dd77ac6234c3","size":5838},{"package":"skill-family-engineering-kit","path":"data/licensing/schema.json","rel":"data/licensing/schema.json","sha256":"bd1ce24105cff39331a06e4cb08a5937f196ad6cd3c23db6d0b56440528bea21","size":5136},{"package":"skill-family-contracts","path":"src/schemas/adapter-build-manifest.schema.json","rel":"src/schemas/adapter-build-manifest.schema.json","sha256":"48e07bddd1d13a6942fff15a1843c6bb36706c83da1b584ad9b0773afeb4e829","size":2312},{"package":"skill-family-contracts","path":"src/schemas/adapter-peer-verification-request.schema.json","rel":"src/schemas/adapter-peer-verification-request.schema.json","sha256":"965d2017f130c39ad20abd28bb250a793004ec60c41b9394e54cdc2a2e0752c1","size":2223},{"package":"skill-family-contracts","path":"src/schemas/adapter-peer-verification-result.schema.json","rel":"src/schemas/adapter-peer-verification-result.schema.json","sha256":"574c0adf1337a16dde4fa96ca3361a145faa678d4d4fbc1c270edc7a26dbc7dc","size":2483},{"package":"skill-family-contracts","path":"src/schemas/adapter-source.schema.json","rel":"src/schemas/adapter-source.schema.json","sha256":"32d2647baead350e5784fe7d3ef52217e2e20f94b262e1b8cead23b757282d22","size":1434},{"package":"skill-family-contracts","path":"src/schemas/audit-baseline-pin.schema.json","rel":"src/schemas/audit-baseline-pin.schema.json","sha256":"5084590fe3870acbdd651946b5ab88541d042eaec19d03c8b01e466b149a5253","size":6043},{"package":"skill-family-contracts","path":"src/schemas/declared-read-surface-result.schema.json","rel":"src/schemas/declared-read-surface-result.schema.json","sha256":"5ab26f874818602ff640bd4cee3c743db3eb6767d676a43520b199b554cb0783","size":2459},{"package":"skill-family-contracts","path":"src/schemas/filesystem-root-binding.schema.json","rel":"src/schemas/filesystem-root-binding.schema.json","sha256":"5e54c0febdc6c831fcc94b7d1cfb8f14aef838d718eb5e80a4f1b63bef1e3e61","size":567},{"package":"skill-family-contracts","path":"src/schemas/filesystem-tree-observation.schema.json","rel":"src/schemas/filesystem-tree-observation.schema.json","sha256":"9b9ae14963abff4a48192a45e5a592809171c11073dadf6456e54ff997a439aa","size":2377},{"package":"skill-family-contracts","path":"src/schemas/fixed-set-publication-manifest.schema.json","rel":"src/schemas/fixed-set-publication-manifest.schema.json","sha256":"382bbf8fd1ba99ddefb1e3f6077f379f30cd58cbafbaf3c4191151b3703c2ed2","size":3959},{"package":"skill-family-contracts","path":"src/schemas/fixed-set-publication-receipt.schema.json","rel":"src/schemas/fixed-set-publication-receipt.schema.json","sha256":"ed460c723d8a041b4cb9355c251b9c8f78e4dc03cddaa06af21ed8b2b86389a8","size":5726},{"package":"skill-family-contracts","path":"src/schemas/host-capability-fact.schema.json","rel":"src/schemas/host-capability-fact.schema.json","sha256":"120de1d79649e5d9a905c2039211565a7eb68aa6ce170fe0c60bb0d77ae92b22","size":1932},{"package":"skill-family-contracts","path":"src/schemas/host-descriptor.schema.json","rel":"src/schemas/host-descriptor.schema.json","sha256":"9898d2d1be5a39a5d01835dd5c3446566d6f7a3ce1821a26b5055a8783c57443","size":5950},{"package":"skill-family-contracts","path":"src/schemas/host-operation-plan.schema.json","rel":"src/schemas/host-operation-plan.schema.json","sha256":"536766652ab73aef2e2133f3379a9db967e765521f132749fb358bc91ba2a1d4","size":4244},{"package":"skill-family-contracts","path":"src/schemas/host-operation-receipt.schema.json","rel":"src/schemas/host-operation-receipt.schema.json","sha256":"be0901a0bd7c7d133031a9d5572b738ae697c2c5c019e6aa7d7e1b470d5b2fc5","size":4431},{"package":"skill-family-contracts","path":"src/schemas/host-probe-result.schema.json","rel":"src/schemas/host-probe-result.schema.json","sha256":"decd7ed048e0a511e67c7c7142456257577e737f56eccfeb9acd8c6a7caf03ef","size":1380},{"package":"skill-family-contracts","path":"src/schemas/host-registry.schema.json","rel":"src/schemas/host-registry.schema.json","sha256":"1fab4fa7c2bf8973dd314711e901ea7b7d8ab41f1f90eb45dc4b0c47a23bd241","size":561},{"package":"skill-family-contracts","path":"src/schemas/host-verification-request.schema.json","rel":"src/schemas/host-verification-request.schema.json","sha256":"1b145aca7f422ace5d5d5606ac644ad5e0b92b1eb42efad8ab4a04159c3e220f","size":3048},{"package":"skill-family-contracts","path":"src/schemas/host-verification-result.schema.json","rel":"src/schemas/host-verification-result.schema.json","sha256":"e4b40721b76b144f7709a27c82d657788a88f7bb1da16ab54f73e4fa42ae212a","size":6496},{"package":"skill-family-contracts","path":"src/schemas/managed-file-lock.schema.json","rel":"src/schemas/managed-file-lock.schema.json","sha256":"1b182ac2276a6ca2827a59e754b7cefbbe4c2d67a79f79e448620c56749eee51","size":2575},{"package":"skill-family-contracts","path":"src/schemas/migration-manifest.schema.json","rel":"src/schemas/migration-manifest.schema.json","sha256":"297121243b92f1415b2e72285a9dcea4f9d90e349daf888617595b0845ab7d01","size":5964},{"package":"skill-family-contracts","path":"src/schemas/observation-scope.schema.json","rel":"src/schemas/observation-scope.schema.json","sha256":"bc02d18a985335d2cd4e844705092decd47a3f2ec11433c67a0722ce6e1b3d01","size":3196},{"package":"skill-family-contracts","path":"src/schemas/operation-request.schema.json","rel":"src/schemas/operation-request.schema.json","sha256":"4553f7936c01a290d9c7b5f7e3467050788a6dd1758289815b9484e1557c5f71","size":2052},{"package":"skill-family-contracts","path":"src/schemas/operation-result.schema.json","rel":"src/schemas/operation-result.schema.json","sha256":"ed3c1d6473be94ffa60d2113a73169a12bb841f3887ab2c8e243aba21a1e15a1","size":3512},{"package":"skill-family-contracts","path":"src/schemas/platform-difference-registry.schema.json","rel":"src/schemas/platform-difference-registry.schema.json","sha256":"9665995a3a061bae37dbd0df3bb8d86f6de0faf772e8ac3d3fe30ef11668bc44","size":3942},{"package":"skill-family-contracts","path":"src/schemas/plugin-verification-request.schema.json","rel":"src/schemas/plugin-verification-request.schema.json","sha256":"21d5af0a7d22b976369978a4c8621d34f7e06fbd02c3345e7255d55306d2bdca","size":9802},{"package":"skill-family-contracts","path":"src/schemas/plugin-verification-result.schema.json","rel":"src/schemas/plugin-verification-result.schema.json","sha256":"5156afdde86a93d573061a2e2e8f6921310e6ac605b6a3fb8767d2cb41b16a36","size":20729},{"package":"skill-family-contracts","path":"src/schemas/profile-adoption-declaration.schema.json","rel":"src/schemas/profile-adoption-declaration.schema.json","sha256":"30ba6f637b0fa5e8a25f46d526b3c1103fbb936e7d83a49b8c0440ca2d553969","size":3896},{"package":"skill-family-contracts","path":"src/schemas/profile-descriptor.schema.json","rel":"src/schemas/profile-descriptor.schema.json","sha256":"603b166944aa1b1b8b944d1317b906f7a0a6d1e2f0e7e2f7108ffd3755985ec5","size":2999},{"package":"skill-family-contracts","path":"src/schemas/project-manifest.schema.json","rel":"src/schemas/project-manifest.schema.json","sha256":"ce3670b3aa00c92d5f5c060db251a6c1687acd0fd2c93710b1b176b07988d0c1","size":2199},{"package":"skill-family-contracts","path":"src/schemas/project-profile.schema.json","rel":"src/schemas/project-profile.schema.json","sha256":"228cb23a0983d746eaddd265deb270ccbf22f93b22d65f7ccab1ca469f3fc85d","size":1077},{"package":"skill-family-contracts","path":"src/schemas/public-boundary-declaration.schema.json","rel":"src/schemas/public-boundary-declaration.schema.json","sha256":"a22ae3dcf65138ea38058c8059fb06cff832f3017e339a50332ddf679c96195c","size":2937},{"package":"skill-family-contracts","path":"src/schemas/report-binding.schema.json","rel":"src/schemas/report-binding.schema.json","sha256":"8307e2e39ce4bc44d5c2921a0eb46fd269d416b61933468be39cc8e9ad0185c6","size":1831},{"package":"skill-family-contracts","path":"src/schemas/report-model.schema.json","rel":"src/schemas/report-model.schema.json","sha256":"edaaadec9459609a68f81f27d9a8c7404c32aea0db054240c8e34e3d7e09a461","size":10039},{"package":"skill-family-contracts","path":"src/schemas/source-authority-receipt.schema.json","rel":"src/schemas/source-authority-receipt.schema.json","sha256":"e512a0bd6583f7ec58bc344827b5ffd2cb9c496acfab946e3fa29d6aa095cedc","size":1307},{"package":"skill-family-contracts","path":"src/schemas/state-event-envelope.schema.json","rel":"src/schemas/state-event-envelope.schema.json","sha256":"93a727af23c157a98798e7942005b508a69489b755a411afb809dee470f1c6de","size":1543},{"package":"skill-family-contracts","path":"src/schemas/state-snapshot-metadata.schema.json","rel":"src/schemas/state-snapshot-metadata.schema.json","sha256":"0b17ad49d0be9355b3ac04091daf3c554547c9584e8e58ef4d0c9d782b681de2","size":934},{"package":"skill-family-contracts","path":"src/schemas/structured-scan-policy.schema.json","rel":"src/schemas/structured-scan-policy.schema.json","sha256":"81cd438da6ac6c81d1533796dfbd209becadc30c2483e3881b19a9923b767929","size":3556},{"package":"skill-family-contracts","path":"src/schemas/surface-scan-policy.schema.json","rel":"src/schemas/surface-scan-policy.schema.json","sha256":"5617ac4ca58a9a35f55c58d67a5246ae3805a817744bdaadbdfc51475f2fb9e4","size":2359},{"package":"skill-family-contracts","path":"src/schemas/timeout-policy.schema.json","rel":"src/schemas/timeout-policy.schema.json","sha256":"671ac0fcb1ca82db0ee5fa5a4aae70a0597ee2628a70340eb4dda8f5bcaa4c33","size":1459},{"package":"skill-family-contracts","path":"src/schemas/token-estimate-record.schema.json","rel":"src/schemas/token-estimate-record.schema.json","sha256":"b34b6bc215cf20f50ddd3d453cb5799644f7c665ac596162a3270a0ec8a1ff2a","size":2920},{"package":"skill-family-contracts","path":"src/schemas/token-estimate-result.schema.json","rel":"src/schemas/token-estimate-result.schema.json","sha256":"941621696604ed7aec425e19cff2f0c66612417f949b26d415e41bf124565e14","size":1493},{"package":"skill-family-contracts","path":"src/schemas/watchdog-termination-envelope.schema.json","rel":"src/schemas/watchdog-termination-envelope.schema.json","sha256":"9c5f6e356a2300c89ac8dcfa758751a93cd5281604a5bb54ad4506ba1042a3c5","size":6285}],"schemaVersion":1,"sourcePackages":{"skill-family-contracts":"0.13.0","skill-family-engineering-kit":"0.13.0","skill-family-harness-node":"0.13.0"}}
|
|
@@ -10,10 +10,11 @@
|
|
|
10
10
|
"libc": "none",
|
|
11
11
|
"binary": "prebuilds/darwin-arm64/bound_read.darwin-arm64.node",
|
|
12
12
|
"mode": 420,
|
|
13
|
-
"sha256": "
|
|
13
|
+
"sha256": "19ce71026b737ba6b56da78ffabca4bb25f21249c30b545d68633d4b77547fde",
|
|
14
14
|
"napi": 10,
|
|
15
15
|
"exports": [
|
|
16
16
|
"closeParentDirectory",
|
|
17
|
+
"observeFilesystemTreeNative",
|
|
17
18
|
"openParentDirectory",
|
|
18
19
|
"platform",
|
|
19
20
|
"readFileBoundNative",
|
|
@@ -27,10 +28,11 @@
|
|
|
27
28
|
"libc": "none",
|
|
28
29
|
"binary": "prebuilds/darwin-x64/bound_read.darwin-x64.node",
|
|
29
30
|
"mode": 420,
|
|
30
|
-
"sha256": "
|
|
31
|
+
"sha256": "e01e4a1df3554da857189f483174d0480eb36063ce17b5857a23fa8a02f4a664",
|
|
31
32
|
"napi": 10,
|
|
32
33
|
"exports": [
|
|
33
34
|
"closeParentDirectory",
|
|
35
|
+
"observeFilesystemTreeNative",
|
|
34
36
|
"openParentDirectory",
|
|
35
37
|
"platform",
|
|
36
38
|
"readFileBoundNative",
|
|
@@ -44,10 +46,11 @@
|
|
|
44
46
|
"libc": "glibc",
|
|
45
47
|
"binary": "prebuilds/linux-arm64-gnu/bound_read.linux-arm64-gnu.node",
|
|
46
48
|
"mode": 420,
|
|
47
|
-
"sha256": "
|
|
49
|
+
"sha256": "7b7fd1188d2bbf356fe8c44690fd80bc7fb02e9f6f9dc7ee1c10834bf1c519b1",
|
|
48
50
|
"napi": 10,
|
|
49
51
|
"exports": [
|
|
50
52
|
"closeParentDirectory",
|
|
53
|
+
"observeFilesystemTreeNative",
|
|
51
54
|
"openParentDirectory",
|
|
52
55
|
"platform",
|
|
53
56
|
"readFileBoundNative",
|
|
@@ -61,10 +64,11 @@
|
|
|
61
64
|
"libc": "glibc",
|
|
62
65
|
"binary": "prebuilds/linux-x64-gnu/bound_read.linux-x64-gnu.node",
|
|
63
66
|
"mode": 420,
|
|
64
|
-
"sha256": "
|
|
67
|
+
"sha256": "749b69ba1b7da3496e59f92f2ca8d04800031b2479c13b3ca63555ee69671acc",
|
|
65
68
|
"napi": 10,
|
|
66
69
|
"exports": [
|
|
67
70
|
"closeParentDirectory",
|
|
71
|
+
"observeFilesystemTreeNative",
|
|
68
72
|
"openParentDirectory",
|
|
69
73
|
"platform",
|
|
70
74
|
"readFileBoundNative",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/bin/registry.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"kind": "skill-family.contracts.registry",
|
|
4
|
-
"contractsVersion": "1.
|
|
4
|
+
"contractsVersion": "1.13.0",
|
|
5
5
|
"note": "Protocol-name and schema-$id registry. Registration mechanically rejects duplicate protocol name/version (SFC1004) and duplicate $id (SFC1003). This file is the single registration surface; adding an entry is a contracts change.",
|
|
6
6
|
"protocols": [
|
|
7
7
|
{
|
|
@@ -285,6 +285,27 @@
|
|
|
285
285
|
"dialect": "2020-12",
|
|
286
286
|
"status": "candidate",
|
|
287
287
|
"file": "src/schemas/host-verification-result.schema.json"
|
|
288
|
+
},
|
|
289
|
+
{
|
|
290
|
+
"$id": "https://contracts.skill-family.example/v1/plugin-verification-request.json",
|
|
291
|
+
"object": "plugin-verification-request",
|
|
292
|
+
"dialect": "2020-12",
|
|
293
|
+
"status": "candidate",
|
|
294
|
+
"file": "src/schemas/plugin-verification-request.schema.json"
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"$id": "https://contracts.skill-family.example/v1/plugin-verification-result.json",
|
|
298
|
+
"object": "plugin-verification-result",
|
|
299
|
+
"dialect": "2020-12",
|
|
300
|
+
"status": "candidate",
|
|
301
|
+
"file": "src/schemas/plugin-verification-result.schema.json"
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
"$id": "https://contracts.skill-family.example/v1/filesystem-tree-observation.json",
|
|
305
|
+
"object": "filesystem-tree-observation",
|
|
306
|
+
"dialect": "2020-12",
|
|
307
|
+
"status": "candidate",
|
|
308
|
+
"file": "src/schemas/filesystem-tree-observation.schema.json"
|
|
288
309
|
}
|
|
289
310
|
],
|
|
290
311
|
"dialects": {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
+
import { readFile } from 'node:fs/promises';
|
|
3
4
|
import { basename, dirname, join, resolve } from 'node:path';
|
|
4
5
|
import { execFile as execFileCb } from 'node:child_process';
|
|
5
6
|
import { promisify } from 'node:util';
|
|
@@ -36,7 +37,7 @@ registerPathRedactor(redactSensitivePaths);
|
|
|
36
37
|
|
|
37
38
|
const execFile = promisify(execFileCb);
|
|
38
39
|
|
|
39
|
-
const COMMANDS = new Set(['help', 'setup', 'assess', 'prepare', 'approve', 'publish', 'reconcile', 'verify', 'ship', 'attest', 'hooks', 'artifacts', 'docs', 'distribute', 'route', 'lineage']);
|
|
40
|
+
const COMMANDS = new Set(['help', 'setup', 'assess', 'prepare', 'approve', 'publish', 'reconcile', 'verify', 'ship', 'post-release', 'attest', 'hooks', 'artifacts', 'docs', 'distribute', 'route', 'lineage']);
|
|
40
41
|
|
|
41
42
|
/**
|
|
42
43
|
* Wait until writes already queued on a process output stream have reached
|
|
@@ -308,6 +309,8 @@ Commands:
|
|
|
308
309
|
verify Fresh remote and consumer verification; only this reaches VERIFIED
|
|
309
310
|
ship Resume one durable prepare -> approve -> publish -> verify flow; completes a parked
|
|
310
311
|
postVerify hook once its checkpoint approval is provided (--hook-approval)
|
|
312
|
+
post-release Inspect optional local finishing work after VERIFIED; update installed host plugins
|
|
313
|
+
only after exact plan confirmation
|
|
311
314
|
attest Legacy only: record a Kimi/CodeBuddy result for an old frozen plan
|
|
312
315
|
hooks Run declared development hooks and populate reusable receipts
|
|
313
316
|
artifacts Artifact status, inspect, update/apply, resolution, and diagnostics
|
|
@@ -360,6 +363,9 @@ Options:
|
|
|
360
363
|
--approve Approve the ship plan (boolean; plan digest is auto-resolved)
|
|
361
364
|
--hook-approval <path> Checkpoint approval for a requiresApproval postPublish hook (ship/distribute; repeatable)
|
|
362
365
|
--state <path> Override the durable ship state file
|
|
366
|
+
--update-local-hosts Update installed plugins for selected local hosts after VERIFIED
|
|
367
|
+
--hosts <ids> Comma-separated local hosts for post-release update (default: all declared)
|
|
368
|
+
--confirm-plan <digest> Confirm the exact VERIFIED plan before local host mutation
|
|
363
369
|
--no-hook-cache Force every prepare hook to run in full; neither read nor write the hook cache
|
|
364
370
|
--json Output results as JSON
|
|
365
371
|
--version Show version and exit
|
|
@@ -377,6 +383,7 @@ Safety:
|
|
|
377
383
|
- To ensure zero remote writes, disable hooks or audit them separately
|
|
378
384
|
- docs refresh --write rewrites only declared README managed regions and the current CHANGELOG entry after exact refreshDigest confirmation; it never commits, pushes, tags, publishes, or installs.
|
|
379
385
|
- publish requires explicit approval; plan digest is auto-read from the plan file
|
|
386
|
+
- post-release local host updates are optional local mutations and never change VERIFIED
|
|
380
387
|
- publish consumes frozen Git/npm artifacts, never the live workspace
|
|
381
388
|
- existing remote objects and uncertain checks stop for human intervention
|
|
382
389
|
- production-equivalent protocol sandbox is verified; a real remote canary is not
|
|
@@ -815,6 +822,19 @@ if (command === 'ship') {
|
|
|
815
822
|
console.log('then re-run: release-skill ship --root <root> --hook-approval <approval-record>');
|
|
816
823
|
}
|
|
817
824
|
}
|
|
825
|
+
if (result.status === 'VERIFIED' && result.postRelease) {
|
|
826
|
+
if (result.postRelease.status === 'UNAVAILABLE') {
|
|
827
|
+
console.warn(`Post-release checklist unavailable: ${result.postRelease.diagnostic?.message ?? 'unknown error'}`);
|
|
828
|
+
} else if (result.postRelease.merge.promptRequired) {
|
|
829
|
+
console.log('Post-release: ask whether to merge the remaining release branch.');
|
|
830
|
+
} else {
|
|
831
|
+
console.log('Post-release: branch advancement was already included; skip the merge question.');
|
|
832
|
+
}
|
|
833
|
+
if (result.postRelease.localHostUpdate?.promptRequired) {
|
|
834
|
+
console.log(`Post-release: ask whether to update local host plugins (${result.postRelease.localHostUpdate.hosts.join(', ')}).`);
|
|
835
|
+
console.log(`Post-release command: release-skill post-release --plan ${result.planPath} --run ${result.verifyRunPath}`);
|
|
836
|
+
}
|
|
837
|
+
}
|
|
818
838
|
for (const followUp of result.manualFollowUps ?? []) {
|
|
819
839
|
console.log(`Manual follow-up [${followUp.platform}] ${followUp.plugin}: not verified by system`);
|
|
820
840
|
}
|
|
@@ -1178,6 +1198,91 @@ if (command === 'reconcile') {
|
|
|
1178
1198
|
}
|
|
1179
1199
|
}
|
|
1180
1200
|
|
|
1201
|
+
// --- Optional local finishing after VERIFIED ---
|
|
1202
|
+
if (command === 'post-release') {
|
|
1203
|
+
const value = (flag) => {
|
|
1204
|
+
const idx = args.indexOf(flag);
|
|
1205
|
+
return idx !== -1 && args[idx + 1] ? args[idx + 1] : undefined;
|
|
1206
|
+
};
|
|
1207
|
+
const planPath = value('--plan') ? resolve(value('--plan')) : undefined;
|
|
1208
|
+
const runPath = value('--run') ? resolve(value('--run')) : undefined;
|
|
1209
|
+
if (!planPath || !runPath) {
|
|
1210
|
+
const message = 'post-release requires --plan <path> and --run <verified-run-path>';
|
|
1211
|
+
if (hasJson) console.log(JSON.stringify({ error: 'MISSING_PARAMETERS', message, exitCode: 1 }));
|
|
1212
|
+
else console.error(`Error: ${message}`);
|
|
1213
|
+
await exitAfterFlush(1);
|
|
1214
|
+
}
|
|
1215
|
+
try {
|
|
1216
|
+
const {
|
|
1217
|
+
assertVerifiedReleaseRun,
|
|
1218
|
+
derivePostReleaseChecklist,
|
|
1219
|
+
updateLocalHostPlugins,
|
|
1220
|
+
} = await import('../src/commands/post-release-local.mjs');
|
|
1221
|
+
const { validatePlan } = await import('../src/core/plan.mjs');
|
|
1222
|
+
const {
|
|
1223
|
+
loadRun,
|
|
1224
|
+
resolveRunPath,
|
|
1225
|
+
validateRunLineage,
|
|
1226
|
+
} = await import('../src/core/run.mjs');
|
|
1227
|
+
const plan = JSON.parse(await readFile(planPath, 'utf8'));
|
|
1228
|
+
validatePlan(plan);
|
|
1229
|
+
const resolvedRunPath = await resolveRunPath(runPath);
|
|
1230
|
+
const runRecord = await loadRun(resolvedRunPath, {
|
|
1231
|
+
requireDigest: true,
|
|
1232
|
+
authorityPlanPath: planPath,
|
|
1233
|
+
});
|
|
1234
|
+
await validateRunLineage(runRecord, {
|
|
1235
|
+
plan,
|
|
1236
|
+
planPath,
|
|
1237
|
+
runPath: resolvedRunPath,
|
|
1238
|
+
production: Boolean(plan.production),
|
|
1239
|
+
});
|
|
1240
|
+
assertVerifiedReleaseRun(plan, runRecord);
|
|
1241
|
+
|
|
1242
|
+
const updateRequested = args.includes('--update-local-hosts');
|
|
1243
|
+
const selectedHosts = value('--hosts')
|
|
1244
|
+
?.split(',')
|
|
1245
|
+
.map((host) => host.trim())
|
|
1246
|
+
.filter(Boolean);
|
|
1247
|
+
const result = updateRequested
|
|
1248
|
+
? await updateLocalHostPlugins({
|
|
1249
|
+
plan,
|
|
1250
|
+
root: resolve(value('--root') ?? process.cwd()),
|
|
1251
|
+
confirmPlanDigest: value('--confirm-plan'),
|
|
1252
|
+
selectedHosts,
|
|
1253
|
+
})
|
|
1254
|
+
: derivePostReleaseChecklist(plan);
|
|
1255
|
+
|
|
1256
|
+
if (hasJson) {
|
|
1257
|
+
console.log(JSON.stringify(result, null, 2));
|
|
1258
|
+
} else if (!updateRequested) {
|
|
1259
|
+
console.log(`Post-release status: ${result.status}`);
|
|
1260
|
+
if (result.merge.promptRequired) console.log('Ask whether the user wants to merge the remaining branch.');
|
|
1261
|
+
else console.log('Branch advancement was already included in the release workflow; skip the merge question.');
|
|
1262
|
+
if (result.localHostUpdate.promptRequired) {
|
|
1263
|
+
console.log(`Ask whether to update local host plugins: ${result.localHostUpdate.hosts.join(', ')}`);
|
|
1264
|
+
}
|
|
1265
|
+
} else {
|
|
1266
|
+
console.log(`Local host update: ${result.status}`);
|
|
1267
|
+
for (const entry of result.results) {
|
|
1268
|
+
console.log(` ${entry.host}/${entry.unitId}: ${entry.status}${entry.version ? ` (${entry.version})` : ''}`);
|
|
1269
|
+
}
|
|
1270
|
+
console.log('The release remains VERIFIED; restart updated hosts before using the new plugin bytes.');
|
|
1271
|
+
}
|
|
1272
|
+
const success = !updateRequested || ['UPDATED', 'ALREADY_CURRENT', 'NO_APPLICABLE_HOSTS'].includes(result.status);
|
|
1273
|
+
await exitAfterFlush(success ? 0 : 1);
|
|
1274
|
+
} catch (err) {
|
|
1275
|
+
if (hasJson) {
|
|
1276
|
+
console.log(JSON.stringify({
|
|
1277
|
+
error: err.code ?? 'POST_RELEASE_FAILED',
|
|
1278
|
+
message: err.message,
|
|
1279
|
+
exitCode: err.exitCode ?? 1,
|
|
1280
|
+
}));
|
|
1281
|
+
} else console.error(`Error: ${err.message}`);
|
|
1282
|
+
await exitAfterFlush(err.exitCode ?? 1);
|
|
1283
|
+
}
|
|
1284
|
+
}
|
|
1285
|
+
|
|
1181
1286
|
// --- Verify command routing ---
|
|
1182
1287
|
if (command === 'verify') {
|
|
1183
1288
|
|
|
@@ -1221,6 +1326,18 @@ if (command === 'verify') {
|
|
|
1221
1326
|
root,
|
|
1222
1327
|
verificationGatesAuthorized,
|
|
1223
1328
|
});
|
|
1329
|
+
if (result.status === 'VERIFIED') {
|
|
1330
|
+
const {
|
|
1331
|
+
derivePostReleaseChecklist,
|
|
1332
|
+
unavailablePostReleaseChecklist,
|
|
1333
|
+
} = await import('../src/commands/post-release-local.mjs');
|
|
1334
|
+
const plan = JSON.parse(await readFile(planPath, 'utf8'));
|
|
1335
|
+
try {
|
|
1336
|
+
result.postRelease = derivePostReleaseChecklist(plan);
|
|
1337
|
+
} catch (error) {
|
|
1338
|
+
result.postRelease = unavailablePostReleaseChecklist(plan, error);
|
|
1339
|
+
}
|
|
1340
|
+
}
|
|
1224
1341
|
|
|
1225
1342
|
if (hasJson) {
|
|
1226
1343
|
console.log(JSON.stringify(result, null, 2));
|
|
@@ -1237,6 +1354,14 @@ if (command === 'verify') {
|
|
|
1237
1354
|
console.log(`Baseline advance: ${result.baselineAdvance.committed ? 'advanced and committed' : 'advanced (uncommitted — commit .release-skill/project.yaml manually)'}`);
|
|
1238
1355
|
}
|
|
1239
1356
|
}
|
|
1357
|
+
if (result.postRelease?.status === 'UNAVAILABLE') {
|
|
1358
|
+
console.warn(`Post-release checklist unavailable: ${result.postRelease.diagnostic?.message ?? 'unknown error'}`);
|
|
1359
|
+
} else if (result.postRelease?.merge.promptRequired) {
|
|
1360
|
+
console.log('Post-release: ask whether to merge the remaining branch.');
|
|
1361
|
+
}
|
|
1362
|
+
if (result.postRelease?.localHostUpdate.promptRequired) {
|
|
1363
|
+
console.log(`Post-release: ask whether to update local host plugins (${result.postRelease.localHostUpdate.hosts.join(', ')}).`);
|
|
1364
|
+
}
|
|
1240
1365
|
}
|
|
1241
1366
|
|
|
1242
1367
|
await exitAfterFlush(result.status === 'VERIFIED' ? 0 : 1);
|