3.6 KiB
Localization And Contextual Help Quality
Reference Language
German (de) is GovOPlaN's first-class reference target. Every translation key
used by a shipped WebUI must exist in German and English. German completeness is
a release gate; English remains the source-code fallback language so existing
literal labels and external developer APIs do not change semantics.
New installations and tenants default to German. Existing system, tenant, and user preferences are preserved. The available-language and policy model can still select another default or disable a package at the relevant scope.
Explicit high-risk help content and browser acceptance are tracked in Core #284.
The platform inventory recognizes both inline locale objects and generated
catalogs declared as const de / const en. Its strict mode requires both
locales and reports de explicitly as the reference locale.
Help Resolution
Every focusable field and action receives a stable derived F1 identity from the shared shell, even when the component has no dedicated help text. Resolution falls back from field/action to dialog or page and then to the module's visible documentation baseline.
Backend manifests publish explicit topic associations first. Core additionally
associates declared route, navigation, settings, and View surface IDs with the
module's static user or administrator documentation baseline. Feature modules
should still add exact metadata.help_contexts entries for consequential,
unfamiliar, policy-controlled, destructive, security-sensitive, or legally
meaningful fields and actions.
The shared retention-policy editor exposes explicit contexts for each stored
data category, audit-detail control, lower-level override switch, target
selector, reload, and save action. The Policy module owns the matching German
administrator guidance. Retention execution surfaces use separate contexts for
dry-run, destructive apply, confirmation, and outcome review so F1 opens the
consequence and recovery guidance closest to the focused control.
Shared controls may set helpModuleId when their documentation owner differs
from the containing page; the retention editor uses this to resolve Policy help
from both administration and Campaign surfaces.
The shared reusable-credential manager keeps Access as its documentation owner and publishes exact contexts for credential kind, secret replacement/removal, module and server restrictions, lower-scope visibility, activation, save, and irreversible deletion. This ensures F1 explains secret custody and the effect on dependent connections from system, tenant, group, user, and personal surfaces.
The generated help_review_candidates list is therefore a content-depth queue,
not a list of controls on which F1 cannot work. It should prioritize:
- effect, deletion, delivery, retention, disclosure, encryption, and recovery;
- identity, representation, mandate, institutional context, and purpose;
- valid-time versus recorded-time selection;
- provider authority, synchronization, conflict, and outcome unknown;
- fields whose consequences are not evident from their label.
Verification
cd /mnt/DATA/git/govoplan
/mnt/DATA/git/govoplan/.venv/bin/python \
tools/inventory/platform-interface-inventory.py \
--strict --strict-declarations --strict-endpoints
The check must report:
- reference locale
depresent and complete; - no used key missing from
deoren; - every field has a resolvable F1 context;
- no duplicate stable IDs;
- no undeclared public WebUI surface;
- no stale runtime route or endpoint declaration.