Daily Digest
Daily Digest – 10 June 2026
2026 Capabilities Progress
- Page generation — Canvas merged full-screen extension support [24][112][136] and advanced work on entity reference selection APIs [130][166], both foundational for AI-driven page assembly. Component context improvements [132] and orchestration loop work [134][174] are in progress but not yet production-ready.
- Context management — The Context Control Center completed a redesigned listing interface [3][184] and simplified the underlying data model [177][185], making context organization more accessible. Documentation gaps around tagging [182] and architectural discussions on multi-type context support [179][180] indicate the feature set is still evolving.
- Background agents — Significant architectural work is underway with the agent entity structure migration into AI core [7][8][9], including runner abstractions [49][50][56], event systems [51], permissions controls [57], and message queue integration [59]. This represents planning and scaffolding; no background execution capabilities were delivered today.
- Design system integration — No direct progress today. The meta issue [24] remains open with no recent activity, and no component generation capabilities were advanced during this period.
- Content creation and discovery — AI Search added filterable search tools with attribute-level precision [193] and non-content entity access controls [192]. Content editing improvements include CKEditor streaming fixes [5][26], image description support for automators [79], and guardrail enhancements [33][41]. Translation quality improved with prompt warning fixes [198][207] and field extraction corrections [17][18][199][209].
- Advanced governance — Canvas delivered conflict detection for auto-save operations [122][165][167] and selective publishing with resolution UI [175], plus translation audit trail improvements [116][160]. Prompt validation [14] and automator event hooks [38] remain in development.
- Intelligent website improvements — No direct progress today. Observability work to align with GenAI telemetry standards [27][39] and evaluation framework development [31] represent instrumentation groundwork but no learning or proposal capabilities were delivered.
- Multi-channel campaigns — No direct progress today. No work on cross-channel content distribution, social media integration, or email platform connectivity was observed during this period.
Shipped
- AI module maintenance releases published — Versions 1.4.2 and 1.3.7 were released after successful quality assurance testing [12][62].
- AI automator form crash fixed — Resolved a bug where adding automator fields to entity bundles with no available fields caused the configuration form to break [15][70][71].
- Canvas translation management completed — Translation features for configuration-based component trees were merged, enabling TMGMT integration for content templates and page regions [121].
- Canvas automated dependency updates enabled — Renovate integration was merged to automatically update npm and composer dependencies, reducing maintenance overhead [113][169][172].
- AI translate installation warning eliminated — Fixed undefined array key errors appearing on fresh installations when no language-specific prompts were configured [198][207].
Ongoing
- AI agent architecture migration to core module — Work continues on moving agent definitions from the contrib ai_agents module into core AI, introducing pluggable runner systems supporting both Drupal-native and Symfony AI execution [7][8][9].
- Canvas upgrade bug blocking 1.5.1 adoption — A critical issue causing LogicException errors on content templates with dynamic field bindings during upgrades from 1.4.1 to 1.5.1 is under review [111][142].
- AI ecosystem documentation catalog in progress — A curated index listing all AI-related modules with links and summaries is being developed to improve discoverability for new adopters [25][85].
- Anthropic provider gaining prompt caching and PDF support — A merge request adding cost-saving prompt caching and PDF document processing capabilities is under review [91].
- Canvas full-screen extension type in development — Work has begun on supporting standalone tools like translation dashboards, addressing limitations of the current sidebar-only model [112][136].
AI (Artificial Intelligence)
The AI module saw significant quality and stability improvements during this period, with two releases shipped and several structural bugs resolved. The team also advanced planning for version 2.0, particularly around agent architecture, while clarifying the ecosystem for adopters.
Two maintenance releases—1.4.2 and 1.3.7—were published after successful QA runs. Contributors fixed a critical testing issue where the MDX editor's conversion to a Drupal behavior caused JavaScript test failures (Fix FunctionalJavascript test failures), merged by Artem Dmitriiev. A longstanding form crash when automator fields were added to entity bundles with no fields was also resolved (Add AI Automator field form breaks), with merge requests by shalini jha and Artem Dmitriiev merged to multiple branches.
Work continued on the [META] Move AI Agents architecture into the AI module, led by Marcus Johansson with Michael Lander and harivansh sharma assigned. This restructuring will move agent definitions from the contrib ai_agents module into core AI, introduce a pluggable runner system, and support both Drupal-native and Symfony AI execution backends. Related planning issues cover structured input/output, control mechanisms, and migration paths. A discussion issue explores alignment with other agent frameworks to inform the canonical agent definition (Define the canonical agent definition).
Bug reports and feature requests arrived across chatbot, automator, and provider components. Two open merge requests address token usage loss in streamed OpenAI chat output (Fiber branch drops token usage, by Jérôme Tchania) and improved media rendering in the chatbot viewport (Render images and videos inside the chatbot viewport, by Ahmad Khalil). A Gemini streaming bug with 2.x models (streamGenerateContent causes 400 Bad Request) remains open.
Marcus Johansson filed a documentation task to create a curated ecosystem index listing all related modules—providers, tools, agents, and distributions—to improve discoverability for new adopters (Document the AI module ecosystem), assigned to Rob Loach. The team also began work to align observability tracing with OpenTelemetry GenAI conventions (Align ai_observability to gen_ai.* conventions) and structured a cross-project Drupal Eval Commons framework to enable shared evaluation formats across AI modules (Drupal Eval Commons umbrella).
How can I help on this project?
- Prioritize design-system alignment work for Component Generation (assigned to Rakhi Mandhania, [META]Design System Integration) to reduce structural risk as code-generation features mature.
- Allocate resources to finalize the agent architecture migration plan and shepherd the related issues through review, as this is foundational to the 2.0 release.
- Support ecosystem documentation efforts by ensuring the curated module index is published promptly, as this directly lowers the barrier to adoption for new users.
Drupal AI Initiative
The AI Initiative made significant progress consolidating and finalising planned features this week. Five proposed capabilities moved to closed status as the team wrapped up planning work: content pre-moderation using AI, document classification, AI-powered content suggestions for editors, image safety validation to block inappropriate uploads, and a marketing article template. These closures indicate the team has completed definition work and is ready to move forward with delivery.
Two new ideas emerged. Marcus Johansson (Marcus_Johansson) proposed an AI Cost & Usage module that would give site owners visibility into their AI spending through a local dashboard, with optional community telemetry to help the initiative understand real-world usage patterns. A second proposal suggests creating a provider for Vercel AI Gateway, which would let sites access hundreds of AI models through a single endpoint rather than managing multiple vendor relationships.
Development continues on audio transcription and summarization, assigned to Artem Dmitriiev (a.dmitriiev), which will automatically enrich audio media with text transcripts and summaries.
How can I help on this project?
- Prioritise whether cost visibility and community telemetry warrant immediate resourcing, as this directly addresses site owner concerns about AI spending transparency.
- Evaluate the strategic value of gateway provider integration versus direct provider connections to inform roadmap decisions.
AI Integration - ECA
Work is underway to extend the module's integration with artificial intelligence capabilities. Marcus Johansson (Marcus_Johansson) has begun implementing support for Add ECA execute action for Rerank, which will enable users to improve search result relevance through AI-powered reordering of content. This capability allows the system to automatically prioritize the most relevant information when users perform searches, enhancing the user experience without requiring manual sorting or filtering.
The work is part of the project's roadmap toward a stable 1.0.0 release and aligns with broader AI innovation initiatives. Currently, the module supports several AI operations including conversational interfaces, content moderation, and speech processing. Adding reranking functionality closes a gap in the available capabilities and brings the module closer to feature completeness.
The issue was opened within the reporting period and is assigned for implementation. No code has been merged yet, which is expected for work that has just begun.
How can I help on this project?
- Prioritize resources or clear roadblocks if the 1.0.0 release timeline is critical to organizational AI strategy.
- Identify early adopters within the organization who could test reranking features once available and provide business-relevant feedback.
AI Agents Test
The AI Agents Test module saw automated compatibility work this period in preparation for Drupal 12. A merge request was opened to address deprecated code, part of the broader Automated Drupal 12 compatibility fixes effort. This work ensures the module will continue functioning when the Drupal platform upgrades to its next major version, avoiding disruption for users who depend on this testing functionality.
No code was finalized or merged during this period. The compatibility updates remain under review as an open merge request. This is routine maintenance work typical for modules in active development, ensuring the project stays aligned with the broader Drupal ecosystem's evolution.
How can I help on this project?
- Assign a technical reviewer to evaluate and merge the pending Drupal 12 compatibility updates, ensuring the module remains supported.
- Clarify the project's roadmap and priority level to help contributors understand whether to invest in further development or focus on maintenance.
Anthropic Provider
Development is underway to add two significant capabilities to the Anthropic integration. A new merge request for Bump SDK constraint and drop method_exists defensive check was opened by Carlos Ospina (camoa), bringing prompt caching and PDF document support to the module.
Prompt caching will allow the system to reuse conversation context efficiently, reducing costs and improving response times for repeated interactions. Site administrators will be able to enable this feature through a simple toggle and choose how long to cache prompts (5 minutes or 1 hour). The work also introduces the ability to process PDF documents directly, expanding the types of content the system can work with beyond plain text.
This represents a second phase of modernization work building on earlier improvements. The changes are designed for the module's 1.3 release branch and are ready for review.
How can I help on this project?
- Ensure the maintainer team has capacity to review and merge the pending work, which spans over 1,600 lines of changes.
- Consider whether beta-testing resources are available to validate prompt caching before the 1.3 stable release.
Huggingface Provider
The Huggingface Provider module saw development progress during this period with work beginning on text translation capabilities. Ahmad Khader (Ahmad-Khader) opened a merge request to add text translation, representing 132 lines of changes. This enhancement would allow users to translate text content through the Huggingface platform, expanding the module's utility for multilingual websites and global content operations.
The merge request is currently under review and has not yet been integrated into the module. No other development activity, commits, or issue updates were recorded during this reporting period.
How can I help on this project?
- Ensure the translation feature receives timely code review so it can be tested and released to users who need multilingual capabilities.
- Consider whether additional language or AI provider features should be prioritized to maximize the module's value for content operations.
AI Agents
The AI Agents project saw active issue triage and community contribution over the past 24 hours, with focus on quality improvements and alignment with the broader AI module ecosystem.
The team closed a duplicate bug report and addressed a labeling inconsistency in the administration menu, though the fix to align with the AI module's new "Tools & Automation" categorization is still in progress. Several data handling bugs were identified and accepted: issues with status reporting when tool output is missing expected metadata, entity field information incorrectly inheriting properties across fields, and the content seeding tool mishandling complex field structures. Contributors have proposed solutions for most of these.
Two issues address important guardrails: ensuring complete tracking information for tool execution and preventing configuration conflicts when custom agents use names that clash with built-in functionality. The latter is marked ready for final review.
Work continues on improving the configuration interface for property constraints and on compatibility with the upcoming Drupal 12 release.
How can I help on this project?
- Prioritize review capacity for the configuration collision fix, which is ready for final approval and prevents admin errors.
- Ensure testing resources are available for the data handling bugs, which affect content creation workflows and multi-field entities.
Drupal Canvas
Canvas continues progress on multilingual capabilities and core platform stability. The most significant delivery is the completion of translation management for configuration-based component trees: Symmetrically translatable config-defined component trees, STEP 4 was merged, enabling TMGMT integration for content templates and page regions. This complements the content-entity translation work completed last week and brings Canvas to parity across both content and configuration translation workflows.
The team merged automated dependency updates via Renovate, reducing ongoing maintenance overhead. Several translation UI refinements are in review, including a delete translation confirmation modal and fixes for missing language checkmarks in templates.
A critical bug affecting users upgrading from 1.4.1 to 1.5.1 is under review: LogicException on content templates with dynamic field bindings. A merge request has been opened and requires validation before release. Additionally, work has begun on a full-screen extension type to support standalone tools like translation dashboards, addressing feedback that the current sidebar-only model constrains certain workflows.
Open testing work includes multilingual search indexing and improved Canvas AI orchestration to avoid timeouts on hosted platforms.
How can I help on this project?
- Prioritize validation and merge of the 1.4.1 to 1.5.1 upgrade bug fix to unblock users currently unable to load or save affected templates.
- Allocate resources for security and documentation review of the entity reference selection backend APIs, which are blocking frontend configuration work.
Context Control Center (CCC)
Design and architecture discussions dominated the past 24 hours as the team weighs strategic decisions about the module's structure and usability.
Two significant pieces of work are now ready for review. Matt Glaman (mglaman) has prepared an updated listing page design that reorganizes how context information is displayed to users, making status and scope information more visible and accessible. He has also delivered work to simplify the underlying data structure by removing unnecessary complexity around how context items are organized, following improvements in the system's scheduling capabilities.
Several conversations are underway about the product's direction. The team is exploring whether to support multiple types of context items to enable features like providing good and bad content examples. Michael Anello (ultimike) raised questions about how the tagging feature works and requested clearer documentation. Separately, Kristen Pol (kepol) is investigating whether less expensive language models can deliver acceptable results for the Chicago demonstration, potentially reducing costs from $1-2 per page to more sustainable levels.
How can I help on this project?
- Prioritize a decision on whether multiple context item types are needed, as this affects work already in progress on simplification.
- Allocate budget for improved user documentation, particularly around the tagging feature where gaps have been identified.
AI Dashboard
The AI Dashboard project made significant progress over the past 24 hours on improving how users discover and adopt AI capabilities within Drupal. Two major updates were delivered focusing on making the AI ecosystem more accessible.
The team completed work on AI Ecosystem Documentation, creating a browsable catalog of all AI-related modules available in the Drupal ecosystem. This new resource shows module titles, descriptions, and adoption metrics (install counts), helping organizations evaluate which AI tools best fit their needs. The catalog has been organized by categories to make navigation easier.
New content moderation and image safety validation capabilities were also added to the platform, expanding the range of AI-powered features available to users.
One issue remains open: users report that the "View Commands" buttons in the Features section are missing required installation information, preventing them from deploying AI recipes to their sites. Additionally, the team has identified several refinements needed for the ecosystem catalog, including improved readability and automated updates from the central module registry.
How can I help on this project?
- Prioritize fixing the installation command issue, as it currently blocks users from deploying any AI features to their sites.
- Consider allocating resources to automate the ecosystem catalog updates, ensuring users always see current module information without manual maintenance overhead.
AI Search
Two significant enhancements are in development to expand the module's search capabilities beyond basic content. The first addresses a fundamental limitation: currently, the search system can only perform access control checks on standard content items. A merge request is now open to introduce a flexible system that will allow access checks to work with any type of searchable data, including custom entities and non-content sources. This opens the door to indexing and searching a wider range of business information while maintaining proper security controls.
The second enhancement in progress will make search results more precise by allowing filters to be applied automatically. Rather than returning all possible matches, the system will be able to narrow results based on specific attributes—for example, filtering documents by department, date range, or category. This work creates a separate tool for each search index, ensuring that filtering options remain relevant to what's being searched.
Both changes are under review and have not yet been merged into the main codebase.
How can I help on this project?
- Ensure the team has dedicated code review capacity to assess and merge the two pending enhancements, which will unlock broader search use cases.
- Identify and prioritize which non-content data sources would deliver the most business value to index first once the new access control system is available.
Field Widget Actions
Field Widget Actions is a Drupal module in active development. Over the last 24 hours, the team made progress on quality improvements related to how users interact with the system's action selection interface.
A bug was identified and assigned where certain actions appear as options in selection menus even when they cannot actually be used in that context. This creates confusion when users attempt to add functionality that the system will ultimately reject. Tamás Brückner (brtamas) has been assigned to resolve this issue, which will improve the user experience by ensuring that only genuinely available options are presented in dropdown lists. This work is part of the AI Initiative Sprint, indicating alignment with the project's strategic direction in automation capabilities.
No code changes were completed during this period, which is normal for a module in active development where issue diagnosis and assignment precede implementation work.
How can I help on this project?
- Ensure the assigned developer has adequate time allocated to complete the interface bug fix without competing priorities.
- Clarify whether the AI Initiative Sprint has specific delivery milestones that should inform prioritization of this and related work.
AI translate
The AI translate module made progress on stability improvements and editor experience over the past 24 hours. A fix was merged that eliminates warning messages that appeared on fresh installations when no language-specific translation prompts had been configured yet. This issue, Undefined array key warning in ChatTranslationProvider when no language-specific prompt is configured, was contributed by Matthew Tift (mtift) and removes technical errors that could confuse users during initial setup.
Several improvements remain in progress. Work continues on making the translation interface more user-friendly, including a proposal to display human-readable model names instead of technical identifiers when editors select AI translation options. Contributors are also addressing issues where certain content types are not being translated correctly, including URL aliases and custom fields that don't follow standard naming conventions.
The module is also preparing for future Drupal versions, with automated compatibility updates being generated for Drupal 12. As an evolving module, it has several open issues around field support and error handling that are normal for this stage of development and are being actively worked on by contributors including Jordan Koplowicz (koppie), yuri.p (rurik666), and others.
How can I help on this project?
- Consider funding dedicated testing resources to validate translation accuracy across diverse content types and field configurations, particularly for common modules like Address and Metatag.
- Facilitate coordination between this project and the AI core module team to align on shared infrastructure decisions and prioritize feature requests.
Pinecone VDB Provider
During this reporting period, automated compatibility work began to prepare the module for Drupal 12. The Automated Drupal 12 compatibility fixes for ai_vdb_provider_pinecone 2.0.x-dev issue was opened, with a corresponding Automated Project Update Bot fixes merge request submitted. This work ensures the module will remain compatible with the next major version of Drupal, preventing future disruption when the platform upgrades.
This is routine maintenance expected for modules at this stage. The automated changes remove outdated code patterns and align the module with current platform standards. No code has been merged yet, so this represents work in progress rather than delivered functionality. There are no blocking issues at this time.
How can I help on this project?
- Allocate developer time to review and merge the pending compatibility changes, ensuring the module stays current with platform evolution.
- Consider prioritizing manual testing resources once automated fixes are merged to validate functionality on Drupal 12.
SQLite VDB Provider
Activity over the past 24 hours has been limited to automated maintenance work. A merge request titled Automated Project Update Bot fixes was opened by Project Update Bot (Project-Update-Bot) to apply routine updates to the project. This type of automated maintenance helps keep the module's dependencies and coding standards current, reducing technical debt and ensuring compatibility with the broader Drupal ecosystem.
No issues were updated, and no code was merged during this period. This reflects a quiet day in the project's development cycle, with no user-facing changes or feature progress to report.
How can I help on this project?
- Review the pending automated update merge request to ensure it can be merged promptly, keeping the project current with ecosystem standards.
- Evaluate whether the project needs additional development resources to accelerate feature delivery or address user needs.
AI usage limits
The AI usage limits module saw minimal activity over the past 24 hours. An automated maintenance task was initiated to apply routine fixes and updates to the project infrastructure, opened by the Project Update Bot. This type of housekeeping work helps keep the module aligned with current platform standards and ensures ongoing compatibility.
No substantive feature development, bug fixes, or user-facing improvements were delivered during this period. The module remains in active maintenance, with no urgent issues or blocking concerns identified.
How can I help on this project?
- Consider evaluating whether additional developer resources are needed to accelerate feature development or address any backlog of user requests.
- Engage with stakeholders to clarify strategic priorities for the module and ensure the team has clear direction on what capabilities matter most.
References
[3] Update documentation for FWA and ai_automators
[5] ai_ckeditor: streamGenerateContent causes 400 Bad Request with Gemini 2.x models
[7] Move the agent entity structure into the AI module
[8] [META] Move AI Agents architecture into the AI module
[9] [Discuss] Define the canonical agent definition (informed by other agent frameworks)
[14] ai_prompt entity validation
[15] Add AI Automator field form breaks if fields not available in any bundle
[17] Remove hardcoded field-name patterns from ai_translate's TextExtractor::shouldExtract()
[18] Move TextExtractor service to AI core
[24] [META]Design System Integration with Component Generation
[25] Document the AI module ecosystem: a categorized list of related modules with links and summaries
[26] CKEditor AI streaming fails for OpenAI when Guzzle uses StreamHandler for "stream => true" requests
[27] [Layer 2] Cross-project result envelope tracking (every_eval_ever 0.2.2 + additional_details)
[31] Drupal Eval Commons umbrella
[33] Rename Guardrails "RegExp guardrail" plugin to just "RegEx"
[38] Ai Automators could need more Events before asking AI
[39] [Layer 2] Align ai_observability OTel emission to GenAI semantic conventions (gen_ai.*)
[49] Create an agent runner abstraction as plugins
[50] Create a Drupal agent runner
[51] Shared event points for both agent runners
[56] Create a Symfony AI agent runner
[57] Agent runners must support running tools under a configured role/permissions
[59] Integrate the runner with Symfony Messenger (or similar)
[62] QA 1.4.1 and 1.3.7
[70] Issue #3558728: Fix AI Automator form break when bundle has no fields
[71] Issue #3558728: Fix AI Automator form break when bundle has no fields
[79] Issue #3586478: "Add rich-text image description support to AI Automators"
[85] Create article template for additional current capabilities
[91] Issue #3590963: Bump SDK constraint and drop method_exists defensive check
[112] Add "page" extension type for full-screen Canvas extensions
[113] CI: Renovate job to auto-update npm and composer dependencies
[116] Update Canvas component auditing UI to include translation labels
[122] Detect conflicts for Page entities during the handling of auto-saves/pending calls
[130] Backend APIs for Entity Reference Selection
[132] Canvas AI: Component context required props missing required flag
[134] Canvas AI: Client-side orchestration loop for Canvas AI(POC)
[136] Add "page" extension type for full-screen Canvas extensions
[142] bug: #3591642 Fix LogicException on component instance updates and config...
[160] #3591612 auditing UI to include translation labels
[165] fix(Conflict detection): Exclude computed internal fields from Page entity normalization
[166] feat: #3585354 add content-entity-types / fields endpoints for entity reference selection UI
[167] feat(Conflict detection): #3589076 "Detect conflicts during auto-save polling"
[169] Resolve "CI: Renovate job to auto-update npm and composer dependencies"
[172] Issue #3590179: Add Renovate to auto update dependencies
[174] POC-Phase -1
[175] Add conflict detection and resolution UI for selective publishing
[177] Remove AiContextItemType
[179] [Discuss] Usage of "Context scope" and "Target bundles"
[180] [Discuss] Context item content entity bundles
[182] Context scope: Tags (documentation)
[184] Issue #3586219: Update context listing page per new design
[185] Issue #3584775: Remove AiContextItemType and make ai_context_item bundleless
[192] Issue #3579758: Provide API for access checks on non-content entities
[193] Issue #3584010: Add FilterableRagTool with per-index derivatives and attribute filtering
[199] Custom fields without field_ prefix are not extracted for translation
[209] Check field definition for translation, instead of field name
Shipped
- AI module 1.4.2 and 1.3.7 released — Versions 1.4.2 and 1.3.7 shipped with QA testing and documentation updates completed [12][62].
- AI module FunctionalJavascript test failures fixed — MDX editor Drupal.behavior conversion bug causing ElementNotInteractable errors was fixed across multiple branches [19][72][73][74].
- AI Automator form crash fixed — Bug causing form breaks when bundles have no fields was resolved [15][70][71].
- AI Dashboard ecosystem categorization merged — AI Ecosystem documentation page now displays modules with categories, install counts, and descriptions [188][190][191].
- AI translate language prompt warning fixed — ChatTranslationProvider no longer throws warnings when language-specific prompts are missing on fresh installations [198][207].
Ongoing
- AI module token usage lost in Fiber branch — OpenAiBasedProviderClientBase chat method drops token usage during ChatOutput reconstruction in streaming responses [2][68].
- AI Agents architecture migration to AI core — Meta issue tracking move of agent entity structure, runner abstractions, Symfony AI integration, and Tool API conversion into the AI module for 2.0.x [7][8][43][49][50][51][52][53][54][55][56][57][59].
- Canvas TMGMT config translation integration under review — ContentTemplate and PageRegion component instance inputs now expose translatable fields through TMGMT UI, with several translation bugs blocking merge [121][143][146][147][148][149][158][159].
- Canvas publishing drops non-default translations — Auto-save API incorrectly recreates entities instead of updating fields, causing translation loss [119][163].
- AI Search FilterableRagTool derivatives awaiting review — New deriver-based FunctionCall plugin creates per-index derivatives with attribute filtering for LLM-driven searches [193].
AI (Artificial Intelligence)
Releases and Bug Fixes
Versions 1.4.2 and 1.3.7 were released on 2026-06-10, accompanied by QA testing and documentation updates. A critical bug affecting FunctionalJavascript tests on the 1.4.x branch was fixed: the MDX editor's conversion to a Drupal.behavior caused test failures with ElementNotInteractable errors. Artem Dmitriiev (a.dmitriiev) merged Fix FunctionalJavascript test failures on 1.4.x introduced by MDX editor Drupal.behavior conversion across multiple branches (MR !1665, !1667, !1668). Another merged fix addressed Add AI Automator field form breaks if fields not available in any bundle, preventing crashes when bundles have no fields (MR !1102, !1669, 391 lines).
Active Development
Multiple open issues saw activity. Jérôme Tchania (codeitwisely) reported that Fiber branch in OpenAiBasedProviderClientBase::chat() drops token usage from the reconstructed ChatOutput (MR !1670 open, 261 lines). Ahmad Khalil (ahmad-khalil-imagex) submitted MR !1671 for Render images and videos inside the chatbot viewport (393 lines). Artem Dmitriiev opened MR !1621 for Use ai_provider_configuration form element in RestrictToTopic configuration form (240 lines). Marcus Johansson (Marcus_Johansson) opened MR !1664 to fix the documentation link redirect to 1.4.x (11 lines).
2.0.x Architecture Planning
A major architecture initiative launched: Marcus Johansson filed [META] Move AI Agents architecture into the AI module with nine child issues covering agent entity structure, runner abstraction, Symfony AI integration, and control mechanisms. Michael Lander (michaellander) and harivansh sharma (harivansh) are assigned to most tasks.
How can I help on this project?
- Review MR !1670 for Fiber branch token usage bug — it has 261 lines addressing ChatOutput reconstruction.
- Review MR !1671 for chatbot viewport image rendering — 393 lines of frontend fixes need testing.
- Pick up Allow vector database providers to opt in as the default VDB when none is set — unassigned, no MR, needs feature implementation.
Drupal AI Initiative
The AI Initiative focused on planning and issue triaging during the last 24 hours, with several recipe and product ideas advancing to closed status. Five work items were closed: Recipe: AI pre-moderation of content via moderation states, Create Document Classification Recipe, [META] AI Content Suggestion, Create article template for additional current capabilities (migrated to ai_initiative_marketing#132), and Recipe: AI image safety validation - block uploads with nudity, gore, or suggestive content.
Two new initiatives were proposed: Marcus Johansson (Marcus_Johansson) opened Idea: AI Cost & Usage module — local cost dashboard + opt-in aggregated community telemetry to provide site owners with visibility into AI spending and usage patterns, and Create a provider for Vercel AI Gateway to enable unified access to multiple AI providers through a single endpoint. The Create ai_recipe_audio_transcription recipe remains in progress, assigned to Artem Dmitriiev (a.dmitriiev).
No merge requests were merged or commits pushed during this period.
How can I help on this project?
- Pick up the unassigned AI Cost & Usage module or Vercel AI Gateway provider ideas and draft an implementation plan.
- Help test or document recently closed recipes to ensure they work with the latest Drupal CMS builds.
AI Integration - ECA
The AI Integration - ECA module saw issue tracking activity in the last 24 hours. Marcus Johansson (Marcus_Johansson) opened and self-assigned Add ECA execute action for Rerank, identifying a gap in the module's operation coverage. The AI module's Rerank operation type currently lacks a corresponding ECA execute action, preventing ECA flows from driving Rerank functionality without custom code. The proposed solution is to add a new Plugin\Action\Rerank class extending AiConfigActionBase, following the established pattern of existing operation actions (Chat, Embedding, Moderation, Speech to Text, Text to Speech). The new plugin would build the matching Input class from the Rerank operation type namespace and dispatch it through the configured provider. This task is tagged with AI Initiative Sprint, AI Innovation, and Road to 1.0.0 labels, indicating its priority for the module's first stable release. No merge requests or commits were pushed during the reporting period.
How can I help on this project?
- Review the codebase patterns in existing action plugins (Chat.php, Embedding.php) to understand the implementation approach for the Rerank action.
- Test the Rerank operation type integration once a merge request becomes available for issue 3585007.
AI Agents Test
The AI Agents Test module saw automated Drupal 12 compatibility activity during this period. The Project Update Bot opened a new Automated Drupal 12 compatibility fixes for ai_agents_test 1.0.x-dev issue to track removal of deprecated API uses. An accompanying Automated Project Update Bot fixes merge request was created with 13 lines of changes addressing these deprecations. The MR remains open and awaiting review. No commits were merged during the reporting period.
How can I help on this project?
- Review the open Automated Project Update Bot fixes MR to validate the Drupal 12 compatibility changes and help move it toward merge.
- Test the proposed changes against Drupal 12 to ensure the automated fixes don't introduce regressions.
Anthropic Provider
Activity this period centered on a new merge request targeting the 1.3.x branch. Carlos Ospina (camoa) opened Bump SDK constraint and drop method_exists defensive check, which represents phase 2 of native SDK integration work. The MR introduces prompt caching capabilities with an admin UI toggle and TTL selector (5 minutes or 1 hour) in the provider settings form. System prompts are now sent as typed TextBlockParam objects with cache_control metadata when caching is enabled. The change also adds PDF document input support and removes defensive method_exists checks following an SDK constraint bump. The MR is fast-forward mergeable and builds on previously merged work from issue #3572402.
No commits were pushed or issues updated during the reporting period. The MR remains open and awaiting review.
How can I help on this project?
- Review and test MR 28, especially the prompt caching admin UI and PDF input functionality against the 1.3.x branch.
- Verify the cache_control behavior with both TTL options and ensure system prompts work correctly as TextBlockParam objects.
Huggingface Provider
A new merge request was opened in the past 24 hours targeting text translation functionality. Ahmad Khader (Ahmad-Khader) submitted Resolve #3595642 "Add text translation", which introduces 132 lines of changes to enable translation capabilities within the Huggingface provider module. The MR is currently awaiting review.
No commits were merged and no issues were updated during this reporting period, indicating the module is in a review phase for this new feature addition.
How can I help on this project?
- Review the open text translation MR to verify the implementation meets coding standards and properly integrates with the AI provider API.
- Test the translation functionality with various Huggingface models to ensure compatibility and correct behavior across different language pairs.
AI Agents
The AI Agents project saw significant triage activity over the past 24 hours, with multiple bug reports opened and reviewed but no merges landed. Key issues identified include ai_agents status subscriber fatals when tool status output has no function.name, where AgentStatusSubscriber.php line 241 passes null to FunctionCallPluginManager::getFunctionCallFromFunctionName() causing type errors. Marc Orcau (budalokko) reported GetEntityFieldInformation leaks target_entity_type / target_bundle_type across fields, a bug in the execute() method that incorrectly reuses the $information array across iterations. Kelly Ferrone (burbular) identified MCP Server: Entity Seeder uses wrong type for content in ContentEntitySeeder, where multi-property field values are stored as literal "Array" strings.
Ahmad Khalil (ahmad-khalil-imagex) escalated AI Agent entity form should reject machine names that collide with existing code-plugin IDs to RTBC status, highlighting conflicts in AiAgentManager's namespace. Additionally, return_directly tool results are missing tool_id reached RTBC, identifying a missing setToolsId() call in AiAgentEntityWrapper::determineSolvability(). Prabhavathi Vanipenta (prabha1997) contributed MR !278 to address AI Agents admin menu categorization, though it remains under review.
How can I help on this project?
- Review MR !278 for the AI 1.4.x menu categorization issue to help move it forward.
- The RTBC issues machine name collision validation and return_directly tool_id fix need committer review for final merge.
- Create patches for AgentStatusSubscriber null handling or GetEntityFieldInformation array reuse, both accepted bugs without MRs.
Drupal Canvas
The Canvas project merged two significant pieces this period. MR !1099 (1204 lines) landed TMGMT integration for config-defined component trees, closing Symmetrically translatable config-defined component trees, STEP 4. This means ContentTemplate and PageRegion config entities now expose translatable component instance inputs through TMGMT's UI. The work was driven by Wim Leers (wimleers), Ted Bowman (tedbow), and Lee Rowlands (larowlan), building on the config schema infrastructure added in earlier issues.
Sally Young (justafish) merged MR !1228 to introduce Renovate for automated dependency updates, resolving CI: Renovate job to auto-update npm and composer dependencies. The bot will propose MRs for major composer updates and Astro npm packages, with minor and patch updates grouped to reduce noise.
Several critical translation and multilingual bugs remain under review. LogicException on content templates with dynamic field bindings has an open MR (!1223) from John Locke (freelock) addressing regressions introduced in 1.5.1. Christian López Espínola (penyaskito) has MR !1189 open to fix Publishing a canvas_page via auto-save API drops all non-default-language translations, with work ongoing by Ted Bowman and Lee Rowlands. Lauri Timmanee (lauriii) proposed MR !1233 (752 lines) to add a "page" extension type for full-screen Canvas extensions, addressing Add "page" extension type for full-screen Canvas extensions.
Progress on several features remains blocked. Detect conflicts for Page entities during auto-save/pending calls was reverted and remains in draft (MR !1213) from Feliksas Mazeikis (f.mazeikis). Backend APIs for Entity Reference Selection has a large MR (!1112, 4644 lines) from Christian López Espínola awaiting security review. Matt Glaman (mglaman) opened MR !1230 to repair orchestrator agent UUIDs stripped by a post-update hook in canvas_ai_post_update_0003 strips the orchestrator agent UUID.
How can I help on this project?
- Review MR !1223 for the LogicException fix in
EntityFieldPropSource::parse()and Fallback component config schema validation. - Test MR !1230 to verify the orchestrator agent UUID repair logic correctly restores UUIDs on affected sites.
- Pick up Missing checkmark for languages with translations for Content Templates (unassigned, no MR) and add translation indicators to
ApiLayoutController::get().
Context Control Center (CCC)
Development activity in the past 24 hours centered on architectural discussions and major refactoring work. Matt Glaman (mglaman) opened two significant merge requests: Issue #3584775: Remove AiContextItemType and make ai_context_item bundleless eliminates the single hardcoded bundle, converting ai_context_item to a bundleless entity now that Scheduler 2.3.0 supports entity types without bundles. This moves default publishing settings to ai_context.settings via a new AiContextItemSettingsForm. A second MR implements a Context Control Center listing redesign, restructuring columns and introducing a new ai_context.token_estimator service as the single source of truth for token estimation, with AiContextRenderer delegating to it.
Discussion issues opened during the period include [Discuss] Context item content entity bundles, where Kristen Pol (kepol) is exploring whether additional bundles might support content review functionality with good/bad examples, following UX team feedback. Michael Anello (ultimike) requested clarification on Context scope and Target bundles usage and Tags scope documentation. Contributors include mglaman, kepol, Aidan Foster (aidanfoster), Emma Horrell (emma-horrell), and Sven Decabooter (svendecabooter).
How can I help on this project?
- Review MR !168 (bundleless refactoring) or MR !152 (listing redesign) to help move these architectural changes forward.
- Improve Context scope Tags documentation by clarifying how the AI Context Tags vocabulary and reference fields work together.
- Pick up the unassigned ai_ckeditor context injection issue to add event extensibility for scope-matched context.
AI Dashboard
Rob Loach (robloach) merged two MRs during the period, both closing AI Ecosystem Documentation. MR !21 introduced category classification to the AI Ecosystem documentation page (2862 lines changed), while MR !22 updated the documentation.yml configuration. The ecosystem page at ai-dashboard-41c651.pages.drupalcode.org/ecosystem/ now displays Drupal AI modules with install counts, descriptions, and categorization.
Artem Dmitriiev contributed two recipe commits: ai_recipe_content_pre_moderation and ai_recipe_validations_image_safety, expanding the module's recipe capabilities.
Two issues remain open. Improve AI Ecosystem tracks several enhancement ideas including font sizing tweaks, JSON manifest integration for in-site module browsing, a cron rebuild process, and improved category detection logic. AI Recipe modal is missing the <path> argument reports that View Commands buttons in the Features section generate incomplete drush recipe commands, blocking users from executing recipes properly.
How can I help on this project?
- Fix the missing path argument in AI Recipe modal is missing the <path> argument to make recipe commands executable from the Features section.
- Implement a cron rebuild process for the AI Ecosystem page to automatically fetch updated module data from Drupal.org, as outlined in Improve AI Ecosystem.
AI Search
The AI Search module saw two significant merge requests opened in the last 24 hours, both addressing extensibility and access control improvements.
David Bondor (superbondor) opened Provide API for access checks on non-content entities, introducing a new hook_ai_search_item_access API that extends access checking beyond content entities to support all Search API datasources. The 998-line MR refactors SearchApiAiSearchBackend::checkEntityAccess() into the more generic checkItemAccess(), removing the hardcoded assumption that search items are always content entities prefixed with entity:.
Meanwhile, m4olivei opened Add FilterableRagTool with per-index derivatives and attribute filtering, a substantial 1332-line addition that introduces a deriver-based FunctionCall plugin. This creates one derivative per Search API index configuration, exposing attribute fields as optional context definitions for LLM-driven filtering. The existing RagTool remains unchanged for backwards compatibility.
Both MRs are awaiting review and represent important steps toward more flexible AI-powered search capabilities.
How can I help on this project?
- Review the API for access checks on non-content entities MR, testing the new hook implementation against custom datasources.
- Test the FilterableRagTool derivatives MR with multiple Search API indexes to validate the deriver pattern.
Field Widget Actions
No code changes were merged during this period. Activity focused on issue triage, with Field Widget Actions show in the "Add New Action" unavailable tools being assigned to Tamás Brückner (brtamas) on 2026-06-10. This bug addresses a UX inconsistency where the "Add New Action" dropdown displays Field Widget Actions plugins that cannot actually be added. The issue occurs because the dropdown only performs base field type and field widget checks, but doesn't verify the isAvailable method that determines whether an AI Automator exists for the given entity type and field combination. This creates confusion when users select a plugin from the list only to find they cannot complete the addition.
The issue is tagged with AI Initiative Sprint and AI Product Development labels, indicating integration with Drupal's AI automation features. Progress is currently blocked awaiting development work from the assigned contributor.
How can I help on this project?
- Review the isAvailable method implementation and propose a solution to integrate availability checking into the dropdown rendering logic before display.
- Test the current behavior with various AI Automator configurations to document edge cases and help define acceptance criteria for the fix.
AI translate
The AI translate module saw focused activity over the past 24 hours, with one bug fix merged and several open merge requests under review.
Matthew Tift (mtift) fixed a critical bug causing PHP warnings when no language-specific prompt was configured. The Undefined array key warning in ChatTranslationProvider when no language-specific prompt is configured issue was resolved via MR !17, which was merged on June 10th. The fix addresses warnings thrown by ChatTranslationProvider::translateText() when ai_translate.settings.language_settings lacks an entry for the target language — the default state on fresh installations.
Several merge requests remain open for review. Jordan Koplowicz (koppie) submitted MR !16 to address the one-click link should show human name, not machine name issue, improving editor experience by displaying human-readable model names instead of machine names. Two contributors are working on Custom fields without field_ prefix are not extracted for translation with separate MRs (!18 and !19) targeting different branches. The Project Update Bot also opened automated Drupal 12 compatibility MRs for both the 1.3.x and 2.0.x development branches.
How can I help on this project?
- Review MR !16 for the one-click link human name display enhancement, which has 47 lines of changes ready for testing.
- Test and review MR !18 or !19 addressing custom field extraction — both tackle the same issue on different branches.
- Pick up the Metatag field type is not translated issue, which needs a new FieldTextExtractor plugin implementation.
Pinecone VDB Provider
The Pinecone VDB Provider module saw automated Drupal 12 compatibility work during this period. The Project Update Bot opened Automated Drupal 12 compatibility fixes for ai_vdb_provider_pinecone 2.0.x-dev to track deprecation removals and API updates needed for the upcoming major version. An associated merge request, Automated Project Update Bot fixes, was created with 26 lines of changes addressing deprecated API usage.
No commits were merged during the reporting period, leaving the automated compatibility fixes awaiting human review. The merge request remains open and unassigned, requiring maintainer attention to validate the proposed changes and merge them into the 2.0.x-dev branch. This automated work is part of the broader ecosystem effort to prepare contributed modules for Drupal 12 compatibility.
How can I help on this project?
- Review Automated Project Update Bot fixes to validate the Drupal 12 compatibility changes are appropriate and test them against the module's functionality.
- Help test the changes locally to ensure no regressions are introduced by the deprecated API removals.
SQLite VDB Provider
Activity in the SQLite VDB Provider module over the past 24 hours was limited to automated maintenance. The Project Update Bot (Project-Update-Bot) opened a new merge request for Automated Project Update Bot fixes, which contains 242 lines of changes related to project infrastructure updates. The MR is currently awaiting review with no commits merged during the reporting period.
No issues were updated, no bugs were fixed, and no API changes were shipped in the last 24 hours. The module appears to be in a maintenance phase with automated tooling ensuring project standards compliance.
How can I help on this project?
- Review the pending Automated Project Update Bot fixes MR to help move the automated updates forward.
- Check the project's issue queue for any unassigned bugs or feature requests that need attention.
AI usage limits
The ai_usage_limits module saw minimal activity in the past 24 hours, with no commits merged or issues resolved. The Automated Project Update Bot fixes merge request was opened by Project-Update-Bot (Project-Update-Bot), containing 13 lines of automated maintenance changes from run 12-839256. This MR remains open and awaiting review.
No other development activity, bug fixes, or API changes occurred during this reporting period. The module appears to be in a maintenance phase with no active feature development or critical issues being addressed.
How can I help on this project?
- Review the open Automated Project Update Bot fixes merge request to help move automated maintenance updates forward.
- Check the module's issue queue for unresolved bugs or feature requests that need attention and could benefit from a new patch or MR.
References
[7] Move the agent entity structure into the AI module
[8] [META] Move AI Agents architecture into the AI module
[15] Add AI Automator field form breaks if fields not available in any bundle
[19] Fix FunctionalJavascript test failures on 1.4.x introduced by MDX editor Drupal.behavior conversion
[43] Add structured input to agents following Tool API input definitions
[49] Create an agent runner abstraction as plugins
[50] Create a Drupal agent runner
[51] Shared event points for both agent runners
[52] Add structured output to agents following the Tool API
[53] Control-mechanism plugin system used by both runners
[54] Switch agents to the Tool API and extract function calls to a contrib module
[55] Migration scripts: existing agents → Drupal agents
[56] Create a Symfony AI agent runner
[57] Agent runners must support running tools under a configured role/permissions
[59] Integrate the runner with Symfony Messenger (or similar)
[62] QA 1.4.1 and 1.3.7
[68] Issue #3586522: Keep token usage in the chat() Fiber branch
[70] Issue #3558728: Fix AI Automator form break when bundle has no fields
[71] Issue #3558728: Fix AI Automator form break when bundle has no fields
[72] #3586521: Fix FunctionalJavascript test failures caused by MDX editor Drupal.behavior conversion
[73] #3586521: Fix FunctionalJavascript test failures caused by MDX editor Drupal.behavior conversion
[74] #3586521: Fix FunctionalJavascript test failures caused by MDX editor Drupal.behavior conversion
[119] Publishing a canvas_page via auto-save API drops all non-default-language translations
[146] #3582478: Support symmetric translation of ContentTemplate & PageRegion component trees
[148] Resolve #3586342 "Source inputs config schema generator"
[149] Applied & rebased !831 on top of !898. Addresed all `@todo`s that !898 left...
[158] Refactor to leverage all the infra that was introduced in the 3 issues for the...
[159] Draft: Resolve "Add TMGMT translation integration for content entities"
[188] AI Ecosystem Documentation
[190] Issue #3585219: Update the documentation.yml
[191] Issue #3585219: Add Category to the AI Ecosystem
[193] Issue #3584010: Add FilterableRagTool with per-index derivatives and attribute filtering