fix(ui): clean up delete confirm popover listener (#76318)

Summary:
- The PR centralizes Control UI chat delete-confirm popover dismissal, adds listener-cleanup regression coverage and unit-UI test routing fixes, and records the fix in the changelog.
- Reproducibility: yes. Current-main source shows a high-confidence path: open the delete confirm, let `reques ... ncel, Delete, or same-button toggle; those paths remove the popover without removing the document listener.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(ui): clean up delete confirm popover listener
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): address review for automerge-openclaw-openclaw-7559…
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): reconcile automerge-openclaw-openclaw-75590 with ma…
- PR branch already contained follow-up commit before automerge: fix(ui): repair delete confirm listener cleanup checks

Validation:
- ClawSweeper review passed for head 62240d8153.
- Required merge gates passed before the squash merge.

Prepared head SHA: 62240d8153
Review: https://github.com/openclaw/openclaw/pull/76318#issuecomment-4364990281

Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: Ricardo-M-L <69202550+Ricardo-M-L@users.noreply.github.com>
This commit is contained in:
clawsweeper[bot]
2026-05-03 02:21:10 +00:00
committed by GitHub
parent f74983e442
commit cb31616d88
9 changed files with 276 additions and 15 deletions

View File

@@ -527,6 +527,50 @@ describe("scripts/test-projects changed-target routing", () => {
]);
});
it("routes unit ui test targets to the unit ui lane", () => {
expect(buildVitestRunPlans(["ui/src/ui/chat/grouped-render.test.ts"])).toEqual([
{
config: "test/vitest/vitest.unit-ui.config.ts",
forwardedArgs: [],
includePatterns: ["ui/src/ui/chat/grouped-render.test.ts"],
watchMode: false,
},
]);
expect(buildVitestRunPlans(["ui/src/ui/views/chat.test.ts"])).toEqual([
{
config: "test/vitest/vitest.unit-ui.config.ts",
forwardedArgs: [],
includePatterns: ["ui/src/ui/views/chat.test.ts"],
watchMode: false,
},
]);
expect(buildVitestRunPlans(["ui/src/ui/views/dreaming.test.ts"])).toEqual([
{
config: "test/vitest/vitest.unit-ui.config.ts",
forwardedArgs: [],
includePatterns: ["ui/src/ui/views/dreaming.test.ts"],
watchMode: false,
},
]);
});
it("routes changed unit ui tests to the unit ui lane", () => {
const plans = buildVitestRunPlans(["--changed", "origin/main"], process.cwd(), () => [
"ui/src/ui/chat/grouped-render.test.ts",
]);
expect(plans).toEqual([
{
config: "test/vitest/vitest.unit-ui.config.ts",
forwardedArgs: [],
includePatterns: ["ui/src/ui/chat/grouped-render.test.ts"],
watchMode: false,
},
]);
});
it("routes auto-reply route source files to route regression tests", () => {
expect(
resolveChangedTestTargetPlan([