What to build
Under the client-owned-i18n model, each client maintainer translates their own UI — but "Inbox", "bind", "catalog", "set" must not fragment across languages. The core already holds the canonical vocabulary (docs/UBIQUITOUS_LANGUAGE.md); make it consumable: export the ratified terms as a structured artifact (JSON/YAML, committed in-repo and/or served) that client maintainers key their translation tables off.
The presets design already proved this pattern in-domain — (origin, label) identity with clients promoting their own translations. This applies the same idea to UI vocabulary.
Keep it thin: term slug, canonical English term, one-line definition, and a stable ID clients reference. No translations live in the core — those belong to clients.
Acceptance criteria
Blocked by
None - can start immediately
What to build
Under the client-owned-i18n model, each client maintainer translates their own UI — but "Inbox", "bind", "catalog", "set" must not fragment across languages. The core already holds the canonical vocabulary (
docs/UBIQUITOUS_LANGUAGE.md); make it consumable: export the ratified terms as a structured artifact (JSON/YAML, committed in-repo and/or served) that client maintainers key their translation tables off.The presets design already proved this pattern in-domain — (origin, label) identity with clients promoting their own translations. This applies the same idea to UI vocabulary.
Keep it thin: term slug, canonical English term, one-line definition, and a stable ID clients reference. No translations live in the core — those belong to clients.
Acceptance criteria
Blocked by
None - can start immediately