Skip to content

l10n(is): 33 recorded corrections were never applied — Register and File are both "Skrá" #3093

Description

@rubenvdlinde

Found while clearing the cognate debt on #2634. Separate from that work and outliving it, so recording it here.

The defect

scripts/l10n/locales/is.json documents an explicit owner decision: Register becomes gagnaskrá, precisely because skrá collides with File. Plus Slug → Stuttheiti and Refresh → Endurnýja. 33 corrections in total.

The bundle ships none of them. Verified on feature/l10n-fixes at a821ac0c7:

Register: Skrá
File:     Skrá        <- byte-identical
Slug:     Auðkenni    (recorded decision: Stuttheiti)
Refresh:  Uppfæra     (recorded decision: Endurnýja)

Gagnaskrá appears in no commit in the branch history. So an Icelandic user sees one word for two different concepts — Register and File — throughout the UI.

Why it is worth a ticket rather than a quick edit

The cognate pass on is wrote its new values using gagnaskrá, per the recorded decision. So the bundle now names the concept two ways until the remaining 33 land — consistent with the decision where it was touched, inconsistent where it was not. Finishing it means applying all 33 and re-reading the surrounding strings for agreement, which is a deliberate pass rather than a find-and-replace.

Worth noting about the class

sq had the same shape — ten rejected-cognate decisions recorded in its lexicon note while the bundle still shipped bare English. Those were applied during the cognate pass. A recorded decision that was never applied is invisible to every gate: parity checks that a value exists and is not the English source, never that it matches what the config says it should be.

That suggests a cheap check worth adding: assert that every correction recorded in scripts/l10n/locales/<loc>.json is actually present in l10n/<loc>.json. It would have caught both.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

triageAwaiting triage

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions