@unbrained/pm-cli 2026.8.15 → 2026.8.17
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 +2 -2
- package/CHANGELOG.md +56 -12
- package/README.md +13 -13
- package/dist/cli/error-guidance.d.ts +5 -0
- package/dist/cli/error-guidance.js +15 -2
- package/dist/cli/public.d.ts +2 -0
- package/dist/cli/public.js +21 -0
- package/dist/cli/register-history-author.js +16 -11
- package/dist/cli/register-mutation.js +4 -4
- package/dist/cli-bundle/bundle-manifest.json +143 -143
- package/dist/cli-bundle/chunks/{chunk-J42EGKDK.js → chunk-2QLOXC3V.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-LJHOAVGI.js → chunk-3UEGXBMR.js} +49 -43
- package/dist/cli-bundle/chunks/chunk-4JPYF536.js +35 -0
- package/dist/cli-bundle/chunks/chunk-6VDLG2FC.js +13 -0
- package/dist/cli-bundle/chunks/chunk-7IBRGCHX.js +2 -0
- package/dist/cli-bundle/chunks/chunk-HBJAS566.js +8 -0
- package/dist/cli-bundle/chunks/chunk-ION3E43Q.js +197 -0
- package/dist/cli-bundle/chunks/{chunk-WLPDLNEZ.js → chunk-JOKATURE.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-MEM2ZS3O.js → chunk-TPXZIBIV.js} +5 -5
- package/dist/cli-bundle/chunks/chunk-YM2YAMF7.js +2 -0
- package/dist/cli-bundle/chunks/{register-list-query-CT3LFDDN.js → register-list-query-Q7KII4G5.js} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-NWEVA5YS.js → register-mutation-4WBRPXLV.js} +3 -3
- package/dist/cli-bundle/chunks/{register-operations-AHIAG5KM.js → register-operations-SSENDH5B.js} +2 -2
- package/dist/cli-bundle/chunks/{register-setup-ZJZFVAKE.js → register-setup-DOSFBGKE.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-WTSER4WJ.js → chunk-267MUUS6.js} +11 -11
- package/dist/cli-bundle/focused-chunks/chunk-2NNFLLNG.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-2QSAKMIH.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-ZMFXQ7VF.js → chunk-ATEY76SX.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-BUCG4ZI2.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-M67F5AIN.js → chunk-CYFK5UPB.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-EHXIKD6K.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-EXZA4257.js → chunk-KGEXTMPG.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-KP2VQQVQ.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-MHPIL773.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-POEEAD2V.js +4 -0
- package/dist/cli-bundle/focused-chunks/{chunk-ITAUHSO6.js → chunk-SALH6B6K.js} +47 -47
- package/dist/cli-bundle/focused-chunks/{chunk-KLVUMNXJ.js → chunk-SYZENPIT.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{chunk-KTKH4IMG.js → chunk-XKAMP5OU.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-NSPYTG6G.js → chunk-XPIC53VA.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-6XKF3PGV.js → chunk-ZQPGZZWQ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-ZT2DJS27.js +155 -0
- package/dist/cli-bundle/main.js +10 -10
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +1 -1
- package/dist/cli-bundle/sdk-core.js +31 -31
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +32 -32
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +4 -2
- package/dist/core/extensions/loader.js +10 -6
- package/dist/core/extensions/manifest-schema.d.ts +20 -0
- package/dist/core/extensions/manifest-schema.js +52 -0
- package/dist/core/history/replay.js +32 -14
- package/dist/core/history/workspace-history.js +32 -10
- package/dist/core/output/output.js +6 -3
- package/dist/core/schema/fields-file.d.ts +1 -1
- package/dist/core/schema/fields-file.js +2 -2
- package/dist/core/schema/runtime-field-values.js +115 -9
- package/dist/core/schema/runtime-schema.d.ts +3 -1
- package/dist/core/schema/runtime-schema.js +124 -3
- package/dist/core/shared/errors.d.ts +12 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/core/shared/time.d.ts +2 -0
- package/dist/core/shared/time.js +27 -2
- package/dist/core/store/item-store.js +28 -2
- package/dist/sdk/agent/refusal-reachability.d.ts +56 -8
- package/dist/sdk/agent/refusal-reachability.js +414 -4
- package/dist/sdk/author-attribution.d.ts +56 -11
- package/dist/sdk/author-attribution.js +174 -50
- package/dist/sdk/cli-contracts/flag-contracts.js +5 -2
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +12 -4
- package/dist/sdk/cli-contracts/tool-schema.js +12 -4
- package/dist/sdk/completion.js +11 -4
- package/dist/sdk/compose.d.ts +6 -2
- package/dist/sdk/compose.js +33 -3
- package/dist/sdk/context-intent-contracts.d.ts +8 -4
- package/dist/sdk/context-intent-contracts.js +76 -31
- package/dist/sdk/dependency-flag-validation.d.ts +9 -2
- package/dist/sdk/dependency-flag-validation.js +101 -35
- package/dist/sdk/environment/host-environment-errors.js +25 -7
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +62 -14
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +50 -2
- package/dist/sdk/governance/assurance-action.d.ts +3 -7
- package/dist/sdk/governance/assurance-action.js +97 -2
- package/dist/sdk/governance/boundary-fixtures.d.ts +86 -0
- package/dist/sdk/governance/boundary-fixtures.js +201 -0
- package/dist/sdk/governance/coverage-assurance.d.ts +24 -0
- package/dist/sdk/governance/coverage-assurance.js +61 -0
- package/dist/sdk/governance/defect-recurrence-signals.d.ts +10 -0
- package/dist/sdk/governance/defect-recurrence-signals.js +25 -0
- package/dist/sdk/governance/defect-recurrence.d.ts +242 -0
- package/dist/sdk/governance/defect-recurrence.js +523 -0
- package/dist/sdk/governance/extension-host-version.js +20 -9
- package/dist/sdk/governance.d.ts +2 -0
- package/dist/sdk/governance.js +4 -2
- package/dist/sdk/graph/governance.js +3 -2
- package/dist/sdk/guide-topics.js +191 -2
- package/dist/sdk/index.d.ts +5 -1
- package/dist/sdk/index.js +6 -3
- package/dist/sdk/lifecycle/create.js +4 -2
- package/dist/sdk/lifecycle/update-many.js +15 -2
- package/dist/sdk/lifecycle/update.js +5 -2
- package/dist/sdk/linked-artifacts.js +63 -14
- package/dist/sdk/query/get.d.ts +2 -0
- package/dist/sdk/query/get.js +32 -7
- package/dist/sdk/read-output-contracts.js +5 -3
- package/dist/sdk/relationship-analytics.js +90 -14
- package/dist/sdk/relationship-kinds/contract.d.ts +4 -0
- package/dist/sdk/relationship-kinds/contract.js +3 -2
- package/dist/sdk/relationships.d.ts +1 -1
- package/dist/sdk/relationships.js +11 -2
- package/dist/sdk/runtime.d.ts +2 -5
- package/dist/sdk/runtime.js +3 -2
- package/dist/sdk/schema.d.ts +1 -0
- package/dist/sdk/schema.js +2 -2
- package/dist/sdk/test/execution.d.ts +6 -2
- package/dist/sdk/test/execution.js +39 -13
- package/dist/types.d.ts +29 -2
- package/dist/types.js +4 -2
- package/docs/CONFIGURATION.md +58 -1
- package/docs/CONTEXT_INTEGRITY_CONTRACTS.md +58 -0
- package/docs/DEFECT_RECURRENCE.md +134 -0
- package/docs/DEPENDENCY_KIND_CONTRACT.md +12 -2
- package/docs/README.md +2 -0
- package/docs/READ_OUTPUT_CONTRACTS.md +7 -1
- package/docs/RELATIONSHIP_GRAPH.md +16 -2
- package/docs/RELEASING.md +13 -7
- package/docs/SDK.md +38 -5
- package/docs/SDK_CONTEXT_INTEGRITY.md +33 -5
- package/docs/SDK_CONTEXT_TRUTH_CONTRACTS.md +13 -5
- package/docs/SDK_RUNTIME_BOUNDARIES.md +9 -1
- package/docs/TESTING.md +18 -1
- package/docs/TRUSTWORTHY_CONTEXT_EVIDENCE.md +1 -1
- package/marketplace.json +2 -2
- package/package.json +6 -4
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/skills/pm-audit/SKILL.md +26 -0
- package/plugins/pm-claude/skills/pm-developer/SKILL.md +26 -0
- package/plugins/pm-claude/skills/pm-planner/SKILL.md +26 -0
- package/plugins/pm-claude/skills/pm-release/SKILL.md +26 -0
- package/plugins/pm-claude/skills/pm-workflow/SKILL.md +26 -0
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/pm-codex/skills/pm-auditor/SKILL.md +26 -0
- package/plugins/pm-codex/skills/pm-native/SKILL.md +26 -0
- package/plugins/pm-codex/skills/pm-release/SKILL.md +26 -0
- package/sdk/public-surface.json +716 -33
- package/dist/cli-bundle/chunks/chunk-24GAV7XL.js +0 -8
- package/dist/cli-bundle/chunks/chunk-AIM6VT2N.js +0 -13
- package/dist/cli-bundle/chunks/chunk-DSWDLTDR.js +0 -197
- package/dist/cli-bundle/chunks/chunk-KIEGUBYQ.js +0 -2
- package/dist/cli-bundle/chunks/chunk-KLKYLSDX.js +0 -2
- package/dist/cli-bundle/chunks/chunk-QHPCJWEJ.js +0 -35
- package/dist/cli-bundle/focused-chunks/chunk-4X57RE4U.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-7NJ4QYQ2.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-KT5XMYSX.js +0 -4
- package/dist/cli-bundle/focused-chunks/chunk-OKA6ELTL.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-PUISBOPP.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-QLNMCESQ.js +0 -155
- package/dist/cli-bundle/focused-chunks/chunk-SLKC6QLJ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-U65UC4G3.js +0 -2
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Official marketplace for pm CLI — native git-based project management for Claude Code and AI coding agents.",
|
|
9
|
-
"version": "2026.8.
|
|
9
|
+
"version": "2026.8.17"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "pm-claude",
|
|
14
14
|
"source": "./plugins/pm-claude",
|
|
15
15
|
"description": "Native pm CLI integration for Claude Code — 28 MCP tools, 5 workflow skills, 14 slash commands, 4 subagents, hybrid TUI task tracking, session context injection, and coordination subagents for git-based project management without leaving Claude Code.",
|
|
16
|
-
"version": "2026.8.
|
|
16
|
+
"version": "2026.8.17",
|
|
17
17
|
"author": {
|
|
18
18
|
"name": "unbrained",
|
|
19
19
|
"url": "https://github.com/unbraind/pm-cli"
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2026.8.17 - 2026-08-17
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- History-derived defect recurrence gate: turn resolved incident patterns into targeted local and hosted CI protections ([pm-1qkivy](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/features/pm-1qkivy.toon))
|
|
8
|
+
- Agent skills routed to a workflow loop but named no capability family and no read-cost, so four of twelve command families and the entire output-budget surface were unreachable through progressive disclosure ([pm-f6zjpq](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/features/pm-f6zjpq.toon))
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- Linked tests retain high-volume Vitest output without aborting ([pm-giks4s](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-giks4s.toon))
|
|
13
|
+
- A declared context intent returns no context when combined with the narrowing flag, and its refusal receipt reports 122 tokens against a 2400 budget as the reason it does not fit ([pm-3crymx](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-3crymx.toon))
|
|
14
|
+
- The relationship lexicon cannot express recurrence, so a defect family fixed thirty times is thirty unrelated nodes to every graph algorithm ([pm-ouyq3n](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-ouyq3n.toon))
|
|
15
|
+
- The gate contributors run before merging fails on every Claude Code workstation and passes on the runner for the same tree, because a harness probe writes advisory warnings into the surface the token budget measures ([pm-95h7pg](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-95h7pg.toon))
|
|
16
|
+
- The public-surface gate enumerates its own hand-written entrypoint list, so two published code exports ship ungoverned and ./cli publishes 86 internal functions as typed API ([pm-suhxny](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-suhxny.toon))
|
|
17
|
+
- GH-1033: read fields selectors can erase identity and requested empty collections ([pm-4fwgaz](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-4fwgaz.toon))
|
|
18
|
+
- GH-1036/GH-1040: history integrity verdicts and repairs are incompatible across supported CLI versions ([pm-0wfdim](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-0wfdim.toon))
|
|
19
|
+
- GH-1032: extension manifests silently accept unenforced version-floor spellings ([pm-qqoumq](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-qqoumq.toon))
|
|
20
|
+
- GH-1038: docs linked-resource pair syntax corrupts URLs and splits labeled entries ([pm-fpdk37](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-fpdk37.toon))
|
|
21
|
+
- GH-1039: graph impact discards dependency direction and makes the direction selector inert ([pm-jn1x30](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-jn1x30.toon))
|
|
22
|
+
|
|
23
|
+
### Other
|
|
24
|
+
|
|
25
|
+
- Decision: adopt reviewed defect-evidence field constraints into audited workspace history ([pm-4smp5b](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/decisions/pm-4smp5b.toon))
|
|
26
|
+
- Defect-escape ratchet: every escaped defect must land a gate that would have caught it, tracked as evidence on the fixing item ([pm-rtn5h6](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-rtn5h6.toon))
|
|
27
|
+
- Boundary-fixture gate: every value that must match a system outside this repository is tested against a captured real sample, never against a fixture the production code generated ([pm-0pzgit](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-0pzgit.toon))
|
|
28
|
+
- Disposition the test-only escape hatch published through the ./cli entrypoint: 86 internal functions are consumer-visible API with no support intent ([pm-rf120g](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-rf120g.toon))
|
|
29
|
+
|
|
30
|
+
## 2026.8.16 - 2026-08-16
|
|
31
|
+
|
|
32
|
+
### Fixed
|
|
33
|
+
|
|
34
|
+
- Workspace history integrity refusals escape typed CLI recovery and become high Sentry faults ([pm-2zkvxm](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-2zkvxm.toon))
|
|
35
|
+
- GH-1019/GH-1020/GH-1021: Node 24 nightly platform regressions after PR \#1016 ([pm-zno2iu](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-zno2iu.toon))
|
|
36
|
+
- GH-814/GH-821/GH-1034: SDK metadata reads must distinguish missing, invalid, and unreadable tracker roots from empty ([pm-23xkss](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-23xkss.toon))
|
|
37
|
+
- GH-1028: history-author-acknowledge bulk mutation lacks dry-run and misreports empty selection ([pm-mcxk8v](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-mcxk8v.toon))
|
|
38
|
+
- GH-1030: contracts --json --full is wholly omitted by the default output budget ([pm-2qvq7a](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-2qvq7a.toon))
|
|
39
|
+
- Auto Release blocker closure ignores successful recovery dispatch and reruns the stale tag-push workflow ([pm-db8onn](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-db8onn.toon))
|
|
40
|
+
- A commit pushed directly to the default branch can never be released: both analyzer-evidence fallbacks presuppose a pull request, and nothing declares that precondition ([pm-u1baah](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-u1baah.toon))
|
|
41
|
+
|
|
42
|
+
### Other
|
|
43
|
+
|
|
44
|
+
- PR \#1035 final review convergence: POSIX enumeration wording and plan-level replication ratchet ([pm-k9l7e1](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-k9l7e1.toon))
|
|
45
|
+
- PR \#1035 exact-head review follow-up: sandbox-safe proof, completion uniqueness, replacement equivalence, and test isolation ([pm-jv3y4q](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-jv3y4q.toon))
|
|
46
|
+
- Retire the bespoke gate scripts onto the assurance primitives, with a recorded per-script disposition so 6,500 lines of external enforcement either moves into the product or says why it cannot ([pm-4ok4ex](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-4ok4ex.toon))
|
|
47
|
+
|
|
3
48
|
## 2026.8.15 - 2026-08-15
|
|
4
49
|
|
|
5
50
|
### Fixed
|
|
@@ -419,7 +464,6 @@
|
|
|
419
464
|
- GH-824: core-field recovery must name dedicated flags instead of extension activation ([pm-2jtbl8](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-2jtbl8.toon))
|
|
420
465
|
- CodeFactor fixed-only success payload blocks exact-head release gate ([pm-xcrlkl](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-xcrlkl.toon))
|
|
421
466
|
- Both declared context intents are unreachable because the intent applier assigns field-group names into the section value domain, and the two validators give contradictory advice ([pm-ai45y9](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-ai45y9.toon))
|
|
422
|
-
- GH-814: SDK metadata reads must distinguish missing and invalid tracker roots from an empty tracker ([pm-23xkss](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-23xkss.toon))
|
|
423
467
|
- The runtime contract enumeration is not closed over the surface it can resolve: 14 rendered commands, including the list-open that AGENTS.md mandates, are contract-backed by name yet absent from every enumeration ([pm-6j7r1a](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-6j7r1a.toon))
|
|
424
468
|
- GH-817: machine-readable flag contracts need semantic invocation metadata and stdin capability ([pm-11phn1](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-11phn1.toon))
|
|
425
469
|
|
|
@@ -1252,12 +1296,12 @@
|
|
|
1252
1296
|
|
|
1253
1297
|
### Fixed
|
|
1254
1298
|
|
|
1299
|
+
- GH-363: Windows nightly (Node 24) red — runtime-loader colon-path + telemetry detached-spawn unhandled error + npm-install regression ([pm-xaib](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-xaib.toon))
|
|
1255
1300
|
- pm validate --check-files mis-handles remote (URL) doc/file references: flagged as deleted and silently destroyed by --prune-missing ([pm-k2n4](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-k2n4.toon))
|
|
1256
1301
|
- pm next hides completed-container closeout rows while leaf work exists ([pm-9g87](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-9g87.toon))
|
|
1257
1302
|
- MCP action-schema contracts drifted from CLI flag tables (guide.list, health.brief, validate.parentCycleSeverity, contracts.full) ([pm-zx13](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-zx13.toon))
|
|
1258
1303
|
- describeExtensionBlueprint omits importer/exporter-with-options command definitions (parity gap vs describeExtensionActivation) ([pm-zqes](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-zqes.toon))
|
|
1259
1304
|
- Contracts command lookup should handle package namespace roots ([pm-y1o4](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-y1o4.toon))
|
|
1260
|
-
- GH-363: Windows nightly (Node 24) red — runtime-loader colon-path + telemetry detached-spawn unhandled error + npm-install regression ([pm-xaib](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-xaib.toon))
|
|
1261
1305
|
- CI: make Codecov badge uploads branch-explicit ([pm-x878](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-x878.toon))
|
|
1262
1306
|
- deriveExtensionCapabilities omits 'schema' for importer/exporter options.flags (declarative blueprint under-grant) ([pm-v3ty](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-v3ty.toon))
|
|
1263
1307
|
- pm install does not scaffold extension-contributed item-type folders (transient missing_directory health warning) ([pm-rjab](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-rjab.toon))
|
|
@@ -1280,6 +1324,7 @@
|
|
|
1280
1324
|
|
|
1281
1325
|
### Other
|
|
1282
1326
|
|
|
1327
|
+
- PR \#406 review follow-up: clear partial MCP extension registries before fallback execution ([pm-dyzy](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-dyzy.toon))
|
|
1283
1328
|
- 2026-06-25 PM ecosystem taxonomy and context backlog normalization ([pm-57vh](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/plans/pm-57vh.toon))
|
|
1284
1329
|
- Normalize stale audit containers and intentional-open resolved items ([pm-psc0](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-psc0.toon))
|
|
1285
1330
|
- Extend pm package init --declarative to the full capability matrix (hooks/search/importers/schema/renderers/parser/preflight/services) ([pm-lfdv](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-lfdv.toon))
|
|
@@ -1305,7 +1350,6 @@
|
|
|
1305
1350
|
- Action-scoped MCP parameter descriptions: split shared name/target description per action (schema vs profile) ([pm-fq80](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-fq80.toon))
|
|
1306
1351
|
- ADR: offline BM25 lexical provider + relevance eval harness for search quality ([pm-f2al](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/decisions/pm-f2al.toon))
|
|
1307
1352
|
- ADR: explicit pm_format_version front-matter field for storage schema evolution ([pm-eeai](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/decisions/pm-eeai.toon))
|
|
1308
|
-
- PR \#406 review follow-up: clear partial MCP extension registries before fallback execution ([pm-dyzy](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-dyzy.toon))
|
|
1309
1353
|
- Expose project profile application through MCP contracts and drift gates ([pm-bhmk](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-bhmk.toon))
|
|
1310
1354
|
- ADR: dependency-aware actionability for pm next — ready = active leaf with no open blocked_by; reuse compareCriticalItems + shared blocked_by resolver ([pm-9x6k](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/decisions/pm-9x6k.toon))
|
|
1311
1355
|
- registerProfile core registration surface: ExtensionApi + registry + loader gate + capability-usage + policy surface ([pm-6oox](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-6oox.toon))
|
|
@@ -1434,6 +1478,7 @@
|
|
|
1434
1478
|
|
|
1435
1479
|
### Fixed
|
|
1436
1480
|
|
|
1481
|
+
- pm-changelog over-escapes markdown in entry titles (parens + intra-word underscores) ([pm-3299](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-3299.toon))
|
|
1437
1482
|
- GH-293..296 CLI parser and search regression bundle ([pm-yy45](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-yy45.toon))
|
|
1438
1483
|
- appendLineAtomic is not truly atomic: concurrent appends to history JSONL can interleave ([pm-xy9n](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-xy9n.toon))
|
|
1439
1484
|
- Project-scope extension install writes ~69MB node_modules per workspace (peer pm-cli + transitive Sentry/OTel) ([pm-oxq2](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-oxq2.toon))
|
|
@@ -1443,7 +1488,6 @@
|
|
|
1443
1488
|
- Accept --status all for duplicate-safe search and list filters ([pm-i02t](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-i02t.toon))
|
|
1444
1489
|
- Fix nightly cross-platform reliability: macOS realpath in extension-command test and Windows .cmd spawn EINVAL ([pm-gf6f](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-gf6f.toon))
|
|
1445
1490
|
- pm health 2.3-3.1s in dev repo (~2x the 1.3s baseline): drift-scan cache hit still reads + content-hashes every history stream ([pm-c90s](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-c90s.toon))
|
|
1446
|
-
- pm-changelog over-escapes markdown in entry titles (parens + intra-word underscores) ([pm-3299](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-3299.toon))
|
|
1447
1491
|
|
|
1448
1492
|
### Removed
|
|
1449
1493
|
|
|
@@ -1485,6 +1529,7 @@
|
|
|
1485
1529
|
|
|
1486
1530
|
### Fixed
|
|
1487
1531
|
|
|
1532
|
+
- PR \#266 review feedback: tighten init and dynamic option validation ([pm-at1j](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-at1j.toon))
|
|
1488
1533
|
- pm templates: unknown subcommand + flags silently fall back to 'list' (exit 0) instead of erroring ([pm-r2kd](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-r2kd.toon))
|
|
1489
1534
|
- linked-test-adapters package install loses ESM module type ([pm-v8fy](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-v8fy.toon))
|
|
1490
1535
|
- GH-215: enforce timestamps in history entries ([pm-u42x](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-u42x.toon))
|
|
@@ -1494,7 +1539,6 @@
|
|
|
1494
1539
|
- GH-262: prevent path-like pm init from corrupting caller tracker settings ([pm-jek2](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-jek2.toon))
|
|
1495
1540
|
- GH-284: align pm init required schema directories with health ([pm-hl9y](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-hl9y.toon))
|
|
1496
1541
|
- CI contracts snapshot temp cleanup can fail with ENOTEMPTY ([pm-c61g](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-c61g.toon))
|
|
1497
|
-
- PR \#266 review feedback: tighten init and dynamic option validation ([pm-at1j](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-at1j.toon))
|
|
1498
1542
|
- GH-265: schema unknown subcommands must not create custom types ([pm-ablm](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-ablm.toon))
|
|
1499
1543
|
- GH-280: pm validate does not detect circular parent references (hierarchy cycles A-\>B-\>A of any length) ([pm-8vul](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-8vul.toon))
|
|
1500
1544
|
- Auto Release retries branch push after main advances ([pm-5oti](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-5oti.toon))
|
|
@@ -1716,11 +1760,11 @@
|
|
|
1716
1760
|
|
|
1717
1761
|
### Other
|
|
1718
1762
|
|
|
1763
|
+
- Upgrade pm-changelog to 2026.6.9 and validate changelog fidelity ([pm-kx7v](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-kx7v.toon))
|
|
1719
1764
|
- Document pm-linked-test-adapters package in EXTENSIONS.md and TESTING.md ([pm-yj8n](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-yj8n.toon))
|
|
1720
1765
|
- Close stale GH issues, clarify dedupe-audit docs, and bump @sentry/node ([pm-utd6](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-utd6.toon))
|
|
1721
1766
|
- Run verification matrix and temp-dir smoke for active cycle ([pm-rav7](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-rav7.toon))
|
|
1722
1767
|
- SDK author-ergonomics batch: extension-manifest JSON Schema, getWorkspaceContracts memoization, FlagDefinition type/value_type unification ([pm-l0jd](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-l0jd.toon))
|
|
1723
|
-
- Upgrade pm-changelog to 2026.6.9 and validate changelog fidelity ([pm-kx7v](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-kx7v.toon))
|
|
1724
1768
|
|
|
1725
1769
|
## 2026.6.9 - 2026-06-09
|
|
1726
1770
|
|
|
@@ -1743,9 +1787,9 @@
|
|
|
1743
1787
|
|
|
1744
1788
|
### Added
|
|
1745
1789
|
|
|
1790
|
+
- Add schema show-status status inspection ([pm-qpus](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/features/pm-qpus.toon))
|
|
1746
1791
|
- MCP pm_health defaults to the compact summary projection for token-efficient agent health checks ([pm-yjub](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/features/pm-yjub.toon))
|
|
1747
1792
|
- list/search: trim default filters/projection/sorting/now trailer in compact/agent mode ([pm-vhx6](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/features/pm-vhx6.toon))
|
|
1748
|
-
- Add schema show-status status inspection ([pm-qpus](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/features/pm-qpus.toon))
|
|
1749
1793
|
|
|
1750
1794
|
### Changed
|
|
1751
1795
|
|
|
@@ -2005,10 +2049,10 @@
|
|
|
2005
2049
|
|
|
2006
2050
|
### Other
|
|
2007
2051
|
|
|
2052
|
+
- 2026-05-30 package SDK dogfood audit and startup telemetry performance pass ([pm-qmx3](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-qmx3.toon))
|
|
2008
2053
|
- Make MCP status enum + shell completion runtime-resolved from schema (not hardcoded) ([pm-jtdc](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-jtdc.toon))
|
|
2009
2054
|
- Calendar view/format did-you-mean + dependency and type-safety cleanup ([pm-5oxq](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-5oxq.toon))
|
|
2010
2055
|
- Defer eager per-command startup work: completion flag-strings, MCP tool schema build, telemetry flush spawn ([pm-3mal](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-3mal.toon))
|
|
2011
|
-
- 2026-05-30 package SDK dogfood audit and startup telemetry performance pass ([pm-qmx3](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-qmx3.toon))
|
|
2012
2056
|
|
|
2013
2057
|
## 2026.5.30 - 2026-05-30
|
|
2014
2058
|
|
|
@@ -2088,6 +2132,8 @@
|
|
|
2088
2132
|
|
|
2089
2133
|
### Other
|
|
2090
2134
|
|
|
2135
|
+
- Generate full historical CHANGELOG.md through pm-changelog ([pm-afl9](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-afl9.toon))
|
|
2136
|
+
- Verify and repair pm-changelog-generated main CHANGELOG release alignment ([pm-5baq](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-5baq.toon))
|
|
2091
2137
|
- Deduplicate beads/todos index.ts package-runtime loader (install-safe mechanism needed) ([pm-wwa7](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-wwa7.toon))
|
|
2092
2138
|
- Deduplicate Beads and Todos package adapter runtimes ([pm-ybfj](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-ybfj.toon))
|
|
2093
2139
|
- Deduplicate bundled package runtime option parsing helpers ([pm-y5u0](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-y5u0.toon))
|
|
@@ -2106,11 +2152,9 @@
|
|
|
2106
2152
|
- Single-source Codex plugin docs tool surface ([pm-d97r](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-d97r.toon))
|
|
2107
2153
|
- Single-source extension governance policy defaults ([pm-axd1](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-axd1.toon))
|
|
2108
2154
|
- Unify plugin/MCP naming: pm-cli-claude→pm-claude, pm-cli-codex→pm-codex, pm-cli-native MCP→pm-mcp, packages @unbrained/pm-package-X→@unbrained/pm-X ([pm-ash0](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-ash0.toon))
|
|
2109
|
-
- Generate full historical CHANGELOG.md through pm-changelog ([pm-afl9](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-afl9.toon))
|
|
2110
2155
|
- Calendar + SDK + vector-search + docs review (2026-05-27) ([pm-a0w4](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-a0w4.toon))
|
|
2111
2156
|
- Agent-UX combined PR: compact mutation output (pm-ch59) + smarter unknown-flag recovery (pm-8nyc) ([pm-70mi](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/plans/pm-70mi.toon))
|
|
2112
2157
|
- Dogfood 2026-05-20 low-severity CLI polish backlog (config UX, init verbosity, help alias bloat, default-safety, doc/validator drift) ([pm-5k2w](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-5k2w.toon))
|
|
2113
|
-
- Verify and repair pm-changelog-generated main CHANGELOG release alignment ([pm-5baq](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-5baq.toon))
|
|
2114
2158
|
- Single-source guide-shell routing snippets across docs ([pm-48vd](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-48vd.toon))
|
|
2115
2159
|
- Single-source Plan workflow examples across plugin docs ([pm-3y56](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-3y56.toon))
|
|
2116
2160
|
- Keep large modules maintainable via barrel re-export splits + explicit uncovered allowlist ([pm-3cbk](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/decisions/pm-3cbk.toon))
|
|
@@ -2148,6 +2192,7 @@
|
|
|
2148
2192
|
|
|
2149
2193
|
### Other
|
|
2150
2194
|
|
|
2195
|
+
- Install and validate pm-changelog package ([pm-7811](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-7811.toon))
|
|
2151
2196
|
- history-repair command + legacy drift cleanup + replay dedup ([pm-c3dx](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/plans/pm-c3dx.toon))
|
|
2152
2197
|
- Deduplicate templates package runtime and legacy command implementation ([pm-ypqp](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-ypqp.toon))
|
|
2153
2198
|
- Deduplicate mutation author fallback resolution across commands ([pm-xh0y](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-xh0y.toon))
|
|
@@ -2165,7 +2210,6 @@
|
|
|
2165
2210
|
- Deduplicate comments, notes, and learnings command stacks ([pm-9y8q](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-9y8q.toon))
|
|
2166
2211
|
- Deduplicate front-matter key-order contract literals in tests ([pm-8fx3](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-8fx3.toon))
|
|
2167
2212
|
- Extract shared temporary-directory lifecycle helpers for tests ([pm-7tug](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-7tug.toon))
|
|
2168
|
-
- Install and validate pm-changelog package ([pm-7811](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/tasks/pm-7811.toon))
|
|
2169
2213
|
- Extract shared direct CLI spawn helper for integration tests ([pm-401l](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/chores/pm-401l.toon))
|
|
2170
2214
|
|
|
2171
2215
|
## 2026.5.23 - 2026-05-23
|
|
@@ -2692,6 +2736,7 @@
|
|
|
2692
2736
|
|
|
2693
2737
|
### Security
|
|
2694
2738
|
|
|
2739
|
+
- Ignore local .env files for telemetry/security operations ([pm-qgvj](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-qgvj.toon))
|
|
2695
2740
|
- Track GitHub Dependabot alert \#8 for undici (GHSA-wqq4-5wpv-mx2g) ([pm-v6vi](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-v6vi.toon))
|
|
2696
2741
|
- Track GitHub Dependabot alert \#11 for undici (GHSA-9qxr-qj54-h672) ([pm-tl4d](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-tl4d.toon))
|
|
2697
2742
|
- Track GitHub Dependabot alert \#12 for undici (GHSA-cxrh-j4jr-qwg3) ([pm-pagj](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-pagj.toon))
|
|
@@ -2712,7 +2757,6 @@
|
|
|
2712
2757
|
- Track GitHub Dependabot alert \#27 for undici (GHSA-4992-7rv2-5pvq) ([pm-02c4](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-02c4.toon))
|
|
2713
2758
|
- Issue: Private IP address in committed pm task files ([pm-xk8b](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-xk8b.toon))
|
|
2714
2759
|
- Track GitHub Dependabot alert \#19 for undici (GHSA-f269-vfmq-vjvj) ([pm-rb9v](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-rb9v.toon))
|
|
2715
|
-
- Ignore local .env files for telemetry/security operations ([pm-qgvj](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-qgvj.toon))
|
|
2716
2760
|
- Track GitHub Dependabot alert \#22 for undici (GHSA-vrm6-8vpv-qv8q) ([pm-i1rm](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-i1rm.toon))
|
|
2717
2761
|
- Track GitHub Dependabot alert \#21 for undici (GHSA-4992-7rv2-5pvq) ([pm-cg7l](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-cg7l.toon))
|
|
2718
2762
|
- Track GitHub Dependabot alert \#29 for picomatch (GHSA-3v7f-55p6-f55p) ([pm-5e88](https://github.com/unbraind/pm-cli/blob/main/.agents/pm/issues/pm-5e88.toon))
|
package/README.md
CHANGED
|
@@ -21,19 +21,19 @@
|
|
|
21
21
|
|
|
22
22
|
## Start Here
|
|
23
23
|
|
|
24
|
-
| Need | Read
|
|
25
|
-
| -------------------------------------------------------------- |
|
|
26
|
-
| Install and create the first item | [Quickstart](docs/QUICKSTART.md)
|
|
27
|
-
| New maintainer onboarding | [Onboarding](docs/ONBOARDING.md)
|
|
28
|
-
| Agent workflow and token-minimal loops | [Agent Guide](docs/AGENT_GUIDE.md)
|
|
29
|
-
| Command families and examples | [Command Reference](docs/COMMANDS.md)
|
|
30
|
-
| Shell, CI, and machine-client composition
|
|
31
|
-
| Settings, storage, search, and output | [Configuration](docs/CONFIGURATION.md)
|
|
32
|
-
| Safe test execution and linked tests | [Testing](docs/TESTING.md)
|
|
33
|
-
| Security reporting and resilience controls
|
|
34
|
-
| Package and extension authoring | [Packages and Extensions](docs/EXTENSIONS.md), [SDK](docs/SDK.md), [Customization Primitives](docs/SDK_CUSTOMIZATION_PRIMITIVES.md), [Evidence Traceability](docs/SDK_EVIDENCE_TRACEABILITY.md), and [Agent Runtime Primitives](docs/AGENT_RUNTIME_PRIMITIVES.md) |
|
|
35
|
-
| Maintainer release process (daily auto-release + local parity) | [Releasing](docs/RELEASING.md)
|
|
36
|
-
| Contributor internals | [Architecture](docs/ARCHITECTURE.md)
|
|
24
|
+
| Need | Read |
|
|
25
|
+
| -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
26
|
+
| Install and create the first item | [Quickstart](docs/QUICKSTART.md) |
|
|
27
|
+
| New maintainer onboarding | [Onboarding](docs/ONBOARDING.md) |
|
|
28
|
+
| Agent workflow and token-minimal loops | [Agent Guide](docs/AGENT_GUIDE.md) |
|
|
29
|
+
| Command families and examples | [Command Reference](docs/COMMANDS.md) |
|
|
30
|
+
| Shell, CI, and machine-client composition | [CLI Scripting Contract](docs/SCRIPTING.md) |
|
|
31
|
+
| Settings, storage, search, and output | [Configuration](docs/CONFIGURATION.md) |
|
|
32
|
+
| Safe test execution and linked tests | [Testing](docs/TESTING.md) |
|
|
33
|
+
| Security reporting and resilience controls | [Security Policy](SECURITY.md), [Security Governance](docs/SECURITY_GOVERNANCE.md) |
|
|
34
|
+
| Package and extension authoring | [Packages and Extensions](docs/EXTENSIONS.md), [SDK](docs/SDK.md), [Context Integrity](docs/CONTEXT_INTEGRITY_CONTRACTS.md), [Customization Primitives](docs/SDK_CUSTOMIZATION_PRIMITIVES.md), [Evidence Traceability](docs/SDK_EVIDENCE_TRACEABILITY.md), and [Agent Runtime Primitives](docs/AGENT_RUNTIME_PRIMITIVES.md) |
|
|
35
|
+
| Maintainer release process (daily auto-release + local parity) | [Releasing](docs/RELEASING.md) |
|
|
36
|
+
| Contributor internals | [Architecture](docs/ARCHITECTURE.md) |
|
|
37
37
|
|
|
38
38
|
Full documentation starts at [docs/README.md](docs/README.md).
|
|
39
39
|
|
|
@@ -13,6 +13,7 @@ interface GuidanceMessage {
|
|
|
13
13
|
why?: string;
|
|
14
14
|
examples?: string[];
|
|
15
15
|
nextSteps?: string[];
|
|
16
|
+
verificationErrors?: string[];
|
|
16
17
|
recovery?: PmCliErrorRecoveryPayload;
|
|
17
18
|
}
|
|
18
19
|
/** Documents the json error envelope payload exchanged by command, SDK, and package integrations. */
|
|
@@ -35,6 +36,8 @@ export interface JsonErrorEnvelope {
|
|
|
35
36
|
examples?: string[];
|
|
36
37
|
/** Value that configures or reports next steps for this contract. */
|
|
37
38
|
next_steps?: string[];
|
|
39
|
+
/** Exact integrity verifier findings that caused the operation to refuse. */
|
|
40
|
+
verification_errors?: string[];
|
|
38
41
|
/** Value that configures or reports recovery for this contract. */
|
|
39
42
|
recovery?: PmCliErrorRecoveryPayload;
|
|
40
43
|
}
|
|
@@ -58,6 +61,8 @@ export interface ErrorClassification {
|
|
|
58
61
|
examples?: string[];
|
|
59
62
|
/** Value that configures or reports next steps for this contract. */
|
|
60
63
|
next_steps?: string[];
|
|
64
|
+
/** Exact integrity verifier findings that caused the operation to refuse. */
|
|
65
|
+
verification_errors?: string[];
|
|
61
66
|
/** Value that configures or reports recovery for this contract. */
|
|
62
67
|
recovery?: PmCliErrorRecoveryPayload;
|
|
63
68
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5251395b-715a-5559-a7d5-ca3bc4a1bb16")}catch(e){}}();
|
|
3
3
|
import { resolveRecoveryCommandName } from "../sdk/agent/command-recovery.js";
|
|
4
4
|
import { renderPmCommand } from "./argv-utils.js";
|
|
5
5
|
import { discoverNearbyPmRoot } from "../sdk/tracker-root-discovery.js";
|
|
@@ -266,6 +266,10 @@ export function renderGuidanceMessage(message) {
|
|
|
266
266
|
lines.push("");
|
|
267
267
|
lines.push(...renderList("Next steps:", message.nextSteps));
|
|
268
268
|
}
|
|
269
|
+
if (message.verificationErrors && message.verificationErrors.length > 0) {
|
|
270
|
+
lines.push("");
|
|
271
|
+
lines.push(...renderList("Verification errors:", message.verificationErrors));
|
|
272
|
+
}
|
|
269
273
|
const recoveryLines = renderRecoveryBundle(message.recovery);
|
|
270
274
|
if (recoveryLines.length > 0) {
|
|
271
275
|
lines.push("");
|
|
@@ -291,6 +295,9 @@ function guidanceToJsonEnvelope(message, exitCode) {
|
|
|
291
295
|
if (message.nextSteps && message.nextSteps.length > 0) {
|
|
292
296
|
payload.next_steps = message.nextSteps;
|
|
293
297
|
}
|
|
298
|
+
if (message.verificationErrors && message.verificationErrors.length > 0) {
|
|
299
|
+
payload.verification_errors = message.verificationErrors;
|
|
300
|
+
}
|
|
294
301
|
if (message.recovery) {
|
|
295
302
|
payload.recovery = message.recovery;
|
|
296
303
|
}
|
|
@@ -313,6 +320,9 @@ function guidanceToClassification(message) {
|
|
|
313
320
|
if (message.nextSteps && message.nextSteps.length > 0) {
|
|
314
321
|
payload.next_steps = message.nextSteps;
|
|
315
322
|
}
|
|
323
|
+
if (message.verificationErrors && message.verificationErrors.length > 0) {
|
|
324
|
+
payload.verification_errors = message.verificationErrors;
|
|
325
|
+
}
|
|
316
326
|
if (message.recovery) {
|
|
317
327
|
payload.recovery = message.recovery;
|
|
318
328
|
}
|
|
@@ -405,6 +415,8 @@ function applyPmCliErrorContext(guidance, rawMessage, context) {
|
|
|
405
415
|
const type = normalizeContextValue(context.type, errorType(code));
|
|
406
416
|
const examples = normalizeContextList(context.examples) ?? guidance.examples;
|
|
407
417
|
const nextSteps = normalizeContextList(context.nextSteps) ?? guidance.nextSteps;
|
|
418
|
+
const verificationErrors = normalizeContextList(context.verification_errors) ??
|
|
419
|
+
guidance.verificationErrors;
|
|
408
420
|
const fallbackTitle = guidance.code === "command_failed" && context.code
|
|
409
421
|
? buildFallbackTitleFromMessage(normalizedRawMessage)
|
|
410
422
|
: undefined;
|
|
@@ -421,6 +433,7 @@ function applyPmCliErrorContext(guidance, rawMessage, context) {
|
|
|
421
433
|
why: normalizeContextValue(context.why, guidance.why),
|
|
422
434
|
examples,
|
|
423
435
|
nextSteps,
|
|
436
|
+
verificationErrors,
|
|
424
437
|
recovery,
|
|
425
438
|
};
|
|
426
439
|
}
|
|
@@ -1224,4 +1237,4 @@ export const _testOnly = {
|
|
|
1224
1237
|
resolveKnownPackageCommandHint,
|
|
1225
1238
|
};
|
|
1226
1239
|
//# sourceMappingURL=error-guidance.js.map
|
|
1227
|
-
//# debugId=
|
|
1240
|
+
//# debugId=5251395b-715a-5559-a7d5-ca3bc4a1bb16
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module cli/public
|
|
3
|
+
*
|
|
4
|
+
* Publishes the supported embeddable CLI entrypoint without exposing the
|
|
5
|
+
* implementation module's repository-only test seams to package consumers.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8e212bdf-7568-54dd-91aa-7de146d65d03")}catch(e){}}();
|
|
9
|
+
import { runPmCli as runInternalPmCli } from "./main.js";
|
|
10
|
+
/** Run one embedded CLI invocation without leaking its exit status into the host process. */
|
|
11
|
+
export async function runPmCli(rawArgv) {
|
|
12
|
+
const previousExitCode = process.exitCode;
|
|
13
|
+
try {
|
|
14
|
+
await runInternalPmCli(rawArgv);
|
|
15
|
+
}
|
|
16
|
+
finally {
|
|
17
|
+
process.exitCode = previousExitCode;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=public.js.map
|
|
21
|
+
//# debugId=8e212bdf-7568-54dd-91aa-7de146d65d03
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2745d577-4f6c-5b9e-b54a-e1451e022d63")}catch(e){}}();
|
|
3
3
|
import { resolvePmRoot } from "../sdk/runtime-primitives.js";
|
|
4
|
-
import {
|
|
4
|
+
import { acknowledgeUnknownAuthorHistoryEventsFromTransport } from "../sdk/author-attribution.js";
|
|
5
5
|
import { collect, getGlobalOptions, printResult, readOptionString, } from "./registration-helpers.js";
|
|
6
6
|
async function runHistoryAuthorAcknowledgeAction(options, command) {
|
|
7
7
|
const globalOptions = getGlobalOptions(command);
|
|
8
8
|
const rawEvents = Array.isArray(options.event)
|
|
9
9
|
? options.event
|
|
10
10
|
: [];
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
const result = await acknowledgeUnknownAuthorHistoryEventsFromTransport(resolvePmRoot(process.cwd(), globalOptions.path), {
|
|
12
|
+
historyEvent: rawEvents,
|
|
13
|
+
allActionable: options.allActionable === true,
|
|
14
|
+
dryRun: options.dryRun === true,
|
|
15
|
+
planFingerprint: readOptionString(options, "planFingerprint"),
|
|
16
|
+
limit: options.limit,
|
|
17
|
+
attributedAuthor: readOptionString(options, "attributedAuthor"),
|
|
16
18
|
reviewer: readOptionString(options, "reviewer"),
|
|
17
19
|
reason: readOptionString(options, "reason"),
|
|
18
20
|
});
|
|
@@ -24,11 +26,14 @@ export function registerHistoryAuthorAcknowledgeCommand(program) {
|
|
|
24
26
|
.command("history-author-acknowledge")
|
|
25
27
|
.option("--event <item-id:line>", "Unknown-author event coordinate (repeatable)", collect)
|
|
26
28
|
.option("--all-actionable", "Select all actionable events")
|
|
27
|
-
.
|
|
28
|
-
.
|
|
29
|
-
.
|
|
29
|
+
.option("--dry-run", "Preview a deterministic source-bound plan")
|
|
30
|
+
.option("--plan-fingerprint <sha256>", "Apply the exact fingerprint returned by --dry-run")
|
|
31
|
+
.option("--limit <n>", "Maximum coordinate rows returned in the plan")
|
|
32
|
+
.option("--attributed-author <value>", "Reviewed principal attribution")
|
|
33
|
+
.option("--reviewer <value>", "Disposition reviewer")
|
|
34
|
+
.option("--reason <value>", "Review evidence")
|
|
30
35
|
.description("Append audited dispositions for immutable unknown-author events.")
|
|
31
36
|
.action(runHistoryAuthorAcknowledgeAction);
|
|
32
37
|
}
|
|
33
38
|
//# sourceMappingURL=register-history-author.js.map
|
|
34
|
-
//# debugId=
|
|
39
|
+
//# debugId=2745d577-4f6c-5b9e-b54a-e1451e022d63
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="7feb0fe0-386c-56dc-afe1-e7b4ce1bc95a")}catch(e){}}();
|
|
3
3
|
import { resolveBodyFileContent, EXIT_CODE, splitCommaList, PmCliError, createUnknownSubcommandError, } from "../sdk/runtime-primitives.js";
|
|
4
4
|
import { CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, PLAN_CREATE_METADATA_PARAMETER_KEYS, UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, } from "../sdk/cli-contracts.js";
|
|
5
|
-
import { BUILTIN_ITEM_TYPE_VALUES } from "../types/index.js";
|
|
5
|
+
import { BUILTIN_ITEM_TYPE_VALUES, PLAN_STEP_LINK_KIND_VALUES, } from "../types/index.js";
|
|
6
6
|
import { MERGE_DRIVER_ARTIFACT_VALUES, runMergeDriver, runMergeInstall, runMergeReconcile, runMergeReceiptReport, } from "./commands/merge.js";
|
|
7
7
|
import { runAppend } from "./commands/append.js";
|
|
8
8
|
import { runClose } from "./commands/close.js";
|
|
@@ -1565,7 +1565,7 @@ export function registerMutationCommands(program, registrationOptions = {}) {
|
|
|
1565
1565
|
.option("--step-replacement <value>", "Replacement reference for a superseded step")
|
|
1566
1566
|
.option("--depends-on <value>", "Pm item ids the step depends on (repeatable, csv-friendly)", collect)
|
|
1567
1567
|
.option("--link <value>", "Pm item id to link (repeatable, csv-friendly)", collect)
|
|
1568
|
-
.option("--link-kind <value>",
|
|
1568
|
+
.option("--link-kind <value>", `Link kind: ${PLAN_STEP_LINK_KIND_VALUES.join("|")}`)
|
|
1569
1569
|
.option("--link-note <value>", "Optional note for the link")
|
|
1570
1570
|
.option("--promote-to-item-dep", "Also add the linked id as a top-level item dependency when linking")
|
|
1571
1571
|
.option("--allow-multiple-active", "Allow multiple steps to be in_progress at once")
|
|
@@ -1840,4 +1840,4 @@ export function registerMutationCommands(program, registrationOptions = {}) {
|
|
|
1840
1840
|
.action(runDepsAction);
|
|
1841
1841
|
}
|
|
1842
1842
|
//# sourceMappingURL=register-mutation.js.map
|
|
1843
|
-
//# debugId=
|
|
1843
|
+
//# debugId=7feb0fe0-386c-56dc-afe1-e7b4ce1bc95a
|