Status: Accepted
Date: 2026-02-23
Authors: OSHUN Studio Architecture, OSHUN Web Engineering, OSHUN
Data/Analytics Engineering
Reviewers: Domain Leads (Yemaya, Isis, Hathor, Aja, Bellona), Project
Obsidian Program Design
Context and Problem Statement#
Studio surfaces are increasingly cross-domain and globally consumed. Locale selection, message catalogs, formatting, and RTL readiness exist in web shell assets, but governance is not yet unified at Studio workflow level. Without a canonical i18n/l10n model, Studio risks inconsistent locale behavior, translation drift, and weak release confidence for localized workflows.
Without unified i18n/l10n governance, OSHUN risks:
- inconsistent translation and formatting semantics across domains
- locale regressions in critical governance and operations workflows
- weak observability and auditability for localization quality
- poor readiness for RTL and expansion-heavy locales
Decision Drivers#
- Consistency: one localization contract across Studio domains.
- Quality: deterministic translation and formatting correctness.
- Inclusivity: RTL, expansion, and locale-safe interaction behavior.
- Operability: clear ownership and fast remediation for localization issues.
- Governance: release gates enforce localization quality posture.
Considered Options#
Option 1: Domain-Local Translation Governance#
Each domain controls independent translation pipelines and locale behavior.
Pros:
- High local autonomy.
Cons:
- Drift in locale behavior and inconsistent release quality.
- Difficult cross-domain diagnostics and governance.
Option 2: UI-Only Translation with Minimal Runtime Governance#
Localize labels/messages but avoid contract-based validation and policy gates.
Pros:
- Lower implementation overhead.
Cons:
- Weak detection of formatting/RTL/coverage regressions.
- Poor release safety for localized workflows.
Option 3: Canonical Studio I18n/L10n Governance Framework (Chosen)#
Adopt typed locale/message contracts, deterministic formatting and RTL rules, policy-aware governance, and telemetry-backed release gates.
Pros:
- Consistent locale behavior and stronger global quality posture.
- Better diagnostics, ownership, and remediation workflows.
- Safer release gating for localization regressions.
Cons:
- Requires ongoing catalog governance and validation discipline.
Decision Outcome#
Chosen option: Option 3.
I18n/l10n requirements:
- Canonical locale/message contracts for Studio workflows.
- Formatting contracts for numbers, dates, currency, and relative time.
- RTL and text-expansion contracts for interaction/layout safety.
- Validation/release contracts for coverage and correctness checks.
- Telemetry/audit contracts for localization posture and remediation.
Normative Rules#
Locale and Message Contract#
- Governed workflows must define locale coverage and namespace ownership.
- Message catalogs require owner and version metadata.
- Missing owner/coverage metadata invalidates release eligibility.
Formatting Contract#
- Date/time/number/currency rendering must use locale-aware formatters.
- Hard-coded locale assumptions are prohibited in governed flows.
- Formatting fallbacks must remain deterministic and traceable.
RTL and Expansion Contract#
- Layout and interaction controls must remain operable under RTL locales.
- Surfaces must tolerate bounded text expansion without clipping critical controls.
- RTL/expansion regressions in critical workflows are release-blocking.
Validation and Release Contract#
- CI must validate catalog coverage, formatting semantics, and RTL readiness.
- Production release blocks on unresolved critical localization failures.
- Waivers require owner, rationale, scope, and expiry metadata.
Architecture Implications#
- Existing i18n modules (
config,locale-store,formatting, message catalogs) become canonical Studio dependencies. - Studio workspaces surface localization posture and governance actions.
- Metrics/observability and accessibility governance correlate localization posture with release quality.
- Analytics contracts include locale dimensions for attribution and diagnostics.
Acceptance Criteria (OST-00257)#
OST-00257 is complete only when:
- ADR exists at
docs/adr/ADR-0051-oshun-studio-internationalization-and-localization.md. - ADR defines options, trade-offs, and selected strategy.
- ADR defines locale/message, formatting, RTL/expansion, and validation/release contracts.
- ADR aligns with
ADR-0007throughADR-0044, especiallyADR-0008,ADR-0012, andADR-0044. - ADR aligns with existing i18n implementation surfaces in
apps/oshun/web/src/i18n. - ADR explicitly covers Yemaya, Isis, Hathor, Aja, Bellona, and Project Obsidian.
Consequences#
Positive#
- Stronger, consistent localization quality across Studio.
- Earlier detection and safer remediation of locale regressions.
- Better operational accountability for translation and formatting posture.
Negative#
- Increased governance overhead for catalog/version lifecycle management.
- Requires coordinated rollout discipline across domain teams.
Related Decisions#
docs/adr/ADR-0013-oshun-shell-architecture-and-domain-adapters.mddocs/adr/ADR-0014-oshun-web-and-pwa-strategy.mddocs/adr/ADR-0018-analytics-taxonomy-and-event-naming.mddocs/adr/ADR-0050-oshun-studio-accessibility-governance.md
References#
apps/oshun/web/src/i18n/config.tsapps/oshun/web/src/i18n/locale-store.tsapps/oshun/web/src/i18n/formatting.tsapps/oshun/web/src/i18n/request.tsapps/oshun/web/src/components/LanguageSwitcher.tsxapps/oshun/web/src/components/__tests__/LanguageSwitcher.test.tsxdocs/releases/v1/design/readability-standards.mddocs/domains/yemaya/features.mddocs/domains/isis/features.mddocs/domains/hathor/features.mddocs/domains/aja/features.mddocs/domains/bellona/features.md