Translations strip external links unless a global host allowlist is maintained
**Problem**\ When translating content with `ai_tmgmt` (TMGMT), the underlying `ai` module filters URLs in the AI output and logs warnings like **`Removed disallowed AI output URL`**. With the default setup (empty `ai.settings: allowed_hosts`), any absolute URL (`http(s)://…` or `//…`) is treated as disallowed and gets removed/rewritten. This is impractical for editorial content that commonly contains many legitimate external links across many domains. **Steps to reproduce** 1. Configure `ai_tmgmt` as a TMGMT translator using the AI module/provider. 2. Keep `ai.settings: allowed_hosts` empty (default). 3. Translate content that contains external absolute links (e.g. `<a href="https://example.com/...">…</a>`). 4. Observe warnings like `Removed disallowed AI output URL` and that links are stripped/rewritten in the translated result. **Expected**\ For translation workflows, links should be preserved (at least all `http/https`), or `ai_tmgmt` should provide a **translator-level URL filtering policy** so users don’t have to maintain a global allowlist. **Proposed solution** * Add an `ai_tmgmt` setting for “URL filtering policy” for translation jobs, e.g.: * allow all `http/https` (still block dangerous schemes like `javascript:` / `data:`) * preserve only links present in the source (remove only newly introduced links) * optional rewrite-to-text instead of removing * Alternatively, allow `ai_tmgmt` to override the AI output filter settings for translation jobs (instead of relying solely on global `ai.settings`). **Why it matters**\ Editorial content often includes many external references (sources, partners, social links). Requiring a maintained allowlist makes translation noisy (logs) and can cause loss of legitimate links in translated content.
issue