diff --git a/CHANGELOG.md b/CHANGELOG.md index 71a79f0ebf5..46ef242a058 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -139,6 +139,8 @@ Docs: https://docs.openclaw.ai - ACP/oneshot: reconcile runtime session identity before closing completed oneshot ACP runs, so finished `sessions.json` entries do not stay stuck with `acp.identity.state="pending"`. +- ACPX: bundle `acpx@0.6.1` so unsupported generic model overrides fail + clearly instead of silently falling back to the target adapter default. - ACP/models: document that non-Codex ACP model overrides require adapter support for ACP `models` plus `session/set_model`, so unsupported harnesses fail clearly instead of silently falling back to their defaults. diff --git a/extensions/acpx/package.json b/extensions/acpx/package.json index a23f2a7ff75..c33100ad2a2 100644 --- a/extensions/acpx/package.json +++ b/extensions/acpx/package.json @@ -4,7 +4,7 @@ "description": "OpenClaw ACP runtime backend", "type": "module", "dependencies": { - "acpx": "0.6.0" + "acpx": "0.6.1" }, "devDependencies": { "@openclaw/plugin-sdk": "workspace:*" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9bf90ab0431..ec4c8085a74 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -215,8 +215,8 @@ importers: extensions/acpx: dependencies: acpx: - specifier: 0.6.0 - version: 0.6.0 + specifier: 0.6.1 + version: 0.6.1 devDependencies: '@openclaw/plugin-sdk': specifier: workspace:* @@ -4233,8 +4233,8 @@ packages: engines: {node: '>=0.4.0'} hasBin: true - acpx@0.6.0: - resolution: {integrity: sha512-ThJ2NLLc3kos3MzC8yrPrJeIfpRuwp2+/aMRkfKfJ0cATSbkV25NEi93d0Vx9f2NIpSEhr+mGQpbvphBrrSRPA==} + acpx@0.6.1: + resolution: {integrity: sha512-qxZPbm3SKq0UqQ0sOJ0M4iTLkF9AR7+I+JE/L/UeMUU1vW5N4nUVkZHytoHTBAu7nrej6THNzCPgrIZfv9T3AA==} engines: {node: '>=22.12.0'} hasBin: true @@ -10886,7 +10886,7 @@ snapshots: acorn@8.16.0: {} - acpx@0.6.0: + acpx@0.6.1: dependencies: '@agentclientprotocol/sdk': 0.20.0(zod@4.3.6) commander: 14.0.3 diff --git a/src/gateway/live-agent-probes.test.ts b/src/gateway/live-agent-probes.test.ts index 6bda311c3ff..ca7bcb8a928 100644 --- a/src/gateway/live-agent-probes.test.ts +++ b/src/gateway/live-agent-probes.test.ts @@ -40,7 +40,7 @@ describe("live-agent-probes", () => { attempt: 1, exactReply: spec.name, }), - ).toContain("openclaw-tools/cron"); + ).toContain("Preserve job.sessionTarget and job.sessionKey exactly as provided."); expect( buildLiveCronProbeMessage({ agent: "future-agent", diff --git a/src/gateway/live-agent-probes.ts b/src/gateway/live-agent-probes.ts index e4e45586e34..1316f76f3a5 100644 --- a/src/gateway/live-agent-probes.ts +++ b/src/gateway/live-agent-probes.ts @@ -75,6 +75,7 @@ export function buildLiveCronProbeMessage(params: { return ( "Use the OpenClaw MCP tool `openclaw-tools/cron` (server `openclaw-tools`, tool `cron`). " + `Call it with JSON arguments ${params.argsJson}. ` + + "Preserve the JSON exactly, including job.sessionTarget and job.sessionKey; do not omit, rename, or flatten those fields. " + "Do the actual tool call; I will verify externally with the OpenClaw cron CLI. " + `After the cron job is created, reply exactly: ${params.exactReply}` ); @@ -83,6 +84,7 @@ export function buildLiveCronProbeMessage(params: { return ( "Retry the OpenClaw MCP tool `openclaw-tools/cron` now. " + `Use these exact JSON arguments: ${params.argsJson}. ` + + "Preserve job.sessionTarget and job.sessionKey exactly as provided. " + `If the cron job is created, reply exactly: ${params.exactReply}. ` + "If the tool call is cancelled, the job is not created, or you cannot confirm creation, " + "reply briefly saying that and ask me to retry. No markdown. " + @@ -93,6 +95,7 @@ export function buildLiveCronProbeMessage(params: { "Your previous OpenClaw cron MCP tool call was cancelled before the job was created. " + "Retry the OpenClaw MCP tool `openclaw-tools/cron` now. " + `Use these exact JSON arguments: ${params.argsJson}. ` + + "Preserve job.sessionTarget and job.sessionKey exactly as provided. " + `If the cron job is created, reply exactly: ${params.exactReply}. ` + "If the tool call is cancelled, the job is not created, or you cannot confirm creation, " + "reply briefly saying that and ask me to retry. No markdown. " +