release-skill 0.9.0 → 0.9.3
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 +81 -0
- package/INSTALL.md +22 -9
- package/INSTALL.zh-CN.md +15 -8
- package/README.md +40 -35
- package/README.zh-CN.md +31 -29
- package/adapters/claude/.claude-plugin/marketplace.json +1 -1
- package/adapters/claude/.claude-plugin/plugin.json +1 -1
- package/adapters/claude/bin/consumer-contract-vectors.json +110 -0
- package/adapters/claude/bin/error-codes.json +8 -1
- package/adapters/claude/bin/foundation-resource-binding.json +1 -1
- package/adapters/claude/bin/registry.json +22 -1
- package/adapters/claude/bin/release-skill.bundle.mjs +4772 -2238
- package/adapters/claude/bin/rules.json +1 -1
- package/adapters/claude/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/claude/schemas/release-project.schema.json +4 -0
- package/adapters/claude/schemas/release-run.schema.json +41 -1
- package/adapters/claude/skills/release-config/SKILL.md +5 -3
- package/adapters/claude/skills/release-docs/SKILL.md +4 -2
- package/adapters/claude/skills/release-finish/SKILL.md +6 -4
- package/adapters/claude/skills/release-help/SKILL.md +14 -5
- package/adapters/claude/skills/release-marketplace/SKILL.md +3 -1
- package/adapters/claude/skills/release-prepare/SKILL.md +4 -2
- package/adapters/claude/skills/release-publish/SKILL.md +19 -10
- package/adapters/claude/skills/release-verify/SKILL.md +2 -0
- package/adapters/claude/src/schemas/executable-identity-observation.schema.json +162 -0
- package/adapters/claude/src/schemas/filesystem-tree-observation.schema.json +18 -2
- package/adapters/claude/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/claude/src/schemas/plugin-verification-request.schema.json +147 -22
- package/adapters/claude/src/schemas/plugin-verification-result.schema.json +436 -18
- package/adapters/claude/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/adapters/claude/src/schemas/skill-family-directory-verification-request.schema.json +100 -0
- package/adapters/claude/src/schemas/skill-family-directory-verification-result.schema.json +193 -0
- package/adapters/codex/.codex-plugin/plugin.json +2 -2
- package/adapters/codex/bin/consumer-contract-vectors.json +110 -0
- package/adapters/codex/bin/error-codes.json +8 -1
- package/adapters/codex/bin/foundation-resource-binding.json +1 -1
- package/adapters/codex/bin/registry.json +22 -1
- package/adapters/codex/bin/release-skill.bundle.mjs +4772 -2238
- package/adapters/codex/bin/rules.json +1 -1
- package/adapters/codex/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/codex/schemas/release-project.schema.json +4 -0
- package/adapters/codex/schemas/release-run.schema.json +41 -1
- package/adapters/codex/skills/release-config/SKILL.md +5 -3
- package/adapters/codex/skills/release-docs/SKILL.md +4 -2
- package/adapters/codex/skills/release-finish/SKILL.md +6 -4
- package/adapters/codex/skills/release-help/SKILL.md +14 -5
- package/adapters/codex/skills/release-marketplace/SKILL.md +3 -1
- package/adapters/codex/skills/release-prepare/SKILL.md +4 -2
- package/adapters/codex/skills/release-publish/SKILL.md +19 -10
- package/adapters/codex/skills/release-verify/SKILL.md +2 -0
- package/adapters/codex/src/schemas/executable-identity-observation.schema.json +162 -0
- package/adapters/codex/src/schemas/filesystem-tree-observation.schema.json +18 -2
- package/adapters/codex/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/codex/src/schemas/plugin-verification-request.schema.json +147 -22
- package/adapters/codex/src/schemas/plugin-verification-result.schema.json +436 -18
- package/adapters/codex/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/adapters/codex/src/schemas/skill-family-directory-verification-request.schema.json +100 -0
- package/adapters/codex/src/schemas/skill-family-directory-verification-result.schema.json +193 -0
- package/adapters/kimi/.kimi-plugin/plugin.json +1 -1
- package/adapters/kimi/bin/consumer-contract-vectors.json +110 -0
- package/adapters/kimi/bin/error-codes.json +8 -1
- package/adapters/kimi/bin/foundation-resource-binding.json +1 -1
- package/adapters/kimi/bin/registry.json +22 -1
- package/adapters/kimi/bin/release-skill.bundle.mjs +4772 -2238
- package/adapters/kimi/bin/rules.json +1 -1
- package/adapters/kimi/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/kimi/schemas/release-project.schema.json +4 -0
- package/adapters/kimi/schemas/release-run.schema.json +41 -1
- package/adapters/kimi/skills/release-config/SKILL.md +5 -3
- package/adapters/kimi/skills/release-docs/SKILL.md +4 -2
- package/adapters/kimi/skills/release-finish/SKILL.md +6 -4
- package/adapters/kimi/skills/release-help/SKILL.md +14 -5
- package/adapters/kimi/skills/release-marketplace/SKILL.md +3 -1
- package/adapters/kimi/skills/release-prepare/SKILL.md +4 -2
- package/adapters/kimi/skills/release-publish/SKILL.md +19 -10
- package/adapters/kimi/skills/release-verify/SKILL.md +2 -0
- package/adapters/kimi/src/schemas/executable-identity-observation.schema.json +162 -0
- package/adapters/kimi/src/schemas/filesystem-tree-observation.schema.json +18 -2
- package/adapters/kimi/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/kimi/src/schemas/plugin-verification-request.schema.json +147 -22
- package/adapters/kimi/src/schemas/plugin-verification-result.schema.json +436 -18
- package/adapters/kimi/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/adapters/kimi/src/schemas/skill-family-directory-verification-request.schema.json +100 -0
- package/adapters/kimi/src/schemas/skill-family-directory-verification-result.schema.json +193 -0
- package/adapters/workbuddy/.codebuddy-plugin/plugin.json +1 -1
- package/adapters/workbuddy/bin/consumer-contract-vectors.json +110 -0
- package/adapters/workbuddy/bin/error-codes.json +8 -1
- package/adapters/workbuddy/bin/foundation-resource-binding.json +1 -1
- package/adapters/workbuddy/bin/registry.json +22 -1
- package/adapters/workbuddy/bin/release-skill.bundle.mjs +4772 -2238
- package/adapters/workbuddy/bin/rules.json +1 -1
- package/adapters/workbuddy/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/workbuddy/schemas/release-project.schema.json +4 -0
- package/adapters/workbuddy/schemas/release-run.schema.json +41 -1
- package/adapters/workbuddy/skills/release-config/SKILL.md +5 -3
- package/adapters/workbuddy/skills/release-docs/SKILL.md +4 -2
- package/adapters/workbuddy/skills/release-finish/SKILL.md +6 -4
- package/adapters/workbuddy/skills/release-help/SKILL.md +14 -5
- package/adapters/workbuddy/skills/release-marketplace/SKILL.md +3 -1
- package/adapters/workbuddy/skills/release-prepare/SKILL.md +4 -2
- package/adapters/workbuddy/skills/release-publish/SKILL.md +19 -10
- package/adapters/workbuddy/skills/release-verify/SKILL.md +2 -0
- package/adapters/workbuddy/src/schemas/executable-identity-observation.schema.json +162 -0
- package/adapters/workbuddy/src/schemas/filesystem-tree-observation.schema.json +18 -2
- package/adapters/workbuddy/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/workbuddy/src/schemas/plugin-verification-request.schema.json +147 -22
- package/adapters/workbuddy/src/schemas/plugin-verification-result.schema.json +436 -18
- package/adapters/workbuddy/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/adapters/workbuddy/src/schemas/skill-family-directory-verification-request.schema.json +100 -0
- package/adapters/workbuddy/src/schemas/skill-family-directory-verification-result.schema.json +193 -0
- package/bin/consumer-contract-vectors.json +110 -0
- package/bin/error-codes.json +8 -1
- package/bin/foundation-resource-binding.json +1 -1
- package/bin/registry.json +22 -1
- package/bin/release-skill-cli.mjs +72 -4
- package/bin/release-skill.bundle.mjs +4772 -2238
- package/bin/rules.json +1 -1
- package/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/package.json +5 -5
- package/platform-manifest.json +5 -5
- package/references/01-state-machine.md +16 -1
- package/references/05-evidence-and-errors.md +2 -2
- package/schemas/release-project.schema.json +4 -0
- package/schemas/release-run.schema.json +41 -1
- package/skills/release-config/SKILL.md +5 -3
- package/skills/release-docs/SKILL.md +4 -2
- package/skills/release-finish/SKILL.md +6 -4
- package/skills/release-help/SKILL.md +14 -5
- package/skills/release-marketplace/SKILL.md +3 -1
- package/skills/release-prepare/SKILL.md +4 -2
- package/skills/release-publish/SKILL.md +19 -10
- package/skills/release-verify/SKILL.md +2 -0
- package/skills-src/release-config/SKILL.md +5 -3
- package/skills-src/release-docs/SKILL.md +4 -2
- package/skills-src/release-finish/SKILL.md +6 -4
- package/skills-src/release-help/SKILL.md +14 -5
- package/skills-src/release-marketplace/SKILL.md +3 -1
- package/skills-src/release-prepare/SKILL.md +4 -2
- package/skills-src/release-publish/SKILL.md +19 -10
- package/skills-src/release-verify/SKILL.md +2 -0
- package/src/commands/post-release-local.mjs +249 -58
- package/src/commands/prepare.mjs +178 -9
- package/src/commands/route.mjs +597 -18
- package/src/commands/setup.mjs +2 -0
- package/src/commands/ship.mjs +143 -16
- package/src/commands/verify.mjs +21 -0
- package/src/core/adoption-assessment.mjs +59 -0
- package/src/core/derived-artifact-gates.mjs +32 -5
- package/src/core/foundation-plugin-verification.mjs +213 -1
- package/src/core/hook-cache.mjs +318 -26
- package/src/core/hooks.mjs +8 -1
- package/src/producers/foundation-resource-projection.mjs +16 -3
- package/src/schemas/executable-identity-observation.schema.json +162 -0
- package/src/schemas/filesystem-tree-observation.schema.json +18 -2
- package/src/schemas/migration-manifest.schema.json +271 -7
- package/src/schemas/plugin-verification-request.schema.json +147 -22
- package/src/schemas/plugin-verification-result.schema.json +436 -18
- package/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/src/schemas/skill-family-directory-verification-request.schema.json +100 -0
- package/src/schemas/skill-family-directory-verification-result.schema.json +193 -0
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://contracts.skill-family.example/v1/skill-family-directory-verification-result.json",
|
|
4
|
+
"title": "Skill-family directory verification result",
|
|
5
|
+
"description": "A public, closed Kimi directory verification result. It carries only digests and structured observation summaries; family roots, raw streams, credentials and executable identity inputs remain private.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": ["schemaVersion", "kind", "operation", "status", "requestDigest", "host", "facts", "reason", "requiredActions"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"schemaVersion": { "const": 1 },
|
|
11
|
+
"kind": { "const": "skill-family.skill-family-directory-verification-result" },
|
|
12
|
+
"operation": { "const": "skill-family-directory-verification" },
|
|
13
|
+
"status": { "enum": ["observed", "rejected", "failed", "indeterminate"] },
|
|
14
|
+
"requestDigest": { "$ref": "#/$defs/sha256" },
|
|
15
|
+
"host": { "$ref": "https://contracts.skill-family.example/v1/skill-family-directory-verification-request.json#/$defs/host" },
|
|
16
|
+
"facts": { "$ref": "#/$defs/facts" },
|
|
17
|
+
"reason": {
|
|
18
|
+
"enum": [null, "preflight-rejected", "executable-observation-mismatch", "execution-failed", "snapshot-mismatch", "private-evidence-publication-failed", "boundary-state-indeterminate", "source-invalid", "directory-mismatch", "skill-not-discovered", "skill-not-loaded", "official-observation-unavailable"]
|
|
19
|
+
},
|
|
20
|
+
"requiredActions": {
|
|
21
|
+
"type": "array",
|
|
22
|
+
"uniqueItems": true,
|
|
23
|
+
"items": { "enum": ["manual-temporary-root-inspection-required"] }
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"allOf": [
|
|
27
|
+
{
|
|
28
|
+
"if": { "type": "object", "properties": { "status": { "const": "observed" } }, "required": ["status"] },
|
|
29
|
+
"then": {
|
|
30
|
+
"type": "object",
|
|
31
|
+
"properties": {
|
|
32
|
+
"reason": { "const": null },
|
|
33
|
+
"requiredActions": { "type": "array", "maxItems": 0 },
|
|
34
|
+
"facts": {
|
|
35
|
+
"type": "object",
|
|
36
|
+
"properties": {
|
|
37
|
+
"skills": {
|
|
38
|
+
"type": "array",
|
|
39
|
+
"items": {
|
|
40
|
+
"type": "object",
|
|
41
|
+
"required": ["callId", "resultId"],
|
|
42
|
+
"properties": {
|
|
43
|
+
"discovery": { "const": "observed" },
|
|
44
|
+
"load": { "const": "observed" },
|
|
45
|
+
"callId": { "type": "string", "minLength": 1, "maxLength": 512 },
|
|
46
|
+
"resultId": { "type": "string", "minLength": 1, "maxLength": 512 }
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"workload": {
|
|
51
|
+
"type": "object",
|
|
52
|
+
"properties": {
|
|
53
|
+
"execution": {
|
|
54
|
+
"type": "object",
|
|
55
|
+
"properties": {
|
|
56
|
+
"spawned": { "const": true },
|
|
57
|
+
"exitStatus": { "const": 0 },
|
|
58
|
+
"processStatus": { "const": "EXITED" },
|
|
59
|
+
"terminationReason": { "const": null },
|
|
60
|
+
"watchdogReason": { "const": null },
|
|
61
|
+
"runnerModelOverrideAbsent": { "const": true }
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
"streams": { "type": "object" },
|
|
65
|
+
"snapshots": { "type": "object" },
|
|
66
|
+
"snapshotsMatch": { "const": true }
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"if": { "type": "object", "properties": { "status": { "const": "indeterminate" } }, "required": ["status"] },
|
|
76
|
+
"then": {
|
|
77
|
+
"type": "object",
|
|
78
|
+
"properties": {
|
|
79
|
+
"reason": { "enum": ["boundary-state-indeterminate", "official-observation-unavailable"] },
|
|
80
|
+
"requiredActions": { "const": ["manual-temporary-root-inspection-required"] }
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"if": { "type": "object", "properties": { "status": { "const": "rejected" } }, "required": ["status"] },
|
|
86
|
+
"then": {
|
|
87
|
+
"type": "object",
|
|
88
|
+
"properties": {
|
|
89
|
+
"reason": { "enum": ["preflight-rejected", "executable-observation-mismatch", "source-invalid", "directory-mismatch"] },
|
|
90
|
+
"requiredActions": { "type": "array", "maxItems": 0 },
|
|
91
|
+
"facts": { "type": "object", "properties": { "workload": { "const": null } } }
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"if": { "type": "object", "properties": { "status": { "const": "failed" } }, "required": ["status"] },
|
|
97
|
+
"then": {
|
|
98
|
+
"type": "object",
|
|
99
|
+
"properties": {
|
|
100
|
+
"reason": { "enum": ["execution-failed", "snapshot-mismatch", "private-evidence-publication-failed", "skill-not-discovered", "skill-not-loaded"] },
|
|
101
|
+
"requiredActions": { "type": "array", "maxItems": 0 }
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
],
|
|
106
|
+
"$defs": {
|
|
107
|
+
"sha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
|
|
108
|
+
"skillName": { "type": "string", "minLength": 1, "maxLength": 128, "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$" },
|
|
109
|
+
"facts": {
|
|
110
|
+
"type": "object",
|
|
111
|
+
"additionalProperties": false,
|
|
112
|
+
"required": ["familyTree", "skills", "workload"],
|
|
113
|
+
"properties": {
|
|
114
|
+
"familyTree": {
|
|
115
|
+
"type": "object",
|
|
116
|
+
"additionalProperties": false,
|
|
117
|
+
"required": ["sourceManifestSha256", "membersDigest"],
|
|
118
|
+
"properties": {
|
|
119
|
+
"sourceManifestSha256": { "$ref": "#/$defs/sha256" },
|
|
120
|
+
"membersDigest": { "$ref": "#/$defs/sha256" }
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"skills": {
|
|
124
|
+
"type": "array",
|
|
125
|
+
"minItems": 2,
|
|
126
|
+
"maxItems": 128,
|
|
127
|
+
"uniqueItems": true,
|
|
128
|
+
"items": {
|
|
129
|
+
"type": "object",
|
|
130
|
+
"additionalProperties": false,
|
|
131
|
+
"required": ["name", "sourceSha256", "discovery", "load", "callId", "resultId"],
|
|
132
|
+
"properties": {
|
|
133
|
+
"name": { "$ref": "#/$defs/skillName" },
|
|
134
|
+
"sourceSha256": { "$ref": "#/$defs/sha256" },
|
|
135
|
+
"discovery": { "enum": ["observed", "absent", "unknown"] },
|
|
136
|
+
"load": { "enum": ["observed", "absent", "unknown"] },
|
|
137
|
+
"callId": { "type": ["string", "null"], "minLength": 1, "maxLength": 512 },
|
|
138
|
+
"resultId": { "type": ["string", "null"], "minLength": 1, "maxLength": 512 }
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
"workload": {
|
|
143
|
+
"type": ["object", "null"],
|
|
144
|
+
"additionalProperties": false,
|
|
145
|
+
"required": ["execution", "streams", "snapshots", "snapshotsMatch"],
|
|
146
|
+
"properties": {
|
|
147
|
+
"execution": { "$ref": "#/$defs/execution" },
|
|
148
|
+
"streams": { "$ref": "#/$defs/streams" },
|
|
149
|
+
"snapshots": { "$ref": "#/$defs/snapshots" },
|
|
150
|
+
"snapshotsMatch": { "type": ["boolean", "null"] }
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
},
|
|
155
|
+
"execution": {
|
|
156
|
+
"type": "object",
|
|
157
|
+
"additionalProperties": false,
|
|
158
|
+
"required": ["spawned", "exitStatus", "processStatus", "terminationReason", "watchdogReason", "runnerModelOverrideAbsent"],
|
|
159
|
+
"properties": {
|
|
160
|
+
"spawned": { "type": "boolean" },
|
|
161
|
+
"exitStatus": { "type": ["integer", "null"], "minimum": 0 },
|
|
162
|
+
"processStatus": { "type": ["string", "null"], "enum": ["PLANNED", "STARTING", "RUNNING", "EXITED", "FAILED_TO_START", "TIMED_OUT", "TERMINATED", null] },
|
|
163
|
+
"terminationReason": { "type": ["string", "null"] },
|
|
164
|
+
"watchdogReason": { "type": ["string", "null"] },
|
|
165
|
+
"runnerModelOverrideAbsent": { "type": "boolean" }
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
"stream": {
|
|
169
|
+
"type": "object",
|
|
170
|
+
"additionalProperties": false,
|
|
171
|
+
"required": ["sha256", "bytes", "sensitivity"],
|
|
172
|
+
"properties": { "sha256": { "$ref": "#/$defs/sha256" }, "bytes": { "type": "integer", "minimum": 0 }, "sensitivity": { "const": "private" } }
|
|
173
|
+
},
|
|
174
|
+
"streams": {
|
|
175
|
+
"type": ["object", "null"],
|
|
176
|
+
"additionalProperties": false,
|
|
177
|
+
"required": ["stdout", "stderr"],
|
|
178
|
+
"properties": { "stdout": { "$ref": "#/$defs/stream" }, "stderr": { "$ref": "#/$defs/stream" } }
|
|
179
|
+
},
|
|
180
|
+
"snapshot": {
|
|
181
|
+
"type": "object",
|
|
182
|
+
"additionalProperties": false,
|
|
183
|
+
"required": ["preClosureDigest", "postClosureDigest"],
|
|
184
|
+
"properties": { "preClosureDigest": { "$ref": "#/$defs/sha256" }, "postClosureDigest": { "$ref": "#/$defs/sha256" } }
|
|
185
|
+
},
|
|
186
|
+
"snapshots": {
|
|
187
|
+
"type": ["object", "null"],
|
|
188
|
+
"additionalProperties": false,
|
|
189
|
+
"required": ["family", "fixture", "protectedWorkspace"],
|
|
190
|
+
"properties": { "family": { "$ref": "#/$defs/snapshot" }, "fixture": { "$ref": "#/$defs/snapshot" }, "protectedWorkspace": { "$ref": "#/$defs/snapshot" } }
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"kind": "skill-family.contracts.consumer-contract-vectors",
|
|
4
|
+
"foundationVersion": "0.15.0",
|
|
5
|
+
"sets": [
|
|
6
|
+
{
|
|
7
|
+
"capabilityId": "foundation.contracts.object-validation",
|
|
8
|
+
"vectorSetId": "foundation.contracts.object-validation.consumer-v1",
|
|
9
|
+
"contractId": "skill-family-contracts:validateDocument",
|
|
10
|
+
"strategy": "real-pure",
|
|
11
|
+
"vectors": [
|
|
12
|
+
{
|
|
13
|
+
"schemaVersion": 1,
|
|
14
|
+
"kind": "skill-family.consumer-contract-vector",
|
|
15
|
+
"vectorId": "foundation.contracts.object-validation.consumer-v1.indeterminate",
|
|
16
|
+
"vectorSetId": "foundation.contracts.object-validation.consumer-v1",
|
|
17
|
+
"capabilityId": "foundation.contracts.object-validation",
|
|
18
|
+
"foundationVersion": "0.15.0",
|
|
19
|
+
"contractId": "skill-family-contracts:validateDocument",
|
|
20
|
+
"caseClass": "indeterminate",
|
|
21
|
+
"strategy": "real-pure",
|
|
22
|
+
"request": {
|
|
23
|
+
"document": { "schemaVersion": 1, "kind": "skill-family.project-manifest" },
|
|
24
|
+
"options": { "schemaId": "https://contracts.skill-family.example/v1/project-manifest.json", "dialect": "2020-12", "policy": "strict" }
|
|
25
|
+
},
|
|
26
|
+
"expected": { "outcome": "indeterminate", "allowedStates": ["return", "throw"], "failClosed": true }
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"schemaVersion": 1,
|
|
30
|
+
"kind": "skill-family.consumer-contract-vector",
|
|
31
|
+
"vectorId": "foundation.contracts.object-validation.consumer-v1.negative",
|
|
32
|
+
"vectorSetId": "foundation.contracts.object-validation.consumer-v1",
|
|
33
|
+
"capabilityId": "foundation.contracts.object-validation",
|
|
34
|
+
"foundationVersion": "0.15.0",
|
|
35
|
+
"contractId": "skill-family-contracts:validateDocument",
|
|
36
|
+
"caseClass": "negative",
|
|
37
|
+
"strategy": "real-pure",
|
|
38
|
+
"request": {
|
|
39
|
+
"document": { "schemaVersion": 1, "kind": "skill-family.project-manifest", "project": { "id": "demo-project", "name": "Demo Project" }, "contracts": { "version": "not-a-version", "profile": "generic" } },
|
|
40
|
+
"options": { "schemaId": "https://contracts.skill-family.example/v1/project-manifest.json", "dialect": "2020-12", "policy": "strict" }
|
|
41
|
+
},
|
|
42
|
+
"expected": { "outcome": "return", "value": { "valid": false, "errorCode": "SFC1001", "errors": [{ "keyword": "pattern", "instancePath": "/contracts/version", "schemaPath": "#/properties/contracts/properties/version/pattern", "message": "must match pattern \"^[0-9]+\\.[0-9]+\\.[0-9]+$\"", "params": { "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$" } }], "data": { "schemaVersion": 1, "kind": "skill-family.project-manifest", "project": { "id": "demo-project", "name": "Demo Project" }, "contracts": { "version": "not-a-version", "profile": "generic" } } } }
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"schemaVersion": 1,
|
|
46
|
+
"kind": "skill-family.consumer-contract-vector",
|
|
47
|
+
"vectorId": "foundation.contracts.object-validation.consumer-v1.positive",
|
|
48
|
+
"vectorSetId": "foundation.contracts.object-validation.consumer-v1",
|
|
49
|
+
"capabilityId": "foundation.contracts.object-validation",
|
|
50
|
+
"foundationVersion": "0.15.0",
|
|
51
|
+
"contractId": "skill-family-contracts:validateDocument",
|
|
52
|
+
"caseClass": "positive",
|
|
53
|
+
"strategy": "real-pure",
|
|
54
|
+
"request": {
|
|
55
|
+
"document": { "schemaVersion": 1, "kind": "skill-family.project-manifest", "project": { "id": "demo-project", "name": "Demo Project" }, "contracts": { "version": "1.0.0", "profile": "generic" } },
|
|
56
|
+
"options": { "schemaId": "https://contracts.skill-family.example/v1/project-manifest.json", "dialect": "2020-12", "policy": "strict" }
|
|
57
|
+
},
|
|
58
|
+
"expected": { "outcome": "return", "value": { "valid": true, "errorCode": null, "errors": [], "data": { "schemaVersion": 1, "kind": "skill-family.project-manifest", "project": { "id": "demo-project", "name": "Demo Project" }, "contracts": { "version": "1.0.0", "profile": "generic" } } } }
|
|
59
|
+
}
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"capabilityId": "foundation.harness.atomic-write",
|
|
64
|
+
"vectorSetId": "foundation.harness.atomic-write.consumer-v1",
|
|
65
|
+
"contractId": "skill-family-harness-node:writeFileAtomic",
|
|
66
|
+
"strategy": "official-fake",
|
|
67
|
+
"vectors": [
|
|
68
|
+
{
|
|
69
|
+
"schemaVersion": 1,
|
|
70
|
+
"kind": "skill-family.consumer-contract-vector",
|
|
71
|
+
"vectorId": "foundation.harness.atomic-write.consumer-v1.indeterminate",
|
|
72
|
+
"vectorSetId": "foundation.harness.atomic-write.consumer-v1",
|
|
73
|
+
"capabilityId": "foundation.harness.atomic-write",
|
|
74
|
+
"foundationVersion": "0.15.0",
|
|
75
|
+
"contractId": "skill-family-harness-node:writeFileAtomic",
|
|
76
|
+
"caseClass": "indeterminate",
|
|
77
|
+
"strategy": "official-fake",
|
|
78
|
+
"request": { "root": { "runtimeBinding": "atomic-write-canonical-root" }, "relPath": "records/item.json", "data": "fixture-data", "options": { "mode": 420 } },
|
|
79
|
+
"expected": { "outcome": "indeterminate", "allowedStates": ["return", "throw"], "failClosed": true }
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"schemaVersion": 1,
|
|
83
|
+
"kind": "skill-family.consumer-contract-vector",
|
|
84
|
+
"vectorId": "foundation.harness.atomic-write.consumer-v1.negative",
|
|
85
|
+
"vectorSetId": "foundation.harness.atomic-write.consumer-v1",
|
|
86
|
+
"capabilityId": "foundation.harness.atomic-write",
|
|
87
|
+
"foundationVersion": "0.15.0",
|
|
88
|
+
"contractId": "skill-family-harness-node:writeFileAtomic",
|
|
89
|
+
"caseClass": "negative",
|
|
90
|
+
"strategy": "official-fake",
|
|
91
|
+
"request": { "root": { "runtimeBinding": "atomic-write-canonical-root" }, "relPath": "../outside.json", "data": "fixture-data", "options": { "mode": 420 } },
|
|
92
|
+
"expected": { "outcome": "throw", "errorCode": "SFC2004", "errorKind": "path-traversal" }
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"schemaVersion": 1,
|
|
96
|
+
"kind": "skill-family.consumer-contract-vector",
|
|
97
|
+
"vectorId": "foundation.harness.atomic-write.consumer-v1.positive",
|
|
98
|
+
"vectorSetId": "foundation.harness.atomic-write.consumer-v1",
|
|
99
|
+
"capabilityId": "foundation.harness.atomic-write",
|
|
100
|
+
"foundationVersion": "0.15.0",
|
|
101
|
+
"contractId": "skill-family-harness-node:writeFileAtomic",
|
|
102
|
+
"caseClass": "positive",
|
|
103
|
+
"strategy": "official-fake",
|
|
104
|
+
"request": { "root": { "runtimeBinding": "atomic-write-canonical-root" }, "relPath": "records/item.json", "data": "fixture-data", "options": { "mode": 420 } },
|
|
105
|
+
"expected": { "outcome": "return", "valueRelation": "atomic-write-contained-absolute-target" }
|
|
106
|
+
}
|
|
107
|
+
]
|
|
108
|
+
}
|
|
109
|
+
]
|
|
110
|
+
}
|
package/bin/error-codes.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"kind": "skill-family.contracts.error-codes",
|
|
4
|
-
"contractsVersion": "1.
|
|
4
|
+
"contractsVersion": "1.15.0",
|
|
5
5
|
"policy": {
|
|
6
6
|
"format": "^SFC[0-9]{4}$",
|
|
7
7
|
"ranges": [
|
|
@@ -108,6 +108,13 @@
|
|
|
108
108
|
"stableSince": "1.0.0",
|
|
109
109
|
"meaning": "A registered schema does not compile under its declared dialect (the schema document itself is invalid)."
|
|
110
110
|
},
|
|
111
|
+
{
|
|
112
|
+
"code": "SFC1013",
|
|
113
|
+
"name": "CONSUMER_CONTRACT_VERSION_MISMATCH",
|
|
114
|
+
"category": "contract",
|
|
115
|
+
"stableSince": "1.14.0",
|
|
116
|
+
"meaning": "A consumer contract vector, capability identity, vector set, or Foundation package version does not match the installed Contracts package."
|
|
117
|
+
},
|
|
111
118
|
{
|
|
112
119
|
"code": "SFC2002",
|
|
113
120
|
"name": "UNKNOWN_OPERATION",
|
|
@@ -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":"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"}}
|
|
1
|
+
{"kind":"skill-family.foundation-resource-binding","resources":[{"package":"skill-family-contracts","path":"bin/consumer-contract-vectors.json","rel":"src/consumer-contract-vectors.json","sha256":"cb34ae52e111d832b443d9e47c1811d7ea20478b1f4368a0fc9b889265b61b39","size":6628},{"package":"skill-family-contracts","path":"bin/error-codes.json","rel":"src/error-codes.json","sha256":"2cc9367603b62a42f1c3aeff96a5836542e04d10e804d174e56ebede5dddd21a","size":6122},{"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":"c722114f3237b50b66e19ac5541ecaa5b324e82f7287328d74f109b88bb841d2","size":12700},{"package":"skill-family-contracts","path":"bin/rules.json","rel":"src/rules.json","sha256":"9bc16963a15bab6fb372bd49ece59fc6351e1c558d5d40cc97ead48ab6941ed2","size":3578},{"package":"skill-family-contracts","path":"bin/schemas/consumer-contract-vector.schema.json","rel":"src/schemas/consumer-contract-vector.schema.json","sha256":"71a42a6c500ad6fbc2e7514428fb89b6329c329892ed641cd7bfb5f0fa9544ff","size":4704},{"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/executable-identity-observation.schema.json","rel":"src/schemas/executable-identity-observation.schema.json","sha256":"334a7cc5f1368a24ce7241b3c223b5246a567468c7e87c990796a68862b01732","size":5993},{"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":"ca9133b0f257342dd191e79d006a7c6dfd356650f5b487dabe567b30aabe70e1","size":3024},{"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":"ff5ea2f22c61301b6d30f508d7e2182bc89fe3c340eb64e733e9bebc11120e50","size":13373},{"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":"3df01a29d3d8f18f88a765ca8e9e05e2b3868cb78c8673cd4d168d670f1fc917","size":14234},{"package":"skill-family-contracts","path":"src/schemas/plugin-verification-result.schema.json","rel":"src/schemas/plugin-verification-result.schema.json","sha256":"f890ad77dc9a96ba9ca489ffc5a46991262934459641ec412aacd75f1b19c4f9","size":38055},{"package":"skill-family-contracts","path":"src/schemas/profile-adoption-declaration.schema.json","rel":"src/schemas/profile-adoption-declaration.schema.json","sha256":"24603f16dd32e924da5d7b760063d8d7241e597d8fdc155fd8a0bf0dfa4e17c0","size":4127},{"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/skill-family-directory-verification-request.schema.json","rel":"src/schemas/skill-family-directory-verification-request.schema.json","sha256":"f78c7b6f2527f62cd104cdcd5c99e74fef5ad5e6eb1aa5f493f8ecb624ebfd01","size":4259},{"package":"skill-family-contracts","path":"src/schemas/skill-family-directory-verification-result.schema.json","rel":"src/schemas/skill-family-directory-verification-result.schema.json","sha256":"e9b752fb4009cfb1f4aecc7e54265ca3cdbb6aa1a1cd37c4c45d965bd4a23ac5","size":8546},{"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.15.0","skill-family-engineering-kit":"0.15.0","skill-family-harness-node":"0.15.0"}}
|
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.15.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
|
{
|
|
@@ -306,6 +306,27 @@
|
|
|
306
306
|
"dialect": "2020-12",
|
|
307
307
|
"status": "candidate",
|
|
308
308
|
"file": "src/schemas/filesystem-tree-observation.schema.json"
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"$id": "https://contracts.skill-family.example/v1/executable-identity-observation.json",
|
|
312
|
+
"object": "executable-identity-observation",
|
|
313
|
+
"dialect": "2020-12",
|
|
314
|
+
"status": "candidate",
|
|
315
|
+
"file": "src/schemas/executable-identity-observation.schema.json"
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
"$id": "https://contracts.skill-family.example/v1/skill-family-directory-verification-request.json",
|
|
319
|
+
"object": "skill-family-directory-verification-request",
|
|
320
|
+
"dialect": "2020-12",
|
|
321
|
+
"status": "candidate",
|
|
322
|
+
"file": "src/schemas/skill-family-directory-verification-request.schema.json"
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
"$id": "https://contracts.skill-family.example/v1/skill-family-directory-verification-result.json",
|
|
326
|
+
"object": "skill-family-directory-verification-result",
|
|
327
|
+
"dialect": "2020-12",
|
|
328
|
+
"status": "candidate",
|
|
329
|
+
"file": "src/schemas/skill-family-directory-verification-result.schema.json"
|
|
309
330
|
}
|
|
310
331
|
],
|
|
311
332
|
"dialects": {
|
|
@@ -364,7 +364,7 @@ Options:
|
|
|
364
364
|
--hook-approval <path> Checkpoint approval for a requiresApproval postPublish hook (ship/distribute; repeatable)
|
|
365
365
|
--state <path> Override the durable ship state file
|
|
366
366
|
--update-local-hosts Update installed plugins for selected local hosts after VERIFIED
|
|
367
|
-
--hosts <ids> Comma-separated local hosts for post-release update
|
|
367
|
+
--hosts <ids> Comma-separated local hosts for post-release update. No local host is updated unless --hosts contains at least one id
|
|
368
368
|
--confirm-plan <digest> Confirm the exact VERIFIED plan before local host mutation
|
|
369
369
|
--no-hook-cache Force every prepare hook to run in full; neither read nor write the hook cache
|
|
370
370
|
--json Output results as JSON
|
|
@@ -374,7 +374,8 @@ Options:
|
|
|
374
374
|
Safety:
|
|
375
375
|
Safe default: help -> setup (when config is absent) -> assess -> prepare --offline -> human review.
|
|
376
376
|
Production happy end: ship --target-version <ver> -> ship --approve --actor <name>.
|
|
377
|
-
The ship command runs configured hooks and gates automatically
|
|
377
|
+
The ship command runs configured hooks and gates automatically. Frozen plan approval is the only
|
|
378
|
+
normal release-level approval; requiresApproval postPublish hooks keep independent checkpoint approvals.
|
|
378
379
|
Kimi/CodeBuddy installations are non-blocking manual follow-up tasks (not verified by system).
|
|
379
380
|
prepare copies current public files into a local snapshot; it does not rewrite source files.
|
|
380
381
|
- Default mode is offline (release-skill pipeline does no remote writes)
|
|
@@ -547,6 +548,38 @@ if (!COMMANDS.has(command)) {
|
|
|
547
548
|
await exitAfterFlush(2);
|
|
548
549
|
}
|
|
549
550
|
|
|
551
|
+
// Ship help is intentionally handled before resolving a project root or
|
|
552
|
+
// importing adapters. It must remain usable in an empty, invalid, or
|
|
553
|
+
// read-only directory and must not touch config, locks, or ship state.
|
|
554
|
+
if (command === 'ship' && (args.includes('--help') || args.includes('-h'))) {
|
|
555
|
+
if (hasJson) {
|
|
556
|
+
console.log(JSON.stringify({
|
|
557
|
+
command: 'ship',
|
|
558
|
+
status: 'HELP',
|
|
559
|
+
options: {
|
|
560
|
+
targetVersion: '--target-version <version>',
|
|
561
|
+
state: '--state <path>',
|
|
562
|
+
approve: '--approve --actor <name>',
|
|
563
|
+
},
|
|
564
|
+
message: 'Repeat the same command to resume from the same state. For parallel or cross-session versions, use .release-skill/ships/<version>.json.',
|
|
565
|
+
}, null, 2));
|
|
566
|
+
} else {
|
|
567
|
+
console.log(`release-skill ship - Resume one durable release flow
|
|
568
|
+
|
|
569
|
+
Usage:
|
|
570
|
+
release-skill ship [options]
|
|
571
|
+
|
|
572
|
+
Options:
|
|
573
|
+
--target-version <version> Specify the target version
|
|
574
|
+
--state <path> Specify the durable state file
|
|
575
|
+
--approve --actor <name> Approve the plan bound to the current state
|
|
576
|
+
|
|
577
|
+
Repeat the same command to resume from the same state.
|
|
578
|
+
For parallel or cross-session versions, use .release-skill/ships/<version>.json.`);
|
|
579
|
+
}
|
|
580
|
+
await exitAfterFlush(0);
|
|
581
|
+
}
|
|
582
|
+
|
|
550
583
|
// --- Setup command routing ---
|
|
551
584
|
if (command === 'setup') {
|
|
552
585
|
const rootIdx = args.indexOf('--root');
|
|
@@ -750,6 +783,34 @@ if (command === 'hooks') {
|
|
|
750
783
|
}
|
|
751
784
|
|
|
752
785
|
// --- Durable end-to-end ship routing ---
|
|
786
|
+
function printShipApprovalSummary(result) {
|
|
787
|
+
const summary = result.approvalSummary;
|
|
788
|
+
if (!summary) return;
|
|
789
|
+
console.log('Approval summary:');
|
|
790
|
+
for (const unit of summary.units ?? []) {
|
|
791
|
+
console.log(` Unit ${unit.id} ${unit.targetVersion}`);
|
|
792
|
+
console.log(` Public repo: ${unit.publicRepo}`);
|
|
793
|
+
console.log(` Branch: ${unit.branch} (${unit.branchStrategy})`);
|
|
794
|
+
console.log(` Tag: ${unit.tag}`);
|
|
795
|
+
for (const npm of unit.npm ?? []) {
|
|
796
|
+
console.log(` npm: ${npm.package}@${npm.version} registry=${npm.registry} dist-tag=${npm.distTag} access=${npm.access} provenance=${npm.provenance}`);
|
|
797
|
+
}
|
|
798
|
+
if (unit.githubRelease) {
|
|
799
|
+
console.log(` GitHub Release: ${unit.githubRelease.repo} tag=${unit.githubRelease.tag} name=${unit.githubRelease.name}`);
|
|
800
|
+
}
|
|
801
|
+
}
|
|
802
|
+
for (const action of summary.actions ?? []) {
|
|
803
|
+
console.log(` External action ${action.id} type=${action.type} unit=${action.unitId} target=${JSON.stringify(action.target)}`);
|
|
804
|
+
}
|
|
805
|
+
if ((summary.waivers ?? []).length === 0) console.log(' Waivers: none');
|
|
806
|
+
else for (const waiver of summary.waivers) console.log(` Waiver: ${JSON.stringify(waiver)}`);
|
|
807
|
+
for (const checkpoint of summary.postPublishCheckpointApprovals ?? []) {
|
|
808
|
+
console.log(` PostPublish checkpoint ${checkpoint.actionId}: unit=${checkpoint.unitId} hook=${checkpoint.hookId} phase=${checkpoint.phase} preset=${checkpoint.preset ?? 'command'} delivery=${checkpoint.delivery ?? 'command'} requiresApproval=${checkpoint.requiresApproval} includedInPlanApproval=${checkpoint.includedInPlanApproval}`);
|
|
809
|
+
console.log(` Independent checkpoint approval: valid for at most ${checkpoint.approvalWindowHours} hours and bound to (planDigest=${checkpoint.binding.planDigest}, hookId=${checkpoint.binding.hookId}).`);
|
|
810
|
+
}
|
|
811
|
+
console.log(` Plan approval coverage: externalActions=${result.externalActionsIncludedInPlanApproval}, verificationGates=${result.verificationGatesIncludedInPlanApproval}, postPublishCheckpointApprovals=${result.postPublishCheckpointApprovalsIncludedInPlanApproval}`);
|
|
812
|
+
}
|
|
813
|
+
|
|
753
814
|
if (command === 'ship') {
|
|
754
815
|
const value = (flag) => {
|
|
755
816
|
const idx = args.indexOf(flag);
|
|
@@ -812,6 +873,7 @@ if (command === 'ship') {
|
|
|
812
873
|
console.log(`Warning [${warning.code}] ${warning.message}`);
|
|
813
874
|
}
|
|
814
875
|
if (result.planDigest && result.status === 'NEEDS_PLAN_APPROVAL') {
|
|
876
|
+
printShipApprovalSummary(result);
|
|
815
877
|
console.log(`Approve plan: ship --approve --actor <person>`);
|
|
816
878
|
}
|
|
817
879
|
if (result.postVerify) {
|
|
@@ -1240,8 +1302,14 @@ if (command === 'post-release') {
|
|
|
1240
1302
|
assertVerifiedReleaseRun(plan, runRecord);
|
|
1241
1303
|
|
|
1242
1304
|
const updateRequested = args.includes('--update-local-hosts');
|
|
1243
|
-
const
|
|
1244
|
-
|
|
1305
|
+
const hostsIndex = args.indexOf('--hosts');
|
|
1306
|
+
const rawHosts = hostsIndex !== -1
|
|
1307
|
+
&& args[hostsIndex + 1]
|
|
1308
|
+
&& !args[hostsIndex + 1].startsWith('--')
|
|
1309
|
+
? args[hostsIndex + 1]
|
|
1310
|
+
: '';
|
|
1311
|
+
const selectedHosts = rawHosts
|
|
1312
|
+
.split(',')
|
|
1245
1313
|
.map((host) => host.trim())
|
|
1246
1314
|
.filter(Boolean);
|
|
1247
1315
|
const result = updateRequested
|