discourse/plugins/discourse-ai/lib/translation
Penar Musaraj 90baea1ea7
FEATURE: Switch from opt-in to opt-out for categories in AI translations (#40169)
This PR changes Discourse AI translations from an opt-in category model
to an opt-out model: instead of translating only selected
`ai_translation_target_categories`, it introduces
`ai_translation_excluded_categories`, updates the admin UI copy and save
flow, changes topic/post/category candidate selection and detection jobs
to translate all non-excluded categories by default, and adds a
migration that converts existing target-category settings into the
equivalent excluded-category list for existing sites.

It also updates all related specs.

---------

Co-authored-by: discourse-patch-triage[bot] <272280883+discourse-patch-triage[bot]@users.noreply.github.com>
2026-05-26 14:51:04 -04:00
..
base_candidates.rb PERF: optimize translation progress dashboard with batch query (#34861) 2025-09-29 13:32:40 +08:00
base_translator.rb DEV: Use structured output for translations (#39079) 2026-04-03 11:39:27 +08:00
category_candidates.rb FEATURE: Switch from opt-in to opt-out for categories in AI translations (#40169) 2026-05-26 14:51:04 -04:00
category_locale_detector.rb FIX: Improve prompt and check returned value conforms to standard (#35763) 2025-11-05 17:41:49 +08:00
category_localizer.rb PERF: Cache LlmModel lookups in backfill jobs (#36359) 2025-12-01 17:04:25 -03:00
content_splitter.rb DEV: Enable Style/RedundantParentheses rubocop rule (#40095) 2026-05-19 15:48:09 +02:00
entry_point.rb FIX: Retranslate topic excerpts and avoid using post versions to indicate change (#36382) 2025-12-02 22:45:11 +08:00
language_detector.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
localizable_quota.rb FIX: Retranslate topic excerpts and avoid using post versions to indicate change (#36382) 2025-12-02 22:45:11 +08:00
post_candidates.rb FEATURE: Switch from opt-in to opt-out for categories in AI translations (#40169) 2026-05-26 14:51:04 -04:00
post_detection_text.rb
post_locale_detector.rb FIX: Improve prompt and check returned value conforms to standard (#35763) 2025-11-05 17:41:49 +08:00
post_localizer.rb FIX: Ensure upload reference is available before cooking (#36887) 2025-12-29 23:33:16 +08:00
post_raw_translator.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
short_text_translator.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
tag_candidates.rb FEATURE: Expand AI translation settings to allow choosing specific categories instead of just 'all public content' (#39000) 2026-03-31 22:53:37 +08:00
tag_locale_detector.rb FEATURE: Introduce tag localizations with API, without UI yet (#36754) 2025-12-18 18:25:58 +08:00
tag_localizer.rb FEATURE: Introduce tag localizations with API, without UI yet (#36754) 2025-12-18 18:25:58 +08:00
topic_candidates.rb FEATURE: Switch from opt-in to opt-out for categories in AI translations (#40169) 2026-05-26 14:51:04 -04:00
topic_locale_detector.rb FIX: Improve prompt and check returned value conforms to standard (#35763) 2025-11-05 17:41:49 +08:00
topic_localizer.rb DEV: Add rake task to backfill localization excerpts which were empty (#36901) 2025-12-30 17:04:36 +08:00
topic_title_translator.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
verbose_logger.rb