docs: document the language of AI-generated content - #599
Open
abdulrafey1 wants to merge 3 commits into
Open
Conversation
Describes what the preferred-language setting now drives — chat replies, generated course content and conversation titles — and what it deliberately does not: internal reasoning prompts, fixed backend strings, and course metadata on a publishing target. Also records the two things a reader will otherwise get wrong: a source document keeps its own language, and the MCP path takes an explicit tag because it has no user to resolve a preference from. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The previous wording described a static-translation catalog mechanism that does not yet exist in the codebase. Reworded to accurately reflect the current state — API error messages and fixed backend strings are simply hardcoded English — and to describe localization as separate work that belongs to a dedicated translation layer, not to the language preference directive. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The guide claimed the language preference reaches every surface a user reads, but the Slack assistant answers questions from Slack members who are not signed-in Sparkth users and have no stored preference, so it does not follow the setting. Add it as a third exception and narrow the applies-to claim accordingly. Also fold a duplicated quality-varies-by-language passage into the existing paragraph under Supported languages instead of repeating it in its own subsection. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
hamza-56
approved these changes
Aug 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of: Sparkth UI, emails, API errors, and AI-generated content are English-only
Top of the phase-2 generation-language stack. Does not close the issue.
What
Documents what the preferred-language setting now drives, and — just as importantly — what it
does not.
Changes
reaches, the surfaces it does not, the MCP path's explicit tag, and the per-language quality caveat
How to Test
make docs— builds strict with no new warnings.site/guides/user-management/index.htmland confirm the new subsections render under"Preferred language" and that the supported-languages table still follows them.
Notes
Documentation only, no code.
docs/reference/configuration.mdand.envare deliberatelyuntouched — both are still accurate, and an open PR edits the former's
DEFAULT_LANGUAGEsection.Three exceptions are stated explicitly so they are not mistaken for oversights: fixed backend
strings including the out-of-scope refusal are still English (localizing them belongs to the
static-translation layer, not to the model's language directive); a published course carries
whatever language its destination LMS defaults to; and the Slack assistant's answers do not follow
the setting, because the asker is a Slack member with no stored Sparkth preference.
The guide also records the two things a reader would otherwise get wrong: a source document keeps
its own language while only the output follows the preference, and inclusion in the supported list
is not a claim that the model is equally strong in every listed language.
This description was written with the assistance of an LLM (Claude).