AlphOne answers every reader in English. Current state: the frontend holds about 197 hardcoded strings across the core and the three plugin frontends, the server composes finished English sentences for every refused operation and sends only coarse extension codes, and no locale is stored or resolved anywhere.
Proposal: every refused operation gains extensions.reason and extensions.meta, a public locale query and an authenticated setLocale mutation resolve and store the reader's language in core.user_settings, every string is extracted under gettext with one domain for the core and one per plugin, POEditor carries the translations with Spanish as the proof locale, and a settings entry lets the reader choose their language.
Trigger: the roles cycle closed and the multitenancy plugin waits behind this.
AlphOne answers every reader in English. Current state: the frontend holds about 197 hardcoded strings across the core and the three plugin frontends, the server composes finished English sentences for every refused operation and sends only coarse extension codes, and no locale is stored or resolved anywhere.
Proposal: every refused operation gains extensions.reason and extensions.meta, a public locale query and an authenticated setLocale mutation resolve and store the reader's language in core.user_settings, every string is extracted under gettext with one domain for the core and one per plugin, POEditor carries the translations with Spanish as the proof locale, and a settings entry lets the reader choose their language.
Trigger: the roles cycle closed and the multitenancy plugin waits behind this.