Refactor native approval route gates#87413
Conversation
|
Codex review: needs maintainer review before merge. Reviewed May 29, 2026, 1:12 AM ET / 05:12 UTC. Summary PR surface: Source -409, Docs +1, Generated 0. Total -408 across 8 files. Reproducibility: unclear. The review failed before ClawSweeper could establish a reproduction path. Review metrics: none identified. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Risk before merge
Maintainer options:
Next step before merge
Review detailsBest possible solution: Retry the Codex review after fixing the execution failure. Do we have a high-confidence way to reproduce the issue? Unclear. The review failed before ClawSweeper could establish a reproduction path. Is this the best way to solve the issue? Unclear. Retry the review first so ClawSweeper can evaluate the actual issue and fix direction. AGENTS.md: unclear because the file could not be read completely. Codex review notes: model gpt-5.5, reasoning high; reviewed against 98611e62728e. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source -409, Docs +1, Generated 0. Total -408 across 8 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
ClawSweeper PR egg ✨ Hatched: 🥚 common Frosted Test Hopper Hatch commandComment Hatchability rules:
Rarity: 🥚 common. What is this egg doing here?
|
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
|
Leaving in draft since it's touchy stuff and @kevinlin-openai is working on this |
|
Kevin picked this up #87770 |
Summary
Refactors the duplicated native approval route-gate logic for WhatsApp, Signal, and iMessage into a shared Plugin SDK helper, then wires each channel plugin through that helper.
createNativeApprovalChannelRouteGatestoopenclaw/plugin-sdk/approval-native-runtime.Verification
node scripts/run-vitest.mjs extensions/whatsapp/src/approval-native.test.ts extensions/signal/src/approval-native.test.ts extensions/imessage/src/approval-native.test.ts extensions/whatsapp/src/approval-handler.runtime.test.ts extensions/signal/src/approval-handler.runtime.test.ts extensions/imessage/src/approval-handler.runtime.test.tspnpm buildpnpm plugin-sdk:api:checkgit diff --check.agents/skills/autoreview/scripts/autoreview --mode localReal Behavior Proof
Behavior addressed: Native approval route-gate cleanup for WhatsApp, Signal, and iMessage without changing channel-specific approval policy defaults.
Real environment tested: Local macOS worktree on branch
codex/cleanup-native-approval-builder.Exact steps or command run after this patch: The six targeted approval Vitest files, full
pnpm build, Plugin SDK API baseline check, diff whitespace check, and local autoreview.Evidence after fix: Targeted approval tests passed with 6 files and 63 tests;
pnpm buildcompleted and reported Plugin SDK exports verified;pnpm plugin-sdk:api:checkreported the generated baseline hash OK; autoreview reported no accepted/actionable findings.Observed result after fix: Approval route handling remains covered across WhatsApp, Signal, and iMessage while the duplicated plugin-local gate code is removed.
What was not tested: No live channel delivery was exercised; this was validated with the existing focused unit/runtime tests and build/API gates.