Fixed
- GH-416: Windows nightly validate linked-artifact prune classification item pm-xpkt
Other
- Perf: pm context / pm next hot path ~700ms on an ~850-item tracker item pm-z1pv
- 2026-07-02 full ecosystem audit & optimization pass (CLI+SDK+packages+docs+CI) item pm-fpod
- Lane C: Code quality audit (complexity, dead code, cross-file duplication, long files, type safety, dependencies) item pm-hfli
- Lane F: CI/CD best-practice + secret/PII leak scan incl. pm history files item pm-mo2v
- Lane E: Docs audit (progressive disclosure, minimal README, link graph, duplicated docs/skills) item pm-p99b
- Lane B: SDK best-practice + package-authoring DX review (define/compose/harness/preflight loop, scaffold matrix) item pm-6vy7
- Lane A: E2E ecosystem smoke in temp workspace (pack+install CLI, all first-party packages, full command surface, agent UX/token-efficiency) item pm-kes3
- Lane D: Performance audit (startup latency, per-command responsiveness, hot paths) item pm-3l76
- CodeFactor residual complexity and duplication cleanup for 27-issue main snapshot item pm-bssk
- Zero the jscpd clone baseline: dedupe registration-helpers/flag-contracts source clones and 21 test-spec clones item pm-chxp
Changed
- CodeFactor/Complexity: decompose runUpdate, the update mutate apply-callback, and register-mutation MCP arrows item pm-0n6p
Changed
- CodeFactor/Complexity: decompose runCreate (CC 172) and the audit-scope update guard (CC 38) item pm-g7vl
Fixed
- Auto Release blocked: bot cannot push version commit to protected main (GH006, 12 required checks) item pm-9gxi
Removed
- CodeFactor/Complexity: remove 33 suppressions and split 100+ complexity-point dispatch hot spots item pm-o34s
Other
- CodeFactor/Complexity: zero out the SDK contract-resolution, extension-loader and composition surface item pm-lzzp
- AGENTS.md: mandate reading full live pm item data (status/resolution/comments) before any state claim item pm-g61e
- CodeFactor/Complexity: cut cyclomatic-complexity debt across the extension authoring, management & diagnostics surface item pm-zro7
Added
- pm package/extension init --capability profile: scaffold a project-profile starter package item pm-h2hk
- Project profile author-time validation: lintProjectProfile + assertProjectProfile + pm profile lint item pm-j1fj
- Extension-contributed project profiles: api.registerProfile end-to-end item pm-08sv
- SDK test harness summary/render surface item pm-2qte
- Describe --markdown writes reference docs to a file item pm-u2tm
- SDK + CLI: render extension/package surfaces to Markdown reference docs (renderExtensionSurfaceMarkdown + describe --markdown) item pm-dmum
- First-party baseline profile package built on public SDK primitives item pm-a7o4
- Project profile presets: compose types, statuses, fields, workflows, templates, and packages item pm-v37g
- Add pm package / pm packages shell completion (bash/zsh/fish), including the package-only --declarative flag item pm-mthy
- pm package init --declarative: scaffold a composeExtension blueprint starter + author-time preflight test item pm-8mxg
- pm next: recommend the next actionable (unblocked, ready) work item with rationale + blocked companion item pm-nj90
- Complete scaffold capability matrix: --capability renderers/parser/preflight/services starters item pm-i5p5
- pm package/extension init --capability schema: scaffold custom item type/field/migration starter item pm-d1ig
- Scaffolded & authored command-bearing extensions reliably activate for their own commands item pm-yxb5
- TypeScript-only extension loading: ship .ts entry, load via Node native type stripping (no compiled .js) item pm-2p7a
Changed
- CodeFactor/Duplication: remove duplicated code blocks (×20: 2 Critical, 3 Major, 15 Minor) item pm-fmjy
- CodeFactor/Complexity: reduce cyclomatic complexity (×152: 3 Critical, 7 High, 142 Moderate) item pm-arzz
- ADR: pm extensions are authored AND loaded as TypeScript via Node native type stripping item pm-m1uz
Fixed
- CodeFactor no-regression gate: complexity ceiling + ESLint suppressions baseline + Greptile in local CI/CD item pm-bkcv
- MCP action-schema contracts drifted from CLI flag tables (guide.list, health.brief, validate.parentCycleSeverity, contracts.full) item pm-zx13
- pm next hides completed-container closeout rows while leaf work exists item pm-9g87
- Windows background stop progress assertion item pm-bnh3
- GH-348/GH-376: Windows nightly Vitest worker fork exits unexpectedly after passing tests item pm-2kkl
- CodeFactor/Maintainability: fix unsafe optional chaining (no-unsafe-optional-chaining ×25) item pm-m8yl
- CI: make Codecov badge uploads branch-explicit item pm-x878
- pm next should skip completed open containers when recommending actionable work item pm-2n6i
- pm validate --check-files mis-handles remote (URL) doc/file references: flagged as deleted and silently destroyed by --prune-missing item pm-k2n4
- pm install does not scaffold extension-contributed item-type folders (transient missing_directory health warning) item pm-rjab
- Contracts command lookup should handle package namespace roots item pm-y1o4
- GH-363: Windows nightly (Node 24) red — runtime-loader colon-path + telemetry detached-spawn unhandled error + npm-install regression item pm-xaib
- Auto Release blocked-alert step can never create its tracking issue (auto-release.yml missing issues:write) item pm-qawd
- Aggregate --status all should match duplicate-safe lifecycle filters item pm-bhtx
- Sentry PM-CLI-1T: pm stats should tolerate disappearing history streams item pm-7o0s
- Package lifecycle typo recovery should suggest action subcommands item pm-js02
- describeExtensionBlueprint omits importer/exporter-with-options command definitions (parity gap vs describeExtensionActivation) item pm-zqes
- deriveExtensionCapabilities omits 'schema' for importer/exporter options.flags (declarative blueprint under-grant) item pm-v3ty
- pm package doctor should warn when a schema package registers item types/fields but declares narrow activation.commands (silently non-global) item pm-ok47
- Scaffolded search/importers package commands fail to dispatch: lazy-activation probe skips command-bearing extensions that omit activation.commands item pm-nacb
- Harden extensionNeedsActivationForProbe: non-terminal search gate + command-bearing importers item pm-b5r8
Removed
- CodeFactor/Maintainability: remove useless object-spread fallbacks (unicorn/no-useless-fallback-in-spread ×57) item pm-xsth
Other
- PR \#406 review follow-up: clear partial MCP extension registries before fallback execution item pm-dyzy
- ADR: profile lint severity model — errors break apply, warnings flag suspicious-but-valid cross-references item pm-qcdu
- Action-scoped MCP parameter descriptions: split shared name/target description per action (schema vs profile) item pm-fq80
- Built-in MCP actions are now extension-aware: pm_profile/pm_list/pm_schema activate workspace extensions like the CLI item pm-zumn
- Docs: SDK.md/EXTENSIONS.md document api.registerProfile + regenerate contracts/full.json item pm-ol8j
- Dogfood: pm-kanban registers kanbanProfile so pm profile apply kanban works item pm-kj7x
- SDK profile parity: assertRegisteredProfile + composeExtension blueprint.profiles + deriveExtensionCapabilities + describe item pm-l8fl
- pm profile list/show/apply merges extension-registered profiles with source labels item pm-vpwt
- registerProfile core registration surface: ExtensionApi + registry + loader gate + capability-usage + policy surface item pm-6oox
- Decompose cli-contracts.ts monolith into flag-contracts + tool-schema sibling modules item pm-3wue
- First-party package manifests declare current SDK compatibility floor item pm-6d7q
- Package scaffolds declare current SDK compatibility floor item pm-sf08
- Refresh Sentry release and telemetry dependencies item pm-4dz7
- CodeFactor parity tooling: local ESLint (unicorn) + complexity + duplication lint to reproduce findings and prevent regressions item pm-6sqo
- CodeFactor/Maintainability: clear remaining unicorn lints (no-thenable ×4, no-useless-spread ×2, no-useless-length-check ×1) item pm-q0ye
- ADR: offline BM25 lexical provider + relevance eval harness for search quality item pm-f2al
- ADR: explicit pm_format_version front-matter field for storage schema evolution item pm-eeai
- Normalize stale audit containers and intentional-open resolved items item pm-psc0
- Docs & CI/CD audit 2026-06-12 item pm-gpea
- Audit (2026-06-07): observability / telemetry / health item pm-lzrq
- Audit (2026-06-07): storage/history + search/semantic item pm-34gb
- Audit (2026-06-07): MCP + SDK/extensions/packages item pm-b4cp
- Audit (2026-06-07): CLI surface & schema/config item pm-srex
- Audit (2026-06-07): docs/onboarding/release/CI + tests/coverage item pm-5dbn
- Expose project profile application through MCP contracts and drift gates item pm-bhmk
- 2026-06-25 PM ecosystem taxonomy and context backlog normalization item pm-57vh
- Sub-agent lane: release, GitHub, Sentry, telemetry, and live-ops evidence item pm-3whx
- Sub-agent lane: SDK, packages, MCP, and universal customization backlog item pm-o578
- Sub-agent lane: source, tests, docs, and command-surface coverage map item pm-xezi
- Sub-agent lane: tracker taxonomy, hierarchy, and duplicate hygiene item pm-klpw
- Refresh runtime dependencies for audit baseline item pm-r642
- Extend pm package init --declarative to the full capability matrix (hooks/search/importers/schema/renderers/parser/preflight/services) item pm-lfdv
- ADR: dependency-aware actionability for pm next — ready = active leaf with no open blocked_by; reuse compareCriticalItems + shared blocked_by resolver item pm-9x6k
- Schema-capability scaffolds must omit narrow activation.commands so custom item types/fields register globally item pm-halx
- Schema scaffold docs: EXTENSIONS.md, SDK.md, shell completion, help-content examples item pm-pwf1
- Schema scaffold tests: unit coverage (package+extension variants) + materialize/run generated node:test smoke item pm-x3vi
- Implement schema scaffold capability in scaffold.ts (manifest/entrypoint/README/define\* guidance, omit activation.commands) item pm-mdw6
- Document activation.commands lazy-activation contract in scaffold README, EXTENSIONS.md, SDK.md item pm-scvz
- Scaffold emits manifest activation.commands matching registered command paths per capability item pm-mhih
Added
- TypeScript-first extension & package scaffolding + SDK docs reframe item pm-09rh
- Modular declarative authoring: mergeExtensionBlueprints + composeExtensionPackage item pm-2p38
- SDK unified author-time preflight capstone: preflightExtension + assertExtensionPreflight item pm-ozaf
- SDK author-time version-compatibility preflight: checkExtensionManifestCompatibility + assertExtensionManifestCompatible item pm-1w0d
- SDK author-once manifest synthesis: synthesizeExtensionManifest + assertExtensionManifestMatchesBlueprint item pm-u5le
Changed
- Extract shared version-compat core (core/extensions/version-compat.ts); loader delegates, behavior-preserving item pm-sjea
Other
- ADR: pm extensions & SDK packages must be authored fully in TypeScript item pm-2c28
- Convert docs/examples extensions to TypeScript-first (starter-extension, policy-restricted-extension) item pm-ax7z
- Reframe SDK docs & docstrings TypeScript-first (SDK.md, EXTENSIONS.md, define\*/compose\*) item pm-l2ud
- Scaffolder emits TypeScript source: index.ts + tsconfig.json + type-check/test scripts (./index.ts entry) item pm-frou
- defineExtensionBlueprint: typed identity helper for partial blueprint fragments item pm-nvgy
- composeExtensionPackage: author-once capstone returning { module, manifest } item pm-cn0c
- mergeExtensionBlueprints: pure modular composition of partial ExtensionBlueprints item pm-high
- assertExtensionPreflight(blueprint, options) — throwing CI/test bookend (testing.ts) + barrel re-export item pm-t8yl
- preflightExtension(blueprint, options) — pure unified author-time analyzer (compose.ts) item pm-tcw1
- assertExtensionManifestCompatible(manifest, target) — SDK testing assert item pm-hng2
- checkExtensionManifestCompatibility(manifest, target) — pure author-time analyzer item pm-knma
- assertExtensionManifestMatchesBlueprint(manifest, blueprint): strict least-privilege CI guard against capability drift item pm-pfxi
- synthesizeExtensionManifest(blueprint, identity): generate a complete least-privilege ExtensionManifest from a blueprint item pm-nr5j
Added
- SDK lintExtensionBlueprint + assertExtensionBlueprint: author-time preflight for composeExtension blueprints (capability drift, duplicate commands, empty surfaces) item pm-9ect
- SDK describeExtensionBlueprint: static author-time surface map of a composeExtension blueprint (author-time inverse of describeExtensionActivation) item pm-tlpv
- Declarative extension authoring: composeExtension blueprint + deriveExtensionCapabilities + defineExtensionManifest item pm-iqq0
- pm extension/package describe: agent-facing CLI + MCP surface for describeExtensionActivation item pm-l4c8
- SDK describeExtensionActivation: single-call introspection of every registered surface (complements assert\*/run\*) item pm-16ue
- SDK authoring-time define\* typed builders for every extension registration surface item pm-12tj
- Unified extension test harness (createExtensionTestHarness): one fluent fixture binding all activate/assert/invoke/deactivate SDK helpers item pm-jcyn
Fixed
- deriveExtensionCapabilities omits 'schema' for a CommandDefinition with inline flags (manifest under-grant would fail activation) item pm-5758
- GH-340: Windows nightly telemetry OTLP cleanup EBUSY item pm-zpe7
Other
- ADR: SDK author-time helpers are the static inverse of runtime extension checks (derive↔reconcile, describe-blueprint↔describe-activation, lint↔loader-enforcement+doctor) item pm-4oio
- ADR: SDK define\* builders are zero-cost identity helpers (defineConfig pattern), generic for object defs / non-generic for function defs item pm-3mph
Added
- Add importers package scaffold and dependency-maintenance closeout item pm-j5az
- pm package init --capability search: scaffold search provider starter packages item pm-pwai
- pm package init --capability <kind\>: scaffold capability-targeted starter packages (commands\|hook) item pm-nhby
- SDK invoke helpers for importers & exporters: runRegisteredImporterForTest + runRegisteredExporterForTest item pm-1p2u
- SDK invoke helpers for search providers, vector store adapters and migrations item pm-bd3u
- Complete the SDK extension-invoke testing surface: runRegisteredHookForTest + override invoke helpers item pm-miqm
- SDK testing helper to invoke a registered extension command handler: runRegisteredCommandForTest item pm-owm0
- SDK deactivate test lifecycle: deactivateExtensionForTest + assertExtensionDeactivated helpers item pm-0zn9
- Least-privilege capability reconciliation: pm package doctor flags declared-but-unused extension capabilities + SDK assertExtensionCapabilityUsage item pm-fk84
Fixed
- Fix Windows nightly full-test path and permission assumptions item pm-83rt
Other
- Package and extension scaffolds emit least-privilege manifest policy metadata item pm-bav0
Added
- Complete SDK package-author test-assertion surface: service-override + migration helpers item pm-6pmp
- item-format-migration: add format-version field to front-matter for future migration gating item pm-ae1u
Fixed
- Windows nightly: secondary POSIX-separator + mocked-path test class (static-quality-gate, docs-skills-gate, bundle-cli, contracts-snapshot, smoke-npx-from-pack) item pm-s5pe
- Nightly windows-latest STILL red after pm-i84i: scriptModule test harness imports .mjs scripts via absolute file:// URL, shebang survives missing transform (SyntaxError) item pm-dita
Other
- Package scaffold generates a runnable sample test, .gitignore, and npm test script item pm-4ltc
- Code quality & perf audit 2026-06-12 item pm-nimu
- SDK testing helper for registerFlags registrations item pm-oveq
Added
- Search relevance eval harness: implement nDCG/MRR runner and gate in CI item pm-u8n5
- Offline BM25 lexical retrieval provider when no Ollama/OpenAI is configured item pm-75k9
- Add 120-file unit-test cap governance test to ci-workflow-contract.spec.ts item pm-wc0d
- Add integration test for background-refresh (instant mutations) non-blocking behavior item pm-5rge
- Add integration test for close-many --rollback checkpoint restore item pm-7p4w
- Add integration test for schema add-type / remove-type round-trip with governance.workflow_enforcement item pm-4dtf
- Add remediation registry entry for validate_metadata_duplicate_issue_codes warning item pm-sdbo
- Add remediation registry entry for extension_update_health_partial_coverage warning item pm-bdvm
- gc --scope checkpoints: prune stale bulk-mutation checkpoint files item pm-tyj8
- LanceDB snapshot: add gc --scope embeddings to include pending-refresh.json and drift-cache coordination item pm-3b1t
- Sentry KNOWN_NOISY_CONSOLE_MESSAGE_PATTERNS maintenance: add a governance test to prevent silent accumulation of stale patterns item pm-jxls
- Add vitest.config.ts coverage include/exclude governance guidance to ARCHITECTURE.md item pm-othr
- Add wiring-checklist reference card to ARCHITECTURE.md for new command authors item pm-zyse
- Add performance / startup-latency section to ARCHITECTURE.md item pm-p37b
- Add nightly.yml failure alerting: notify on Windows/Node25 smoke failures item pm-ehbb
- Add Windows path-separator test coverage for fs-utils and store/paths item pm-tq5t
Changed
- Refactor runUpdate (~950-line function) into table-driven per-field apply helpers item pm-e7dn
- Replace 'as unknown as ItemMetadata' double-casts (9 sites) with typed mutation/replay returns item pm-ul02
- COMMANDS.md omits pm get and pm copy; command-families table missing get/copy/update-many/close-many item pm-xvzm
Fixed
- pm-changelog over-escapes markdown in entry titles (parens + intra-word underscores) item pm-3299
- Nightly windows-latest red since 2026-06-14: ~373 tests fail with 'SyntaxError: Invalid or unexpected token' from file://-URL TS dynamic imports + POSIX-separator assertions item pm-i84i
- Accept --status all for duplicate-safe search and list filters item pm-i02t
- 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 item pm-c90s
- Daily auto-release was silently blocked 06-14..16 by a single stale, unresolved Sentry error (sentry-telemetry-gate is:unresolved has no time window) item pm-nb08
- appendLineAtomic is not truly atomic: concurrent appends to history JSONL can interleave item pm-xy9n
- Project-scope extension install writes ~69MB node_modules per workspace (peer pm-cli + transitive Sentry/OTel) item pm-oxq2
- Fix ARCHITECTURE.md storage layout: add plans/, stories/, schema/, checkpoints/, runtime/ dirs item pm-mcgf
- Fix nightly cross-platform reliability: macOS realpath in extension-command test and Windows .cmd spawn EINVAL item pm-gf6f
- GH-293..296 CLI parser and search regression bundle item pm-yy45
Removed
- Built-in type lists and storage layout drift: Plan missing; ARCHITECTURE.md still lists removed index/ dir item pm-7u4z
Other
- Export hygiene: 1 dead export + ~57 exported-but-internal-only symbols item pm-vn9l
- Document search eval golden-query harness usage in TESTING.md item pm-eg9k
- Sentry tracesSampleRate is hardcoded at 0.2 — expose as configurable knob or document intent item pm-gg8e
- CLAUDE_CODE_PLUGIN.md drift: architecture tree shows 9/14 commands + 1/4 agents; compat table says plugin 1.0.0 (actual 1.4.0) item pm-cxi9
- Docs index missing EXTENSION_AUTHOR_CONTRACTS + MIGRATION_CLI_SIMPLIFICATION links; migration note predates --pm-path item pm-c97q
- pm todos import: positional source arg silently ignored + folder-not-found error omits --folder flag (beads parity) item pm-90hp
- Unknown-command did-you-mean misses executable aliases: 'pm shwo' gets no suggestion (show/view/comment not in candidate set) item pm-i35t
Added
- pm context --fields: per-row field projection for focus items (GH-156 follow-up to --depth full) item pm-hnjf
- pm list output formats: csv/table for human export (GH-154 remainder) item pm-1lll
- pm plan discoverability: templates and auto-suggest for complex work (GH-158 remainder) item pm-aer3
- Dedupe merge workflow: pm dedupe-merge to consolidate duplicates (GH-163, builds on closed pm-4n1a detection) item pm-jmld
- pm search: structured inline query syntax (tag:/status:) + matched-text highlighting (GH-157 remainder) item pm-ldr1
- Auto-compact policy: config-driven threshold to trigger pm history-compact automatically item pm-0pnz
- pm history-compact: expose --scope all-streams (history GC pass) for closed items item pm-yj9w
- History stream bulk-compaction: pm history-compact --all-over N to batch-compact large streams item pm-f3pa
- Add agent-identity dimension to telemetry events: surface PM_AUTHOR as hashed author_context item pm-fbyu
- pm telemetry stats: add error_rate and resolution breakdown per command bucket item pm-gsoe
- Surface duration_ms percentile breakdown in pm telemetry stats (p50/p95 per command) item pm-3n3b
- GH-208: linked test sandbox ergonomics item pm-52eh
- Core read/validate integrity: exact-ID search rank guarantee across modes + parent-hierarchy cycle detection item pm-rkie
- Validate governance accuracy: suppress false-positive duplicate-code & terminal-item metadata noise + files --remove input clarity item pm-6bz1
- Sub-hour duration granularity for scheduling: support minutes in --duration / event duration= item pm-zoe4
Changed
- pm update --allow-audit-update: permit append-only --comment/--file/--doc evidence (GH-207) item pm-kanu
Fixed
- linked-test-adapters package install loses ESM module type item pm-v8fy
- GH-206: test-all silent run process-liveness regression item pm-mcxr
- Auto Release retries branch push after main advances item pm-5oti
- GH-284: align pm init required schema directories with health item pm-hl9y
- GH-215: enforce timestamps in history entries item pm-u42x
- GH-280: pm validate does not detect circular parent references (hierarchy cycles A-\>B-\>A of any length) item pm-8vul
- GH-281: exact-ID search match is rank-diluted in hybrid/semantic mode (keyword score normalized + capped by keyword weight) item pm-oqgf
- PR \#266 review feedback: tighten init and dynamic option validation item pm-at1j
- CI contracts snapshot temp cleanup can fail with ENOTEMPTY item pm-c61g
- pm templates: unknown subcommand + flags silently fall back to 'list' (exit 0) instead of erroring item pm-r2kd
- Dynamic package commands should reject excess args and unknown parent tokens item pm-nt1y
- GH-262: prevent path-like pm init from corrupting caller tracker settings item pm-jek2
- GH-265: schema unknown subcommands must not create custom types item pm-ablm
Other
- Repo-wide docstring coverage gate for source files item pm-p4mw
- SDK.md PM_PACKAGE_RESOURCE_KINDS drift: assets/prompts kinds missing item pm-u8y9
- GH-277: files --remove path-only input clarity item pm-k8ld
- GH-276: metadata check skip terminal items for planning fields item pm-pktw
- GH-278: duplicate_issue_codes exclude items closed-as-duplicate item pm-5fid
- GH-275: duplicate_issue_codes skip legitimate parent/child code-prefix pairs item pm-2nxe
- PR \#274 second review follow-up: prefix, format, and owner scoring item pm-89ur
- PR \#274 review follow-up: CodeQL and bot feedback item pm-0bwe
- GH \#267/\#271/\#272 follow-up: lifecycle automation, logical dependency validation, read format parity item pm-8uhf
- GH \#268-\#270 agent lookup and context output polish item pm-x7g1
- Dogfood audit 2026-06-12: ecosystem verification (CLI+SDK+packages) item pm-krgd