diff --git a/.agents/pm/features/pm-brief-ccwo.toon b/.agents/pm/features/pm-brief-ccwo.toon index d5c0b16..5f86292 100644 --- a/.agents/pm/features/pm-brief-ccwo.toon +++ b/.agents/pm/features/pm-brief-ccwo.toon @@ -2,12 +2,17 @@ id: pm-brief-ccwo title: Adopt the pm SDK 2026.10.13 read_output contract on every pm-brief read command description: "pm-cli 2026.10.13 ships pm-extension-read-output-controls: a read-only extension command can declare read_output on its CommandDefinition and the host then applies the universal projection, amount, token-budget and cursor-continuation controls to it. Declare read_output on all nine pm-brief read commands (pm-brief has no writer commands), honour the host controls by returning structured payloads when host read-output options are requested, and cover the contract with real temp trackers through the installed host." type: Feature -status: in_progress +status: closed priority: 2 tags: [] created_at: "2026-10-13T12:07:53.603Z" -updated_at: "2026-10-13T19:51:06.162Z" +updated_at: "2026-10-13T22:21:00.755Z" +closed_at: "2026-10-13T22:21:00.743Z" +completed_at: "2026-10-13T22:21:00.743Z" author: pi-agent +resolution: Implemented and merged in #148 (a0b44b5). +expected_result: The change described by this item is on main. +actual_result: "Merged in #148 as a0b44b5; checks successful at head 46478e7: CodeQL, audit-windows, codeql, semgrep-cloud-platform/scan, test (22), test (26)." comments[12]{created_at,author,text}: "2026-10-13T12:08:03.273Z",pi-agent,"Adoption design: (1) bump the dev pin, peer floor and manifest pm_min_version to 2026.10.13 so the repo builds and tests against the SDK that actually carries the contract; (2) declare read_output per command - row collections for the two list-shaped reads (brief next: next; brief stale: stale) and singleton row_keys for the document/summary reads (brief, brief prompt, brief momentum, brief since, brief diverge, brief duplicates, brief governance); (3) handlers return the structured payload instead of the pre-rendered document when host read-output controls are requested, so the host output engine owns projection/budget/continuation and the registered renderer stays on the pre-rendered document path." "2026-10-13T13:07:08.545Z",codex-agent,"Continuation review: taking ownership of the uncommitted adoption draft, checking the installed SDK contract, adding packaged-host projection/budget/continuation and declaration-revert tests, and re-running npm and Bun release gates at unchanged thresholds." @@ -36,4 +41,5 @@ tests[4]{command,scope,provenance{author,created_at,source_kind,source_ref}}: "env HOME=$(mktemp -d) GIT_CONFIG_GLOBAL=/dev/null GIT_CONFIG_NOSYSTEM=1 npm run release:check",project,codex-agent,"2026-10-13T18:39:10.611Z",local_mutation,feat/read-output-contract docs[1]{path,scope}: README.md,project +close_reason: "Delivered by #148 \"Adopt read_output controls on brief readers\" (merged as a0b44b5). Checks successful at the PR head 46478e7: CodeQL, audit-windows, codeql, semgrep-cloud-platform/scan, test (22), test (26)." body: "" diff --git a/.agents/pm/history/pm-brief-ccwo.jsonl b/.agents/pm/history/pm-brief-ccwo.jsonl index 8e1b634..d8a3114 100644 --- a/.agents/pm/history/pm-brief-ccwo.jsonl +++ b/.agents/pm/history/pm-brief-ccwo.jsonl @@ -21,3 +21,4 @@ {"hash_algorithm":"sha256","ts":"2026-10-13T19:25:50.689Z","author":"codex-agent","author_source":"asserted","agent_harness":"codex","agent_model":"gpt-6.1-sol","agent_model_source":"probe","agent_instance":"e4b58a6cc46ef1efc3d29d3a","agent_provenance":{"model":{"value":"gpt-6.1-sol","source":"probe"},"effort":{"value":"high","source":"probe"},"role":null,"topic":null},"op":"comment_add","patch":[{"op":"add","path":"/metadata/comments/10","value":{"created_at":"2026-10-13T19:25:50.689Z","author":"codex-agent","text":"SDK observation for the orchestrator: the installed 2026.10.13 generic string-budget compactor can shorten compound row identifiers longer than 240 characters, which the oversized synthetic duplicate-pair fixture exposed. Reader recovery tests now use ordinary stable IDs and permit disclosed detail compaction. Report this SDK identity-retention gap in the handoff; no SDK edits or new upstream issue are part of this adoption task."}},{"op":"replace","path":"/metadata/updated_at","value":"2026-10-13T19:25:50.689Z"}],"before_hash":"88f81f8a64ac78522af37b1d19b3d59cd2266bbb5484219d571c13c2f228d2da","after_hash":"c0a175bb0c9e46cd9b63c6b72d0ce7bf179d33d8b2424fb79c1da750ec602fa7","item_hash_version":3,"context":{"agent_provenance_outcomes":{"model":{"status":"resolved","resolver":"codex_session_file","rule_version":"v1"},"effort":{"status":"resolved","resolver":"codex_session_file","rule_version":"v1"},"version":{"status":"unavailable","reason":"harness_unavailable","resolver":"ai_agent_version","rule_version":"v1"}}},"event_class":"substantive","record_hash_version":1,"record_hash":"08c3de804879085edd5b4cf43749c7ccffaf38a0281b27c5db9dca3747eff559"} {"hash_algorithm":"sha256","ts":"2026-10-13T19:51:03.987Z","author":"codex-agent","author_source":"asserted","agent_harness":"codex","agent_model":"gpt-6.1-sol","agent_model_source":"probe","agent_instance":"e4b58a6cc46ef1efc3d29d3a","agent_provenance":{"model":{"value":"gpt-6.1-sol","source":"probe"},"effort":{"value":"high","source":"probe"},"role":null,"topic":null},"op":"comment_add","patch":[{"op":"add","path":"/metadata/comments/11","value":{"created_at":"2026-10-13T19:51:03.986Z","author":"codex-agent","text":"Final verification: clean-identity npm run release:check and bun run release:check each passed 390 tests, zero failures/skips, with coverage 100% lines, 98.27% branches and 100% functions across the configured source. All three packed-consumer scenarios pass under both gates. The strengthened linked node --test test/read-output-host.test.ts run passed 13 tests; the same packaged-host suite also passed on Node 22.23.1. Declaration-only reversion failed all nine readers. Ordinary documents, all file variants, row-identity recovery and writer refusal are verified. The SDK long-identifier compaction gap remains an orchestrator observation. Item stays in progress for orchestrator verification."}},{"op":"replace","path":"/metadata/updated_at","value":"2026-10-13T19:51:03.987Z"}],"before_hash":"c0a175bb0c9e46cd9b63c6b72d0ce7bf179d33d8b2424fb79c1da750ec602fa7","after_hash":"792e70331d2c0d2f1658e18febf8960f309be0243ac3a95214d8ce88cab9d6b9","item_hash_version":3,"context":{"agent_provenance_outcomes":{"model":{"status":"resolved","resolver":"codex_session_file","rule_version":"v1"},"effort":{"status":"resolved","resolver":"codex_session_file","rule_version":"v1"},"version":{"status":"unavailable","reason":"harness_unavailable","resolver":"ai_agent_version","rule_version":"v1"}}},"event_class":"substantive","record_hash_version":1,"record_hash":"8523bff43bd58b73d2d14afb768364c09207848b6556a180989b09969f7e8513"} {"hash_algorithm":"sha256","ts":"2026-10-13T19:51:06.162Z","author":"codex-agent","author_source":"asserted","agent_harness":"codex","agent_model":"gpt-6.1-sol","agent_model_source":"probe","agent_instance":"e4b58a6cc46ef1efc3d29d3a","agent_provenance":{"model":{"value":"gpt-6.1-sol","source":"probe"},"effort":{"value":"high","source":"probe"},"role":{"value":"implementer","source":"argv"},"topic":null},"op":"release","patch":[{"op":"remove","path":"/metadata/claim_principal"},{"op":"remove","path":"/metadata/assignee"},{"op":"replace","path":"/metadata/updated_at","value":"2026-10-13T19:51:06.162Z"}],"before_hash":"792e70331d2c0d2f1658e18febf8960f309be0243ac3a95214d8ce88cab9d6b9","after_hash":"b22650408988530d457b2f50fbb891b6ce88834e54ce88331d3ae37a8e2b9ac8","item_hash_version":3,"context":{"agent_provenance_outcomes":{"model":{"status":"resolved","resolver":"codex_session_file","rule_version":"v1"},"effort":{"status":"resolved","resolver":"codex_session_file","rule_version":"v1"},"version":{"status":"unavailable","reason":"harness_unavailable","resolver":"ai_agent_version","rule_version":"v1"}}},"event_class":"maintenance","record_hash_version":1,"record_hash":"2efd5f1fbecfa5f673f3d22fe1c41d522076b9fa289a9299429a387c403bba6d"} +{"hash_algorithm":"sha256","ts":"2026-10-13T22:21:00.755Z","author":"claude-hub","author_source":"asserted","agent_harness":"claude-code","agent_model":"claude-opus-5-5","agent_model_source":"probe","agent_instance":"12b63206ea84389d602b5075","agent_provenance":{"model":{"value":"claude-opus-5-5","source":"probe"},"effort":{"value":"xhigh","source":"environment"},"role":{"value":"implementer","source":"argv"},"topic":null,"version":{"value":"2.1.296","source":"probe"}},"op":"close","patch":[{"op":"replace","path":"/metadata/updated_at","value":"2026-10-13T22:21:00.755Z"},{"op":"replace","path":"/metadata/status","value":"closed"},{"op":"add","path":"/metadata/closed_at","value":"2026-10-13T22:21:00.743Z"},{"op":"add","path":"/metadata/completed_at","value":"2026-10-13T22:21:00.743Z"},{"op":"add","path":"/metadata/resolution","value":"Implemented and merged in #148 (a0b44b5)."},{"op":"add","path":"/metadata/expected_result","value":"The change described by this item is on main."},{"op":"add","path":"/metadata/actual_result","value":"Merged in #148 as a0b44b5; checks successful at head 46478e7: CodeQL, audit-windows, codeql, semgrep-cloud-platform/scan, test (22), test (26)."},{"op":"add","path":"/metadata/close_reason","value":"Delivered by #148 \"Adopt read_output controls on brief readers\" (merged as a0b44b5). Checks successful at the PR head 46478e7: CodeQL, audit-windows, codeql, semgrep-cloud-platform/scan, test (22), test (26)."}],"before_hash":"b22650408988530d457b2f50fbb891b6ce88834e54ce88331d3ae37a8e2b9ac8","after_hash":"68bc26198bb3c4ce228dae5071c52277d69635a90cd26abb07a8f5ebacfbdc67","item_hash_version":3,"context":{"agent_provenance_outcomes":{"model":{"status":"resolved","resolver":"claude_session_file","rule_version":"v1"},"version":{"status":"resolved","resolver":"claude_session_file","rule_version":"v1"}}},"event_class":"substantive","record_hash_version":1,"record_hash":"051a8f4ad555136a9245b2f43ddc5b21178df04e06b5bb3464fff3290c4e924a"} diff --git a/CHANGELOG.md b/CHANGELOG.md index 65a61de..2ee8a6b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## Unreleased + +### Added + +- Adopt the pm SDK 2026.10.13 read_output contract on every pm-brief read command ([pm-brief-ccwo](https://github.com/unbraind/pm-brief/blob/main/.agents/pm/features/pm-brief-ccwo.toon)) + ## 2026.10.12 - 2026-10-12 ### Other