mirror of
https://gitea.toothfairyai.com/ToothFairyAI/tf_code.git
synced 2026-03-29 21:33:54 +00:00
14 KiB
14 KiB
workspace i18n audit - da
Danish translation audit for workspace routes with emphasis on AI-provider, billing, and workspace-management accuracy.
coverage
- Route scope:
packages/console/app/src/routes/workspace/** - Locale file:
packages/console/app/src/i18n/da.ts - Source reference:
packages/console/app/src/i18n/en.ts - Unique locale keys used in scope: 181
- Flagged keys: 33 (critical: 8, major: 18, minor: 7)
glossary decisions (da)
Zen: keep exactlyZenStripe: keep exactlyStripeOpenCode Black: keep exactlyOpenCode Blackopencode: keep exactlyopencodeAPI: keep exactlyAPI/models: keep exactly/modelsAPI key:API-nøglebilling:faktureringreloadin wallet context:genopfyldning(top-up), never page refresh wording
required key updates
| key | current da | replace with | severity | reason |
|---|---|---|---|---|
| workspace.newUser.step.login.before | Løbe | Kør | critical | Wrong verb for CLI instruction (opencode auth login). |
| workspace.settings.defaultName | Misligholdelse | Standard | critical | Wrong meaning for default-label UI text. |
| workspace.reload.title | Automatisk genindlæsning | Automatisk genopfyldning | critical | reload here is balance top-up, not page reload. |
| workspace.reload.disabled.before | Automatisk genindlæsning er | Automatisk genopfyldning er | critical | Same billing top-up semantic issue. |
| workspace.reload.enabled.before | Automatisk genindlæsning er | Automatisk genopfyldning er | critical | Same billing top-up semantic issue. |
| workspace.reload.enableAutoReload | Aktiver automatisk genindlæsning | Aktiver automatisk genopfyldning | critical | Same billing top-up semantic issue. |
| workspace.reload.reloadAmount | Genindlæs $ | Genopfyld $ | critical | Top-up amount label, not page reload action. |
| workspace.reload.failedAt | Genindlæsning mislykkedes kl | Genopfyldning mislykkedes kl | critical | Error refers to failed recharge event. |
| workspace.reload.disabled.after | Aktiver for automatisk at genindlæse, når balancen er lav. | Aktiver for automatisk at genopfylde, når saldoen er lav. | major | Must describe low-balance auto top-up behavior. |
| workspace.reload.enabled.middle | Vi genindlæser | Vi genopfylder | major | Must describe automatic recharge action. |
| workspace.reload.disabled.state | handicappet | deaktiveret | major | Wrong/off-tone toggle-state wording. |
| workspace.members.save | Spare | Gem | major | Current word means monetary savings, not save changes. |
| workspace.providers.save | Spare | Gem | major | Current word means monetary savings, not save changes. |
| workspace.reload.save | Spare | Gem | major | Current word means monetary savings, not save changes. |
| workspace.settings.save | Spare | Gem | major | Current word means monetary savings, not save changes. |
| workspace.keys.copyApiKey | Kopiér nøglen API | Kopiér API-nøgle | major | Incorrect technical phrase order. |
| workspace.newUser.copyApiKey | Kopiér nøglen API | Kopiér API-nøgle | major | Incorrect technical phrase order. |
| workspace.providers.placeholder | Indtast nøglen {{provider}} API ({{prefix}}...) | Indtast {{provider}} API-nøgle ({{prefix}}...) | major | Technical phrase is malformed; placeholders must be preserved exactly. |
| workspace.newUser.feature.tested.body | Vi har benchmarket og testet modeller specifikt til kodningsmidler for at sikre den bedste ydeevne. | Vi har benchmarket og testet modeller specifikt til kodningsagenter for at sikre den bedste ydeevne. | major | Wrong domain noun (kodningsmidler != coding agents). |
| workspace.payments.table.receipt | Modtagelse | Kvittering | major | Wrong payment term for receipt column. |
| workspace.payments.view | Udsigt | Vis | major | Wrong CTA meaning for “View” action. |
| workspace.black.waitlist.left | Venstre | Forladt | major | Wrong meaning (“left” direction vs status). |
| workspace.usage.table.output | Produktion | Output | major | Wrong AI metering term in token table. |
| workspace.usage.breakdown.output | Produktion | Output | major | Wrong AI metering term in token breakdown. |
| workspace.usage.table.cost | Koste | Omkostning | major | Wrong part of speech for metric label. |
| workspace.cost.title | Koste | Omkostninger | major | Wrong part of speech for section heading. |
| workspace.members.edit | Redigere | Rediger | minor | Use imperative CTA form. |
| workspace.providers.edit | Redigere | Rediger | minor | Use imperative CTA form. |
| workspace.reload.edit | Redigere | Rediger | minor | Use imperative CTA form. |
| workspace.settings.edit | Redigere | Rediger | minor | Use imperative CTA form. |
| workspace.billing.addAction | Tilføje | Tilføj | minor | Use imperative CTA form. |
| workspace.billing.manage | Styre | Administrer | minor | Better management CTA wording in product UI. |
| workspace.black.waitlist.enroll | Indskrive | Tilmeld | minor | Better enrollment CTA for subscription/waitlist flow. |
implementation batches
- Critical blockers: onboarding + default + reload semantics
workspace.newUser.step.login.beforeworkspace.settings.defaultNameworkspace.reload.titleworkspace.reload.disabled.beforeworkspace.reload.enabled.beforeworkspace.reload.enableAutoReloadworkspace.reload.reloadAmountworkspace.reload.failedAt
- Billing top-up and save-action correctness
- Remaining
workspace.reload.*in table workspace.members.save,workspace.providers.save,workspace.reload.save,workspace.settings.save
- Remaining
- API and provider terminology cleanup
workspace.keys.copyApiKey,workspace.newUser.copyApiKey,workspace.providers.placeholder
- Usage/payments/workspace label fixes
workspace.newUser.feature.tested.bodyworkspace.payments.table.receipt,workspace.payments.viewworkspace.black.waitlist.leftworkspace.usage.table.output,workspace.usage.breakdown.output,workspace.usage.table.cost,workspace.cost.title
- CTA polish (minor imperative consistency)
- all
*.edit,workspace.billing.addAction,workspace.billing.manage,workspace.black.waitlist.enroll
- all
acceptance checks for follow-up fix agent
- Preserve literals exactly:
Zen,Stripe,OpenCode Black,opencode,API,/models. - Preserve placeholders exactly (eg
{{provider}},{{prefix}},{{plan}},{{amount}}). - All
workspace.reload.*labels must mean balance top-up/recharge (genopfyld*), never page refresh (genindlæs*). - Save CTAs must reflect saving changes (
Gem/Gemmer...), not savings-money wording. - AI metering labels in usage tables remain technically correct (
Input,Output, cost nouns).