diff --git a/CHANGELOG.md b/CHANGELOG.md index 7bfc1afd..f942ba7b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,24 @@ ## Unreleased +## 0.120.0 + +### The runtime's own supervision journal is readable again + +`src/durable/spawn-journal.ts` writes each supervision event wrapped in an envelope — `{kind:'event', root, event}`. Through agent-eval 0.140.0 `parseSupervisorTree` only understood the flat dialect, so it read `kind` as the literal string `event`, matched no tree event kind, and reported **zero spawns for every journal this package produces**. agent-eval 0.140.1 adds `readJournalRow`, which unwraps that envelope and tags the dialect `runtime-envelope`. + +The fix therefore lives in agent-eval, but a consumer only receives it if this package's peer range admits it. The peer floor moves accordingly: + +| Peer | 0.119.0 as published | 0.120.0 | +|---|---|---| +| `@tangle-network/agent-eval` | `>=0.139.2 <0.140.0` | `>=0.140.1 <0.141.0` | + +`@tangle-network/agent-knowledge` moves `7.0.3` -> `7.0.4` in the same cohort because `scripts/verify-packed-cohort.mjs` asserts that knowledge's own agent-eval dependency EXACTLY equals the packed agent-eval version; `7.0.3` pins `0.139.2` and `7.0.4` pins `0.140.1`. + +**Why this needed its own version.** The cohort move landed on main in #697 without a version bump, so main declared `0.119.0` — a version already on the registry carrying the OLD `>=0.139.2 <0.140.0` range. The publish workflow skips a version the registry already has, so re-tagging cannot correct it and the fix could not reach any consumer until this bump. + +### Release checks no longer race the clock + - Three release checks no longer infer concurrency or process readiness from sub-second wall-clock sleeps; they wait for the event under test or allow their real container/process boundary to start. - Candidate cleanup timeout coverage now advances a fake clock and observes the abort signal, while the Git-heavy knowledge activation checks use a process-boundary timeout that survives parallel CI load. @@ -216,7 +234,6 @@ The supervisor's public contract closes six gaps found by running a real recursi - Candidate profile freeze/thaw preserves config values instead of unwrapping them to schema-invalid strings; certified intelligence bindings wrap through `defineAgentProfilePublicConfig`. - Implement eval 0.138's `TraceAnalysisStore` contract on the iterations store: real `hasTrace`/`hasSpans`, byte-ceiling span continuation (`omitted_span_ids`/`has_more`), and `total_matches` removed from search results. - Sandbox 0.15.2 remains typed against interface 0.36; profiles cross that boundary as data through one commented adapter pair (`profileAsSandboxProfile`), to be removed when sandbox releases against 0.40. ->>>>>>> origin/main ## 0.109.2 diff --git a/docs/api/primitive-catalog.md b/docs/api/primitive-catalog.md index c1595686..a360d70a 100644 --- a/docs/api/primitive-catalog.md +++ b/docs/api/primitive-catalog.md @@ -7,7 +7,7 @@ # Primitive catalog — the never-stale anti-reinvention inventory -> **GENERATED** from `@tangle-network/agent-runtime@0.119.0` and `@tangle-network/agent-eval@0.140.1` by `scripts/gen-primitive-catalog.mjs`. Do NOT hand-edit — run `pnpm run docs:api`. This is the mechanical companion to the JUDGMENT in `canonical-api.md` (§2 decision table + §1.5 AgentProfile law): that doc says WHICH primitive to reach for and what NOT to build; this catalog proves WHAT exists. Per-symbol signatures + `file:line` live in the per-module pages under `docs/api/`. +> **GENERATED** from `@tangle-network/agent-runtime@0.120.0` and `@tangle-network/agent-eval@0.140.1` by `scripts/gen-primitive-catalog.mjs`. Do NOT hand-edit — run `pnpm run docs:api`. This is the mechanical companion to the JUDGMENT in `canonical-api.md` (§2 decision table + §1.5 AgentProfile law): that doc says WHICH primitive to reach for and what NOT to build; this catalog proves WHAT exists. Per-symbol signatures + `file:line` live in the per-module pages under `docs/api/`. ## 1. agent-runtime — own public surface diff --git a/docs/canonical-api.md b/docs/canonical-api.md index 072f5637..ba715e8f 100644 --- a/docs/canonical-api.md +++ b/docs/canonical-api.md @@ -4,7 +4,7 @@ Generated signatures and the complete export list live in docs/api/. Run pnpm docs:freshness after editing this file. --> -> **Version 0.119.0.** +> **Version 0.120.0.** > [`docs/api/primitive-catalog.md`](./api/primitive-catalog.md) lists every export and import path. > `agent-eval` must satisfy `>=0.140.1 <0.141.0`. > `sandbox` must satisfy `>=0.15.0 <0.16.0`. diff --git a/package.json b/package.json index ded596ab..ab7409ff 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@tangle-network/agent-runtime", - "version": "0.119.0", + "version": "0.120.0", "description": "Shared task-lifecycle skeleton for agents: a recursive loop kernel for chat turns, one-shot tasks, and multi-attempt loops, with trace capture and eval-gated self-improvement. Domain behavior lives in adapters; scoring and ship-gates in @tangle-network/agent-eval.", "homepage": "https://github.com/tangle-network/agent-runtime#readme", "repository": { diff --git a/src/testing/fixtures/agent-improvement-proposal.json b/src/testing/fixtures/agent-improvement-proposal.json index 9ee39c5e..4b315d52 100644 --- a/src/testing/fixtures/agent-improvement-proposal.json +++ b/src/testing/fixtures/agent-improvement-proposal.json @@ -1,6 +1,6 @@ { "changedSurfaces": ["prompt"], - "digest": "sha256:431e42dbba76b3e3b6f413526426979b06d0fd429dabe52a641c74b77fb3f3ca", + "digest": "sha256:62437295fe316041315ea506f1f32b35fc26ea505e7b203a906e0fa0e07cf2b4", "evaluation": { "decision": { "contributingChecks": [ @@ -4810,7 +4810,7 @@ ], "metadata": { "fixture": "agent-improvement-proposal", - "runtimeVersion": "0.119.0" + "runtimeVersion": "0.120.0" }, "objectives": [ { @@ -4921,8 +4921,8 @@ "baselineContentHash": "sha256:5c21ee53e513fc604cb09754e21c392b24a424da0ef37dbf8f1ee4a8a0b08f09", "candidateContentHash": "sha256:60fcbb1c728194bd51d7d19cb732d1c3f1881dce7e0a6266b41c8b98cfd65693", "kind": "agent-eval-loop", - "recordDigest": "sha256:7a20047351c63a7fdbf7952328c57f25ac6ba3a4c7b3502da98bd9fb9285ecfe", - "runId": "agent-runtime-0.119.0-proposal-fixture", + "recordDigest": "sha256:a68132746408aa98829aa6bbab094031961d7c180e00f7f87bf15c562585d5ac", + "runId": "agent-runtime-0.120.0-proposal-fixture", "schema": "agent-candidate-experiment" } }, @@ -4949,5 +4949,5 @@ ], "kind": "agent-improvement-proposal", "proposedAt": "2026-07-10T01:00:00.000Z", - "runId": "agent-runtime-0.119.0-proposal-fixture" + "runId": "agent-runtime-0.120.0-proposal-fixture" } diff --git a/src/testing/fixtures/agent-profile-improvement-proposal.json b/src/testing/fixtures/agent-profile-improvement-proposal.json index 294a38f2..76da1464 100644 --- a/src/testing/fixtures/agent-profile-improvement-proposal.json +++ b/src/testing/fixtures/agent-profile-improvement-proposal.json @@ -1,6 +1,6 @@ { "changedSurfaces": ["prompt", "skills"], - "digest": "sha256:cb043d43c78daa77fcae07d55c08c764f141b6e984214fc6c4eb8d438fa7b9a5", + "digest": "sha256:07d8464e194b10487570d45bc9f91da367ca5e34e6a78e50dd6849a78a20e538", "evaluation": { "decision": { "contributingChecks": [ @@ -1715,7 +1715,7 @@ ], "metadata": { "fixture": "agent-profile-improvement-proposal", - "runtimeVersion": "0.119.0" + "runtimeVersion": "0.120.0" }, "objectives": [ { @@ -1826,7 +1826,7 @@ "baselineContentHash": "sha256:21c495a37c418c10bde64fbaa188beddeed31f1f051ea60a6a6582a9ee0db704", "candidateContentHash": "sha256:103f77bc8481601eef1ad5fe6ba84a40dffabc3a44f421f8c8559121edab84e9", "kind": "agent-eval-loop", - "recordDigest": "sha256:e164e8f32d14370f8ae942471b24cb4d00ae0351e0e216a6616dfb16d378e9c8", + "recordDigest": "sha256:0ec162db37e18ab5119a1dc8e02c8c7d65d0071484fd5bc2d177411d69c68014", "runId": "profile-improvement-1", "schema": "agent-profile-improvement-experiment" }