v0.2.5
MCP clients now receive real typed tool-input schemas with required-field lists, when-to-use behavior hints, and protocol-version negotiation, and a drive round can run its endpoint agents concurrently via --concurrency.
- Capability: A hardening-and-cleanup release from four audit campaigns (61 PRs, #441–#500). Release trust chain: the signed reviewer-verdict backstop is no longer bypassable — the verdict now binds the reviewed SHA in CI, the pubkey is pinned to main, the gate runs from main's tree (not the tag's own), two review-gate bypasses are closed, and
CW_NEVER_FORWARD_ENVkeeps CW's own secrets out of every spawned child, fail-closed. Robustness: 24 verified findings fixed — a run-scoped drive mutex, locked appends formessages.jsonland the attestation ledger, a torn-tail merge guard, vendor-process reaping on agent timeout, hardened child termination, quiet EPIPE exits. Perf: commit snapshots stop copying the whole run, trust-audit appends go O(1) through a tail cache, and a drive round runs its endpoint agents concurrently. Also: real MCP tool input schemas,isErrorresults, behavior hints and protocol-version negotiation; CLI and workbench UX fixes; a hard JS/TS-only policy with an enforcing gate (every shell script is now node); a repo slim-down (dead files deleted, doc drift fixed); npm now ships all four vendor plugin manifests (.gemini-plugin/,.opencode-plugin/added); and a trust-audit lost-write race at log creation is fixed (#497). - Implementation: The trust-chain work is in the release scripts and workflows (verdict-SHA binding, main-pinned pubkey) plus
buildChildEnv's fail-closed env backstop. The lock and append fixes concentrate inshell/fs-atomic.ts(bounded backoff acquire),shell/coordinator-io.ts,shell/telemetry-ledger-io.ts, andshell/trust-audit.ts(tail cache; the missing-log create is nowO_CREATwithoutO_TRUNC). MCP schema and hint work is inmcp-server.ts; the language gate isscripts/lang-policy-check.js. - Tests: conformance 106/106, unit 169/169, full smoke suite 236/236 (up from 204 — every fix landed with its own pinning smoke). CI green on Node 18+22 × x64+arm64 for every PR.
- Risk: Low to moderate — the changes are fail-closed guards, lock serialization, perf work behind unchanged surfaces, and additive UX/docs; one packaging change (npm ships two more vendor manifest dirs, additive). No schema or
--jsonshape changed. Zero new runtime dependencies.
Provenance & audit
- Reviewed commit:
4ed908af43dc - Independent reviewer verdict (committed):
.cw-release/review-4ed908af43dc3aba01304fd59cc11cf90facec12.verdict - Full diff:
v0.2.4...v0.2.5 - npm (provenance-attested):
cool-workflow@0.2.5
Released through the gated flow: deterministic gate → independent release-reviewer (verdict above) → provenance-attested npm publish.