release-skill 0.2.5 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.codebuddy-plugin/plugin.json +1 -1
  4. package/.codex-plugin/plugin.json +2 -2
  5. package/.kimi-plugin/plugin.json +1 -1
  6. package/CHANGELOG.md +21 -0
  7. package/INSTALL.md +32 -8
  8. package/INSTALL.zh-CN.md +28 -6
  9. package/README.md +26 -14
  10. package/README.zh-CN.md +24 -14
  11. package/adapters/claude/.claude-plugin/marketplace.json +1 -1
  12. package/adapters/claude/.claude-plugin/plugin.json +1 -1
  13. package/adapters/claude/bin/release-skill.bundle.mjs +1340 -614
  14. package/adapters/claude/schemas/.render-manifest.json +6 -6
  15. package/adapters/claude/schemas/release-plan.schema.json +67 -0
  16. package/adapters/claude/schemas/release-project.schema.json +6 -0
  17. package/adapters/claude/schemas/release-run.schema.json +65 -0
  18. package/adapters/codex/.codex-plugin/plugin.json +2 -2
  19. package/adapters/codex/bin/release-skill.bundle.mjs +1340 -614
  20. package/adapters/codex/schemas/.render-manifest.json +6 -6
  21. package/adapters/codex/schemas/release-plan.schema.json +67 -0
  22. package/adapters/codex/schemas/release-project.schema.json +6 -0
  23. package/adapters/codex/schemas/release-run.schema.json +65 -0
  24. package/adapters/kimi/.kimi-plugin/plugin.json +1 -1
  25. package/adapters/kimi/bin/release-skill.bundle.mjs +1340 -614
  26. package/adapters/kimi/schemas/.render-manifest.json +6 -6
  27. package/adapters/kimi/schemas/release-plan.schema.json +67 -0
  28. package/adapters/kimi/schemas/release-project.schema.json +6 -0
  29. package/adapters/kimi/schemas/release-run.schema.json +65 -0
  30. package/adapters/workbuddy/.codebuddy-plugin/plugin.json +1 -1
  31. package/adapters/workbuddy/bin/release-skill.bundle.mjs +1340 -614
  32. package/adapters/workbuddy/schemas/.render-manifest.json +6 -6
  33. package/adapters/workbuddy/schemas/release-plan.schema.json +67 -0
  34. package/adapters/workbuddy/schemas/release-project.schema.json +6 -0
  35. package/adapters/workbuddy/schemas/release-run.schema.json +65 -0
  36. package/bin/release-skill.bundle.mjs +1340 -614
  37. package/package.json +1 -1
  38. package/references/.render-manifest.json +4 -4
  39. package/references/02-project-config.md +28 -2
  40. package/references/05-evidence-and-errors.md +6 -0
  41. package/schemas/.render-manifest.json +6 -6
  42. package/schemas/release-plan.schema.json +67 -0
  43. package/schemas/release-project.schema.json +6 -0
  44. package/schemas/release-run.schema.json +65 -0
  45. package/src/commands/prepare.mjs +158 -1
  46. package/src/commands/publish.mjs +72 -0
  47. package/src/commands/reconcile.mjs +19 -0
  48. package/src/commands/setup.mjs +26 -0
  49. package/src/commands/verify.mjs +32 -0
  50. package/src/core/errors.mjs +12 -0
  51. package/src/core/source-authority.mjs +547 -0
@@ -22,16 +22,16 @@
22
22
  "bytes": 2390
23
23
  },
24
24
  "release-plan.schema.json": {
25
- "digest": "d7869cdb335618754eb787fe352c4c1775c799900f3bb926197c51359699a648",
26
- "bytes": 24088
25
+ "digest": "01c96659223918b5ce0e2d0d01d1ce5095baeb056de401babb8928add4d2a221",
26
+ "bytes": 35256
27
27
  },
28
28
  "release-project.schema.json": {
29
- "digest": "53efe202fc5e2bf63c8d846cf4d50648991163b270536c1450c4be44e45d4b93",
30
- "bytes": 25761
29
+ "digest": "a3d46be1e1e8105103a505c6d58d14f3733c8da91ab8289e097ffd259bf1cd93",
30
+ "bytes": 30982
31
31
  },
32
32
  "release-run.schema.json": {
33
- "digest": "f453845fd2aab02c7b0812b1f62fd1ab7fa37104b8e752914906551c0e8c2637",
34
- "bytes": 8959
33
+ "digest": "bf3c8fb4ca2fc078272a45a6ee6bf663fd2420a722b2f995dbaabf2635e2179e",
34
+ "bytes": 14824
35
35
  }
36
36
  }
37
37
  }
@@ -992,6 +992,73 @@
992
992
  "type": "string",
993
993
  "minLength": 1
994
994
  },
995
+ "sourceAuthority": {
996
+ "type": "object",
997
+ "description": "Source authority content closure gate binding: proves frozen source inputs exist in the workspace remote default branch",
998
+ "required": [
999
+ "sourceRepository",
1000
+ "defaultBranch",
1001
+ "entries",
1002
+ "inputDigest",
1003
+ "algorithmVersion"
1004
+ ],
1005
+ "additionalProperties": false,
1006
+ "properties": {
1007
+ "sourceRepository": {
1008
+ "type": "string",
1009
+ "minLength": 1,
1010
+ "pattern": "^[a-zA-Z0-9._-]+/[a-zA-Z0-9._-]+$",
1011
+ "description": "GitHub owner/repo of the workspace source repository"
1012
+ },
1013
+ "defaultBranch": {
1014
+ "type": "string",
1015
+ "minLength": 1,
1016
+ "description": "Workspace remote default branch name"
1017
+ },
1018
+ "entries": {
1019
+ "type": "array",
1020
+ "minItems": 1,
1021
+ "description": "Frozen workspace-relative source inputs compared with the remote default branch",
1022
+ "items": {
1023
+ "type": "object",
1024
+ "required": [
1025
+ "path",
1026
+ "digest",
1027
+ "mode"
1028
+ ],
1029
+ "additionalProperties": false,
1030
+ "properties": {
1031
+ "path": {
1032
+ "type": "string",
1033
+ "minLength": 1,
1034
+ "pattern": "^(?!/)(?!.*(?:^|/)\\.\\.(?:/|$))(?!.*\\\\).+$"
1035
+ },
1036
+ "digest": {
1037
+ "type": "string",
1038
+ "pattern": "^[a-f0-9]{64}$"
1039
+ },
1040
+ "mode": {
1041
+ "type": "string",
1042
+ "enum": [
1043
+ "100644",
1044
+ "100755"
1045
+ ]
1046
+ }
1047
+ }
1048
+ }
1049
+ },
1050
+ "inputDigest": {
1051
+ "type": "string",
1052
+ "pattern": "^[a-f0-9]{64}$",
1053
+ "description": "SHA-256 digest of the deterministic source-input closure"
1054
+ },
1055
+ "algorithmVersion": {
1056
+ "type": "integer",
1057
+ "minimum": 1,
1058
+ "description": "Source-input closure algorithm version"
1059
+ }
1060
+ }
1061
+ },
995
1062
  "waivers": {
996
1063
  "type": "array",
997
1064
  "items": {
@@ -35,6 +35,12 @@
35
35
  "defaultBranch": {
36
36
  "type": "string",
37
37
  "minLength": 1
38
+ },
39
+ "sourceRepository": {
40
+ "type": "string",
41
+ "minLength": 1,
42
+ "pattern": "^[a-zA-Z0-9._-]+/[a-zA-Z0-9._-]+$",
43
+ "description": "GitHub owner/repo of the workspace source repository for source authority content gate"
38
44
  }
39
45
  }
40
46
  },
@@ -227,6 +227,71 @@
227
227
  }
228
228
  }
229
229
  },
230
+ "sourceAuthorityReceipts": {
231
+ "type": "array",
232
+ "description": "Source authority content closure receipts: one per publish run proving remote content matches frozen inputs",
233
+ "items": {
234
+ "type": "object",
235
+ "required": [
236
+ "sourceRepository",
237
+ "defaultBranch",
238
+ "inputDigest",
239
+ "algorithmVersion",
240
+ "entryCount",
241
+ "planDigest",
242
+ "verifiedAt",
243
+ "result"
244
+ ],
245
+ "additionalProperties": false,
246
+ "properties": {
247
+ "sourceRepository": {
248
+ "type": "string",
249
+ "minLength": 1
250
+ },
251
+ "defaultBranch": {
252
+ "type": "string",
253
+ "minLength": 1
254
+ },
255
+ "inputDigest": {
256
+ "type": "string",
257
+ "pattern": "^[a-f0-9]{64}$"
258
+ },
259
+ "algorithmVersion": {
260
+ "type": "integer",
261
+ "minimum": 1
262
+ },
263
+ "entryCount": {
264
+ "type": "integer",
265
+ "minimum": 1
266
+ },
267
+ "planDigest": {
268
+ "type": "string",
269
+ "minLength": 1
270
+ },
271
+ "verifiedAt": {
272
+ "type": "string",
273
+ "format": "date-time"
274
+ },
275
+ "result": {
276
+ "type": "string",
277
+ "enum": [
278
+ "CONSISTENT",
279
+ "MISMATCH"
280
+ ]
281
+ },
282
+ "observedCommit": {
283
+ "type": "string",
284
+ "pattern": "^[a-f0-9]{40,64}$"
285
+ },
286
+ "mismatchedPaths": {
287
+ "type": "array",
288
+ "items": {
289
+ "type": "string"
290
+ }
291
+ }
292
+ }
293
+ }
294
+ },
230
295
  "consumerVerificationReceipts": {
231
296
  "type": "array",
232
297
  "description": "消费端验证收据,每个 marketplace action 一条记录",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-skill",
3
- "version": "0.2.5",
3
+ "version": "0.2.6",
4
4
  "description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
5
5
  "author": {
6
6
  "name": "广州市风荷科技有限公司"