mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-09 04:50:59 +00:00
chore(i18n): replace remaining assistant-product references with neutral terms across six locales
Rewrite two strings that still leaked the forbidden assistant-product vocabulary across every locale bundle: - `account.timezoneHint` — drop "AI Coach context" / "AI-Coach-Kontext" in favour of "Coach context" / "Coach-Kontext". - `i18n.maintainershipBanner.notice` — recast the AI-authorship disclosure as "machine-translated" / "maschinell übersetzt" / "traduit automatiquement" / "traducido automáticamente" / "tradotta automaticamente" / "tłumaczona maszynowo" so the operational meaning is preserved without surfacing assistant-product naming. Document the two exempt-by-necessity vendor labels in `docs/audit/v1427-summary.md`: the provider-chooser dropdown options that render `Anthropic (Claude)` because the user is selecting the actual vendor product, and the GitHub source-URL on `/about` whose username segment is an irreducible technical identifier.
This commit is contained in:
1 parent
7dc51a2177
commit
7850976b99
7 files changed
+38
-12
No files matched your search
@@ -70,3 +70,29 @@ The two MMDB files add ~80 MB to the production image. The
|
||||
`tzdata`-bearing Alpine runner stage already sits at ~330 MB
|
||||
compressed; the v1.4.27 image lands well under the 90 MB image-size
|
||||
delta budget set out in the fix plan.
|
||||
|
||||
## Convention-compliance exemptions
|
||||
|
||||
The release-wide convention forbids the substrings `AI`, `Claude`,
|
||||
`agent`, `marathon`, `wave`, `phase`, `session`, `subagent`, and
|
||||
`Anthropic` in user-facing artifacts. Two exemptions remain by
|
||||
necessity and are recorded here so future audits can stop re-opening
|
||||
the same finding:
|
||||
|
||||
- **Vendor-name dropdown options.** The Coach provider chooser in
|
||||
`/settings/ai` renders the literal vendor names so the operator can
|
||||
recognise which third-party service is being configured. The keys
|
||||
`settings.ai.providerOptions.anthropic` and
|
||||
`settings.ai.activeProviderOptions.anthropic` therefore render
|
||||
`Anthropic (Claude)` across all six locale bundles. Rebranding
|
||||
these would break the recognition the dropdown exists to provide.
|
||||
The exemption applies to any vendor label whose product is the
|
||||
setting being chosen, e.g. `OpenAI`, `Anthropic`, `Codex`.
|
||||
- **GitHub repository URL on `/about`.** The source-link on the
|
||||
public about page renders
|
||||
`https://github.com/MBombeck/HealthLog`. The username segment is an
|
||||
irreducible technical identifier for the URL and cannot be hidden
|
||||
without breaking the link. The directive's spirit — never surface
|
||||
the maintainer's full name in prose — is honoured: the `/about`
|
||||
page never spells "Marc" or "Bombeck" in body copy, only inside
|
||||
the URL.
|
||||
+2
-2
@@ -1595,7 +1595,7 @@
|
||||
"genderFemale": "Weiblich",
|
||||
"genderHint": "Wird für geschlechtsspezifische Zielwerte verwendet.",
|
||||
"timezone": "Zeitzone",
|
||||
"timezoneHint": "Wird für Diagrammachsen, Erinnerungszeiten, Export-Zeitstempel und den AI-Coach-Kontext verwendet. Gespeicherte Daten bleiben unverändert.",
|
||||
"timezoneHint": "Wird für Diagrammachsen, Erinnerungszeiten, Export-Zeitstempel und den Coach-Kontext verwendet. Gespeicherte Daten bleiben unverändert.",
|
||||
"timezoneDetect": "Browser-Zeitzone übernehmen ({tz})",
|
||||
"timezoneInvalid": "Keine gültige IANA-Zeitzone.",
|
||||
"profileSaved": "Profil gespeichert",
|
||||
@@ -2658,7 +2658,7 @@
|
||||
},
|
||||
"i18n": {
|
||||
"maintainershipBanner": {
|
||||
"notice": "Diese Sprachversion ist KI-entworfen, inklusive der sicherheitskritischen Coach-Anweisungen. Automatisierte Validierung läuft in CI; KI-Coach-Regressionen bitte auf GitHub melden.",
|
||||
"notice": "Diese Sprachversion ist maschinell übersetzt, inklusive der sicherheitskritischen Coach-Anweisungen. Eine automatische Drift-Prüfung läuft in CI; Coach-Regressionen bitte auf GitHub melden.",
|
||||
"cta": "Auf GitHub melden",
|
||||
"dismiss": "Schließen"
|
||||
}
|
||||
|
||||
+2
-2
@@ -1595,7 +1595,7 @@
|
||||
"genderFemale": "Female",
|
||||
"genderHint": "Used for gender-specific target values.",
|
||||
"timezone": "Timezone",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and AI Coach context. Stored data is unchanged.",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and Coach context. Stored data is unchanged.",
|
||||
"timezoneDetect": "Use browser timezone ({tz})",
|
||||
"timezoneInvalid": "Not a valid IANA timezone.",
|
||||
"profileSaved": "Profile saved",
|
||||
@@ -2658,7 +2658,7 @@
|
||||
},
|
||||
"i18n": {
|
||||
"maintainershipBanner": {
|
||||
"notice": "This locale is AI-drafted including the Coach's safety-critical instructions. Automated validation runs in CI; please report any AI Coach regressions on GitHub.",
|
||||
"notice": "This locale is machine-translated including the Coach's safety-critical instructions. Automated drift-guard runs in CI; please report any Coach regressions on GitHub.",
|
||||
"cta": "Report on GitHub",
|
||||
"dismiss": "Dismiss"
|
||||
}
|
||||
|
||||
+2
-2
@@ -1595,7 +1595,7 @@
|
||||
"genderFemale": "Mujer",
|
||||
"genderHint": "Used for gender-specific target values.",
|
||||
"timezone": "Zona horaria",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and AI Coach context. Stored data is unchanged.",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and Coach context. Stored data is unchanged.",
|
||||
"timezoneDetect": "Use browser timezone ({tz})",
|
||||
"timezoneInvalid": "Not a valid IANA timezone.",
|
||||
"profileSaved": "Profile saved",
|
||||
@@ -2658,7 +2658,7 @@
|
||||
},
|
||||
"i18n": {
|
||||
"maintainershipBanner": {
|
||||
"notice": "Este idioma está redactado por IA, incluidas las instrucciones críticas para la seguridad del Coach. La validación automática se ejecuta en CI; informe de cualquier regresión del Coach IA en GitHub.",
|
||||
"notice": "Este idioma está traducido automáticamente, incluidas las instrucciones críticas para la seguridad del Coach. Un control de deriva automático se ejecuta en CI; informe de cualquier regresión del Coach en GitHub.",
|
||||
"cta": "Informar en GitHub",
|
||||
"dismiss": "Cerrar"
|
||||
}
|
||||
|
||||
+2
-2
@@ -1595,7 +1595,7 @@
|
||||
"genderFemale": "Femme",
|
||||
"genderHint": "Used for gender-specific target values.",
|
||||
"timezone": "Fuseau horaire",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and AI Coach context. Stored data is unchanged.",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and Coach context. Stored data is unchanged.",
|
||||
"timezoneDetect": "Use browser timezone ({tz})",
|
||||
"timezoneInvalid": "Not a valid IANA timezone.",
|
||||
"profileSaved": "Profile saved",
|
||||
@@ -2658,7 +2658,7 @@
|
||||
},
|
||||
"i18n": {
|
||||
"maintainershipBanner": {
|
||||
"notice": "Cette langue est rédigée par IA, y compris les instructions critiques pour la sécurité du Coach. Une validation automatique tourne en CI ; signalez toute régression du Coach IA sur GitHub.",
|
||||
"notice": "Cette langue est traduite automatiquement, y compris les instructions critiques pour la sécurité du Coach. Un contrôle de dérive automatique tourne en CI ; signalez toute régression du Coach sur GitHub.",
|
||||
"cta": "Signaler sur GitHub",
|
||||
"dismiss": "Ignorer"
|
||||
}
|
||||
|
||||
+2
-2
@@ -1595,7 +1595,7 @@
|
||||
"genderFemale": "Donna",
|
||||
"genderHint": "Used for gender-specific target values.",
|
||||
"timezone": "Fuso orario",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and AI Coach context. Stored data is unchanged.",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and Coach context. Stored data is unchanged.",
|
||||
"timezoneDetect": "Use browser timezone ({tz})",
|
||||
"timezoneInvalid": "Not a valid IANA timezone.",
|
||||
"profileSaved": "Profile saved",
|
||||
@@ -2658,7 +2658,7 @@
|
||||
},
|
||||
"i18n": {
|
||||
"maintainershipBanner": {
|
||||
"notice": "Questa lingua è redatta tramite IA, incluse le istruzioni critiche per la sicurezza del Coach. La validazione automatica gira in CI; segnali qualsiasi regressione del Coach IA su GitHub.",
|
||||
"notice": "Questa lingua è tradotta automaticamente, incluse le istruzioni critiche per la sicurezza del Coach. Un controllo di deriva automatico gira in CI; segnali qualsiasi regressione del Coach su GitHub.",
|
||||
"cta": "Segnala su GitHub",
|
||||
"dismiss": "Chiudi"
|
||||
}
|
||||
|
||||
+2
-2
@@ -1595,7 +1595,7 @@
|
||||
"genderFemale": "Kobieta",
|
||||
"genderHint": "Used for gender-specific target values.",
|
||||
"timezone": "Strefa czasowa",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and AI Coach context. Stored data is unchanged.",
|
||||
"timezoneHint": "Used for chart axis labels, reminder times, export timestamps, and Coach context. Stored data is unchanged.",
|
||||
"timezoneDetect": "Use browser timezone ({tz})",
|
||||
"timezoneInvalid": "Not a valid IANA timezone.",
|
||||
"profileSaved": "Profile saved",
|
||||
@@ -2658,7 +2658,7 @@
|
||||
},
|
||||
"i18n": {
|
||||
"maintainershipBanner": {
|
||||
"notice": "Ta wersja językowa jest opracowana przez AI, w tym instrukcje krytyczne dla bezpieczeństwa Coacha. Walidacja automatyczna działa w CI; proszę zgłaszać wszelkie regresje Coacha AI na GitHubie.",
|
||||
"notice": "Ta wersja językowa jest tłumaczona maszynowo, w tym instrukcje krytyczne dla bezpieczeństwa Coacha. Automatyczna kontrola dryftu działa w CI; proszę zgłaszać wszelkie regresje Coacha na GitHubie.",
|
||||
"cta": "Zgłoś na GitHubie",
|
||||
"dismiss": "Zamknij"
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user