Daily Digest
Daily Digest – 22 June 2026
2026 Capabilities Progress
- Page generation — Progress on AI agent infrastructure continued with improvements to layout fixture support for testing page builder agents [66][68], though critical bugs remain where AI generates components using unsupported libraries [67]. Work on component generation prompts is addressing issues with deprecated imports and hardcoded error messages [57][84].
- Context management — The Context Control Center merged three user experience improvements including configuration links, clearer scope form layouts, and validation preventing invalid settings [94][97][99][118][120][122]. Active work continues on scope plugin persistence, multi-vocabulary taxonomy support, and integration with document loading capabilities [115][116][98].
- Background agents — The ECA Interceptor submodule remains in development to enable event-driven AI workflows, but the issue has no assigned owner and saw no commits today [44].
- Design system integration — Canvas is developing conflict detection UI for selective publishing, with the core merge request landed but underlying conflict detection and prevention issues still open [77][79] and improved data model handling for component properties [82][89], while symmetric translation support to propagate component updates across languages remains under active review [55][80][87].
- Content creation and discovery — AI Search merged long-running chunk indexing for processing documents beyond 10 chunks [8][34][130] and is actively reviewing filterable RAG tools for metadata-based search refinement [123][129]. The AI module improved editor experience warnings when providers are missing [3][21] but faces quality issues with taxonomy automators corrupting HTML-encoded characters [14].
- Advanced governance — A new moderation guardrail plugin allowing configurable content safety checks through any moderation service is under review [2][20]. Canvas is developing conflict detection and resolution UI with detection merged but resolution still in draft, and conflict prevention issue remains open [52][58][77][79][91].
- Intelligent website improvements — No direct progress today.
- Multi-channel campaigns — No direct progress today.
Shipped
- AI module: Long-running content indexing support — Support for processing documents longer than 10 chunks was merged to the stable 1.x branch, though the feature issue remains open [8][34][130].
- Canvas: Language-aware content indexing — Backend support for language-aware indexing of ContentTemplate-rendered Canvas content was completed [60][86].
- Canvas: Conflict detection and resolution interface — Work on conflict detection and resolution UI is in progress, with some merge requests merged but the feature issue still open [58][77][79].
- Context Control Center: Configuration improvements — Three usability enhancements were delivered including a standard configure link on the modules page, clearer scope form guidance, and validation preventing conflicting administrator settings [94][97][99][118][120][122].
- AI Search: Enhanced filtering capabilities — An attempt at long running chunk indexing for the stable branch was merged without breaking compatibility, and a user question about metadata filtering in chatbot search was resolved [124][126][130].
Ongoing
- AI module: Content moderation guardrail — A new plugin allowing administrators to configure any moderation service as a content safety check is under review [2][20].
- AI module: Data quality fixes — Two issues affecting editors are being addressed: taxonomy automators losing valid terms when AI returns HTML-encoded characters, and missing token usage data during streaming responses [11][14].
- Canvas: Symmetric translation support — Work continues to ensure component updates propagate correctly across all language versions [55][87].
- AI translate: HTML preservation bugs — The module is not reliably preserving formatting when translating rich text content, with markup being corrupted or improperly inserted [137][138].
- Context Control Center: Beta release preparation — The team is recruiting beta testers, creating instructional videos, and completing scope plugin improvements ahead of the release candidate [102][105][115].
AI (Artificial Intelligence)
The AI module made significant progress on infrastructure and content quality features over the past day. The team merged support for handling large content items, enabling the search system to process documents longer than 10 chunks without breaking—critical for sites indexing full-length articles or documentation. This brings the stable 1.x branch closer to feature parity with the development version while maintaining compatibility.
Development work continued on several user-facing improvements. A new moderation guardrail plugin is in review that will let administrators use any moderation service as a content safety check through simple configuration. Contributors also identified and are fixing two quality issues affecting editors: taxonomy automators losing valid term values when AI models return HTML-encoded characters (like "&" for "&"), and missing token usage data when streaming responses in certain execution contexts.
The team improved onboarding by adding warnings when no AI provider is installed in the CKEditor integration, and resolved a namespace collision between a deprecated bundled module and its standalone project replacement. Several contributors addressed permission clarity issues for the AI Assistant chatbot feature.
How can I help on this project?
- Prioritize testing and feedback on the moderation guardrail plugin to validate whether the configuration approach meets real-world content safety requirements.
- Clarify the roadmap for chatbot permissions: confirm whether consolidating access controls is the strategic direction or if the current dual-permission model serves distinct use cases.
Drupal AI Initiative
The AI Initiative saw significant planning activity over the past 24 hours, focused on two main areas: improving the user experience for discovering AI tools, and organizing an upcoming Enterprise AI Summit event.
A UX meeting on June 15 was documented, highlighting progress on a new searchable directory of AI modules and recipes. This directory will help site builders find the right AI tools more easily through improved filtering and badging that indicates which modules are officially supported by the initiative.
The team also created several planning tasks for the Enterprise AI Summit, including updating sponsor information on the event website (with three gold and multiple silver sponsorships secured), improving mobile accessibility, and recruiting event volunteers. Additional tasks cover sponsor lead collection systems and outreach to business organizations for event partnerships.
These activities represent early-stage event planning and product development work, with multiple tasks still seeking contributors.
How can I help on this project?
- Support decision-making on partnership strategy with business organizations (ThomsonReuters, CIONet) for the Enterprise AI Summit to expand audience reach.
- Allocate resources to help recruit Dutch-speaking event volunteers for registration and attendee support.
- Consider funding for social media promotion to increase event visibility and attendance.
AI Integration - ECA
During this period, work continued on the Add AI ECA Interceptor submodule, which will allow administrators to monitor and respond to AI system events without writing code. This feature enables business rules to be configured around AI interactions—such as logging when AI services fail, tracking usage patterns, or implementing approval workflows when content generation occurs. The capability is part of the project's roadmap toward a stable 1.0.0 release.
No code was merged or committed in the past 24 hours. The issue remains open and unassigned, which is normal for a module in active development working toward its first stable version.
How can I help on this project?
- Consider allocating developer resources to advance the AI ECA Interceptor feature, which currently has no assigned owner.
- Support prioritization discussions to clarify which capabilities are essential for the 1.0.0 release versus future enhancements.
OpenAI Provider
The OpenAI Provider module saw development progress focused on expanding functionality for image manipulation. Marcus Johansson (Marcus_Johansson) opened a new merge request to add image-to-image capabilities, representing 248 lines of code changes. This enhancement will enable users to generate new images based on existing images, expanding the module's creative and practical applications beyond text-based interactions.
No critical issues or blockers were reported during this period. The module continues its development trajectory with no commits merged in the last 24 hours, indicating that submitted work is undergoing review before integration.
How can I help on this project?
- Allocate reviewer capacity to evaluate and approve the pending image-to-image functionality, which will accelerate delivery of new capabilities to users.
- Clarify strategic priorities for AI feature development to help contributors focus efforts on the highest-value enhancements.
AI Agents
Activity over the past 24 hours was limited to issue tracking. A Schema error for AI Agents CKEditor plugin was logged, identifying a configuration issue where the module's text editor integration lacks proper schema definition. This causes Drupal to report errors, though it does not prevent functionality. The issue reflects ongoing quality improvements as the module matures its integration with text editing capabilities.
No code was merged or committed during this period, indicating a quiet day for development activity.
How can I help on this project?
- Prioritize developer time to address the CKEditor schema error, which affects configuration validation quality.
- Consider allocating resources for thorough testing of existing integrations to surface similar issues proactively.
Drupal Canvas
The Canvas team delivered eight improvements over the past 24 hours, focused on translation support, data model refinement, testing stability, and user interface enhancements.
The team merged language-aware indexing for ContentTemplate-rendered Canvas content, ensuring that Canvas content is searchable in the correct language. They also completed conflict detection and resolution UI for selective publishing, now available behind a development flag. This allows teams to see when multiple editors have made changes to the same content and provides a path to resolve conflicts before publishing. Ben Mullins (bnjmnm) and Ravi Maniyar (ravi.maniyar.123) led this work.
Several technical improvements were also merged: Christian López Espínola (penyaskito) and Wim Leers (wimleers) refactored internal data handling to simplify testing and maintenance. Feliksas Mazeikis (f.mazeikis) resolved a testing framework issue that was causing false failures. Ben Mullins addressed flakiness in language selector tests. Bálint Kléri (balintbrews) updated JavaScript dependencies in preparation for the 1.7.0 release and removed deprecated command-line tools that had been replaced by newer alternatives.
Active work continues on symmetric translation support, ensuring component updates propagate correctly across all language versions, and preventing publishing when conflicts are detected. Both remain in progress with merge requests under review.
How can I help on this project?
- Confirm whether content entity reference props should remain behind a development flag or be prioritized for general availability, as the underlying work is unassigned.
- Review the strategic direction for AI-generated components to clarify library constraints and acceptable error handling, as multiple related issues remain open without clear next steps.
Context Control Center (CCC)
The Context Control Center continues to refine its user experience and expand its capabilities ahead of the stable release. Over the past 24 hours, three improvements were merged that make the module easier to configure and use.
The team closed Add Configure Link in Modules Page, contributed by Rob Loach, which introduces a standard configuration link on the module listing page. This small change improves discoverability for administrators setting up the system. Copy and layout updates on context item scope form was also completed, clarifying help text and reducing clutter on the scope configuration screen to help users understand when context will be included. Additionally, Matt Glaman delivered Add context settings validation: max_global_items must not exceed max_items, preventing administrators from entering conflicting limits during configuration.
The project is actively working on scope plugin improvements, integration with external modules like Document Loader, and preparing for a release candidate. Sprint planning is underway for Sprint 12, with Kristen Pol leading roadmap updates and issue triage. An issue tracking Drupal 12 compatibility has been opened and is receiving automated updates.
How can I help on this project?
- Support the team in recruiting beta testers through organizational communication channels and partnerships to accelerate feedback and stabilization.
- Allocate resources to complete documentation and instructional videos that help new users understand configuration, reducing friction for adoption.
AI Search
The AI Search module made significant progress on improving filtering capabilities for AI-powered search during this period. The team closed a longstanding user question about How to Apply Filters in VDB for RAG Chatbot, which addressed how to pre-filter search results using attributes like case studies or other metadata before querying the vector database.
A key technical enhancement was completed and merged: Attempt long running chunk indexing for 1.x branch without BC. This work, led by Scott Euser (scotteuser), brings improved indexing capabilities to the current stable branch while maintaining compatibility with existing implementations. This ensures sites won't break when upgrading.
Active development continues on a new filtering feature through the Add FilterableRagTool to augment RagTool supporting dynamic metadata filtering via additional context definitions issue. Work by m4olivei is under review that will allow AI chatbots to intelligently apply metadata filters when retrieving relevant content, making search results more precise and contextually appropriate. This complements the existing search capabilities without disrupting current functionality.
How can I help on this project?
- Allocate reviewer capacity to assess the FilterableRagTool feature currently awaiting feedback, as this directly addresses user-requested filtering capabilities.
- Prioritize decisions on the roadmap to stable release outlined in the 2.0.x planning issue to clarify resource needs and timeline expectations.
Field Widget Actions
The Field Widget Actions module saw focused development activity this week on improving how automated content suggestion buttons are configured and deployed across forms.
Work continued on Generate UUIDs for list-style widget-action settings applied via config actions, which addresses a limitation preventing multiple AI suggestion buttons from being added to the same form through automated deployment recipes. Previously, buttons would collide and write suggestions to the wrong fields. The solution allows each button to receive a unique identifier automatically, matching the behavior users already experience when adding buttons manually through the interface. This work supports scalable, repeatable deployment of AI-assisted editing capabilities across sites.
Additionally, progress was made on Field Widget Actions show in the "Add New Action" unavailable tools, assigned to Joonas Meriläinen (mErilainen). This issue resolves confusion where action buttons appear as available options in dropdown lists but cannot actually be added due to missing dependencies, improving the user experience when configuring forms.
How can I help on this project?
- Prioritize testing and review resources for the existing merge request on UUID generation to accelerate delivery of multi-button deployment capability.
- Support coordination between this module and broader AI initiative teams to ensure alignment on configuration patterns and deployment workflows.
AI translate
The AI translate module saw five new issues raised during this period, signaling active user engagement but also highlighting areas where the module's current capabilities need refinement. All activity was in the form of new issue creation; no development work was merged.
Two bug reports point to a core quality concern: the module is not reliably preserving HTML formatting when translating rich text content. Users report that markup such as paragraph and anchor tags are being corrupted or improperly inserted during translation, which would degrade content quality for sites using formatted fields. Both issues have been accepted and are awaiting work.
On the feature side, a proposal for batch translation suggests the current approach is inefficient—translating one field at a time leads to redundant API calls and higher costs. The assigned contributor is exploring aggregating multiple fields into a single request to reduce overhead. A broader architectural question has also been raised about refactoring the translation workflow to support agent-driven translation and better code reuse across different access points.
A user question about the "Chat proxy to LLM" provider remains unanswered, indicating a need for clearer documentation or community response.
How can I help on this project?
- Prioritize development resources to address the HTML preservation bugs, as these directly affect content quality for production users.
- Commission clearer user-facing documentation explaining provider options and configuration to reduce support overhead.
References
[2] Add a Moderation Guardrail plugin (configurable moderation provider/model as a guardrail)
[3] Improve ai_ckeditor UX when no provider modules are installed
[8] Support long running chunking in 1.x branch for AI Search 1.x readiness
[14] Taxonomy automator clears valid term values when the LLM returns HTML-encoded entities (e.g. &)
[21] feat(ai_ckeditor): warn users when no AI provider is installed in the CKEditor settings tab
[34] Non-BC support for long running chunks
[44] Add AI ECA Interceptor submodule: intercept AI requests/responses through ECA
[55] Symmetric translation: component instance version updates must propagate to all translations
[58] Prevention of publishing on Conflict in Canvas UI
[60] Include language-aware indexing for ContentTemplate-rendered Canvas content
[67] AI continues to use unsupported React libraries while creating a component
[68] Issues/3591591: Add fixture support for layout to use in tests
[77] feat(Conflict detection): #3587526 "Detect conflicts during publishing of changes to Page entity"
[79] Add conflict detection and resolution UI for selective publishing
[82] chore(Data model): #3591679 Use string representations of expressions in...
[84] Issue #3584136: Fix canvas_component_agent prompt bugs (Image import,...
[86] #3591695 Include language-aware indexing for ContentTemplate-rendered Canvas content
[91] Draft: feat(conflict): Add conflict resolution UI with viewport selection and route integration
[94] Add context settings validation: max_global_items must not exceed max_items
[97] Copy and layout updates on context item scope form
[99] Add Configure Link in Modules Page
[102] Create CCC video showing how to configure it
[105] Recruit CCC beta testers
[116] Create multi-vocabulary taxonomy scope plugin
[118] Issue #3586284: Clarify context item scope form copy and layout.
[120] Issue #3586272: Add validation that max_global_items cannot exceed max_items
[122] Issue #3586285: Add configure links to Context Control Center.
[124] How to Apply Filters in VDB for RAG Chatbot
[126] Attempt long running chunk indexing for 1.x branch without BC
[129] Issue #3584010: Add FilterableRagTool with per-index derivatives and attribute filtering
[130] #3584014: Resolve "Attempt long running chunk indexing for 1.x branch without BC"
Shipped
- Long-running chunking backport to AI 1.x in progress — Non-breaking compatibility support for content exceeding 10 chunks was merged[34], but the issue remains open[8] as 1.x moves closer to 2.x parity for AI Search readiness.
- Canvas conflict detection UI changes merged — UI changes for detecting conflicts caused by external entity updates were completed[52].
- Canvas data model refactoring advanced — Coalescer now operates on EntityFieldBasedPropExpressionInterface objects instead of string lists[64][89], and CoalescerTest uses string expression representations[54][82].
- Context Control Center configuration validation added — Validation ensuring max_global_items cannot exceed max_items was merged[94][120].
- Canvas tooling improvements — Deprecated upload/download CLI commands removed[65][90], JavaScript packages updated[51][78], and feature flag merged for content entity reference props[53][76].
Ongoing
- Moderation Guardrail plugin under review — MR adds configurable moderation provider/model as a guardrail, eliminating need for separate plugin implementations[2][20].
- Automators migration to Structured Output in progress — MR 1291 moves automators from custom JSON parsing to Structured Output API[4][22].
- FilterableRagTool awaiting review — MR introduces deriver-based FunctionCall plugin exposing Search API index attribute fields as optional context_definitions for LLM-driven filtering[123][129].
- Canvas symmetric translation work continues — Component instance version updates must propagate to all translations, with alternate approach using StagedLanguageConfigOverride[55][80][87].
- AI CKEditor UX improvements in progress — Issue warns users when no provider modules installed in CKEditor settings, with MR 1701 open[3][21].
AI (Artificial Intelligence)
The AI module saw significant activity in the past 24 hours focused on infrastructure improvements, bug fixes, and architectural progress toward Symfony AI adoption.
Scott Euser (scotteuser) merged MR !1690 to backport long-running chunking support to the 1.x branch, addressing limitations in AI Search 1.x for content items exceeding 10 chunks. This brings 1.x closer to feature parity with 2.x ahead of AI Search 1.x readiness.
Ahmad Khalil (ahmad-khalil-imagex) opened two MRs (!1699 for 2.x and !1700 for 2.0.x) porting the Field Widget Action / Automators generalization from 1.4.x, extracting common logic into AutomatorBaseAction::runAutomatorSubmit() and setFormInput(). Multiple GitLab CI configuration updates were merged by Artem Dmitriiev (a.dmitriiev), alongside test fixes for MDXEditor in 2.x.
Several new issues were opened, including bug reports for token usage loss in Fiber-based streaming in OpenAiBasedProviderClientBase::chat(), HTML-encoded entity handling in taxonomy automators, and missing submit buttons in RAG/Vector Search tool configuration. Ahmad Khader (Ahmad-Khader) opened MR !1702 adding a configurable Moderation Guardrail plugin, enabling any moderation provider to function as a guardrail through configuration rather than separate plugin implementations.
How can I help on this project?
Review MR !1702 implementing the Moderation Guardrail plugin or MR !1680 for ai_json_schema off-canvas dialog support. Pick up unassigned issues like token usage loss in Fiber streaming or migrating RestrictToTopic to use the ai_provider_configuration form element.
Drupal AI Initiative
The Drupal AI Initiative saw planning and organizational activity over the past 24 hours, with several new issues created around event logistics and community outreach.
Multiple issues were opened by wouters_f (wouters_frederik) focused on the Enterprise AI Summit event, including tasks for making the site mobile-responsive, updating sponsor information on the event website (with three gold sponsors locked in, two confirmed silver sponsors including CKEditor, and one bronze sponsor Amazee), and recruiting Dutch volunteers for event support roles. Additional planning items include exploring partnerships with organizations like ThomsonReuters and CIONet, and organizing social media outreach.
A UX meeting summary from June 15 was also updated, documenting discussions around the AI ecosystem page in the AI Dashboard module, which provides a searchable, filterable directory of AI modules and recipes.
No merge requests were merged or commits pushed during this period.
How can I help on this project?
Pick up the mobile responsiveness issue for the Enterprise AI Summit site if you have front-end skills. Help organize social media outreach to promote upcoming events. Contribute to updating sponsor pages on the event website.
AI Integration - ECA
Activity on the AI Integration - ECA module remains relatively quiet over the past 24 hours. The primary focus continues to be the Add AI ECA Interceptor submodule: intercept AI requests/responses through ECA feature request, which aims to create a new submodule exposing AI request, response, stream, and failure events as first-class ECA Events, Conditions, and Actions. This would allow developers to intercept and react to AI provider calls through the ECA framework, leveraging events like PreGenerateResponseEvent, PostGenerateResponseEvent, and PostStreamingResponseEvent.
The issue remains open with no merge requests merged or commits pushed during this reporting period. No contributors have been actively commenting or advancing the work in the last 24 hours. The feature is tagged as part of the AI Initiative Sprint and Road to 1.0.0, indicating its importance to the module's maturity roadmap.
How can I help on this project?
Review the design approach for the AI ECA Interceptor submodule and provide feedback on the event architecture. The issue has a related MR (!8) that needs review. Consider testing the interceptor functionality with real AI provider scenarios to validate the implementation.
OpenAI Provider
The OpenAI Provider module saw one new merge request opened during the reporting period. Marcus Johansson (Marcus_Johansson) submitted Resolve #3593019 "Add imagetoimage possibilities", introducing image-to-image functionality with 248 lines of changes. The MR is currently open and awaiting review.
No commits were merged and no issue statuses changed during the 24-hour window, indicating the module is in a review phase for this feature addition.
How can I help on this project?
- Review the image-to-image possibilities MR to test the implementation and provide feedback on the API changes.
- Check the module's open issue queue for unassigned bugs or feature requests without active merge requests that you could help address.
AI Agents
Activity in the AI Agents module over the past 24 hours was limited to issue tracking. The Schema error for AI Agents CKEditor plugin issue remains open, documenting missing schema configuration for the AICKEditor plugin that integrates AI Agents functionality into the AI CKeditor module. This gap is causing Drupal to report schema errors. The issue was originally reported by svendecabooter and is related to merge request !221, though no new commits or merges occurred during the reporting period.
No merge requests were merged and no commits were pushed in the last 24 hours. The module appears to be in a quiet phase with no blocking progress reported, though the schema error represents technical debt that should be addressed to ensure proper configuration management.
How can I help on this project?
- Review merge request !221 related to the Schema error for AI Agents CKEditor plugin issue to help move it toward completion.
- Test the AI Agents CKEditor plugin integration to identify any additional schema or configuration issues.
Drupal Canvas
The past 24 hours saw significant progress across multiple Canvas initiatives, with eight merge requests merged and several critical features advancing.
The conflict resolution feature moved forward as Ravi Maniyar (ravi.maniyar.123) merged UI changes for detection of conflicts caused by external updates to underlying entity of auto-save entry, introducing conflict detection UI behind a dev flag. Work continues on Prevention of publishing on Conflict in Canvas UI through MR !1193 by Feliksas Mazeikis (f.mazeikis).
Data model improvements were completed by Christian López Espínola (penyaskito) and Wim Leers (wimleers), who merged refactorings to make Coalescer operate on EntityFieldBasedPropExpressionInterface objects and use string representations of expressions in CoalescerTest. Translation support advanced as Ben Mullins (bnjmnm) merged language-aware indexing for ContentTemplate-rendered Canvas content.
Bálint Kléri (balintbrews) shipped multiple tooling improvements: JavaScript package updates, removal of deprecated upload and download CLI commands, and a feature flag for content entity reference props via the new canvas_dev_er module. Test stability improved as Mullins fixed languageSelect.spec.ts failures, and Mazeikis resolved a RequestTrait bug causing request stack mutation.
Open work includes MR !1281 by Mullins addressing Boolean prop values not retained correctly on SDC components, and MR !1276 by Matt Glaman (mglaman) tackling inefficient RegexConstraint causing JIT stack limit errors. The symmetric translation effort continues in component instance version updates must propagate to all translations with MR !1271 by Leers.
How can I help on this project?
- Review MR !1281 for Boolean prop values not retained correctly on SDC components with multiple boolean props.
- Review MR !1276 addressing RegexConstraint JIT stack limit issues on StringLong fields.
- Pick up the novice-friendly Introduce EntityFieldBasedPropExpressionInterface::getFieldDefinition(), which has no assigned contributor or open MR.
Context Control Center (CCC)
Three merge requests landed during the reporting period, improving usability and validation. Matt Glaman (mglaman) contributed Issue #3586272: Add validation that max_global_items cannot exceed max_items, preventing invalid configuration where global context limits exceed total item limits. Rob Loach (robloach) added configure links to the module listing page via Issue #3586285: Add configure links to Context Control Center, following standard Drupal UX patterns. Kristen Pol (kepol) refined the context item scope form in Issue #3586284: Clarify context item scope form copy and layout, improving help text and field ordering.
Active development continues on architectural refinements. Kristen Pol is working through sprint planning and roadmap updates, evaluating integrations like ai_empathy, and preparing beta testing recruitment. A critical blocker emerged: hook_ai_context_scope_values_alter() is ignored by scope forms and labels reveals that the documented alter hook is never invoked by forms or resolvers, preventing custom scope values from appearing in the UI. The Project Update Bot opened an automated Drupal 12 compatibility issue with an accompanying MR containing deprecation fixes.
How can I help on this project?
Investigate and propose a solution for hook_ai_context_scope_values_alter() is ignored by scope forms and labels, which blocks stable release. Review the automated Drupal 12 compatibility fixes to ensure changes are appropriate. Help document CCC configuration or create beta test case scenarios to support upcoming testing efforts.
AI Search
The AI Search module saw significant progress over the past 24 hours on metadata filtering capabilities for RAG-powered search.
Scott Euser (scotteuser) successfully merged #3584014: Resolve "Attempt long running chunk indexing for 1.x branch without BC", backporting long-running chunk indexing functionality to the 1.x branch without breaking compatibility. The implementation gracefully detects method availability and falls back when needed, addressing an enhancement previously available only in 2.x.
m4olivei opened MR !38 introducing FilterableRagTool, a deriver-based FunctionCall plugin that addresses Add FilterableRagTool to augment RagTool supporting dynamic metadata filtering via additional context definitions. This creates one derivative per Search API index and exposes attribute fields as optional context_definitions, allowing LLMs to pass filter values as query conditions. The existing RagTool remains unchanged for backwards compatibility. The feature directly resolves How to Apply Filters in VDB for RAG Chatbot, which was closed during this period.
How can I help on this project?
Review MR !38 for FilterableRagTool, testing the deriver logic and attribute filtering with various Search API index configurations. Pick up Views should have a warnings when creating a view that has 1+ non full text Filters using an AI Search backend, an unassigned task needing implementation.
Field Widget Actions
Activity this week focused on two open issues related to configuration and plugin availability. Daniel Bosen (daniel.bosen) continued work on Generate UUIDs for list-style widget-action settings applied via config actions, which aims to resolve UUID collisions when multiple suggestion buttons are added via recipes. The issue addresses a limitation where hard-coded UUIDs in the setupFieldWidgetAction config action cause buttons to write content to the same field rather than their intended targets. MR !24 remains open with 73 lines of changes, currently in needs work status.
Meanwhile, Field Widget Actions show in the "Add New Action" unavailable tools saw updates. This bug, assigned to Joonas Meriläinen (mErilainen), addresses confusion in the UI where plugins appear in the dropdown list despite failing the isAvailable check when users attempt to add them. The issue particularly affects AI Automators where availability depends on entity type and field compatibility.
No merge requests were merged or commits pushed during this period. Both issues remain blocking for improved recipe support and cleaner plugin selection UI.
How can I help on this project?
- Review MR !24 on the UUID generation issue and test whether the config action approach properly handles multiple widget actions without collisions.
- Help diagnose the plugin availability bug by identifying where the isAvailable check should be enforced during dropdown population.
AI translate
The AI translate module saw active issue triage during the reporting period, with five issues receiving attention on June 22nd. No merge requests were merged or commits pushed in the past 24 hours.
Two significant bugs around HTML preservation were discussed: HTML markup is corrupted/not preserved when translating formatted text fields (text_with_summary, text_long) reported by Carlos Busto Capeáns (cbccharlie), and HTML markup gets added after certain tags from Tom Wauman (tom.wauman). Both issues highlight problems where LLM providers strip, alter, or inject unwanted HTML tags during translation of formatted text fields.
Tamas Balog (tbalog) proposed a feature for aggregating a node's translatable field-columns into a single chat request, noting that TextTranslator::translateContent() currently makes one chat request per field-column, resulting in redundant prompt instructions. Sven Decabooter (svendecabooter) opened Refactor translation workflow to support Tool API and agent-driven translation, proposing architectural changes to abstract translation logic for use across UI, Drush, and Tool API entry points. Michael Anello (ultimike) raised questions about the Chat proxy to LLM provider functionality.
How can I help on this project?
- Investigate the HTML corruption bugs in issues 3585525 and 3585526 to identify whether the problem lies in prompt engineering or post-processing logic in TextTranslator or ChatTranslationProvider.
- Review the architectural implications of issue 3585523 and propose refactoring patterns to abstract translation logic from UI/Drush entry points.
References
[2] Add a Moderation Guardrail plugin (configurable moderation provider/model as a guardrail)
[3] Improve ai_ckeditor UX when no provider modules are installed
[4] Move Automators to Structured Output
[8] Support long running chunking in 1.x branch for AI Search 1.x readiness
[21] feat(ai_ckeditor): warn users when no AI provider is installed in the CKEditor settings tab
[22] feat: #3577170 Move Automators to Structured Output
[34] Non-BC support for long running chunks
[51] Update JS packages
[53] Add feature flag for content entity reference props
[55] Symmetric translation: component instance version updates must propagate to all translations
[65] Remove deprecated upload and download CLI commands
[76] chore(Theme builder): #3591711 Add feature flag for content entity reference props
[78] chore: Update JavaScript packages
[82] chore(Data model): #3591679 Use string representations of expressions in...
[90] chore(CLI Tool): Remove deprecated upload and download CLI commands
[94] Add context settings validation: max_global_items must not exceed max_items
[120] Issue #3586272: Add validation that max_global_items cannot exceed max_items
[129] Issue #3584010: Add FilterableRagTool with per-index derivatives and attribute filtering