From fe000541b7b8e25f4900f575d0c65a29833cb2e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Padez?= Date: Sun, 23 Aug 2026 04:19:41 +0000 Subject: [PATCH] hold shared components at zero hardcoded strings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The area reached zero convertible strings, so it goes in ZEROED and the scanner's --check now fails if a future feature reintroduces one. Verified both ways: exit 1 naming the string and file when one is added, exit 0 when it is gone. Enabled per area rather than globally, as the doc says — officer-web and officerdev are still at 559 and 578, and would be red for weeks. --- scripts/i18n/scan-hardcoded.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scripts/i18n/scan-hardcoded.ts b/scripts/i18n/scan-hardcoded.ts index c7b1f060..b4139935 100755 --- a/scripts/i18n/scan-hardcoded.ts +++ b/scripts/i18n/scan-hardcoded.ts @@ -26,8 +26,12 @@ const AREAS = [ /** * Areas that have been converted and must stay converted. Add an area here the moment it reaches * zero — enabling every area on day one would just be red for weeks and get ignored. + * + * 'shared components' landed 2026-08-23 (localization phase 1). It holds three `new Error()` messages + * that must NEVER be translated; they are reported but excluded from the check, which is why the + * neverTranslate split below has to exist for this entry to be possible at all. */ -const ZEROED: string[] = []; +const ZEROED: string[] = ['shared components']; const SKIP = /node_modules|\.gen\.|[/\\]locales[/\\]|[/\\]vendor[/\\]|\.test\.|\.d\.ts$/;