fix(webchat): unblock backend exec approvals#77672
Conversation
|
Codex review: found issues before merge. Reviewed July 3, 2026, 5:06 PM ET / 21:06 UTC. Summary PR surface: Source +228, Tests +137, Docs +6. Total +371 across 17 files. Reproducibility: yes. at source level. Current main leaves non-local Review metrics: 1 noteworthy metric.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Mantis proof suggestion Risk before merge
Maintainer options:
Next step before merge
Security Review findings
Review detailsBest possible solution: Land a rebased, narrower patch that keeps backend WebChat Do we have a high-confidence way to reproduce the issue? Yes, at source level. Current main leaves non-local Is this the best way to solve the issue? No, not as submitted. Sending Full review comments:
Overall correctness: patch is incorrect AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 010b61746379. Label changesLabel justifications:
Evidence reviewedPR surface: Source +228, Tests +137, Docs +6. Total +371 across 17 files. View PR surface stats
Security concerns:
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
|
|
The useful part of this PR has landed via #101532 in commit The original branch could not be updated by maintainers and had accumulated several unrelated/stale changes. The landed replay keeps the needed behavior narrowly at the owning boundary: a busy Control UI sends The other pieces were deliberately not replayed: reconnect loading is already owned by #98524/current helpers, the session alias is already on |
Summary
/approve ...through the existing backend command path immediately while a run is blocked on approval.openclaw approvals list --gatewayandopenclaw sessions list --json.Verification
pnpm test:serial ui/src/ui/app-chat.test.ts ui/src/ui/app-gateway.node.test.ts ui/src/ui/chat/slash-commands.node.test.ts src/cli/exec-approvals-cli.test.ts src/cli/program/register.status-health-sessions.test.ts src/cli/program/routes.test.tsOPENCLAW_TESTBOX=1 pnpm testbox:run --id tbx_01kqv4sxe6errn6fe682v70p51 -- "pnpm check:changed"node dist/index.js sessions list --json --limit 1Security note
exec.approval.resolvedirectly./approve ...is still sent to backendchat.send, preserving the existing command authorization and gateway scope checks.