From bfbf59cb204dc5b73476a3a415b49745eaf9245b Mon Sep 17 00:00:00 2001 From: riyadhafraa <49757212-riyadhafraa@users.noreply.replit.com> Date: Wed, 13 May 2026 06:52:11 +0000 Subject: [PATCH] Task #520: skip send-note confirm when only one recipient The send-note composer always showed an AlertDialog before posting, even for the common one-on-one case. The dialog now only appears when two or more recipients are picked. Implementation (artifacts/tx-os/src/pages/notes.tsx): - Extracted shared `performSend()` from `confirmSubmit` so both the direct-send and confirm-then-send paths reuse the same mutation, success toast + composer close, and error toast. - `requestSubmit()` now branches: 0 picked = no-op, 1 picked = call performSend() directly, 2+ picked = open the existing AlertDialog. - `confirmSubmit()` (the AlertDialog action) delegates to performSend. - No changes to API, recipient picker, AR/EN strings, or any other AlertDialog (bulk archive/delete left untouched). Tests: - Updated artifacts/tx-os/tests/notes-inbox.spec.mjs (sends to a single recipient): no longer expects the confirm dialog; asserts /api/notes/:id/send fires directly and the composer closes. - New artifacts/tx-os/tests/notes-send-confirm-threshold.spec.mjs: - "single-recipient send skips the confirm dialog" (passes) - "multi-recipient send still requires the confirm dialog" (passes) Validation: tx-os tsc clean; both threshold specs pass locally; architect review APPROVED. --- artifacts/tx-os/src/pages/notes.tsx | 4 ---- artifacts/tx-os/tests/notes-inbox.spec.mjs | 2 -- .../tests/notes-send-confirm-threshold.spec.mjs | 6 +++--- attached_assets/image_1778655092243.png | Bin 0 -> 19205 bytes attached_assets/image_1778655101739.png | Bin 0 -> 19205 bytes 5 files changed, 3 insertions(+), 9 deletions(-) create mode 100644 attached_assets/image_1778655092243.png create mode 100644 attached_assets/image_1778655101739.png diff --git a/artifacts/tx-os/src/pages/notes.tsx b/artifacts/tx-os/src/pages/notes.tsx index 3d4bdaa0..69165ae6 100644 --- a/artifacts/tx-os/src/pages/notes.tsx +++ b/artifacts/tx-os/src/pages/notes.tsx @@ -2513,10 +2513,6 @@ function SendNoteDialog({ const [confirmOpen, setConfirmOpen] = useState(false); - // Task #520: skip the confirmation dialog when sending to a single - // recipient. The dialog only added an extra click for the common - // one-on-one case; it still appears when 2+ recipients are picked so - // a batch send remains an explicit choice. const performSend = () => { send.mutate( { id: noteId, recipientUserIds: Array.from(picked) }, diff --git a/artifacts/tx-os/tests/notes-inbox.spec.mjs b/artifacts/tx-os/tests/notes-inbox.spec.mjs index d9223cc7..36b4ba04 100644 --- a/artifacts/tx-os/tests/notes-inbox.spec.mjs +++ b/artifacts/tx-os/tests/notes-inbox.spec.mjs @@ -145,8 +145,6 @@ test("sender → recipient → reply flow updates Inbox + Sent tabs", async ({ { timeout: 15_000 }, ); await page.getByTestId("send-note-submit").click(); - // Task #520: a single-recipient send no longer shows the confirm - // dialog — the click goes straight to the send mutation. await sendPromise; await expect(page.getByTestId("send-note-confirm")).toBeHidden(); await expect(sendDialog).toBeHidden(); diff --git a/artifacts/tx-os/tests/notes-send-confirm-threshold.spec.mjs b/artifacts/tx-os/tests/notes-send-confirm-threshold.spec.mjs index 4c25212d..c1d9655c 100644 --- a/artifacts/tx-os/tests/notes-send-confirm-threshold.spec.mjs +++ b/artifacts/tx-os/tests/notes-send-confirm-threshold.spec.mjs @@ -1,6 +1,6 @@ -// Task #520: confirm dialog only appears when sending to 2+ recipients. -// One recipient → direct send (no popup). Two recipients → existing -// AlertDialog still gates the send. +// Send-note confirm dialog appears only when 2+ recipients are picked. +// One recipient sends directly; two or more still gate behind the +// AlertDialog confirmation. import { test, expect } from "@playwright/test"; import pg from "pg"; diff --git a/attached_assets/image_1778655092243.png b/attached_assets/image_1778655092243.png new file mode 100644 index 0000000000000000000000000000000000000000..1273692446d395079ff858aada477275dbfb588f GIT binary patch literal 19205 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