New Features
* #3456973 AI integration for Views bulk operations
* #3579424 The tool category should fixed on Tool Library modal
* #3582575 Add agent skill and drush generator for Guardrail plugins
* #3582856 Add Input Length Limit guardrail plugin against DoW attacks
* #3584849 Allow InputInterface to hold and run multiple guardrail sets
* #3582572 Add agent skill and drush generator for Automator Type plugins
* #3582819 Add agent skill for creating new AI API Explorer plugins
* #3582766 Create a skill that scaffolds new operation types for the AI module
* #3582573 Add agent skill and drush generator for Field Widget Action plugins
* #3582571 Add agent skill and drush generator for AI Provider plugins
* #3581363 Add drupal:mdx-fill event support to MDX editor for external content injection
* #3492940 Add ChatProcessor
* #3584851 Add global guardrails setting applied to every AI request
* #3540608 Special characters or trailing spaces are HTML-encoded in AI CKEditor selected text preview
* #3582179 Add streaming-aware guardrails that can buffer and evaluate content in real-time using start/stop regex patterns
* #3585233 Dispatch AiExceptionEvent and allow subscribers to replace the response (graceful failover)
* #3577937 Create JS form editor for the default information tools
* #3586481 AI Automators Queue/Cron: prevent duplicate queue items when entity is saved multiple times
* #3586472 Use ai_provider_configuration form element in RestrictToTopic configuration form
* #3586500 Allow vector database providers to opt in as the default VDB when none is set
* #3586603 Move AI External Moderation into Safety & Compliance
* #3586660 Add thumbs-up and thumbs-down icons to the shared AI icon set

Tasks
* #3582585 Mock provider request matching breaks when new keys are added to input toArray()
* #3582530 Update Documentation to Remove Vector Search Infrastructure and Move it under the AI Infrastructure Umbrella
* #3582030 runAsAgent: Stable IDs Across Conversation Turns
* #3585690 Add Guardrails support to AI Automators
* #3586490 Split the Guardrails documentation into a section with a page per guardrail (1.4.x)
* #3577050 Generalize behaviour of FWA with Automators
* #3586514 Update documentation for FWA and ai_automators
* #3586573 Tone of voice CKEditor Plugin does not use the translated version of the linked taxonomy
* #3586621 PHPStan errors
* #3586606 Document TokenUsageDto and how to use it

Bugs
* #3586385 AgentRunner.php needs to set configuration
* #3586433 AgentRunner sets the wrong configuration
* #3586397 AI settings form fails to load when allowed_hosts is an empty string
* #3586448 Add ChatWithPdf capability to AiModelCapability enum
* #3586399 Add Elasticsearch VDB provider to matrix
* #3586436 Method getPluginResponse should be in AiContentSuggestionsPluginBase class and not in external service
* #3586521 Fix FunctionalJavascript test failures on 1.4.x introduced by MDX editor Drupal.behavior conversion
* #3586449 AI Assistant runner fatals when an ai_agent config entity shares its ID with a code-defined AiAgent plugin
* #3586471 "AI Guardrails" or "AI Moderation Guardrails"?
* #3586476 Match "Global Guardrails" config page title with "Global AI Guardrails" menu item
* #3553353 Fix Translate Text Explorer form functionality
* #3586676 1.4.x: AiGuardrailSubformAjaxTest references guardrails that only exist in 1.5.x
* #3586587 AI Agents Test Getting Started doc includes the wrong command
* #3499451 Chatbot closes itself when adding a modal
* #3586654 AiAutomatorEntityModifier::entityHasConfig() ignores the AI Automator's disabled (status: false) setting

Planning
* #3456768 Interface suggestion for text classification operator type

Contributors:
petar_basic, harivansh, fago, ajv009, a.dmitriiev, marcus_johansson, abhisekmazumdar, shubham.prakash, ahmad khader, erichomanchuk, afoster, joaopauloc.dev, lussoluca, tolstoydotcom, unqunq, gxleano, emma horrell, anaconda777, sijumpk, hrishikesh-dalal, svendecabooter, valthebald, ahmad-khalil-imagex, akhil babu, mglaman, anjaliprasannan, breidert, joshua1234511, bbruno, angela saldaña, ricardoamaro, avinash.jha, jucs7, b_sharpe, ultimike, weri, jhuhta, jibran, scott falconer, danrod, nikro, brtamas, jesus_md, robloach, vasike, Scott, lostcarpark, prabha1997, farse, annmarysruthy, cobadger, ognuliscic, ajabhinavjha30, csakiistvan, merilainen, heyyo, phenaproxima, mrdalesmith, prashant.c, gafioni, bharat.kelotra, adhariwal, gueguerreiro