Skip to content

The de auth.device in-flight register needs a ruling — it is #5972's reported fork, and one of its three values (Ablehne…) is ungrammatical #6611

Description

@claude

Found while implementing #5972. This is the fork that card's grading ruling authorised reporting rather than picking, written down so it has somewhere to be decided. #5972 is not addressed by this card and remains open on its own.

The fork

#5972's ruling: converge each pack to one rendering across the ten keys whose en value is Loading…. Nine of ten de members converge to Wird geladen… cleanly. The tenth, auth.device.loading, is Lade…, and converging it would make the product worse on the one screen it renders.

apps/console/src/pages/auth/DeviceAuthPage.tsx renders all three of that namespace's in-flight states, and de writes all three in the same first-person voice:

keydeenin the #5972 group?
auth.device.approvingGenehmige…Approving…no
auth.device.denyingAblehne…Denying…no
auth.device.loadingLade…Loading…yes

Only the third is in the group, so converging it alone leaves that screen reading Genehmige… / Ablehne… / Wird geladen… — a new same-screen inconsistency manufactured by the pass meant to remove one. It is therefore held out of the #5972 pin as a named exemption (LOADING_GROUP_FORKS in packages/i18n/src/__tests__/ellipsis-glyph-3878.test.ts), which goes red if anyone converges it without deleting the row.

The second thing measured, which makes this more than a taste question

Ablehne… is not a grammatical German form.ablehnen is a separable-prefix verb: the first-person singular is ich lehne ab, so the elided form would be Lehne ab…. Genehmige… and Lade… are well-formed (genehmigen, laden are inseparable); Ablehne… is not. So the namespace's register is coherent but was not written carefully, which weakens — without settling — the reading that the first person was a deliberate choice for a device-pairing screen.

The decision

  1. Keep the first person on this screen. Then Ablehne…Lehne ab… is a straight bug fix, Lade… stays, and the [finding] After #3878 merged the two ellipsis groups, Loading… is one 10-key group and de renders it four ways (ko two, ar two) — #3880's "two-key typo" no longer describes it #5972 exemption row stays with an updated reason.
  2. Move the screen to the passive, matching the de pack's dominant register for in-flight states (37 values whose en is a bare gerund render as Wird …). Then Genehmige…Wird genehmigt…, Ablehne…Wird abgelehnt…, Lade…Wird geladen…, and the [finding] After #3878 merged the two ellipsis groups, Loading… is one 10-key group and de renders it four ways (ko two, ar two) — #3880's "two-key typo" no longer describes it #5972 exemption row is deleted.

Both are copy-voice decisions over keys #5972 does not fence in, which is why neither was taken there. (2) is the tidier end state and the one the rest of the pack argues for; (1) is cheaper and is the only option that does not touch strings no card has asked about. Either way Ablehne… should not survive.

Scope note

Whichever way this goes, it is 1–3 values in packages/i18n/src/locales/de.ts plus, for (2), deleting one row from the #5972 pin. No key is added or removed and no en value moves.


Generated by Claude Code

Metadata

Metadata

Assignees

Labels

domain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seatpm:dispatched

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions