From 9bd582dd582d3eaf36a8f34510527bdaa00ea348 Mon Sep 17 00:00:00 2001 From: Adam Masiarek Date: Mon, 17 Aug 2026 06:19:46 -0400 Subject: [PATCH] fix(i18n): stop promising BetterVoting emails the voting links The email-list option in the election wizard told admins: 'BetterVoting will create private voting links and send them by email once the election starts' BetterVoting does not send them. Nothing goes out automatically -- not on finalize, not on opening. finalizeElectionController changes state, defaults max_rankings and deletes draft ballots; it contains no email call. There is no cron, node-schedule or interval anywhere in packages/backend/src, so nothing could fire 'once the election starts' either. The only send paths are the admin-invoked sendInvites / sendEmail routes. An admin who believes the wizard finalizes, waits for the start time, and runs the entire voting window without a single voter being told. Nothing warns them: there is no error, and the Voters tab looks exactly as expected throughout. Changes the string to describe what actually happens, keeping the parallel shape of the neighbouring id_list_description ('Provide X. '): 'Provide voter emails. BetterVoting creates a private voting link for each voter, ready for you to send from the Voters tab' en.yaml only -- es, pl and pt-BR do not define this key and fall back to English, so no translation is left promising the old behaviour. The string is consumed in two places (the wizard step, and the security-option card via (wizard.email_list_description)) and reads correctly in both. This is option 1 from #1558, the smallest change that makes the product honest. That issue also raises two larger alternatives -- sending on finalize, or prompting to send as part of the finalize flow -- which are worth considering separately; this does not preclude either. Co-Authored-By: Claude Opus 5 --- packages/frontend/src/i18n/en.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/frontend/src/i18n/en.yaml b/packages/frontend/src/i18n/en.yaml index 06de872f0..673251bc9 100644 --- a/packages/frontend/src/i18n/en.yaml +++ b/packages/frontend/src/i18n/en.yaml @@ -927,7 +927,7 @@ wizard: email_list_title: BetterVoting-managed voter IDs email_list_title_with_tip: $t(wizard.email_list_title) !tip(email_list) - email_list_description: Provide voter emails. BetterVoting will create private voting links and send them by email once the election starts + email_list_description: Provide voter emails. BetterVoting creates a private voting link for each voter, ready for you to send from the Voters tab id_list_title: Admin-managed voter IDs id_list_title_with_tip: $t(wizard.id_list_title) !tip(id_list)