From b158543744fb1436b8a9a41d7baa8d7516349e44 Mon Sep 17 00:00:00 2001 From: SteveBot <1153461+unbraind@users.noreply.github.com> Date: Wed, 29 Jul 2026 06:44:35 +0200 Subject: [PATCH 1/2] Adopt pm-cli 2026.7.29 - Bump @unbrained/pm-cli devDependency to 2026.7.29 - Set peerDependency to >=2026.7.29 - Audit for removed 'list --all' flag: no hits found - Audit for fixed upstream workarounds (GH-651/672/676/785/792/794): none applicable - All quality gates pass: 63 tests, coverage thresholds met --- .agents/pm/chores/pm-linear-vp1l.toon | 16 ++++++++++++++++ .agents/pm/history/pm-linear-vp1l.jsonl | 4 ++++ CHANGELOG.md | 10 ++++++++++ package-lock.json | 10 +++++----- package.json | 4 ++-- 5 files changed, 37 insertions(+), 7 deletions(-) create mode 100644 .agents/pm/chores/pm-linear-vp1l.toon create mode 100644 .agents/pm/history/pm-linear-vp1l.jsonl diff --git a/.agents/pm/chores/pm-linear-vp1l.toon b/.agents/pm/chores/pm-linear-vp1l.toon new file mode 100644 index 00000000..483e8087 --- /dev/null +++ b/.agents/pm/chores/pm-linear-vp1l.toon @@ -0,0 +1,16 @@ +id: pm-linear-vp1l +title: Adopt pm-cli 2026.7.29 +description: "Bump pm-cli dependency to 2026.7.29, update peerDependency, audit for removed --all flag, audit for fixed upstream workarounds (GH-651, GH-672, GH-676, GH-785/792, GH-794), pass all quality gates." +type: Chore +status: closed +priority: 2 +tags: [] +created_at: "2026-07-29T04:43:33.761Z" +updated_at: "2026-07-29T04:44:29.861Z" +closed_at: "2026-07-29T04:44:29.850Z" +completed_at: "2026-07-29T04:44:29.850Z" +author: pi-agent +comments[1]{created_at,author,text}: + "2026-07-29T04:43:54.917Z",pi-agent,"Bumped @unbrained/pm-cli devDependency to 2026.7.29, set peerDependency to >=2026.7.29. Audited for 'list --all' and 'list -a': no hits found. Upstream workaround audit: GH-651/672/785/792/794 - no hits. GH-676 (list --tag CSV) - two hits in index.ts comment and README.md showing pm list --tag with a single tag value (not CSV), just documentation of the cycle tag feature. No workarounds to remove." +close_reason: "Bumped @unbrained/pm-cli to 2026.7.29 (devDep + peerDep >=2026.7.29). No 'list --all' hits found. No upstream workarounds to remove. All quality gates pass: 63 tests, coverage lines 70.53% (threshold 70), branches 80.42% (threshold 80), functions 80.43% (threshold 80). Changelog check and audit:prod clean." +body: "" diff --git a/.agents/pm/history/pm-linear-vp1l.jsonl b/.agents/pm/history/pm-linear-vp1l.jsonl new file mode 100644 index 00000000..edbcada2 --- /dev/null +++ b/.agents/pm/history/pm-linear-vp1l.jsonl @@ -0,0 +1,4 @@ +{"ts":"2026-07-29T04:43:33.761Z","author":"pi-agent","author_source":"asserted","agent_harness":"pi","agent_provenance":{"model":null},"op":"create","patch":[{"op":"add","path":"/metadata/id","value":"pm-linear-vp1l"},{"op":"add","path":"/metadata/title","value":"Adopt pm-cli 2026.7.29"},{"op":"add","path":"/metadata/description","value":"Bump pm-cli dependency to 2026.7.29, update peerDependency, audit for removed --all flag, audit for fixed upstream workarounds (GH-651, GH-672, GH-676, GH-785/792, GH-794), pass all quality gates."},{"op":"add","path":"/metadata/type","value":"Chore"},{"op":"add","path":"/metadata/status","value":"open"},{"op":"add","path":"/metadata/priority","value":2},{"op":"add","path":"/metadata/tags","value":[]},{"op":"add","path":"/metadata/created_at","value":"2026-07-29T04:43:33.761Z"},{"op":"add","path":"/metadata/updated_at","value":"2026-07-29T04:43:33.761Z"},{"op":"add","path":"/metadata/author","value":"pi-agent"}],"before_hash":"3cc22dff72be7b14824654a7a64ea62b04799939b2fee54c1b5f52ca60bf6df0","after_hash":"a1c3257c7fdbc58b666dee27ff7c83b95ca971f704f023e7f1bc80896a0bdc01","message":""} +{"ts":"2026-07-29T04:43:36.104Z","author":"pi-agent","author_source":"asserted","agent_harness":"pi","agent_provenance":{"model":null},"op":"update","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-07-29T04:43:36.104Z"},{"op":"replace","path":"/metadata/status","value":"in_progress"}],"before_hash":"a1c3257c7fdbc58b666dee27ff7c83b95ca971f704f023e7f1bc80896a0bdc01","after_hash":"4ae4d74c693202acbab0da069b24a12b7160d9a0fcc80f2e6a74cae4983fff30"} +{"ts":"2026-07-29T04:43:54.920Z","author":"pi-agent","author_source":"asserted","agent_harness":"pi","agent_provenance":{"model":null},"op":"comment_add","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-07-29T04:43:54.920Z"},{"op":"add","path":"/metadata/comments","value":[{"created_at":"2026-07-29T04:43:54.917Z","author":"pi-agent","text":"Bumped @unbrained/pm-cli devDependency to 2026.7.29, set peerDependency to >=2026.7.29. Audited for 'list --all' and 'list -a': no hits found. Upstream workaround audit: GH-651/672/785/792/794 - no hits. GH-676 (list --tag CSV) - two hits in index.ts comment and README.md showing pm list --tag with a single tag value (not CSV), just documentation of the cycle tag feature. No workarounds to remove."}]}],"before_hash":"4ae4d74c693202acbab0da069b24a12b7160d9a0fcc80f2e6a74cae4983fff30","after_hash":"75c8743b05f8c5143a1ffdece5945d38f4c0a5874208262ecd640d97680bf477"} +{"ts":"2026-07-29T04:44:29.861Z","author":"pi-agent","author_source":"asserted","agent_harness":"pi","agent_provenance":{"model":null},"op":"close","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-07-29T04:44:29.861Z"},{"op":"replace","path":"/metadata/status","value":"closed"},{"op":"add","path":"/metadata/closed_at","value":"2026-07-29T04:44:29.850Z"},{"op":"add","path":"/metadata/completed_at","value":"2026-07-29T04:44:29.850Z"},{"op":"add","path":"/metadata/close_reason","value":"Bumped @unbrained/pm-cli to 2026.7.29 (devDep + peerDep >=2026.7.29). No 'list --all' hits found. No upstream workarounds to remove. All quality gates pass: 63 tests, coverage lines 70.53% (threshold 70), branches 80.42% (threshold 80), functions 80.43% (threshold 80). Changelog check and audit:prod clean."}],"before_hash":"75c8743b05f8c5143a1ffdece5945d38f4c0a5874208262ecd640d97680bf477","after_hash":"c09425726b501d725b31395b04603a54672e98591667547b7bdd2d74772d4f57"} diff --git a/CHANGELOG.md b/CHANGELOG.md index 43ecccc9..d366c07a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # Changelog +## Unreleased + +### Added + +- Enforce a real coverage gate by running tests against TypeScript sources ([pm-linear-v618](https://github.com/unbraind/pm-linear/blob/main/.agents/pm/features/pm-linear-v618.toon)) + +### Other + +- Adopt pm-cli 2026.7.29 ([pm-linear-vp1l](https://github.com/unbraind/pm-linear/blob/main/.agents/pm/chores/pm-linear-vp1l.toon)) + ## 2026.7.28 - 2026-07-28 ### Other diff --git a/package-lock.json b/package-lock.json index af445be0..e760ea7c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "license": "MIT", "devDependencies": { "@types/node": "^26.1.1", - "@unbrained/pm-cli": "^2026.7.28", + "@unbrained/pm-cli": "^2026.7.29", "pm-changelog": "^2026.7.25", "typescript": "^7.0.2" }, @@ -18,7 +18,7 @@ "node": ">=22.18.0" }, "peerDependencies": { - "@unbrained/pm-cli": ">=2026.7.28" + "@unbrained/pm-cli": ">=2026.7.29" } }, "node_modules/@apm-js-collab/code-transformer": { @@ -717,9 +717,9 @@ } }, "node_modules/@unbrained/pm-cli": { - "version": "2026.7.28", - "resolved": "https://registry.npmjs.org/@unbrained/pm-cli/-/pm-cli-2026.7.28.tgz", - "integrity": "sha512-tuzU4q0e5qKzfXPe6MsBxWeZM3COHCGAFegxsOArumYldbvAPZpbaLnWf82wogl/LcRa6RJ/awK7kWgpb2UpCw==", + "version": "2026.7.29", + "resolved": "https://registry.npmjs.org/@unbrained/pm-cli/-/pm-cli-2026.7.29.tgz", + "integrity": "sha512-ByTNEwyvxTqG3NyHMRapK+6hbbiAOoGSSr1OlXRavX4+i+N8DiEJm3KQV46iX3FX0La+FdSbNhIyW0+ubNxYng==", "dev": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index 1b74dc5f..34bfce7a 100644 --- a/package.json +++ b/package.json @@ -54,11 +54,11 @@ "ignore": [] }, "peerDependencies": { - "@unbrained/pm-cli": ">=2026.7.28" + "@unbrained/pm-cli": ">=2026.7.29" }, "devDependencies": { "@types/node": "^26.1.1", - "@unbrained/pm-cli": "^2026.7.28", + "@unbrained/pm-cli": "^2026.7.29", "pm-changelog": "^2026.7.25", "typescript": "^7.0.2" }, From cc1948808422a86ed6d392c522d4751510473b47 Mon Sep 17 00:00:00 2001 From: SteveBot <1153461+unbraind@users.noreply.github.com> Date: Wed, 29 Jul 2026 07:02:46 +0200 Subject: [PATCH 2/2] Raise the documented pm-cli floor to the version actually required The Requirements section still advertised pm-cli >=2026.7.5 while peerDependencies demands >=2026.7.29 after this adoption. That mismatch tells installers a version range is supported when a strict-peer install would fail on it. Found by Greptile on pm-jira#48 and checked across all 18 fleet READMEs: only pm-gantt-chart, pm-jira and pm-linear carried a stale requirement floor. The other pm-cli version references are feature-availability notes (atomic import needs >=2026.7.19, merge reconcile needs >=2026.7.22) which are historically accurate and were left as they are. --- .agents/pm/chores/pm-linear-vp1l.toon | 4 +++- .agents/pm/history/pm-linear-vp1l.jsonl | 1 + README.md | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.agents/pm/chores/pm-linear-vp1l.toon b/.agents/pm/chores/pm-linear-vp1l.toon index 483e8087..09263486 100644 --- a/.agents/pm/chores/pm-linear-vp1l.toon +++ b/.agents/pm/chores/pm-linear-vp1l.toon @@ -6,11 +6,13 @@ status: closed priority: 2 tags: [] created_at: "2026-07-29T04:43:33.761Z" -updated_at: "2026-07-29T04:44:29.861Z" +updated_at: "2026-07-29T05:02:45.370Z" closed_at: "2026-07-29T04:44:29.850Z" completed_at: "2026-07-29T04:44:29.850Z" author: pi-agent comments[1]{created_at,author,text}: "2026-07-29T04:43:54.917Z",pi-agent,"Bumped @unbrained/pm-cli devDependency to 2026.7.29, set peerDependency to >=2026.7.29. Audited for 'list --all' and 'list -a': no hits found. Upstream workaround audit: GH-651/672/785/792/794 - no hits. GH-676 (list --tag CSV) - two hits in index.ts comment and README.md showing pm list --tag with a single tag value (not CSV), just documentation of the cycle tag feature. No workarounds to remove." +notes[1]{created_at,author,text}: + "2026-07-29T05:02:45.370Z",claude-orchestrator,"Orchestrator follow-up from Greptile review on pm-jira#48, applied fleet-wide after checking all 18 READMEs. The Requirements section still advertised a pm-cli floor of 2026.7.5 while peerDependencies now demands >=2026.7.29, which misleads installers and invites strict-peer install failures for versions the docs present as supported. Updated the floor to >=2026.7.29. Only three packages carried a stale requirement floor (pm-gantt-chart, pm-jira, pm-linear); the other pm-cli version references across the fleet are feature-availability notes such as the 2026.7.19 atomic-import and 2026.7.22 merge-reconcile lines, which remain historically accurate and were deliberately left alone." close_reason: "Bumped @unbrained/pm-cli to 2026.7.29 (devDep + peerDep >=2026.7.29). No 'list --all' hits found. No upstream workarounds to remove. All quality gates pass: 63 tests, coverage lines 70.53% (threshold 70), branches 80.42% (threshold 80), functions 80.43% (threshold 80). Changelog check and audit:prod clean." body: "" diff --git a/.agents/pm/history/pm-linear-vp1l.jsonl b/.agents/pm/history/pm-linear-vp1l.jsonl index edbcada2..7a158c8e 100644 --- a/.agents/pm/history/pm-linear-vp1l.jsonl +++ b/.agents/pm/history/pm-linear-vp1l.jsonl @@ -2,3 +2,4 @@ {"ts":"2026-07-29T04:43:36.104Z","author":"pi-agent","author_source":"asserted","agent_harness":"pi","agent_provenance":{"model":null},"op":"update","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-07-29T04:43:36.104Z"},{"op":"replace","path":"/metadata/status","value":"in_progress"}],"before_hash":"a1c3257c7fdbc58b666dee27ff7c83b95ca971f704f023e7f1bc80896a0bdc01","after_hash":"4ae4d74c693202acbab0da069b24a12b7160d9a0fcc80f2e6a74cae4983fff30"} {"ts":"2026-07-29T04:43:54.920Z","author":"pi-agent","author_source":"asserted","agent_harness":"pi","agent_provenance":{"model":null},"op":"comment_add","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-07-29T04:43:54.920Z"},{"op":"add","path":"/metadata/comments","value":[{"created_at":"2026-07-29T04:43:54.917Z","author":"pi-agent","text":"Bumped @unbrained/pm-cli devDependency to 2026.7.29, set peerDependency to >=2026.7.29. Audited for 'list --all' and 'list -a': no hits found. Upstream workaround audit: GH-651/672/785/792/794 - no hits. GH-676 (list --tag CSV) - two hits in index.ts comment and README.md showing pm list --tag with a single tag value (not CSV), just documentation of the cycle tag feature. No workarounds to remove."}]}],"before_hash":"4ae4d74c693202acbab0da069b24a12b7160d9a0fcc80f2e6a74cae4983fff30","after_hash":"75c8743b05f8c5143a1ffdece5945d38f4c0a5874208262ecd640d97680bf477"} {"ts":"2026-07-29T04:44:29.861Z","author":"pi-agent","author_source":"asserted","agent_harness":"pi","agent_provenance":{"model":null},"op":"close","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-07-29T04:44:29.861Z"},{"op":"replace","path":"/metadata/status","value":"closed"},{"op":"add","path":"/metadata/closed_at","value":"2026-07-29T04:44:29.850Z"},{"op":"add","path":"/metadata/completed_at","value":"2026-07-29T04:44:29.850Z"},{"op":"add","path":"/metadata/close_reason","value":"Bumped @unbrained/pm-cli to 2026.7.29 (devDep + peerDep >=2026.7.29). No 'list --all' hits found. No upstream workarounds to remove. All quality gates pass: 63 tests, coverage lines 70.53% (threshold 70), branches 80.42% (threshold 80), functions 80.43% (threshold 80). Changelog check and audit:prod clean."}],"before_hash":"75c8743b05f8c5143a1ffdece5945d38f4c0a5874208262ecd640d97680bf477","after_hash":"c09425726b501d725b31395b04603a54672e98591667547b7bdd2d74772d4f57"} +{"ts":"2026-07-29T05:02:45.370Z","author":"claude-orchestrator","author_source":"asserted","agent_harness":"claude-code","agent_instance":"2772216e639359e1b6b22093","agent_provenance":{"model":null,"effort":{"value":"xhigh","source":"environment"}},"op":"note_add","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-07-29T05:02:45.370Z"},{"op":"add","path":"/metadata/notes","value":[{"created_at":"2026-07-29T05:02:45.370Z","author":"claude-orchestrator","text":"Orchestrator follow-up from Greptile review on pm-jira#48, applied fleet-wide after checking all 18 READMEs. The Requirements section still advertised a pm-cli floor of 2026.7.5 while peerDependencies now demands >=2026.7.29, which misleads installers and invites strict-peer install failures for versions the docs present as supported. Updated the floor to >=2026.7.29. Only three packages carried a stale requirement floor (pm-gantt-chart, pm-jira, pm-linear); the other pm-cli version references across the fleet are feature-availability notes such as the 2026.7.19 atomic-import and 2026.7.22 merge-reconcile lines, which remain historically accurate and were deliberately left alone."}]}],"before_hash":"c09425726b501d725b31395b04603a54672e98591667547b7bdd2d74772d4f57","after_hash":"089579e0f07aacedb027f083fb381d6ca55d37f1fe5a07a2409f0a42e5271ba5"} diff --git a/README.md b/README.md index d51ddb5d..8f9e5dc2 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Fetches issues from a Linear team and upserts them as pm items, keeping identifi ## Requirements -- pm-cli `>=2026.7.5` +- pm-cli `>=2026.7.29` - Node.js `>=22.18.0` - A Linear API key with read access to the relevant teams (only for **live** paths; every `--dry-run` and offline `validate` works without one)