fix(acp): propagate AcpRuntimeError detail through lifecycle boundary#78305
Closed
hexsprite wants to merge 78 commits intoopenclaw:mainfrom
Closed
fix(acp): propagate AcpRuntimeError detail through lifecycle boundary#78305hexsprite wants to merge 78 commits intoopenclaw:mainfrom
hexsprite wants to merge 78 commits intoopenclaw:mainfrom
Conversation
(cherry picked from commit a373468)
(cherry picked from commit 2e8761c)
(cherry picked from commit 712aa96)
(cherry picked from commit 0eb06ca)
(cherry picked from commit cf3ce08)
(cherry picked from commit a91c17c)
(cherry picked from commit b546aa9)
Normalize WhatsApp onboarding allowlist entries to digit-only WhatsApp IDs and reject invalid owner-phone inputs during prompt validation. (cherry picked from commit 68a500c)
* fix(telegram): reuse preview for long text finals * test(qa): cover long telegram finals * fix(qa): satisfy extension lint * fix(qa): keep telegram long final fixture to two chunks * test(telegram): cover three chunk finals * fix(telegram): force long final preview boundary (cherry picked from commit e03fe1e)
(cherry picked from commit b0f841e)
Bind the default loopback gateway listener only to `127.0.0.1` on Windows so libuv dual-stack `::1` behavior cannot wedge localhost HTTP requests. Also keeps non-Windows dual-loopback behavior covered, replaces the redundant Windows passthrough test with guard coverage, and adds the required changelog entry. Fixes openclaw#69674. Tests: - pnpm exec oxfmt --check --threads=1 CHANGELOG.md src/gateway/net.ts src/gateway/net.test.ts - pnpm test src/gateway/net.test.ts - pnpm check:changed - GitHub required checks: green Thanks @SARAMALI15792. Co-authored-by: saram ali <140950904+SARAMALI15792@users.noreply.github.com> Co-authored-by: Brad Groux <3053586+BradGroux@users.noreply.github.com> (cherry picked from commit 978bc53)
…isted] (openclaw#74161) Summary: - The PR updates agents skill prompt guidance to require exact `<location>` paths for single- and multi-skill selection, adds prompt assertions, and records the fix in the changelog. - Reproducibility: yes. Static source reproduction is enough: current main lacks the exact-`<location>` guard ... illsSection()`, while the PR diff adds it to both selection branches and asserts the resulting prompt text. Automerge notes: - PR branch already contained follow-up commit before automerge: fix: enforce exact skill paths for all skill matches Validation: - ClawSweeper review passed for head 743c984. - Required merge gates passed before the squash merge. Prepared head SHA: 743c984 Review: openclaw#74161 (comment) Co-authored-by: tianguicheng <tianguicheng@xiaomi.com> Co-authored-by: sallyom <somalley@redhat.com> (cherry picked from commit c739088)
Accept drive-absolute Windows sandbox Docker bind sources in config and runtime validation while keeping blocked-path and allowed-root comparisons case-insensitive for Windows drive paths. Also remove a stale WhatsApp setup import that blocked extension lint after the rebase. Co-authored-by: 6607changchun <84566142+6607changchun@users.noreply.github.com> Co-authored-by: Brad Groux <3053586+BradGroux@users.noreply.github.com> (cherry picked from commit d02fbc6)
(cherry picked from commit c37871e)
(cherry picked from commit a0ea07e)
(cherry picked from commit add9a49)
(cherry picked from commit b32d4c5)
Adds cap_drop and no-new-privileges hardening for the bundled gateway Docker Compose services.\n\nThanks @VintageAyu. (cherry picked from commit f9da484)
…penclaw#77280) Merged via squash. Prepared head SHA: f4188b4 Co-authored-by: openperf <80630709+openperf@users.noreply.github.com> Co-authored-by: openperf <80630709+openperf@users.noreply.github.com> Reviewed-by: @openperf (cherry picked from commit 31da1fe)
Contributor
|
Thanks for the PR. This branch buries the ACP error-detail fix in unrelated release/workflow churn, so it is not reviewable as a focused change. Please reopen as a narrow PR with only the intended fix. |
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ACPX failures previously surfaced as opaque
ACP_TURN_FAILEDwith generic"Internal error"inside OpenClaw, hiding the underlying JSON-RPC code/method from gateway logs and reply paths. Diagnosing required attaching CDP to the acpx subprocess.This change preserves
err.causeand theAcpRuntimeErrorcode/method through the ACP boundary, emits structured detail (not[object Object]) in gateway logs, and surfaces the original error chain to callers (telegram / acp-proxy / chat).Changes
src/acp/runtime/errors.ts— preserve cause chain onAcpRuntimeErrorsrc/acp/control-plane/manager.core.ts,src/agents/acp-spawn.ts,src/agents/agent-command.ts,src/agents/command/attempt-execution.ts— propagate detail through ACP boundarysrc/gateway/server-methods/agent.ts,src/gateway/ws-log.ts— structured logging instead ofutil.formatstringificationsrc/agents/command/attempt-execution.error-propagation.test.ts— regression testsrc/gateway/ws-log.test.ts— covers structured-detail formatterTest plan
npx vitest runon all importer tests of touched modules — 272 passing across 16 filesnpx tsgo --noEmitcleangateway.err.log