@unbrained/pm-cli 2026.10.10 → 2026.10.11

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 (79) hide show
  1. package/.claude-plugin/marketplace.json +1 -36
  2. package/CHANGELOG.md +13 -4
  3. package/dist/cli-bundle/bundle-manifest.json +1 -382
  4. package/dist/cli-bundle/sdk-governance.js +1 -1
  5. package/dist/cli-bundle/sdk.js +9 -9
  6. package/dist/sdk/governance/artifact-ledgers.d.ts +59 -0
  7. package/dist/sdk/governance/artifact-ledgers.js +2 -0
  8. package/dist/sdk/governance.d.ts +1 -0
  9. package/dist/sdk/governance.js +1 -1
  10. package/dist/sdk/public-surface.json +1 -1
  11. package/docs/RELEASE_LEDGER_RECONCILIATION.md +148 -0
  12. package/docs/RELEASE_RELIABILITY.md +4 -0
  13. package/docs/RELEASING.md +34 -5
  14. package/docs/agent-task-token-baseline.json +1 -292
  15. package/docs/agent-task-transcripts.json +1 -478
  16. package/docs/ecosystem-review-2026-09-28.json +1 -2866
  17. package/docs/examples/policy-restricted-extension/manifest.json +1 -22
  18. package/docs/examples/policy-restricted-extension/package.json +1 -8
  19. package/docs/examples/sdk-agent-environment/package.json +1 -8
  20. package/docs/examples/sdk-app-embedding/package.json +1 -9
  21. package/docs/examples/sdk-contract-consumer/package.json +1 -11
  22. package/docs/examples/sdk-custom-tool/package.json +1 -13
  23. package/docs/examples/starter-extension/manifest.json +1 -33
  24. package/docs/examples/starter-extension/package.json +1 -10
  25. package/docs/performance/corpus-shape-comparison.json +1 -108
  26. package/docs/performance/latest-scale-report.json +1 -418
  27. package/docs/performance/scale-100k-report.json +1 -418
  28. package/docs/schemas/extension-manifest.schema.json +1 -165
  29. package/marketplace.json +1 -36
  30. package/package.json +1 -1
  31. package/packages/pm-beads/extensions/beads/manifest.json +1 -28
  32. package/packages/pm-beads/extensions/beads/package.json +1 -3
  33. package/packages/pm-beads/package.json +1 -50
  34. package/packages/pm-calendar/extensions/calendar/manifest.json +1 -22
  35. package/packages/pm-calendar/extensions/calendar/package.json +1 -3
  36. package/packages/pm-calendar/package.json +1 -51
  37. package/packages/pm-command-kit/extensions/command-kit/manifest.json +1 -22
  38. package/packages/pm-command-kit/extensions/command-kit/package.json +1 -3
  39. package/packages/pm-command-kit/package.json +1 -53
  40. package/packages/pm-digital-twin/extensions/digital-twin/manifest.json +1 -19
  41. package/packages/pm-digital-twin/extensions/digital-twin/package.json +1 -3
  42. package/packages/pm-digital-twin/package.json +1 -58
  43. package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +1 -19
  44. package/packages/pm-governance-audit/extensions/governance-audit/package.json +1 -3
  45. package/packages/pm-governance-audit/package.json +1 -55
  46. package/packages/pm-guide-shell/extensions/guide-shell/manifest.json +1 -22
  47. package/packages/pm-guide-shell/extensions/guide-shell/package.json +1 -3
  48. package/packages/pm-guide-shell/package.json +1 -52
  49. package/packages/pm-kanban/extensions/kanban/manifest.json +1 -19
  50. package/packages/pm-kanban/extensions/kanban/package.json +1 -3
  51. package/packages/pm-kanban/package.json +1 -57
  52. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/manifest.json +1 -19
  53. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/package.json +1 -3
  54. package/packages/pm-lifecycle-hooks/package.json +1 -52
  55. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/manifest.json +1 -29
  56. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/package.json +1 -3
  57. package/packages/pm-linked-test-adapters/package.json +1 -53
  58. package/packages/pm-search-advanced/extensions/search-advanced/manifest.json +1 -29
  59. package/packages/pm-search-advanced/extensions/search-advanced/package.json +1 -3
  60. package/packages/pm-search-advanced/package.json +1 -54
  61. package/packages/pm-templates/extensions/templates/manifest.json +1 -22
  62. package/packages/pm-templates/extensions/templates/package.json +1 -3
  63. package/packages/pm-templates/package.json +1 -50
  64. package/packages/pm-todos/extensions/todos/manifest.json +1 -29
  65. package/packages/pm-todos/extensions/todos/package.json +1 -3
  66. package/packages/pm-todos/package.json +1 -51
  67. package/packages/pm-vcs/extensions/vcs/manifest.json +1 -19
  68. package/packages/pm-vcs/extensions/vcs/package.json +1 -3
  69. package/packages/pm-vcs/package.json +1 -55
  70. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -25
  71. package/plugins/pm-claude/.mcp.json +1 -8
  72. package/plugins/pm-claude/hooks/hooks.json +1 -17
  73. package/plugins/pm-claude/package.json +1 -9
  74. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -45
  75. package/plugins/pm-codex/.mcp.json +1 -11
  76. package/plugins/pm-codex/mcp.json +1 -11
  77. package/plugins/pm-codex/package.json +1 -9
  78. package/plugins/pm-codex/plugin.json +1 -45
  79. package/runtime-dependencies.json +1 -512
@@ -1,22 +1 @@
1
- {
2
- "name": "policy-restricted-extension",
3
- "version": "0.1.0",
4
- "entry": "./index.ts",
5
- "manifest_version": 2,
6
- "pm_min_version": "2026.6.24",
7
- "trusted": true,
8
- "provenance": {
9
- "source": "docs/examples/policy-restricted-extension",
10
- "verified": true
11
- },
12
- "sandbox_profile": "restricted",
13
- "permissions": {
14
- "fs_read": true,
15
- "fs_write": false,
16
- "network": false,
17
- "env_read": true,
18
- "env_write": false,
19
- "process_spawn": false
20
- },
21
- "capabilities": ["commands", "hooks", "services"]
22
- }
1
+ {"name":"policy-restricted-extension","version":"0.1.0","entry":"./index.ts","manifest_version":2,"pm_min_version":"2026.6.24","trusted":true,"provenance":{"source":"docs/examples/policy-restricted-extension","verified":true},"sandbox_profile":"restricted","permissions":{"fs_read":true,"fs_write":false,"network":false,"env_read":true,"env_write":false,"process_spawn":false},"capabilities":["commands","hooks","services"]}
@@ -1,8 +1 @@
1
- {
2
- "name": "policy-restricted-extension",
3
- "private": true,
4
- "type": "module",
5
- "dependencies": {
6
- "@unbrained/pm-cli": "latest"
7
- }
8
- }
1
+ {"name":"policy-restricted-extension","private":true,"type":"module","dependencies":{"@unbrained/pm-cli":"latest"}}
@@ -1,8 +1 @@
1
- {
2
- "name": "pm-sdk-agent-environment-example",
3
- "private": true,
4
- "type": "module",
5
- "scripts": {
6
- "start": "node run-agent-environment.mjs"
7
- }
8
- }
1
+ {"name":"pm-sdk-agent-environment-example","private":true,"type":"module","scripts":{"start":"node run-agent-environment.mjs"}}
@@ -1,9 +1 @@
1
- {
2
- "name": "pm-sdk-app-embedding-example",
3
- "private": true,
4
- "type": "module",
5
- "scripts": {
6
- "start": "node run-embedded-pm.mjs",
7
- "reload": "node run-embedded-pm.mjs extension-reload"
8
- }
9
- }
1
+ {"name":"pm-sdk-app-embedding-example","private":true,"type":"module","scripts":{"start":"node run-embedded-pm.mjs","reload":"node run-embedded-pm.mjs extension-reload"}}
@@ -1,11 +1 @@
1
- {
2
- "name": "pm-sdk-contract-consumer-example",
3
- "private": true,
4
- "type": "module",
5
- "scripts": {
6
- "inspect:create": "node inspect-contracts.mjs create",
7
- "inspect:update": "node inspect-contracts.mjs update",
8
- "inspect:reload": "node inspect-contracts.mjs extension-reload",
9
- "parse:receipt": "node parse-receipt.mjs"
10
- }
11
- }
1
+ {"name":"pm-sdk-contract-consumer-example","private":true,"type":"module","scripts":{"inspect:create":"node inspect-contracts.mjs create","inspect:update":"node inspect-contracts.mjs update","inspect:reload":"node inspect-contracts.mjs extension-reload","parse:receipt":"node parse-receipt.mjs"}}
@@ -1,13 +1 @@
1
- {
2
- "name": "@unbrained/pm-sdk-custom-tool",
3
- "version": "2026.7.16",
4
- "private": true,
5
- "type": "module",
6
- "description": "SDK-only exemplar for building a complete custom project-management tool on pm primitives.",
7
- "bin": {
8
- "pm-custom": "src/entry.ts"
9
- },
10
- "peerDependencies": {
11
- "@unbrained/pm-cli": ">=2026.7.16"
12
- }
13
- }
1
+ {"name":"@unbrained/pm-sdk-custom-tool","version":"2026.7.16","private":true,"type":"module","description":"SDK-only exemplar for building a complete custom project-management tool on pm primitives.","bin":{"pm-custom":"src/entry.ts"},"peerDependencies":{"@unbrained/pm-cli":">=2026.7.16"}}
@@ -1,33 +1 @@
1
- {
2
- "name": "starter-extension",
3
- "version": "0.1.0",
4
- "description": "SDK-first starter extension demonstrating all pm extension capabilities.",
5
- "entry": "./index.ts",
6
- "manifest_version": 2,
7
- "pm_min_version": "2026.6.24",
8
- "trusted": true,
9
- "provenance": {
10
- "source": "docs/examples/starter-extension",
11
- "verified": true
12
- },
13
- "sandbox_profile": "none",
14
- "permissions": {
15
- "fs_read": true,
16
- "fs_write": true,
17
- "network": false,
18
- "env_read": true,
19
- "env_write": false,
20
- "process_spawn": false
21
- },
22
- "capabilities": [
23
- "commands",
24
- "parser",
25
- "preflight",
26
- "services",
27
- "renderers",
28
- "hooks",
29
- "schema",
30
- "importers",
31
- "search"
32
- ]
33
- }
1
+ {"name":"starter-extension","version":"0.1.0","description":"SDK-first starter extension demonstrating all pm extension capabilities.","entry":"./index.ts","manifest_version":2,"pm_min_version":"2026.6.24","trusted":true,"provenance":{"source":"docs/examples/starter-extension","verified":true},"sandbox_profile":"none","permissions":{"fs_read":true,"fs_write":true,"network":false,"env_read":true,"env_write":false,"process_spawn":false},"capabilities":["commands","parser","preflight","services","renderers","hooks","schema","importers","search"]}
@@ -1,10 +1 @@
1
- {
2
- "name": "@pm-cli/starter-extension",
3
- "version": "0.1.0",
4
- "private": true,
5
- "type": "module",
6
- "description": "Reference extension starter using @unbrained/pm-cli/sdk",
7
- "dependencies": {
8
- "@unbrained/pm-cli": "^2026.3.12"
9
- }
10
- }
1
+ {"name":"@pm-cli/starter-extension","version":"0.1.0","private":true,"type":"module","description":"Reference extension starter using @unbrained/pm-cli/sdk","dependencies":{"@unbrained/pm-cli":"^2026.3.12"}}
@@ -1,108 +1 @@
1
- {
2
- "version": 1,
3
- "generated_at": "2026-07-29T19:31:38.366Z",
4
- "item_count": 100,
5
- "seed": 42,
6
- "material_difference_percent": 20,
7
- "left": {
8
- "shape": "scratch",
9
- "measured_profile": {
10
- "shape": "scratch",
11
- "item_count": 100,
12
- "author_count": 2,
13
- "component_count": 1,
14
- "hierarchy_depth": 2,
15
- "hierarchy_fanout": 50,
16
- "timestamp_range": {
17
- "first": "2026-01-01T00:00:00.000Z",
18
- "last": "2026-01-01T00:00:00.000Z"
19
- },
20
- "history_entry_count": 100,
21
- "annotations": {
22
- "comments": 2,
23
- "notes": 1,
24
- "learnings": 1
25
- },
26
- "edge_kinds": {
27
- "related": 99
28
- },
29
- "matches_declaration": true,
30
- "mismatches": []
31
- }
32
- },
33
- "right": {
34
- "shape": "representative",
35
- "measured_profile": {
36
- "shape": "representative",
37
- "item_count": 100,
38
- "author_count": 32,
39
- "component_count": 1,
40
- "hierarchy_depth": 4,
41
- "hierarchy_fanout": 8,
42
- "timestamp_range": {
43
- "first": "2026-01-01T00:00:00.000Z",
44
- "last": "2028-01-01T00:00:00.000Z"
45
- },
46
- "history_entry_count": 1200,
47
- "annotations": {
48
- "comments": 30,
49
- "notes": 12,
50
- "learnings": 10
51
- },
52
- "edge_kinds": {
53
- "implements": 33,
54
- "blocked_by": 12,
55
- "discovered_from": 12,
56
- "verifies": 12,
57
- "supersedes": 6,
58
- "related": 24
59
- },
60
- "matches_declaration": true,
61
- "mismatches": []
62
- }
63
- },
64
- "operations": {
65
- "claim": {
66
- "left_p95_ms": 5,
67
- "right_p95_ms": 6,
68
- "right_vs_left_percent": 20,
69
- "classification": "slower"
70
- },
71
- "context": {
72
- "left_p95_ms": 13,
73
- "right_p95_ms": 12,
74
- "right_vs_left_percent": -7.7,
75
- "classification": "within_margin"
76
- },
77
- "create": {
78
- "left_p95_ms": 6,
79
- "right_p95_ms": 5,
80
- "right_vs_left_percent": -16.7,
81
- "classification": "within_margin"
82
- },
83
- "get": {
84
- "left_p95_ms": 6,
85
- "right_p95_ms": 6,
86
- "right_vs_left_percent": 0,
87
- "classification": "within_margin"
88
- },
89
- "list": {
90
- "left_p95_ms": 6,
91
- "right_p95_ms": 6,
92
- "right_vs_left_percent": 0,
93
- "classification": "within_margin"
94
- },
95
- "next": {
96
- "left_p95_ms": 14,
97
- "right_p95_ms": 15,
98
- "right_vs_left_percent": 7.1,
99
- "classification": "within_margin"
100
- },
101
- "search": {
102
- "left_p95_ms": 46,
103
- "right_p95_ms": 46,
104
- "right_vs_left_percent": 0,
105
- "classification": "within_margin"
106
- }
107
- }
108
- }
1
+ {"version":1,"generated_at":"2026-07-29T19:31:38.366Z","item_count":100,"seed":42,"material_difference_percent":20,"left":{"shape":"scratch","measured_profile":{"shape":"scratch","item_count":100,"author_count":2,"component_count":1,"hierarchy_depth":2,"hierarchy_fanout":50,"timestamp_range":{"first":"2026-01-01T00:00:00.000Z","last":"2026-01-01T00:00:00.000Z"},"history_entry_count":100,"annotations":{"comments":2,"notes":1,"learnings":1},"edge_kinds":{"related":99},"matches_declaration":true,"mismatches":[]}},"right":{"shape":"representative","measured_profile":{"shape":"representative","item_count":100,"author_count":32,"component_count":1,"hierarchy_depth":4,"hierarchy_fanout":8,"timestamp_range":{"first":"2026-01-01T00:00:00.000Z","last":"2028-01-01T00:00:00.000Z"},"history_entry_count":1200,"annotations":{"comments":30,"notes":12,"learnings":10},"edge_kinds":{"implements":33,"blocked_by":12,"discovered_from":12,"verifies":12,"supersedes":6,"related":24},"matches_declaration":true,"mismatches":[]}},"operations":{"claim":{"left_p95_ms":5,"right_p95_ms":6,"right_vs_left_percent":20,"classification":"slower"},"context":{"left_p95_ms":13,"right_p95_ms":12,"right_vs_left_percent":-7.7,"classification":"within_margin"},"create":{"left_p95_ms":6,"right_p95_ms":5,"right_vs_left_percent":-16.7,"classification":"within_margin"},"get":{"left_p95_ms":6,"right_p95_ms":6,"right_vs_left_percent":0,"classification":"within_margin"},"list":{"left_p95_ms":6,"right_p95_ms":6,"right_vs_left_percent":0,"classification":"within_margin"},"next":{"left_p95_ms":14,"right_p95_ms":15,"right_vs_left_percent":7.1,"classification":"within_margin"},"search":{"left_p95_ms":46,"right_p95_ms":46,"right_vs_left_percent":0,"classification":"within_margin"}}}