2026.8.3

Added

  • One declared output-bounding dimension set on every read surface: 25 flag spellings across 19 commands collapse to include / how-much / cost / encoding, with a precedence algebra and permanent aliases item pm-hb7ug8
  • Intent-scoped read projections: a command returns exactly the fields the declared intent consumes, so agents stop paying for fields they discard item pm-cxr0jb

Fixed

  • Auto Release coverage depends on a /proc timing race in the SDK entrypoint sampler item pm-q2a7hr
  • The author field is an ungoverned free-text vocabulary: 477 distinct spellings across 41,021 immutable entries encode harness, model, session role, topic, and date because those dimensions had no fields, and the record cannot be rewritten item pm-3yxwv5
  • Recorded agent provenance is unreadable in practice: the only projection carrying it also carries every JSON Patch operation at 63.5x the compact cost, and no read surface can filter on harness, model, effort, or instance item pm-v8gfi7
  • Harness provenance can only be declared as environment variables, so the model the primary harness publishes in its own session record is inexpressible: 900 of 900 explicit entries still record model null while effort resolves item pm-ffz0a9
  • GH-867: linked files and docs no-op additions report changed and append phantom history item pm-jb1ron
  • GH-868: atomic replacement contract for linked files and docs item pm-cstuys
  • GH-865: classify linked-test lock contention as infrastructure collision item pm-2irc1p
  • GH-779 recurrence: history-redact must refresh item and drift projections atomically item pm-wnbk2l
  • GH-870: make runtime workspace path assertions portable in Windows nightly item pm-rusbe4
  • GH-871: preserve letter-suffixed issue codes in duplicate similarity scoring item pm-sn3xor
  • GH-866: telemetry flush queue-drain contract reports partial progress as fully drained item pm-u5c27w

Security

  • GH-864: history-redact output must never echo literal secrets item pm-y3w0ld

2026.8.2

Added

  • Episode identity: a stable, labelled, nestable episode key that survives process, surface and harness boundaries so trajectory grouping and fleet aggregation have a join key item pm-oqo9l2

Fixed

  • Both published bin names are refused as subcommands, so npx PKG pm init and bunx PKG pm init fail while the version probe that guards them passes item pm-rnl3sa
  • The intent budget binds downward and is inert upward: a sevenfold budget increase buys zero rows and the field that would reveal the clamp is omitted exactly when it applies item pm-prsvjh
  • The MCP action vocabulary is not derived from the CLI contract table: 26 MCP-only spellings, and seven contracted capability families including merge, workspace snapshot and eval have no MCP route at all item pm-0834kq
  • The SDK boundary gate proves the CLI stopped importing private core and never proves the CLI only imports the published SDK, so ten private SDK modules carry our own commands item pm-xpumg4
  • GH-855: core mutation locators must honor extension-registered item types item pm-scga6k
  • GH-853: extension command test harness must inject the real host-bound SDK item pm-wx2lr5
  • Session-topic provenance has no descriptor keys on any harness, and effort/role are wired for only claude-code and codex, so most fleet history records harness and model but nothing about the work's shape item pm-rbg1qo
  • Explicit-unavailable provenance is recorded for the model dimension only, so effort and role absence is permanently indistinguishable from a legacy entry item pm-9wbiye
  • GH-851: compare init discovery roots by filesystem identity item pm-noq46i
  • GH-847: tighten managed built-in static SDK contracts and author guidance item pm-ka6m65
  • The MCP server never receives the harness provenance environment, so one agent session writes permanently divergent identity records depending on which surface it used item pm-1zhfls
  • The bounded read costs 13.8 times the unbounded read to deliver the same set, because eight metadata blocks are re-emitted per page and the page carries two rows item pm-sf31yl
  • Declared intent token budgets are smaller than the smallest projection their own command can emit, so three of five intents return no result at all on this tracker item pm-yekkvt
  • Declared read-intent token budgets are written to a flag three of five intent commands do not accept, so the shipped intent layer overruns its own declaration by up to 43.8x item pm-7hbfch
  • The public SDK's item-lifecycle surface re-exports CLI command modules, so lifecycle policy cannot be expressed, inspected, or overridden through the SDK item pm-z5pmf8

Security

  • GH-854: transactional extension mutation guards for enforceable domain invariants item pm-hx23u5
  • CodeQL alert 33: eliminate polynomial trailing-whitespace matching in SDK append item pm-8wskoj

Other

  • As a coding agent, every pm command I run costs the fewest tokens that still fully answer my question, and I can see what I spent item pm-g3n00m
  • Self-reported token accounting: any command can report the token cost of its own output so budget spend is attributable at runtime and in CI item pm-t5dt4z

2026.8.1

Fixed

  • Mutation echo parity reversed after pm-nilh closed: the MCP surface now returns 5.2x the CLI default for an identical create item pm-awe3t6
  • The bunx release gate passes with an arbitrary token in the executable position, so the only Bun coverage in the pipeline cannot fail for the reason it exists item pm-lpqln4
  • The published-artifact gate never executes pm-mcp: two of three declared bins resolve to the same file and the third — which already shipped dead once — has zero release coverage item pm-u0oz2k
  • One governance rule, two terminal-transition paths, opposite answers: pm close refuses a reasonless close while pm update --status closed invents a reason and writes it into the immutable record unmarked item pm-2ew0w3
  • Closing an item deletes its ordering edges, so the historical ordering graph is structurally unable to exist item pm-xm0id4
  • GH-831: actionable unknown-author health evidence is truncated without a complete disposition selector item pm-1bmeta
  • GH-841: init ancestor discovery obscures the selected workspace and safe current-directory target item pm-ipbwcq
  • GH-840: annotation primitives lack a merge-safe structured event append and query contract item pm-09rdni
  • GH-839: extension field declarations accept types the persisted schema cannot validate item pm-tom5xp
  • Harness-detection specs inherit the ambient harness, so four tests fail under Claude Code and pass in CI on the same commit: the local verdict depends on which agent ran it item pm-631t9p
  • Extension-registered item types are created, stored and versioned like any other item but are invisible to the merge fence and its drift detector, which reports the fence clean item pm-5rexki
  • Four edge-counting conventions publish under one edge_count field: graph analyze reports 10046 and graph centrality 7351 for the same graph at the same cache fingerprint item pm-jiusod
  • Four read surfaces publish a jq_selector that is guaranteed to return nothing: the self-describing row contract is present, vacuous, and indistinguishable from an empty result item pm-x710qm

Security

  • GH-827: local package install must prevent recursive self-copy and disk exhaustion item pm-0682l4

Other

  • Refresh compatible Sentry 10.69 and Greptile 3.3 dependencies item pm-7564ov

2026.7.31

Fixed

  • Exact-tag npm recovery must stabilize public package access before verification item pm-t310hx
  • GH-830: duplicate-safe creation must require explicit bypass before persistence item pm-35w9l2
  • GH-828: init status registries must expose one coherent alias contract item pm-62n4kk
  • GH-826: extension commands need structured failure results and preserved remediation item pm-ye9v2t
  • GH-825: restore SDK excess-property safety for extension definition metadata item pm-unwsns
  • GH-824: core-field recovery must name dedicated flags instead of extension activation item pm-2jtbl8
  • CodeFactor fixed-only success payload blocks exact-head release gate item pm-xcrlkl
  • 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 item pm-ai45y9
  • GH-814: SDK metadata reads must distinguish missing and invalid tracker roots from an empty tracker item pm-23xkss
  • 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 item pm-6j7r1a
  • GH-817: machine-readable flag contracts need semantic invocation metadata and stdin capability item pm-11phn1

Security

  • GH-827: local package install must prevent recursive self-copy and disk exhaustion item pm-0682l4

2026.7.30

Added

  • Omission receipts: every bounded read shape names the field groups it withheld and the flag that restores each, with the same rigor row truncation already has item pm-p258tx

Fixed

  • Workspace snapshot heartbeat races atomic root activation and loses its writer lock item pm-ifuysd
  • GH-815: optional missing merge drivers must be advisory in default health verdicts item pm-r8u2g6
  • GH-814: SDK metadata reads must distinguish missing and invalid tracker roots from an empty tracker item pm-23xkss
  • Sentry gate misclassifies handled snapshot identifier validation as a blocking runtime error item pm-k785lu
  • Scale fixtures vary only in size: the sole synthetic workspace generator hardcodes population shape, so the million-item tier is eleven simulated days deep with one history entry per item item pm-vv2lti
  • Whole-workspace snapshot restore silently rewinds the immutable record: history streams are deleted and nothing records that a rewind happened item pm-6l2mza
  • GH-808: lifecycle completion resolver types and provenance lie when no timestamp exists item pm-qhnq6t
  • pm activity --compact --json emits an empty activity:\[\] decoy key alongside compact_activity item pm-p3x4
  • Mode-paired envelopes zero-fill the inactive collection instead of omitting it, so parsing the obvious key returns an empty array that is indistinguishable from a real empty result item pm-cyrfjq
  • GH-802: persist structured numeric measurements with test runs item pm-ygerpy
  • GH-806: publish and reuse the eval query-set contract across help, errors, SDK, and machine discovery item pm-wd61s2
  • The rendered command surface is not a subset of the contracted surface: pm workspace ships in help, runs, and exits 2 on its own contract lookup, and no gate compares the two sets item pm-1jrdri
  • GH-797: rank read/show/view recovery by executable intent and bounded contracts guidance item pm-bex0ui
  • GH-803: hoist repeated linked-test execution context and honor lean output item pm-fqdmbf
  • GH-807: make the default eval query set version-controllable in every initialized workspace item pm-jdh1jg

Other

  • The product advertises CI gates in its own help that no pipeline runs: pm eval names --fail-under a CI gate and nothing consumes it item pm-b2hc4x
  • Gate registry: every enforced CI and release gate has an owner item, a declared failure taxonomy, a bypass policy, and a negative-control fixture proving it fails on known-bad input item pm-k6t4yb

2026.7.29

Added

  • GH-787: workspace snapshot and restore primitives for cheap reproducible evaluation episodes item pm-dkrmzv
  • Reproducible workspace instances: seeded identifiers, injectable clock, and byte-identical construction from a declared recipe item pm-rbcvt2

Fixed

  • GH-676: list tag filter must accept the CSV shape used by tag mutations item pm-b1zsk9
  • GH-675: lifecycle must record actual completion time separately from tracker close time item pm-bwnclq
  • GH-711: update must support intentional unresolved parent references under strict governance item pm-cragzs
  • GH-715: expose mutation-guard policies through canonical config help and output item pm-5ecnar
  • GH-672: pm context low_level rows omit blocked state and blocker IDs item pm-r2suqb
  • GH-651: pm activity bare relative windows silently return empty results item pm-b0twiy
  • GH-784: SDK blueprint preflight misses host-owned flag collisions and malformed long-flag tokens item pm-huolbk
  • GH-785: align pm health ok with warn-only exit semantics on fresh clones item pm-83ov2i
  • GH-792: fresh-clone health must not require ignored runtime and empty extension directories item pm-0k4o8t
  • GH-793: remove or disambiguate list --all so filtered output cannot claim workspace completeness item pm-q7qojt
  • GH-794: make copied identity output_format overrides decline instead of exposing the host envelope item pm-wi301j
  • Nightly static quality fails closed in shallow workflow checkouts because CodeFactor parity cannot resolve a committed base item pm-1hbw4y
  • GH-790/GH-791: pm merge install reports workspace_root in a different canonical form depending on which channel resolved it, so the same repository has two non-equal spellings on macOS and Windows item pm-ihmfs6
  • The dependency token budget is enforced against a different representation than the one emitted, so a command that reports staying inside 16k tokens delivers about 45k item pm-t2t709
  • pm activity has no default bound: a bare invocation returns all 40,446 history entries at 1.59M tokens, 397x the ceiling its own contract declares item pm-z2j1qt
  • Both token gates are structurally unable to fail: one measures only help payloads, the other measures command output against a three-item fixture, so no check anywhere compares real output to the ceiling the contract declares item pm-9sui7t
  • Sentry PM-CLI-2N: malformed missing tags crash normalizeItemMetadata before search can report the item item pm-89neyq
  • pm-governance-audit comments-audit limit contract contradicts runtime alias semantics item pm-v657
  • pm-governance-audit dedupe-audit rejects --status all, breaking explicit all-lifecycle duplicate sweeps item pm-mp49
  • GH-781: managed built-in extensions redeclare public SDK contracts locally, and the mirrors already disagree with the authoritative declarations in shipped packages item pm-vnk7ob

Security

  • GH-799: confine custom item-type storage folders to the tracker root item pm-d30cmk
  • PR \#795 exact-head review hardening: dependency budget progress, rendered fixed points, nightly credential isolation, and drift-cache diagnostics item pm-jd3m6p

Other

  • Refresh compatible 2026-07-29 development dependencies item pm-77bmeu
  • Token-budget gate corpus is unrepresentative in both scale and coverage: budgets are set on a seeded micro-workspace and the largest agent-facing payloads are not measured at all item pm-z71aoy
  • GH-782: guide-shell special-cases one multi-word command name and duplicates its status derivation, and calendar's throw-only validation call is unexplained, inside package-managed built-ins consumers cannot patch item pm-cb8qq2

2026.7.28

Added

  • MCP tool profiles: core/standard/full/custom tiers with an allowlist override, so 31 tools are the maximum surface, not the default item pm-9k90
  • MCP resources and prompts surface: expose workspace context as addressable resources and canonical workflows as prompts, not only as tools item pm-yf07b7
  • Project live workspace schema and extension commands into MCP discovery and mutations item pm-m4ikkz
  • Public SDK contracts and static runtimes let extension authors reuse the CLI baseline item pm-w7mqzt

Changed

  • Dedupe flag-contracts.ts repetitive per-command blocks (9 internal clones, ~150 lines) item pm-ueuq

Fixed

  • GH-770: pending merge receipts remain invisible to validation and CI before reconciliation item pm-ysqb6n
  • GH-775: make fresh-clone health distinguish material tracker loss from absent empty type folders item pm-xyuhh7
  • GH-779: invalidate history drift cache after item and repair mutations item pm-ajaskl
  • The merge fence covers item documents but not tracked non-item JSON, so .managed-extensions.json line-conflicts between agents on different branches item pm-gjicmx
  • GH-773: install portable merge drivers without permanent checkout-path drift item pm-w91mvg
  • GH-776: preserve output override compatibility and export the public decision contract item pm-u2tqn6
  • GH-778: make lean structured reads omit caller echoes and inactive pagination metadata item pm-oi4zs3
  • GH-772: rejected extension command registration leaves silent partial activation and zero-exit command gaps item pm-4vwcvq
  • The surface-discovery contract costs 31k tokens in its brief form and still omits every flag, so the cheapest way to learn pm is the most expensive call it offers item pm-gmdzaa
  • Linked-test schema sandbox breaks package prepare hooks that install the PM merge driver item pm-uawujr
  • The list family exposes three incompatible --json projections under one flag, so an agent filtering on an unprojected field silently reads absent instead of unset item pm-pjnu91
  • GH-768: deduplicate public SDK provenance exports across core and root entrypoints item pm-44aa4x
  • GH-766: Windows nightly extension timeout and merge-safety cleanup EBUSY item pm-25b7tg
  • Merge-fence scope ambiguity: extension-contributed item folders make default validation disagree with the no-extensions CI baseline item pm-mkzw1x
  • GH-764: one host-global flag collision quarantines an entire extension and suggests reinstalling the installed package item pm-gnowgi
  • Recovery bundle mines flag names from usage-error prose: scope errors like '--rebuild and --clear apply only to graph index' yield missing:--clear + suggested_retry appending the other invalid flag item pm-ikv6m0
  • GH-755: dependency edges are written with a null author, so the relationship graph is the only recorded collection with no provenance item pm-0a24f5
  • GH-752: list results claim completeness while unreadable items are omitted item pm-57ir3b
  • GH-763: merge-decision receipt persists shell-quoted item_path that cannot resolve item pm-9nfpwd
  • GH-747: the bundled TOON encoder emits documents its own decoder rejects, so a valid item becomes permanently unreadable item pm-avv3wx
  • Identity provenance is a fixed three-dimension schema, so the reasoning level sitting in the environment right now and any session role are structurally unrepresentable item pm-itsjf0
  • Model capture is inert in practice: zero of 35,103 recorded entries carry a model, because the declared signal for the primary harness is an environment variable that harness does not set item pm-0zcwz6
  • The public harness detectors default env to an empty object, so detectAgentIdentity() and detectHarnessIdentity() silently return empty for every SDK caller item pm-pwq0g5
  • GH-746: the release publish step guards on a package scope that does not exist, so publish idempotence and access recovery are permanently dead code item pm-2z9263

Other

  • Evaluate Sentry 10.68.0 compatibility and retain 10.67.0 item pm-r31390
  • Derive ALL MCP tool inputSchemas from \*\_FLAG_CONTRACTS — eliminate hand-declared parallel schema tables (extend the pm_copy pattern) item pm-xwah
  • Generate shell completions, MCP tool registrations, and command reference docs from the contracts table (single source of truth) item pm-mu8m
  • The agent token-surface harness from pm-a22j is wired into nothing, so output-size regressions like the 33k-token health check land undetected item pm-dpqa3h
  • Ecosystem review and deep-graph enrichment pass 2026-07-27: all-status census, CLI simplification + token-efficiency + long-term brainstorm, dedupe-checked gap filing item pm-89qv6b
  • Evaluate @toon-format/toon 4 compatibility and item-format migration item pm-5cgm2z
  • ADR amendment: extensible durable agent provenance dimensions and privacy boundaries item pm-oskdmu
  • SDK completeness is asserted by a 10-case curated array against 85 declared actions: the boundary proves the CLI reaches nothing below the SDK, nothing proves the SDK can do what the CLI does item pm-te6elw

2026.7.27

Fixed

  • GH-754: the merge driver's field-level conflict report is transient stdout, so the value it discarded leaves no durable record anywhere item pm-rh98vo
  • Merge fence fails open: an unresolvable pm driver leaves unmarked UU files whose naive resolution silently discards the other branch's fields and history item pm-c0wthb
  • Merged-main Windows init package acceptance exceeds generic Vitest timeout item pm-0vkmqs
  • GH-739: expose duplicate-cluster discovery as a first-class CLI and SDK workflow item pm-n13lzc
  • PmClient activation queue serializes unrelated workspaces and extension-free actions item pm-zpoyg9
  • GH-741: replace reference-identity service override claiming with an explicit observable contract item pm-h3ipax
  • GH-740: make the documented aggregate SDK barrel complete and continuously derived item pm-obbh43
  • GH-738: publish the machine-readable public SDK surface snapshot with the package item pm-lnswp0
  • Terminal release transitions retain stale claim_principal ownership item pm-bnrndo
  • SDK: inject host-bound runtime into ImportExportContext item pm-i7indd
  • Detected agent identity is not agent-unique, so claim mutual exclusion silently degenerates across a same-harness fleet item pm-z8qd4k
  • GH-714: linked-test verbose child stdout still aborts with EAGAIN after bounded-drain fix item pm-5sm91o
  • CodeFactor 2026-07-26 SDK and digital-twin regression cluster (GH-722 through GH-732) item pm-eq3ak8
  • GH-733: Windows Node 24 nightly portability regressions in author, recovery, and drift tests item pm-wr8utz
  • Sentry PM-CLI-2M: classify workspace audit-state drift as an actionable conflict item pm-o71t68
  • GH-728: preserve live harness authorship across initialized multi-agent workspaces item pm-si2uur
  • GH-720: diagnose unbuilt GitHub extension sources and recommend resolvable npm artifacts item pm-0sx3kz
  • GH-719: reject or diagnose extension command flags shadowed by pm globals item pm-ill9gv

Security

  • Scorecard Security-Policy (4→10): enrich SECURITY.md to full scoring depth item pm-2d7k
  • Scorecard Fuzzing (0→10): add a fuzzing/property-based harness for the parser and codec surfaces item pm-0yi7

Other

  • The merge-safety gate verifies one history stream of 2,058 and never checks drift, so a clean merge that provably corrupts stream anchoring passes CI green item pm-pdr8t1
  • Branch merge is an unrecorded mutation: the field-aware merge produces an item state that no history entry ever produced, so the merged state is unaddressable by restore and point-in-time reads item pm-9j2r3b
  • Continuous multi-branch merge conformance: randomized N-branch divergence and merge property suite with a zero-conflict acceptance bar item pm-76dnfg
  • 2026-07-26 ecosystem review: all-status walk, graph depth enrichment, agent-ergonomics and release-pipeline verification item pm-v4iypw
  • Historical release attribution backfill: stamp every terminal item with the release tag that contains its close event item pm-3j6it6
  • Terminal relationship backfill, evidence-derived tranche: make every closed and canceled item reachable by typed graph traversal item pm-qudvto
  • 2026-07-26 agent-context readiness audit: full CLI, SDK, and ecosystem review and optimization plan item pm-t9e3bc
  • Ecosystem review and deep-graph enrichment pass 2026-07-26: all-status inspection, CLI simplification + context-algorithm brainstorm, gap filing item pm-e9yevx

2026.7.26

Added

  • Immutable-tree DeepScan and CodeFactor zero-new-issues release gate item pm-39cqqx
  • Model-aware agent identity: detection resolves harness, model, and session so an agent never types an identity flag and history still records which model acted item pm-03pq3o

Changed

  • Dependabot update queue 2026-07-21: PRs \#618-\#621 item pm-pegcmx
  • Harness signal registry: identity detection becomes declared data that a config entry or a package can extend without a code change item pm-brxdct
  • Public SDK surface snapshot and breaking-change gate: the exported API is a reviewed artifact, and an unintended removal or signature change cannot merge item pm-e6tm5c

Fixed

  • GH-716: detect npm and Slack credential shapes in mutation secret guard item pm-fhhhlk
  • pm package init doubles the pm- prefix and mints an unusable pm pm ... command path when given the package name every real pm package actually uses item pm-c5f0gh
  • pm extension --init and pm package init are divergent scaffold generators behind the same grammar; the extension path emits no tests and an unpublishable manifest item pm-9smp7j
  • Built-in help examples teach an explicit --author on dozens of commands, training every agent to suppress its own detected identity and pay tokens for it item pm-sx52hr
  • Shipped MCP manifests and MCP tool guidance hardwire a static author, overriding the automatic identity of every plugin-hosted agent item pm-zqsrt5
  • A configured author_default suppresses harness detection entirely, so any workspace that sets a default author records no harness and no model provenance item pm-6uxhe0
  • GH-677: pm-path relocation must diagnose extension discovery changes item pm-qswf81
  • GH-691: parseItemDocument errors need stable structured SDK classification item pm-r9pudt
  • First-party service collision: builtin-calendar and builtin-guide-shell both override the global output_format service item pm-ixoa
  • GH-680: completed Plan close must transition plan_mode terminally item pm-g512pv
  • GH-692: plan update-step must persist file, test, and doc evidence fields item pm-z5vamp
  • GH-678: linked-test sandbox must preserve freshly installed project extensions across child processes item pm-jvken3
  • GH-709: batch duplicate-cluster sweep with canonical precomputed similarity signals item pm-2i12ti
  • pm config set on one leaf key rewrites settings.json with every default materialized and silently replaces explicit stored values (validation.parent_reference warn -\> strict_error) item pm-x2aplf
  • GH-690: plan resume and approve must apply or reject scope changes item pm-bxdlfa
  • GH-688: seeded Plan creation must be atomic across ownership boundaries item pm-96tter
  • GH-679: linked-test output capture must not abort verbose child tools with EAGAIN item pm-j36ypd
  • Author-resolution bypass class: create/copy and the context, next, and usage-feedback paths re-implement author precedence without harness detection, stamping author 'unknown' on new items item pm-42p9nk
  • GH-706: accept bare conventional forms for create/update boolean metadata flags item pm-ulb3rc
  • GH-700/GH-701/GH-702: nightly Node 22 and cross-platform regression bundle item pm-3x8w4m
  • GH-704: make extension activation failures actionable at command and lifecycle boundaries item pm-3ljt19
  • GH-705: make duplicate governance discoverable and advisory by default item pm-de3foa
  • GH-703: populate portable workspace coordinates in extension CommandHandlerContext item pm-fc9gm4

Removed

  • GH-708: make retained delete tombstones discoverable and policy-controlled item pm-wdrkfr

Security

  • Add TruffleHog OSS verified-secret scanning to the security workflow and complete free GitHub secret-scanning toggles item pm-4ris
  • Refresh 2026-07-15 npm dependency updates with compatibility and release-gate proof item pm-tll8

Other

  • CLI transport overhead budget: gate the per-invocation bootstrap floor and the CLI-vs-SDK delta, not just absolute scale numbers item pm-yse5dt
  • CI/CD + test-suite performance: in-process CLI runner and dedupe redundant matrix legs item pm-7rlp
  • ADR: agent identity model — stable author namespace plus structured harness, model, and session provenance item pm-qwuber
  • Public SDK surface shape: 881 exports behind one flat entrypoint with no capability tiering and a 250ms eager import cost item pm-38bskj

2026.7.25

Added

  • Harness-aware author identity: pm resolves the acting agent from its runtime harness so PM_AUTHOR is never required item pm-z9x1r2
  • Mutation event stream primitive: pm events --follow (NDJSON with durable cursor) + SDK subscription API for cross-process agent coordination item pm-e200
  • Create-time near-duplicate advisory: pm create/copy surface similar existing items before new work is filed item pm-4ri6

Fixed

  • GH-686: validate extension flag descriptors and support repeatable as a list alias item pm-s1w0sf
  • GH-683: standard get projection must expose tests_count when tests are omitted item pm-1exil1
  • GH-685: extension CommandContext needs portable source and tracker workspace coordinates item pm-j4ac9a
  • GH-682: linked-test tracker sandbox must preserve source VCS workspace identity item pm-954h0o
  • 10k scale gate regression: CLI create latency and create/claim peak RSS exceed fixed budgets item pm-hcrmye
  • PR \#673 review hardening: literal Git paths, canonical workspace identity, bounded diagnostics, and recoverable init item pm-d7crwk
  • GH-666/GH-667: nightly Node 22 stderr and Windows permission-contract regressions item pm-lvd647
  • GH-665: schema migrations need derived idempotency keys and structured recovery item pm-s79kel
  • GH-663: fresh init must install and surface the semantic merge fence item pm-1w3ljt
  • GH-514: pm init writes no .gitignore rules — runtime/search caches churn as tracked files in downstream repos item pm-hous
  • Stale-lock takeover race in acquireLock: two waiters can both remove the stale lock and both believe they own the item item pm-zwib
  • Create/copy ID allocation TOCTOU: duplicate generated id silently overwrites the other item's file; idExists misses extension type folders item pm-khdq
  • GH-664: published daily release fails Bun node:sqlite verification before GitHub Release item pm-cedo0g

Security

  • Adopt TruffleHog 3.96.0 security action update item pm-ion0bp
  • Semgrep 874840488: High spawn shell true in scripts/release/utils.mjs\#L38 item pm-a7m7
  • Semgrep 874962820: High spawn shell true in plugins/pm-codex/scripts/pm-mcp-server.mjs\#L86 item pm-1uul
  • Semgrep 874962821: High spawn shell true in plugins/pm-claude/scripts/pm-mcp-server.mjs\#L82 item pm-f7ik
  • Dependabot alert: brace-expansion unbounded expansion denial of service (GHSA-mh99-v99m-4gvg) item pm-5q81jq
  • Dependabot alert \#43: PostCSS previous source-map path traversal (GHSA-r28c-9q8g-f849) item pm-a24aqt
  • Release pipeline permits duplicate same-day production versions item pm-4s24d2

Other

  • PR \#684 post-merge deferred checks and review follow-up item pm-e3g0h6
  • Execute and expose the unknown-author acknowledgment flow: dispose the five stranded events and give the shipped SDK primitive a CLI and MCP surface item pm-zqpnte
  • Holistic pm CLI, SDK, and ecosystem optimization roadmap item pm-xe0c38