diff --git a/CHANGELOG.md b/CHANGELOG.md index 69c33dda..438a9286 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.174.1 + +Two graph-engine resume fixes, exposed by running agent-dev-container's real `pr-review-with-approval` workflow template on the engine (#1011). + +- **A resume released the pool from dead children.** A spawned child that never settled kept its budget reservation across a restart. An `inline` executor runs inside the process that spawned it, so the process death proves the child dead; `uncertainSpawnBudgets` now charges only runtimes that can re-attach (bridge, sandbox). Before the fix, a restart after a mid-flight crash could refuse the next metered node `budget-exhausted` and end the run `unreachable-terminal` — invisible to the all-pure replay test, whose nodes reserve nothing. +- **Abort reaches a parked run.** A run suspended under `waitForWakes` waited only for a wake, so a host could never shut it down. The wait now races the abort signal, and the run ends `no-winner: aborted`. +- **The ADC substrate spike ships as an executable proof** (`tests/graph/adc-workflow-spike.test.ts`): the real template lowered to an `EngineGraphSpec`, approve and timeout paths, the human park across a process restart, kill-anywhere replay at every journal boundary over metered HOST kinds, the conserved pool as `maxRunCostUsd`, and the engine settles projected onto the `actionResults` shape the ADC run detail reads. + ## 0.174.0 ### `keepGoing` and `score`: spend the whole shot budget, ship the best tree diff --git a/docs/api/primitive-catalog.md b/docs/api/primitive-catalog.md index fa2a66e5..26224756 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.174.0` and `@tangle-network/agent-eval@0.170.0` 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.174.1` and `@tangle-network/agent-eval@0.170.0` 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 93cb666e..ee1b7fb6 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.174.0.** +> **Version 0.174.1.** > [`docs/api/primitive-catalog.md`](./api/primitive-catalog.md) lists every export and import path. > `agent-eval` must satisfy `>=0.163.2 <0.171.0`. > `sandbox` must satisfy `>=0.31.0 <0.32.0`. diff --git a/package.json b/package.json index 577bf49a..f47ad8cd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@tangle-network/agent-runtime", - "version": "0.174.0", + "version": "0.174.1", "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 b80d1d62..9dbb232d 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:fb623d9857d9aa2e1655ec5b1b773f4ba1722af5d41381a6877a6707b8f8fefa", + "digest": "sha256:97354ab43c80f5cbb36da0638ec609f8eea1afa20d1ed8b741fc96602df1cc91", "evaluation": { "decision": { "contributingChecks": [ @@ -4882,7 +4882,7 @@ ], "metadata": { "fixture": "agent-improvement-proposal", - "runtimeVersion": "0.174.0" + "runtimeVersion": "0.174.1" }, "objectives": [ { @@ -4993,8 +4993,8 @@ "baselineContentHash": "sha256:5c21ee53e513fc604cb09754e21c392b24a424da0ef37dbf8f1ee4a8a0b08f09", "candidateContentHash": "sha256:60fcbb1c728194bd51d7d19cb732d1c3f1881dce7e0a6266b41c8b98cfd65693", "kind": "agent-eval-loop", - "recordDigest": "sha256:230b0be2647416eda41912e403fb94ba81bb2e2acb3026985b3e9a085f2c615d", - "runId": "agent-runtime-0.174.0-proposal-fixture", + "recordDigest": "sha256:60ab29dc9618cc1a8ae268cae19e86daabc1dec5811411d7a675c642632cb7f1", + "runId": "agent-runtime-0.174.1-proposal-fixture", "schema": "agent-candidate-experiment" } }, @@ -5021,5 +5021,5 @@ ], "kind": "agent-improvement-proposal", "proposedAt": "2026-07-10T01:00:00.000Z", - "runId": "agent-runtime-0.174.0-proposal-fixture" + "runId": "agent-runtime-0.174.1-proposal-fixture" } diff --git a/src/testing/fixtures/agent-profile-improvement-proposal.json b/src/testing/fixtures/agent-profile-improvement-proposal.json index c02c0e21..8fee46b7 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:d190ec44331b7a6223e18a5b6dd0bfb8281dc998365c09dde811b4c94acf6100", + "digest": "sha256:e2a74c7900f58cbe4a9ae2deff007a13f006a185ea7ab9e969e0f4240e57b556", "evaluation": { "decision": { "contributingChecks": [ @@ -1715,7 +1715,7 @@ ], "metadata": { "fixture": "agent-profile-improvement-proposal", - "runtimeVersion": "0.174.0" + "runtimeVersion": "0.174.1" }, "objectives": [ { @@ -1826,7 +1826,7 @@ "baselineContentHash": "sha256:21c495a37c418c10bde64fbaa188beddeed31f1f051ea60a6a6582a9ee0db704", "candidateContentHash": "sha256:103f77bc8481601eef1ad5fe6ba84a40dffabc3a44f421f8c8559121edab84e9", "kind": "agent-eval-loop", - "recordDigest": "sha256:d88298a446b40eea656d343f6f80169c04df2725c21bdceb22ce21b38c2958e2", + "recordDigest": "sha256:519eb9e02c92d6fd5362ad8e0a562dd6b8f6b358e3721de900b1e35b134bc640", "runId": "profile-improvement-1", "schema": "agent-profile-improvement-experiment" }