Skip to content

v1.8.0

Latest

Choose a tag to compare

@kaizen-bot kaizen-bot released this 27 Oct 21:58
· 1 commit to main since this release

v1.8.0 (2026-10-27)

Bug Fixes

  • api: Drop merged_from from REST-created entities (#439, 1a3b727)

  • api: Drop merged_from from REST-created entities (#436, 65d1a38)

  • ci: Bound trusted license inventory checks (#430, 5f76fd1)

  • ci: Preserve license scans and normalize wheel evidence paths (#430, 5f76fd1)

  • ci: Stop the CVE scan failing on fork PRs and bump pyjwt to 2.15.1 (#465, dc564c2)

  • cli: Drop caller-supplied merged_from in entities add (#467, 03c041e)

  • codex: Drop rm -f from the save-trajectory command so Codex's exec policy allows it (#384, b178f0c)

  • consistency: Detect retired env vars in .env, reject removed metrics in nested fields (#418, f55ce42)

  • consistency: Fail loudly on removed sbert_large metric and env var (#418, f55ce42)

  • consistency: Remove sbert_large metric and CodeRankEmbed support (#418, f55ce42)

  • consolidation: Keep an earlier merge's source tasks under the task key (#439, 1a3b727)

  • consolidation: Keep an earlier merge's source tasks under the task key (#436, 65d1a38)

  • consolidation: Keep an earlier merge's source tasks under the task key (#417, 2c281a9)

  • deps: Bump aiohttp to 3.14.5 for GHSA-2g87-pp6c-29x5 (#440, 360de58)

  • deps: Deliberately bump cpex-secrets-detection to 0.3.11, with redaction regression tests (#398, a11d92a)

  • deps: Pin cpex-secrets-detection to the 0.3.11 patch release (#398, a11d92a)

  • docker: Install and smoke-test core server runtime (#445, 38f658b)

  • experiments: Check consolidation parity on stored support (#439, 1a3b727)

  • experiments: CUGA adapter follow-ups from the second review (#441, 68ea190)

  • experiments: CUGA adapter review follow-ups (#441, 68ea190)

  • experiments: Exclude known tau-retail test splits by default (#448, ec84b52)

  • experiments: Initialize split tables on construction (#448, ec84b52)

  • experiments: Key import-lessons checkpoints on task_id so renamed files are not imported twice (#435, c2c4488)

  • experiments: Skip an AppWorld requirement that is not a string (#433, 7185b40)

  • guidelines: Dedupe subtask ranges on the real steps they cover (#423, 37b2176)

  • guidelines: Follow-ups from the #382 review (#423, 37b2176)

  • guidelines: Gate regular-path segmentation on trajectory length and drop repeated subtask ranges (#382, 2e32767)

  • guidelines: Generate a repeated subtask range once on the accurate path (#423, 37b2176)

  • guidelines: Keep a cross-task merge retrievable for each of its source tasks (#439, 1a3b727)

  • guidelines: Keep a cross-task merge retrievable for each of its source tasks (#436, 65d1a38)

  • guidelines: Keep a cross-task merge retrievable for each of its source tasks (#417, 2c281a9)

  • guidelines: Keep consolidation rounds from re-merging undeleted originals (#439, 1a3b727)

  • guidelines: Keep consolidation rounds from re-merging undeleted originals (#436, 65d1a38)

  • guidelines: Keep consolidation rounds from re-merging undeleted originals (#417, 2c281a9)

  • guidelines: Match absorbed originals by ID and protect merged_from entries, not the whole key (#439, 1a3b727)

  • guidelines: Match absorbed originals by ID and protect merged_from entries, not the whole key (#436, 65d1a38)

  • guidelines: Read source_tasks only as a list and keep a later task_description (#439, 1a3b727)

  • guidelines: Read source_tasks only as a list and keep a later task_description (#436, 65d1a38)

  • guidelines: Read source_tasks only as a list and keep a later task_description (#417, 2c281a9)

  • guidelines: Stop re-merging an original whose delete was vetoed in a later consolidate run (#439, 1a3b727)

  • guidelines: Stop re-merging an original whose delete was vetoed in a later consolidate run (#436, 65d1a38)

  • hooks: Bound secret redaction and preserve colliding content (#446, 3a2490d)

  • hooks: Enforce plugin_timeout for synchronous native hooks (#424, 7ab34a9)

  • hooks: Keep PGP armor within serialized values (#446, 3a2490d)

  • hooks: Link nested backend views through the capability, not the thread (#424, 7ab34a9)

  • hooks: Make backend revocation atomic and transitive (#424, 7ab34a9)

  • hooks: Only a real timeout makes a native plugin refuse new calls (#424, 7ab34a9)

  • hooks: Preserve conflict content and strengthen secret redaction (#446, 3a2490d)

  • hooks: Preserve conflict content types and filter custom instructions (#446, 3a2490d)

  • hooks: Preserve identity and redact quoted PGP armor (#446, 3a2490d)

  • hooks: Preserve serialized secret content boundaries (#446, 3a2490d)

  • hooks: Recognize serialized PGP boundaries after prose (#446, 3a2490d)

  • hooks: Redact complete private keys and missing credential formats (#446, 3a2490d)

  • hooks: Redact joined fact content before rendering (#428, 2dcffcd)

  • hooks: Reject unknown secrets plugin config keys instead of forwarding them (#398, a11d92a)

  • hooks: Reset native hook runner state in forked children (#424, 7ab34a9)

  • hooks: Run native hook calls concurrently on per-call threads (#424, 7ab34a9)

  • hooks: Send hook direct writes through the public metadata template (#424, 7ab34a9)

  • install: Recover Claude marketplace swaps and report plugin health (#451, 755764e)

  • install: Require Python 3.9, which the installed plugin scripts need (#392, efa6062)

  • installer: Harden platform recovery and uninstall lifecycle (#451, 755764e)

  • installer: Preserve shared assets on project uninstall (#451, 755764e)

  • installer: Restore marketplace after activation failure (#451, 755764e)

  • mcp: Bracket an IPv6 host in the dashboard's logged URL (#429, d4be6c3)

  • mcp: Follow-ups from the #383 review (#429, d4be6c3)

  • mcp: Migrate to MCP 2 with safe cancellation and tracing (#455, 6c0ae3c)

  • mcp: Treat a whitespace-only EVOLVE_DASHBOARD as unset (#429, d4be6c3)

  • memory: Bound temporary filenames for full native IDs (#447, c258144)

  • memory: Publish names near the filesystem limit (#447, c258144)

  • memory: Recover unpublish failures and index saved provenance (#454, 2a75491)

  • memory: Restore unpublished entities atomically (#454, 2a75491)

  • memory: Retain full names when mirroring native memories (#447, c258144)

  • packaging: Address split migration and release follow-ups (#445, 38f658b)

  • packaging: Restore runtime and release support after package split (#445, 38f658b)

  • plugins: Bound native memory filenames without merging IDs (#447, c258144)

  • plugins: Preserve save success and support Claw unpublish layout (#454, 2a75491)

  • plugins: Use datetime.timezone.utc in the audit log writer so it runs on 3.9 (#392, efa6062)

  • provenance: Normalize null evidence as absent (#454, 2a75491)

  • provenance: Preserve evidence across memory publication lifecycle (#454, 2a75491)

  • provenance: Preserve trajectory session identity across hosts (#454, 2a75491)

  • provenance: Record insufficient_evidence verdicts and reject invalid ones loudly (#386, c7a98c1)

  • provenance: Reject conflicting verdicts for one entity in a batch (#386, c7a98c1)

  • provenance: Skip undecodable saved trajectories (#454, 2a75491)

  • publish: Follow-ups from the #381 review (#421, 28fc0a5)

  • publish: Publish entities of any type, not just guidelines (#381, c83561a)

  • publish: Support owned memory updates and unpublishing (#454, 2a75491)

  • retrieval: Count core support by distinct source tasks (#439, 1a3b727)

  • retrieval: Keep stored support for partial provenance and tolerate malformed metadata (#439, 1a3b727)

  • tau: Reconcile default split evidence and warning counts (#448, ec84b52)

Documentation

  • Add tau2-bench blog to README and docs updates (#456, af357cd)

  • bob: Fix the Python minimum, list every global write, and make wrong-directory recovery safe (#385, 7920972)

  • bob: Rewrite the Bob starter example for the current flow and its video (#385, 7920972)

  • experiments: Note that a trace without a separator is kept whole (#433, 7185b40)

  • guidelines: Note that the fast path's length gate no longer counts the elision marker (#423, 37b2176)

  • guidelines: Say how each path counts steps for the segmentation gate (#423, 37b2176)

  • hooks: Correct the native plugin timeout notes (#424, 7ab34a9)

  • hooks: Describe fail-fast as an admission rule (#424, 7ab34a9)

  • hooks: Group fact extraction with hook contracts (#428, 2dcffcd)

  • install: Refresh stable download and Bob setup instructions (#451, 755764e)

Features

  • experiments: Add agent_view conversion mode to CUGA adapter (#441, 68ea190)

  • experiments: Add tau-retail adapter (#360, 882e8c2)

  • experiments: Add vakra adapter (#362, 2d548e5)

  • experiments: Import per-task lessons into a namespace (#435, c2c4488)

  • experiments: Map AppWorld failed requirements into failed_checks and detail (#433, 7185b40)

  • experiments: Skip AppWorld test splits by default (#415, 1bb866d)

  • guidelines: Cluster guidelines by guideline text as an alternative key (#439, 1a3b727)

  • guidelines: Cluster guidelines by guideline text as an alternative key (#436, 65d1a38)

  • guidelines: Cluster guidelines by guideline text as an alternative key (#417, 2c281a9)

  • mcp: Announce the stdio dashboard listener and allow turning it off (#383, 0abb442)

Performance Improvements

  • facts: Redact supplied content before building extraction prompts (#428, 2dcffcd)

  • facts: Run content hooks before rendering extraction prompts (#428, 2dcffcd)


Detailed Changes: v1.7.1...v1.8.0