fix(l10n): align the stores dialog with the setup trust hint (Sie-form, plain language)
Some checks failed
Security / Security check (push) Failing after 1s

The regulated setup path sends the operator to the stores dialog to
pin a publisher key — but the field was labelled 'Angepinnter
Public-Key — PEM (optional)' with du-form developer prose (PEM,
vendor key) at exactly the trust-critical moment. Field now reads
'Signatur-Schlüssel anheften (PEM, optional)' with a plain-language
Sie-form explanation of what pinning does; the dialog intro and the
onboarding checklist follow (MCP jargon explained in the sentence,
developer-only follow-up cards labelled as such).

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
flemming-it 2026-07-13 01:26:33 +02:00
parent ddac84ce8e
commit 7888b71f63
5 changed files with 18 additions and 19 deletions

View file

@ -75,7 +75,7 @@
"welcomeChecklistAi": "System-KI konfigurieren",
"welcomeChecklistAiHint": "Einstellungen → System-KI. Wird für die KI-Suche und Fehlererklärungen gebraucht.",
"welcomeChecklistMcp": "Öffentliche Capability-Quelle hinzufügen",
"welcomeChecklistMcpHint": "Im Store eine MCP-Quelle hinzufügen oder unter Einstellungen → MCP-Clients konfigurieren.",
"welcomeChecklistMcpHint": "Verbindet einen öffentlichen Werkzeug-Katalog (MCP) — dessen Bausteine erscheinen dann im Store. Dort hinzufügen oder unter Einstellungen → MCP-Clients.",
"welcomeChecklistModule": "Ein Text-Modul installieren",
"welcomeChecklistModuleHint": "Im Store ein Modul aus der Kategorie Ihrer Wahl installieren. Module sind isolierte (sandboxed) Ch∆In-Komponenten.",
"welcomeChecklistFlow": "Einen gespeicherten Flow starten",
@ -349,7 +349,7 @@
"storeReloadTooltip": "Aktualisieren",
"storesManagerButton": "Store hinzufügen",
"storesManagerTitle": "Module-Stores",
"storesManagerIntro": "Der Hub führt die Module aller Stores unten zu einem Index zusammen. Füge die Index-URL eines Stores hinzu, damit seine Module hier installierbar werden.",
"storesManagerIntro": "Der Hub führt die Module aller Stores unten zu einem Index zusammen. Fügen Sie die Index-URL eines Stores hinzu, damit seine Module hier installierbar werden.",
"storesManagerAddSection": "Store hinzufügen",
"storesManagerNameLabel": "Name",
"storesManagerUrlLabel": "Index-URL (https:// oder file://)",
@ -360,8 +360,8 @@
"storesManagerRemoveFailed": "Store konnte nicht entfernt werden",
"storesManagerSuggested": "Vorgeschlagene Stores",
"storesManagerAddShort": "Hinzufügen",
"storesManagerPinnedKeyLabel": "Angepinnter Public-Key — PEM (optional)",
"storesManagerPinnedKeyHint": "Signierte Module dieses Stores werden gegen diesen Key geprüft statt gegen den eingebauten Vendor-Key. Füge einen PEM-Public-Key ein.",
"storesManagerPinnedKeyLabel": "Signatur-Schlüssel anheften (PEM, optional)",
"storesManagerPinnedKeyHint": "Nur Module, die mit diesem Schlüssel signiert sind, werden aus dieser Quelle angenommen. Fügen Sie den öffentlichen Schlüssel (PEM) des Herausgebers ein — statt des eingebauten Herstellerschlüssels.",
"storesManagerNotAvailable": "Noch nicht verfügbar",
"storesManagerNotAvailableHint": "Der Anbieter hat diesen Store-Index noch nicht veröffentlicht. Sobald er das tut, ist er installierbar.",
"storesSuggestedReclaimDesc": "Recl∆Im — Module für Rechts- und Pflichten-Reform-Mapping",
@ -892,10 +892,10 @@
"welcomeChecklistNextAuditBody": "Jede Installation, jeder Flow-Lauf, jede Freigabe landet im hash-verketteten Protokoll. Im Protokoll-Tab sehen Sie, was Ihr Hub gemacht hat.",
"welcomeChecklistNextAuditButton": "Protokoll öffnen",
"welcomeChecklistNextTodayTitle": "Daily-Today-Story einrichten",
"welcomeChecklistNextTodayBody": "tools/today/propose.sh per Cron laufen lassen und die Editorial-Karte im Store füllt sich mit operator-kuratierten Stories.",
"welcomeChecklistNextTodayBody": "Für Fortgeschrittene: das Skript tools/today/propose.sh regelmäßig (Cron) laufen lassen — die Editorial-Karte im Store füllt sich dann mit kuratierten Stories.",
"welcomeChecklistNextTodayButton": "Today-Doku öffnen",
"welcomeChecklistNextModuleTitle": "Eigenes Modul bauen",
"welcomeChecklistNextModuleBody": "Mit `chain new module <name>` ein Rust+WASM-Gerüst erzeugen. Das module-sdk übernimmt die WIT-Anbindung; Sie schreiben nur ein typisiertes invoke.",
"welcomeChecklistNextModuleBody": "Für Entwickler: Mit `chain new module <name>` entsteht ein fertiges Modul-Gerüst (Rust+WASM). Das module-sdk übernimmt die technische Anbindung; Sie schreiben nur die eigentliche Logik.",
"welcomeChecklistNextModuleButton": "Doku lesen",
"auditGroupToday": "HEUTE",
"auditGroupYesterday": "GESTERN",

View file

@ -378,8 +378,8 @@
"storesManagerRemoveFailed": "Could not remove store",
"storesManagerSuggested": "Suggested stores",
"storesManagerAddShort": "Add",
"storesManagerPinnedKeyLabel": "Pinned public key — PEM (optional)",
"storesManagerPinnedKeyHint": "Signed modules from this store verify against this key instead of the built-in vendor key. Paste a PEM public key.",
"storesManagerPinnedKeyLabel": "Pin a signing key (PEM, optional)",
"storesManagerPinnedKeyHint": "Only modules signed with this key are accepted from this source. Paste the publisher's public key (PEM) — used instead of the built-in vendor key.",
"storesManagerNotAvailable": "Not available yet",
"storesManagerNotAvailableHint": "The provider hasn't published this store index yet. It will become installable once they do.",
"storesSuggestedReclaimDesc": "Recl∆Im — modules for law & duty reform-mapping",

View file

@ -1685,13 +1685,13 @@ abstract class AppLocalizations {
/// No description provided for @storesManagerPinnedKeyLabel.
///
/// In en, this message translates to:
/// **'Pinned public key — PEM (optional)'**
/// **'Pin a signing key (PEM, optional)'**
String get storesManagerPinnedKeyLabel;
/// No description provided for @storesManagerPinnedKeyHint.
///
/// In en, this message translates to:
/// **'Signed modules from this store verify against this key instead of the built-in vendor key. Paste a PEM public key.'**
/// **'Only modules signed with this key are accepted from this source. Paste the publisher\'s public key (PEM) — used instead of the built-in vendor key.'**
String get storesManagerPinnedKeyHint;
/// No description provided for @storesManagerNotAvailable.

View file

@ -246,7 +246,7 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get welcomeChecklistMcpHint =>
'Im Store eine MCP-Quelle hinzufügen oder unter Einstellungen → MCP-Clients konfigurieren.';
'Verbindet einen öffentlichen Werkzeug-Katalog (MCP) — dessen Bausteine erscheinen dann im Store. Dort hinzufügen oder unter Einstellungen → MCP-Clients.';
@override
String get welcomeChecklistModule => 'Ein Text-Modul installieren';
@ -869,7 +869,7 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get storesManagerIntro =>
'Der Hub führt die Module aller Stores unten zu einem Index zusammen. Füge die Index-URL eines Stores hinzu, damit seine Module hier installierbar werden.';
'Der Hub führt die Module aller Stores unten zu einem Index zusammen. Fügen Sie die Index-URL eines Stores hinzu, damit seine Module hier installierbar werden.';
@override
String get storesManagerAddSection => 'Store hinzufügen';
@ -907,11 +907,11 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get storesManagerPinnedKeyLabel =>
'Angepinnter Public-Key — PEM (optional)';
'Signatur-Schlüssel anheften (PEM, optional)';
@override
String get storesManagerPinnedKeyHint =>
'Signierte Module dieses Stores werden gegen diesen Key geprüft statt gegen den eingebauten Vendor-Key. Füge einen PEM-Public-Key ein.';
'Nur Module, die mit diesem Schlüssel signiert sind, werden aus dieser Quelle angenommen. Fügen Sie den öffentlichen Schlüssel (PEM) des Herausgebers ein — statt des eingebauten Herstellerschlüssels.';
@override
String get storesManagerNotAvailable => 'Noch nicht verfügbar';
@ -1640,7 +1640,7 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get welcomeChecklistNextTodayBody =>
'tools/today/propose.sh per Cron laufen lassen und die Editorial-Karte im Store füllt sich mit operator-kuratierten Stories.';
'Für Fortgeschrittene: das Skript tools/today/propose.sh regelmäßig (Cron) laufen lassen — die Editorial-Karte im Store füllt sich dann mit kuratierten Stories.';
@override
String get welcomeChecklistNextTodayButton => 'Today-Doku öffnen';
@ -1650,7 +1650,7 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get welcomeChecklistNextModuleBody =>
'Mit `chain new module <name>` ein Rust+WASM-Gerüst erzeugen. Das module-sdk übernimmt die WIT-Anbindung; Sie schreiben nur ein typisiertes invoke.';
'Für Entwickler: Mit `chain new module <name>` entsteht ein fertiges Modul-Gerüst (Rust+WASM). Das module-sdk übernimmt die technische Anbindung; Sie schreiben nur die eigentliche Logik.';
@override
String get welcomeChecklistNextModuleButton => 'Doku lesen';

View file

@ -925,12 +925,11 @@ class AppLocalizationsEn extends AppLocalizations {
String get storesManagerAddShort => 'Add';
@override
String get storesManagerPinnedKeyLabel =>
'Pinned public key — PEM (optional)';
String get storesManagerPinnedKeyLabel => 'Pin a signing key (PEM, optional)';
@override
String get storesManagerPinnedKeyHint =>
'Signed modules from this store verify against this key instead of the built-in vendor key. Paste a PEM public key.';
'Only modules signed with this key are accepted from this source. Paste the publisher\'s public key (PEM) — used instead of the built-in vendor key.';
@override
String get storesManagerNotAvailable => 'Not available yet';