fix(dispatch): suppress provider inventory on shared surfaces#75728
fix(dispatch): suppress provider inventory on shared surfaces#75728gazeatcode wants to merge 1 commit intoopenclaw:mainfrom
Conversation
|
Thanks for the context here. I swept through the related work, and this is now duplicate or superseded. Close as superseded. The linked provider-inventory leak was resolved by the merged canonical PR #75550 and current main now removes the hidden-output compact inventory bypass with regression coverage; this PR’s remaining direct-only verbose/full behavior is a separate delivery-policy choice rather than the merge vehicle for the already-closed bug. So I’m closing this here and keeping the remaining discussion on the canonical linked item. Review detailsBest possible solution: Keep #75550 as the canonical #75166 fix, and open a new maintainer-owned policy issue if shared-surface verbose/full diagnostics should be restricted further. Do we have a high-confidence way to reproduce the issue? Yes. For this PR’s stricter behavior, current main still has a source-level path where verbose/full tool output emits image/video provider inventory and Discord-style channel surfaces send tool summaries; the default hidden-output leak from #75166 is no longer reproduced because #75550 removed the compact bypass. Is this the best way to solve the issue? No. The best cleanup path is not to merge this branch, because #75550 already landed the canonical #75166 fix and this PR’s remaining direct-only verbose/full policy should be handled separately if maintainers want it. Security review: Security review cleared: The proposed diff narrows shared-surface delivery of provider inventory and does not add dependencies, workflows, secret handling, network calls, or execution surfaces. What I checked:
Likely related people:
Codex review notes: model gpt-5.5, reasoning high; reviewed against ae87f7800b2a. |
Summary
Change Type (select all)
Scope (select all touched areas)
Linked Issue/PR
Root Cause (if applicable)
Regression Test Plan (if applicable)
src/agents/tool-output-shapes.test.ts,src/auto-reply/reply/dispatch-from-config.test.ts,src/agents/pi-embedded-subscribe.handlers.tools.media.test.tsUser-visible / Behavior Changes
Shared chat surfaces no longer receive image/video provider inventory text. Direct chats keep that diagnostic output visible.
Diagram (if applicable)
Security Impact (required)
No)No)No)No)No)Yes, explain risk + mitigation: N/ARepro + Verification
Environment
pnpmSteps
image_generateorvideo_generatelist result withdetails.providers.Expected
Actual
Evidence
Commands run locally:
pnpm test src/agents/tool-output-shapes.test.ts src/auto-reply/reply/dispatch-from-config.test.ts --runpnpm test src/agents/pi-embedded-subscribe.handlers.tools.media.test.ts --runpnpm changed:lanes --base refs/tmp/openclaw-main-current --jsonpnpm check:changed --base refs/tmp/openclaw-main-currentpnpm exec oxfmt --check --threads=1 CHANGELOG.md docs/tools/thinking.md src/agents/pi-embedded-subscribe.ts src/agents/runtime-plan/types.ts src/agents/tool-output-shapes.ts src/agents/tool-output-shapes.test.ts src/auto-reply/reply-payload.ts src/auto-reply/reply/dispatch-from-config.ts src/auto-reply/reply/dispatch-from-config.test.tsgit diff --check refs/tmp/openclaw-main-current...Human Verification (required)
What you personally verified (not just CI), and how:
details.providersare not tagged; image/video media results without provider inventory are not tagged; group/channel suppression stripstextandspokenTextwhile preserving media.Review Conversations
Compatibility / Migration
Yes)No)No)Risks and Mitigations