2026.8.20

Fixed

  • GH-529: init --agent-guidance emits run-tests.mjs linked-test example that may not exist in the target repo item pm-surv
  • GH-527: semantic staleness warning recommends 'pm reindex' which is absent from the base install item pm-qljv
  • CodSpeed instrument cache can stall simulation setup until the hosted benchmark gate is canceled item pm-w16muu
  • Make context intents and low-token projection fields fully discoverable item pm-gy885b

Other

  • Refresh compatible Vitest 4.1.11 and jscpd 5.0.16 patches item pm-n5ysuk
  • Consistent flag spellings across commands with preserved aliases and enforced budgets item pm-fs8q9x
  • Refresh compatible Greptile 3.4.1 review tooling item pm-obmgi3

2026.8.19

Fixed

  • The writer-lease renewal test decides from wall-clock progress instead of the lease record, so correct behaviour is reported as a failure whenever the restore finishes first item pm-15qgul
  • Core command flag_invocations misclassify valueless booleans as required string values item pm-pcy92t
  • A budget-truncated read is resumable on one surface and terminal on five, and the only recovery the envelope names is to abandon the budget that truncated it item pm-8nev0o
  • 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
  • Plan positional-action help is undiscoverable: pm plan create --help is rejected as an unknown command item pm-2tan
  • MCP update keys and CLI update flags diverge in name (linkedFile/linkedTest vs --file/--test), so an agent that reads the MCP contract and writes a CLI command produces a guaranteed unknown-option refusal item pm-y0htkd
  • Context calibration recovery names a nonexistent package script item pm-xa3t0o

Other

  • Every executable command and positional action publishes a typed, validated argument contract item pm-ya7x55

2026.8.18

Added

  • Alias shim layer: config-aware hidden aliases with one-line migration hints (foundation for all consolidations) item pm-0z7n

Fixed

  • GH-1052: typed fail-closed whole-list SDK primitive item pm-y4aaol
  • Packed Bun SDK import fails on node:module stripTypeScriptTypes item pm-ikj8ve
  • GH-1051: package catalog rejects universal output-budget controls item pm-2firut
  • Bun event streaming falls back to authoritative history without node:sqlite item pm-b8hwfr
  • Surface replication gate scopes trigger activation to relevant diff content item pm-mrhwow
  • CodeQL: remove generated-code artifact path interpolation from exporter integration harness item pm-ozxkm2
  • Exporter artifact-channel contract: clean stdout, bounded receipts, and binary-safe streaming item pm-dilou2
  • GH-1048: Windows Node 24 numeric EDQUOT fixtures construct NaN on platforms that do not declare that errno item pm-y4kovm
  • Queued daily releases recognize an already-published same-day release before analyzer provenance item pm-dm2vfz

Security

  • Adopt Dependabot PR \#1046 pinned CodeQL 4.37.7 and TruffleHog 3.97.0 refresh item pm-pp6al9

Deprecated

  • ADR: noun-verb CLI grammar — accepted consolidation principles and alias-preserving deprecation policy item pm-pbyu

Other

  • Command-grammar conformance gate: the noun-verb table and shared verb vocabulary become machine-checked contracts a non-conforming command cannot pass item pm-wt43zj
  • Consolidate the 8 list-\* status variants into pm list --status (list-all/open/draft/in-progress/blocked/closed/canceled become hidden aliases) item pm-pfqi
  • Command-destination census: 14 of 76 canonical commands have no declared home in the target grammar, so the surface can be frozen with its shape still undecided item pm-yy8rmx
  • Half of the pm events payload is per-row resume cursors an agent never reads: 48 percent of stream bytes buy a capability consumed once per batch item pm-ez1dfg

2026.8.17

Added

  • History-derived defect recurrence gate: turn resolved incident patterns into targeted local and hosted CI protections item pm-1qkivy
  • 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 item pm-f6zjpq

Fixed

  • Linked tests retain high-volume Vitest output without aborting item pm-giks4s
  • 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 item pm-3crymx
  • The relationship lexicon cannot express recurrence, so a defect family fixed thirty times is thirty unrelated nodes to every graph algorithm item pm-ouyq3n
  • 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 item pm-95h7pg
  • 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 item pm-suhxny
  • GH-1033: read fields selectors can erase identity and requested empty collections item pm-4fwgaz
  • GH-1036/GH-1040: history integrity verdicts and repairs are incompatible across supported CLI versions item pm-0wfdim
  • GH-1032: extension manifests silently accept unenforced version-floor spellings item pm-qqoumq
  • GH-1038: docs linked-resource pair syntax corrupts URLs and splits labeled entries item pm-fpdk37
  • GH-1039: graph impact discards dependency direction and makes the direction selector inert item pm-jn1x30

Other

  • Decision: adopt reviewed defect-evidence field constraints into audited workspace history item pm-4smp5b
  • Defect-escape ratchet: every escaped defect must land a gate that would have caught it, tracked as evidence on the fixing item item pm-rtn5h6
  • 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 item pm-0pzgit
  • Disposition the test-only escape hatch published through the ./cli entrypoint: 86 internal functions are consumer-visible API with no support intent item pm-rf120g

2026.8.16

Fixed

  • Workspace history integrity refusals escape typed CLI recovery and become high Sentry faults item pm-2zkvxm
  • GH-1019/GH-1020/GH-1021: Node 24 nightly platform regressions after PR \#1016 item pm-zno2iu
  • GH-814/GH-821/GH-1034: SDK metadata reads must distinguish missing, invalid, and unreadable tracker roots from empty item pm-23xkss
  • GH-1028: history-author-acknowledge bulk mutation lacks dry-run and misreports empty selection item pm-mcxk8v
  • GH-1030: contracts --json --full is wholly omitted by the default output budget item pm-2qvq7a
  • Auto Release blocker closure ignores successful recovery dispatch and reruns the stale tag-push workflow item pm-db8onn

Other

  • PR \#1035 final review convergence: POSIX enumeration wording and plan-level replication ratchet item pm-k9l7e1
  • PR \#1035 exact-head review follow-up: sandbox-safe proof, completion uniqueness, replacement equivalence, and test isolation item pm-jv3y4q
  • 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 item pm-4ok4ex

2026.8.15

Fixed

  • Provide an audited repair and severity-migration contract for legacy invalid provenance item pm-76fkpp
  • Detect extension-host pm-cli version skew before a workspace reports healthy item pm-643e0k
  • Restore strict unknown-key parity for docs linked-artifact additions item pm-22rzjp
  • Make every failing health verdict self-indexing and attach gate severity to findings item pm-larv4r
  • GH-1004: history-repair remains writer-version-specific across 2026.8.7 and 2026.8.13 item pm-igdvfq
  • Assurance gates preserve zero-valued counts and report actionable source failures item pm-xmmafu
  • Ranking explanation is sized by the workspace rather than by the answer: explaining two returned rows emits one entry per active item and ignores the token budget entirely item pm-okgxwa
  • The unknown-option refusal asserts the option belongs on another command path without checking, so a spelling that exists nowhere sends the reader on an unbounded search item pm-in23qu
  • The gate verdict withholds its evidence as a declaration-order prefix, so the assertion that produced a blocking verdict can be the row the default read drops item pm-e5gl05
  • GH-1008: assurance measurements accept unknown source kinds and contracts hide the valid vocabulary item pm-atnfh4
  • GH-1007: assurance gate declarations omit trigger and escape the typed refusal contract item pm-88mo8m
  • A CI-wired quality gate is red on a clean checkout of main and green in hosted CI for the same commit, because its measured output carries a telemetry warning whose presence depends on whether the local flush reached the network item pm-t7wn04
  • GH-1011: Windows Node 24 nightly cache fixture loses the authoritative linked-test collection item pm-k47yqn

Other

  • 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

2026.8.14

Fixed

  • Unsupported assurance triggers bypass the typed evaluation-refusal boundary and surface as high-severity Sentry faults item pm-9yhl2v
  • A single transient per-test timeout fails the whole pipeline: 1,942 tests share one uniform 30s budget, no retry is configured, and the only diagnosis path is decoding a blob artifact item pm-rizqb6
  • The degradation ladder only sees top-level arrays, so the governance reads whose bulk is nested skip every intermediate rung and return nothing at all item pm-kyjdne
  • A budget-truncated read reports that rows are missing without a cursor, a recovery, or any sign that it overrode the caller's explicit request for all of them item pm-jt8aa2
  • The canonical spelling the output contract tells agents to adopt returns every row with every field stripped, and only the one surface that validates its selectors refuses it item pm-eugaqy
  • Every core and first-party package command declares an attributable agent intent item pm-7i97c3
  • Exact command-path summaries expose intent, flags, and format-aware output ceilings item pm-pmrae8
  • Default output ceilings bind representative read surfaces with depth-heavy negative controls item pm-s2h0mq
  • Two of the three ci-triggered assurance gates never ran on a pull request, so the append-only history assertion that carries the immutability guarantee was evaluated only after merge item pm-fhifkc
  • The ordering-cycle finding names the items in the cycle and not the contradiction that creates it, so its remediation hint cannot be executed without re-deriving the cause by hand item pm-xvt7ps
  • The edge-count floor is denominated over a population that includes the edges the graph itself calls redundant, so repairing 73 witnessed implied ordering rows and silently relaxing the guard are the same privileged act item pm-9gzr4r
  • The graph node floor counts materialized placeholders, so its negative control declares the fully repaired corpus a failure and the gate passes only while a dangling reference exists item pm-mfvsng
  • Two governance loosenings sit in the committed assurance registry with no entry in the append-only workspace audit stream, which freezes every future audited write and is invisible to both validate and health item pm-h06944

Security

  • GHSA-2v37-7h3g-55p8: pin patched nanoid in the Vite/PostCSS development graph item pm-5dwz1a

Other

  • Quota-aware branch protection: external AI review limits must never block merges item pm-e02lgu
  • Refresh compatible Greptile 3.4, TypeScript-ESLint 8.67, and jscpd 5.0.15 tooling item pm-87hmdw
  • Isolate the merge SDK bundle from focused-entrypoint chunk fanout item pm-m9gu9r
  • The Windows nightly leg cannot separate product defects from harness noise: 744 hardcoded POSIX path literals and 203 raw errno strings in the suite fail on Windows for reasons unrelated to pm behaviour item pm-j668gl
  • Graph wave: changelog-safe legacy edge hygiene batch — retire the no-active-blocker sentinel, duplicate spellings, terminal ordering cycles, and dangling terminal references item pm-hnc9w7
  • ADR: Graph structural ratchets measure recorded nodes and informative edges item pm-dwj33e

2026.8.13

Added

  • Assurance presets and self-derivation: a new workspace acquires a working quality contract in one command, seeded from its own record rather than from a generic template item pm-m7bb7r
  • Measurement provider API: extensions contribute measurement sources, so a coverage percentage, a benchmark millisecond, an eval score, an RL episode reward, or a registry dist-tag is bounded on the same terms as an item count item pm-uhv1m5

Fixed

  • The relationship graph's only automated reader is a nine-field census with no structural property, so the deepest enforceable statement about an 11,291-edge record is that every active item has two edges item pm-4vz6mz
  • The measurement ratchet has a single polarity: a filed number can only be enforced as a ceiling, so no quality floor this project wants to hold is expressible item pm-g4k74y
  • Telemetry flush reliability: configurable cold-connect timeout without foreground blocking item pm-pmwozm
  • The real all-package install is budgeted in one of its two instances, so the coverage gate flakes and then reports no coverage verdict at all item pm-h9gsix
  • Absence-tolerant readers accept only ENOENT, so a tracker root that is a regular file raises an unclassified fault instead of the typed refusal the guard already owns — and that fault blocks the daily release item pm-6xlyss
  • Mixed linked-resource remove and add in one command silently favors removal item pm-c6urop
  • Global flags before a subcommand corrupt guided-error command examples by treating the flag value as the command item pm-lph0y6

Other

  • ADR: Lifecycle-sensitive graph partitions are advisory; stable all-status outcomes carry blocking assurance item pm-dczodv

2026.8.12

Fixed

  • Read-output session receipts can emit an invalid next_state after the served-item set crosses its own 10,000-ID input ceiling item pm-b0v8fs
  • Linked pm test children inherit production Sentry environment and turn sandbox failures into release-blocking incidents item pm-9aaji6
  • SDK entrypoint import-cost gate false-fails on cold filesystem cache: single-shot fresh-process sampling exceeds the 30ms noise margin item pm-cg1sjb
  • Legacy invalid provenance findings block health without a safe disposition path item pm-5q8wa0
  • History drift scan hashes reordered linked-test projections item pm-eax4y8
  • Linked-test removal must be lossless and observable for commands containing comma or equals delimiters item pm-m0b7h8
  • Annotation transposition recovery: detect pm <collection\> add <id\> before the item id is consumed as text item pm-rncuf7
  • Health result contract parity: every checks\[\] row exposes a boolean ok beside its tri-state status item pm-h97qxd
  • The relationship ratchet bounds every edge kind that carries meaning and leaves the one kind that carries none unbounded, so the cheapest way to satisfy every graph guarantee is to add edges no algorithm can traverse item pm-q6n8sj
  • Assurance registry mutations and gate verdicts record author unknown while carrying the full detected provenance in the same entry, so the audit artifact fails the question it exists to answer item pm-33mjrw
  • Two assurance measurement sources answer from a projection that omits the fields they read, so a completeness gate reports zero missing evidence on a workspace with 874 items lacking it item pm-py7qv2
  • Assurance mutation refusals cross the CLI as unclassified Sentry faults (PM-CLI-2Y/2Z/30) item pm-v0a0un
  • GH-976: version history hashes so repeated tests_add streams verify across supported pm versions item pm-2htk4p
  • GH-975: export isAlreadyClaimedError through a supported SDK subpath item pm-hfqju5
  • GH-974: merge receipt preferred contradicts retained side under stable_value_order item pm-qckpnq
  • GH-971: health preflight collision diagnostics ignore declared command ownership item pm-zryb9d
  • GH-969: brief item reads can exceed standard output because omission receipts bill empty fields item pm-gok2km
  • GH-970: repeated row contracts consume half of agent read output without a suppression contract item pm-gjjurs
  • The output encoding named toon has no tabular array form, so every row collection pays three to five lines per row while the storage format beside it uses the encoding correctly item pm-5y05kq
  • pm activity answers what happened to one item in the last half hour when the agent asked what changed in the workspace: 20 rows cover 5 of the 272 items touched in 24 hours and none carries a title item pm-j1r8gl
  • pm stats default output is dominated by rows that carry no information: 7 of 17 type buckets are zero, the status split agents actually need is missing, and the row contract costs more than the data item pm-7nqo6b

Other

  • Evaluate and refresh @sentry/node 10.70 with packed-consumer proof item pm-fb0lkg
  • Refresh compatible tsx 4.23.12 and esbuild 0.28.2 patches item pm-67b84b

2026.8.11

Added

  • pm gate: named assertion bundles bound to lifecycle triggers, returning one structured verdict document instead of prose, so local and hosted enforcement run identical semantics item pm-wn6wot
  • Assurance verdicts are appended to the immutable record, so what was enforced when, and who relaxed a bound, is replayable and provable rather than reconstructed from CI logs item pm-91xeam
  • pm assert: a bound over a measurement carrying polarity, scope, lifetime, enforcement level, and a required negative control, so every guarantee states which direction it can fail in item pm-lyfu7b
  • pm measure: a named population over the workspace declared as data, with a composable source vocabulary and derived arithmetic so a bound can be denominated in the unit it actually means item pm-2lex4r
  • Refusal reachability: every error code declares the states it owns, and an entrypoint-level probe proves each state is still reachable as that typed code rather than as an untyped fault item pm-elmpav
  • Source-to-item traceability: derive which tracked work produced any given file or line, so an agent can ask why this code exists and get an evidence-backed answer item pm-f86lth
  • Automatic semantic session attribution: infer bounded topic and role from claimed work and harness context without per-call identity flags item pm-3zgh2c

Fixed

  • Unknown-option recovery names three of six commands that accept the flag, capped silently and in arbitrary order, so the hint excludes the right answer while reading as exhaustive item pm-yqe0mo
  • Subcommand-token error contract: one unknown-subcommand code with nearest-match recovery across every subcommand family item pm-185870
  • pm get cannot report linked files, tests, or docs in any projection, so the one command an agent uses to rebuild an item's context silently reports them as absent item pm-tld20c

Security