Localization
Localization benchmark. The account page is one I18n-driven fixture rendered per locale (/localization/account/<code>, defects in config/locales/dojo.*.yml). The interaction fixtures and missions (/localization/<fixture>/<locale>) only reveal their defects when operated; each seeded locale has a correctly localized *_ok twin. Every page serves its ground-truth oracle out-of-band at <path>.json.
-
English (source)
The correct English source. Clean baseline — a correct report finds nothing.
-
German (seeded)
German with seeded defects: truncation, untranslated, placeholder leak, number/date/unit format, encoding, mistranslation, plural and dedup.
-
German ✓ (clean floor)
Correctly localized German with ZERO seeded defects — the false-positive floor.
-
Arabic (RTL, seeded)
Arabic rendered without proper RTL direction plus English labels left untranslated and a bidi-unsafe run.
-
Sign-up form — German (seeded)
Validation messages, the country dropdown, the password tooltip and strength meter and the success toast are left in English; a key leaks, formats are US and the tone switches from Sie to du.
-
Sign-up form — German ✓ (clean floor)
The same sign-up form correctly localized in every state. Anything reported is a false positive.
-
Shopping cart — Russian (seeded)
Counters pluralize the English way, JavaScript re-renders totals in en-US format, toasts, the promo error and the undo action are English.
-
Shopping cart — Russian ✓ (clean floor)
The same cart with CLDR plural rules and ru-RU number formatting in every state.
-
Dashboard — Arabic (seeded)
Hidden tabs, the FAQ accordion and the delete dialog carry English or Persian-script text; the notification count uses the singular, dates are en-US and punctuation is Latin.
-
Dashboard — Arabic ✓ (clean floor)
The same RTL dashboard correctly localized in every tab, panel and dialog.
-
Mission — reserve a table (German, seeded)
An English Sunday-first calendar, 12-hour time slots, a broken plural and an English confirm button; the review shows the date in US order, so 6 March reads as 3 June.
-
Mission — reserve a table (German ✓, false-positive floor)
The same reservation flow correctly localized for de-DE. Completable; anything reported is a false positive.
-
Mission — checkout with delivery (Russian, seeded)
The address step asks for a US 'ZIP code' and truncates the 6-digit Russian index; delivery options and estimate are partly English; the tip field rejects a decimal comma, which blocks paying as instructed.