Daily Digest
Daily Digest – 29 May 2026
2026 Capabilities Progress
- Page generation — Active progress on component catalog integration and testing infrastructure [121][124], with work advancing on field widget validation [118] and language preview capabilities [123][131] that support page generation in multilingual contexts.
- Context management — Two user interface improvements merged [149][164], scope plugin API stabilization underway [143], and selection pipeline events being finalized [148] to enable safe extension by other modules before the release candidate.
- Background agents — Core agent runner architecture was recreated for config entities [5], with ongoing work to improve agent loop response handling [2] and prevent infinite recursion in global guardrails [21][36].
- Design system integration — Canvas completed component instance version propagation across translations [142], added machine name output for components [120][132], and continued work on entity reference selection UI [138] to support AI building with design system components.
- Content creation and discovery — Rich-text image description support added to AI Automators [10][26], interactive refinement capability merged for Field Widget Actions [15][181], and translation error handling improved [182][183].
- Advanced governance — Conflict detection during autosave now operational [128][141], with rudimentary conflict resolution UI in progress [127]; guardrail improvements include semantic topic matching [6][25] and proper configuration form elements [11][28].
- Intelligent website improvements — Observability infrastructure enhanced with fixes for streaming token usage tracking [3][24] and alignment to GenAI semantic conventions [7]; visual regression tests added for UI elements [9].
- Multi-channel campaigns — No direct progress today.
Shipped
- Streaming observability metrics fixed — The AI module now correctly captures token usage when using streaming chat responses, ensuring complete cost and performance tracking [3][24].
- Error visibility in translation workflows — AI translate now displays error messages when translation fails, preventing silent failures that resulted in untranslated content being published [182][183].
- Context Control Center interface improvements — Users can now hide the overview page and see suggested extensions when additional modules are installed, improving navigation and feature discovery [149][171][164][173].
- FlowDrop visual workflow editor delivered — Completed foundational phases including drag-and-drop workflow design, execution engine with monitoring, and AI-powered workflow nodes [263][232][218].
- Field Widget Actions button redesign — AI suggestion buttons now use appropriate visual styling and positioning, reducing confusion with primary save actions [177][180].
Ongoing
- Symfony AI platform provider migration — Major architectural proposal to adopt Symfony AI component 0.8 is under review, representing strategic alignment with evolving standards [1][23].
- Infinite recursion in global guardrails — Critical defect where LLM-based guardrails trigger themselves repeatedly is being addressed with re-entrancy protection [21][36].
- Gemini Provider approaching stable release — Module completed fifteen capability expansions including text-to-image, speech-to-text, and improved error handling, with batch embeddings and image embeddings in active development [77][73][74].
- Model Context Protocol consolidation complete — Thirteen foundational issues closed including architectural decisions and usability improvements, with performance and authentication issues under active investigation [83][96][97].
- Canvas conflict detection and translation support — Collaborative editing safeguards and multilingual preview capabilities are in development alongside accessibility improvements [128][127][123][119].
AI (Artificial Intelligence)
Over the past 24 hours, development activity focused on quality improvements, architectural evolution, and user experience refinements across the AI module suite.
Wolfgang Ziegler (fago) opened a significant architectural proposal to adopt symfony/ai component v0.8 as platform provider, introducing a new plugin-based infrastructure for managing AI inference providers and model routing. A draft merge request with substantial code changes is under review. This represents strategic alignment with Symfony's evolving AI abstraction layer and positions the module for improved interoperability.
Several quality and stability fixes were contributed. George Kastanis (zorz) identified and submitted a fix for streaming OTel spans dropping final token usage, addressing incomplete observability metrics when using streaming chat responses. Marcus Johansson (Marcus_Johansson) documented a critical issue where global LLM-based guardrails cause infinite recursive LLM calls due to a missing re-entrancy guard; a programmatic fix is in progress. Artem Dmitriiev (a.dmitriiev) merged several small fixes and has a merge request ready to use ai_provider_configuration form element in RestrictToTopic configuration, modernizing the guardrail configuration interface.
User-facing enhancements are advancing. Levente Besenyei (LeventeB) submitted a merge request to add rich-text image description support to AI Automators, enabling AI to process images embedded in formatted text fields. Joshua Fernandes (joshua1234511) is working on semantic topic matching mode for the RestrictToTopic guardrail, allowing meaning-based rather than exact-string matching.
Several documentation and consistency issues were raised by Michael Anello (ultimike), including label alignment, nomenclature clarity, and the need for better guardrail usage documentation. A release script defect affecting version tagging for json-schema-editor was identified and fixed by Ahmad Khalil (ahmad-khalil-imagex).
How can I help on this project?
- Prioritize architectural review capacity for the Symfony 0.8 platform provider migration, which represents a foundational shift requiring strategic alignment and timely decision-making.
- Commission documentation work to clarify guardrail applicability, usage patterns, and naming conventions across the module ecosystem, improving onboarding and reducing user confusion.
Drupal AI Initiative
Activity over the past 24 hours focused on event marketing and content distribution. Two project management tasks were updated as they transition to a dedicated marketing workflow.
Work continues on visual branding for the Enterprise AI Summit in Rotterdam, a curated industry event designed to showcase real-world Drupal AI implementations to business leaders. This event is positioned as a strategic showcase rather than a developer conference, aimed at demonstrating commercial value and adoption.
Separately, session recordings from the New York AI Summit are being prepared for publication. Videos have been uploaded and a YouTube playlist created by Paul Johnson (pdjohnson). The recordings capture presentations from the event and await promotional planning to maximize their reach and impact with target audiences.
Both items have been migrated to a dedicated marketing project structure, indicating the initiative is maturing its go-to-market capabilities alongside technical development.
How can I help on this project?
- Support promotional planning and distribution strategy for the New York Summit recordings to ensure maximum visibility with enterprise decision-makers.
- Provide guidance on positioning and messaging for the Rotterdam Enterprise AI Summit to align with broader organizational goals.
AI Integration - ECA
Activity this period focused on identifying and addressing usability challenges in how the module handles AI chat configuration.
A support request was accepted regarding a configuration error when using specific model settings. Users attempting to apply custom model configurations are encountering failures that prevent AI chat actions from executing. This issue is blocking users who need to customize how AI models respond in their automated workflows.
Separately, Marcus Johansson (Marcus_Johansson) opened a task to simplify how users configure structured output. Currently, users must manually enter complex formatting instructions as plain text, which is error-prone and difficult to review after saving. The proposed improvement would replace this with a dedicated interface that validates input and provides better editing support, reducing configuration mistakes and making saved settings easier to audit.
Both issues highlight opportunities to improve the user experience for teams building AI-powered automation. No code changes were committed during this period; work remains in the planning and problem-definition stage.
How can I help on this project?
- Prioritize assignment of developer resources to resolve the configuration error blocking current users.
- Approve investment in the structured-output interface improvement to reduce ongoing configuration errors and support requests.
AI Agents Test
The AI Agents Test module saw one completed item during the reporting period. The team closed Attach default information tools JS form editor library, which integrates a form editor component into the module's interface. This work, completed by Bruno Bruno (bbruno), enables users to configure default information tools through an improved editing interface when working with AI agents.
This module is part of the broader AI Initiative and supports product development activities. The completed work builds on recent progress in the main AI module and extends that functionality to the testing environment.
How can I help on this project?
- Clarify the roadmap for transitioning AI Agents Test from development into production use, including timelines and success criteria.
- Ensure the team has adequate resources to address integration testing needs as new features are added.
amazee.ai Private AI Provider
This module provides integration with amazee.ai's private AI services, including access to vector database capabilities for Drupal sites. The project is in early development with minimal recent activity.
Over the past 24 hours, one task was updated: More Vector database info/configuration options. This issue requests additional information and configuration options for the vector database included in the free trial offering. While the vector database feature is appreciated, users need clearer documentation or settings to understand and control how it works. The issue remains open and unassigned, with no new development work initiated yet.
No code changes were merged or committed during this period. The module continues to offer vector database access as part of its trial, but work is needed to make this feature more transparent and configurable for site administrators.
How can I help on this project?
- Allocate developer resources to address the vector database documentation and configuration request, ensuring trial users can effectively utilize this feature.
- Clarify the product roadmap and priority of vector database capabilities to guide contributor focus and user expectations.
Gemini Provider
The Gemini Provider module made significant progress toward its stable 1.0.0 release during this period, with fifteen issues closed that expand the module's capabilities and improve reliability. Most of this work was completed prior to the reporting window, but the issues were formally closed on May 29th, marking the completion of a substantial development phase.
Key capabilities delivered include native text-to-image generation, speech-to-text transcription, text-to-speech support, and improved structured output handling. The module now properly declares its capabilities to the AI framework, ensuring it integrates correctly with other Drupal AI features. Multiple reliability improvements were implemented, including better error handling when API keys are missing or misconfigured, updated support for current Gemini model versions, and resolution of crashes that previously prevented use of other AI providers.
The module also gained comprehensive test coverage and resolved technical debt issues around configuration schema and code standards. Translation support was added, and the models list was filtered to show only those currently supported.
Three issues remain open in active development: unit test coverage for the text-to-image method, batch embeddings support (with merge request in progress), and image embeddings capability (also with an active merge request). One open issue addresses error handling when Gemini blocks a prompt and returns no candidates. Normal alpha-stage issues remain around edge cases and additional testing.
How can I help on this project?
- Support the team's pursuit of Drupal security coverage to increase adoption and trust in enterprise deployments.
- Prioritize resources for comprehensive testing against Drupal CMS use cases to validate production readiness before the 1.0.0 stable release.
Google Vertex Provider
The Google Vertex Provider module saw development activity focused on expanding geographic deployment flexibility. Two related proposals were submitted by Daniel Mundra (dmundra) to add support for global and multi-region service endpoints. This work would allow organizations to deploy the integration across broader geographic areas rather than being limited to single regions, which can improve service availability and potentially reduce latency for distributed teams.
Both Resolve #3592824 "Support for global" and Adding support for global and multi-region endpoints remain open for review. No code was merged during this period, so no new capabilities were delivered to users yet.
How can I help on this project?
- Assign a qualified reviewer to evaluate the pending geographic expansion proposals, as both submissions are awaiting feedback to move forward.
- Clarify whether there is a preferred approach between the two similar proposals to avoid duplicated effort.
Model Context Protocol
The Model Context Protocol project has reached a significant milestone, closing 13 issues during this period as part of a major consolidation effort. The work represents strategic alignment toward a more stable foundation and clearer technical direction.
Key progress includes resolving several foundational planning and architectural issues. The team closed How to implement the server part and How to connect to already existing AI agents/functions, indicating that core design decisions have been finalized. Support for the latest version of a critical dependency was completed through Support JSONRPC ^3.
Usability improvements were delivered, including better tool naming conventions via Improve tools naming and Tool names easily exceed Claude Code's 64-character limit due to MD5 hash appending. The team also enhanced security and access control through Make MCP plugin tools configurable and resolved an authentication conflict with The mcp_auth provider conflicts with basic_auth.
Several open issues remain, including performance concerns around the Drush plugin and authentication bugs. These are normal for a module at this stage and represent ongoing refinement rather than blockers.
How can I help on this project?
Consider allocating resources to address the performance issue flagged in tools/list request hangs for 90+ seconds when drush plugin is enabled, which impacts user experience. Support the documentation roadmap outlined in MCP Documentation Roadmap to ensure users can adopt the module effectively.
AI Agents
One new defect was identified in the last 24 hours affecting how the module collects information about content structure. The issue, GetEntityFieldInformation leaks target_entity_type / target_bundle_type across fields, was reported by Marc Orcau (budalokko) on May 29. The problem causes incorrect metadata to be passed between different content fields when the system gathers field information, potentially leading to inaccurate AI agent behavior when working with related content.
This is a data integrity issue that could affect the reliability of AI agent actions, particularly when agents need to understand relationships between different types of content. No merge requests or commits were recorded during this period, so the issue remains open and unassigned.
How can I help on this project?
- Assign development resources to investigate and fix the field information defect to prevent incorrect AI agent behavior in production environments.
- Evaluate whether additional quality assurance capacity is needed to identify similar edge cases before they affect users.
Tool API
The Tool API project saw planning activity this week as the team works to enhance how AI systems interact with Drupal. Two issues were updated that address key challenges in making AI integrations more reliable and capable.
Work continues on Introduce support for Discovery, Planning and Execute calls for MCP and Agents, which aims to solve performance degradation when AI systems work with many tools at once. Currently, sending all available tools with every request creates confusion and errors—this work will make tool selection smarter and more targeted.
Separately, Abhisek Mazumdar (abhisekmazumdar) is exploring File Input Handling, investigating how AI agents can securely work with files through the Tool API. This research and proof-of-concept phase will inform decisions about whether file handling capabilities belong in this module or elsewhere, and establish the security and technical approach needed.
Both efforts are part of the broader AI Initiative Sprint, positioning Drupal to support more sophisticated AI integrations while maintaining security and performance standards.
How can I help on this project?
- Clarify strategic priorities between the two active workstreams to help contributors focus effort where business value is highest
- Connect the team with security expertise or review resources to accelerate the file handling research
- Confirm architectural decisions about module boundaries to prevent rework on the file input investigation
Drupal Canvas
Over the past 24 hours, the team made progress on two fronts: improving the visual stability of the page builder interface and cleaning up temporary code from earlier AI work.
The team completed work on stabilizing the preview panel to prevent layout shifts when content height changes, addressing issues that could disrupt the editing experience. Additionally, a temporary workaround in the AI module was removed now that an underlying dependency has been fixed, keeping the codebase cleaner.
Several important features are actively in development. The team is building conflict detection for collaborative editing scenarios, ensuring users are notified when their work might clash with recent changes. Accessibility improvements continue under a coordinated effort, with multiple focused issues being tracked. Translation support is advancing, with work underway on preview modes for non-default languages and ensuring component updates propagate correctly across all language versions.
On the AI front, testing infrastructure is being strengthened to validate page generation capabilities against realistic layouts, and data validation for form fields is being refined to handle complex field types more reliably.
How can I help on this project?
- Prioritize accessibility review capacity to support the multiple focused improvements currently identified and tracked under the accessibility meta issue.
- Provide product direction on conflict resolution user experience priorities as detection infrastructure nears completion.
Context Control Center (CCC)
The Context Control Center module is moving toward its first release candidate with a focus on stabilizing core architecture and improving the user experience. This module allows organizations to manage reusable AI context that can be shared across different AI-powered features.
Over the past 24 hours, two user interface improvements were delivered. The team completed work on updating the CCC overview page with hide option and new wording, giving users the ability to hide the overview page directly from the interface and making the welcome text more accessible. They also merged CCC optional feature suggestions in UI, which introduces an extensions page that highlights additional functionality available when certain modules are installed, helping administrators understand expansion opportunities.
The team closed several planning and discussion issues, including finalizing the approach for selection extension points and diagnostics for context selection, which clarifies how other modules can safely extend the system without relying on internal implementation details.
Active development continues on architectural foundations needed before the release candidate. Work is underway to complete the scope plugin API, add stable selection pipeline events, and hide additional context scope options when global is selected. Two feedback items were raised about default settings and menu placement that will inform final product decisions.
How can I help on this project?
Prioritize architectural decisions on scope plugin boundaries and extension models to unblock release candidate readiness. Provide user testing resources to validate interface improvements and default configuration choices raised in recent feedback. Clarify release timeline expectations with stakeholders as the team works through pre-RC1 technical foundations.
Field Widget Actions
Field Widget Actions helps users integrate AI-powered assistance into content editing forms. Over the past 24 hours, the project team delivered a user interface improvement and continued work on two quality enhancements.
The team completed work on Suggestions buttons should not be primary and should be closer to the field, which improves the visual design of AI suggestion buttons. Previously, these buttons appeared with the same visual prominence as critical actions like saving content, and were positioned far from the fields they affect. The change makes the interface clearer and less confusing for content editors.
Two code quality improvements are in progress. Artem Dmitriiev is working on Field Widget Actions show in the "Add New Action" unavailable tools, which addresses confusion when users see options in dropdown lists that cannot actually be used. A separate effort is underway to Deprecate multiple property in plugin attribute, removing a confusing configuration option. Both improvements have draft solutions awaiting review.
Additionally, Edward Zwart has submitted a proposal to add interactive refinement capabilities, which would allow users to iteratively improve AI-generated content before accepting it.
How can I help on this project?
- Arrange for technical review resources to evaluate the pending merge requests from Artem Dmitriiev and Edward Zwart, enabling faster delivery of quality improvements.
- Support testing and validation of the interactive refinement feature to determine whether it should be prioritized for the next release.
AI translate
The AI translate module saw focused activity on improving error handling during the translation process. Currently, when the system translates content, errors can occur silently without notifying users. This means translations may fail completely, yet the system creates a "translated" version containing the original untranslated text. Users have no visibility into what went wrong or which parts failed.
Miriam Nugent (Peacog) submitted a fix to display error messages when translation fails, addressing the Translation batch process does not handle translation errors issue assigned to Ilia Nozadze (IliaNoz). This work will ensure users understand when translations don't complete successfully, reducing confusion and enabling them to take corrective action rather than publishing incomplete or incorrect translations.
The proposed solution is under review and awaiting merge. Once integrated, it will provide transparency into the translation workflow and help maintain content quality.
How can I help on this project?
- Ensure the team has capacity to review and merge the pending error handling fix promptly to improve user experience.
- Consider resourcing ongoing quality improvements to reduce translation failure rates and enhance reliability.
FlowDrop
FlowDrop, a visual workflow editor for Drupal, has completed a major development phase focused on establishing core functionality. Over the past 24 hours, the project closed more than 100 foundational issues spanning backend architecture, visual editor implementation, and AI-powered workflow capabilities.
The completion of Phase 3: Frontend & Visual Workflow Editor marks a significant milestone, delivering a fully functional drag-and-drop workflow editor built with Svelte and integrated with Drupal's security and entity systems. This enables users to design and manage workflows visually without direct database interaction. Supporting this, Phase 4: Execution Engine & Monitoring closed with a working runtime for executing workflows, along with job tracking, error handling, and monitoring dashboards.
AI integration capabilities were also delivered through Phase 5.1: AI-Powered Nodes, introducing specialized processors for tasks like text generation and sentiment analysis. The team also closed multiple planning and architecture issues, including Create Roadmap for Flowdrop, along with bug fixes such as Fix dependency throwing error on composer autoload and feature additions like Add AI Prompt component.
Open work now focuses on advanced features: file and audio input support for the playground, improved AI assistant functionality to interact with complex node processors, enhanced debugging interfaces, and developer-facing AI "skills" for workflow creation. Several governance and enterprise-readiness tasks remain open, including high availability, compliance alignment, and security hardening features assigned to Shibin Das (D34dMan).
How can I help on this project?
- Prioritize resourcing for the enterprise hardening phase (security framework, compliance, disaster recovery) to support production deployments in regulated environments.
- Support community engagement and documentation efforts to accelerate contributor onboarding as the project transitions from foundational work to feature expansion.
References
[1] Adopt symfony/ai component v0.8 as platform provider
[2] Agent loop responses bypass responseInterceptor; deduplicate step-message wrapping
[3] ai_observability: streaming OTel spans drop final token usage (span ended on un-consumed iterator)
[5] Recreate AI Agents runner, but only for config entities
[6] RestrictToTopic guardrail: add semantic topic matching mode
[7] [Layer 2] Align ai_observability OTel emission to GenAI semantic conventions (gen_ai.*)
[9] Add non-required visual regression tests for the four built UI elements
[10] Add rich-text image description support to AI Automators
[11] Use ai_provider_configuration form element in RestrictToTopic configuration form
[15] Add interactive refinement capability to Field Widget Actions
[21] Global LLM-based guardrails cause infinite recursive LLM calls (no re-entrancy guard)
[23] Draft: feat: #3586427 Adopt symfony/ai component v0.8 as platform provider
[24] fix: #3586473 Finalize streaming OTel spans on the terminal event
[25] [3584977] RestrictToTopic guardrail: add semantic topic matching mode.
[26] Issue #3586478: "Add rich-text image description support to AI Automators"
[28] Issue #3586472: Use ai provider configuration form element and use proper...
[36] Resolve "Global LLM-based guardrails cause infinite recursive LLM calls (no re-entrancy guard)"
[73] Add support for batch embeddings
[74] Image Embeddings
[77] [META] Road to stable 1.0.0 release
[83] Support JSONRPC ^3
[96] tools/list request hangs for 90+ seconds when drush plugin is enabled
[97] Token Auth is not working
[118] Props whose source shape differs from the resolved value can't be validated client-side
[119] [meta] Improve the accessibility of Drupal Canvas
[120] Add machine name to JsComponent::renderComponent() output
[123] Create a preview mode for non-default languages
[127] Rudimentary conflict resolution UI
[128] Detect conflicts for Page entities during the handling of auto-saves/pending calls
[131] #3590577 Language preview for templates
[132] #3591374 Add #machine_name to JsComponent.
[138] Draft: feat: #3585354 add content-entity-types / fields endpoints for entity reference selection UI
[141] Resolve #3589076 "Detect conflicts during autosave polling"
[148] Add stable selection pipeline events for contrib extension
[149] Update CCC overview page with hide option and new wording
[164] CCC optional feature suggestions in UI
[171] Issue #3586211: Add show toggle on overview and change text.
[173] Issue #3586229: Add extensions page under settings.
[177] Suggestions buttons should not be primary and should be closer to the field
[180] Issue #3569101 button style
[181] feat: #3547306 Add interactive refinement capability to Field Widget Actions
[182] Translation batch process does not handle translation errors
[183] fix: #3542014 Display error message when translation fails
[218] Phase 5.1: AI-Powered Nodes
Shipped
- AI module release script fix merged — MR 1617 fixed the bug where json-schema-editor version was not updated in package.json during releases [12].
- AI observability streaming OTel span fix — MR 1627 fixes spans ending before stream consumption completes by finalizing on terminal iterator event [3][24].
- PHPStan errors resolved in AI module — MR 1626 cleaned up PHPStan failures across multiple branches [27].
- Canvas preview stabilized for tall content — MR 1043 improved in-place vh updates and rendering for tall content in Canvas preview mode [133].
- Canvas temporary workaround removed — MR 1117 reverted code from issue 3572865 after upstream ai_agents issue was resolved [126][139].
Ongoing
- Symfony AI component v0.8 adoption in progress — Draft MR 1619 introduces new plugin types (ai_inference_provider, ai_model_router, ai_platform) with Generic and Gemini implementations, representing a major platform abstraction shift [1][23].
- Global LLM-based guardrails infinite recursion bug — Critical issue with no re-entrancy guard in ProviderProxy causing infinite recursive LLM calls, MR 1612 proposes programmatic fix [21][36].
- RestrictToTopic guardrail modernization — MR 1621 migrates RestrictToTopic to ai_provider_configuration form element for proper model selection [11][28].
- Canvas client-side validation blocker — MR 1171 addresses props whose source shape differs from resolved value, blocking client-side validation of content-entity-reference props [118][129].
- Context Control Center scope plugin API completion — Pre-RC1 work on persistence, form encapsulation, validation, capability flags, and documented interface sections for scope plugins [143].
AI (Artificial Intelligence)
The AI module saw substantial activity over the past 24 hours, with several merge requests landing and critical architectural work advancing.
Four MRs cherry-picking a fix for Add possibility to were merged to multiple branches by Artem Dmitriiev (a.dmitriiev), along with a PHPStan error cleanup MR. Ahmad Khalil (ahmad-khalil-imagex) merged MR !1617, fixing the release script bug in Release script does not set the version for json-schema-editor, which previously omitted package.json version updates for the json-schema-editor UI bundle.
Wolfgang Ziegler (fago) opened a substantial draft MR adopting symfony/ai component v0.8 as platform provider, introducing new plugin types (ai_inference_provider, ai_model_router, ai_platform) with Generic/Gemini implementations and two derivers (EntityPlatform and DefaultPlatform). This represents a major platform abstraction shift.
George Kastanis (zorz) opened MR !1627 to fix ai_observability: streaming OTel spans drop final token usage, addressing the issue where spans end before stream consumption completes. Two new feature MRs also appeared: Levente Besenyei (LeventeB) opened MR !1628 for Add rich-text image description support to AI Automators, and Artem Dmitriiev (a.dmitriiev) proposed MR !1621 to modernize Use ai_provider_configuration form element in RestrictToTopic.
Marcus Johansson (Marcus_Johansson) identified a critical bug in Global LLM-based guardrails cause infinite recursive LLM calls (no re-entrancy guard in ProviderProxy), with MR !1612 opened proposing a programmatic fix. Several documentation and UX issues were also filed by Michael Anello (ultimike) around guardrail naming and scope consistency.
How can I help on this project?
Review MR !1627 fixing the OTel streaming token-usage bug; it finalizes spans on the terminal iterator event. Test MR !1621 migrating RestrictToTopic to the ai_provider_configuration form element, verifying model selection behaves correctly. Pick up RestrictToTopic guardrail should use the prompt JSON decoder service, which is unassigned and has no open MR.
Drupal AI Initiative
Activity over the past 24 hours focused on project organization rather than code changes. Two issues were updated as part of ongoing work to migrate AI marketing tasks to a dedicated subproject. The Look and feel for Enterprise AI Summit Rotterdam issue, assigned to Scott Lawrence (slawrence10), has been migrated to the ai_initiative_marketing project. This issue concerns visual identity development for the upcoming Rotterdam summit, a curated industry showcase distinct from traditional community conferences.
Similarly, Session recordings AI Summit NYC was migrated to handle post-event video publication. Paul Johnson (pdjohnson) is managing the upload of session recordings to Drupal Association YouTube, with most upload tasks complete and promotional activity still pending.
No merge requests were merged and no commits were pushed during this period. The focus remains on marketing and event logistics rather than technical development.
How can I help on this project?
Review the main ai_initiative issue queue for unassigned technical issues related to AI module development. The marketing work has migrated to ai_initiative_marketing, so developer contributions are likely needed on core integration or API work in the primary project.
AI Integration - ECA
No merges or commits landed during this reporting period. Discussion activity focused on two open issues affecting the Chat action plugin.
The AI Chat action fails with "Unknown parameter: 'system_name'" when using "Specific configuration for the model" issue saw its status move to accepted on 2026-05-29. Users following the field description example are encountering a runtime error when passing model-specific configuration, suggesting a parameter handling bug in the Chat action's execution path.
Separately, Marcus Johansson opened Simplify structured output configuration in the Chat action on 2026-05-29, proposing to replace the plain text JSON schema field in src/Plugin/Action/Chat.php with the AI module's dedicated ai_json_schema form element. This would add validation and improve the configuration experience for structured output, addressing issues with malformed JSON and readability in the current implementation (lines 46-50, 115).
Both issues remain unassigned with no related merge requests.
How can I help on this project?
- Investigate the "Unknown parameter: 'system_name'" error in the Chat action by debugging how specific model configuration is passed to the underlying AI provider integration.
- Pick up the structured output simplification task by prototyping the ai_json_schema form element integration in src/Plugin/Action/Chat.php.
AI Agents Test
The AI Agents Test module saw one issue closed during the reporting period. The issue Attach default information tools JS form editor library, worked on by Bruno Bruno (bbruno), focused on integrating a React-based YAML field editor for default information tools into the agents edit form. This feature builds on work completed in the main AI module, specifically connecting the React app developed in a related issue to FormElementForm.php within AI Agents Test. The issue reached closed status on 2026-05-29, indicating the integration work has been completed.
No merge requests were merged and no commits were pushed during the 24-hour reporting period, though the issue closure suggests recent activity may have occurred just prior to the window or the issue was resolved through other means.
How can I help on this project?
With no currently open issues or active merge requests visible in this reporting period, consider exploring the AI Agents Test issue queue for new feature requests or bug reports. You could also test the recently closed FormElementForm.php integration to ensure the React YAML editor functions correctly across different use cases.
amazee.ai Private AI Provider
The amazee.ai Private AI Provider module saw minimal activity during the reporting period. One task issue, More Vector database info/configuration options, was updated on 2026-05-29. The issue, originally reported by ultimike and migrated by drupalbot, requests additional documentation and configuration options for the vector database included with the module's free trial. The issue remains in an accepted state and is currently unassigned with no associated merge requests.
No merge requests were merged and no commits were pushed during the 24-hour window. Development activity appears quiet, with the vector database configuration task representing the only movement on the project.
How can I help on this project?
- Pick up the unassigned More Vector database info/configuration options task and create a patch adding documentation or configuration UI for the vector database feature.
- Review the module's existing codebase to identify other areas needing documentation or API improvements.
Gemini Provider
The Gemini Provider project saw significant cleanup activity in the past 24 hours as the team closes out work toward a stable 1.0.0 release. A total of 27 issues were closed during this period, with much of the activity focused on finalizing previously completed work. Key areas addressed include establishing full PHPUnit test coverage, implementing new operation types (text-to-speech, text-to-image, and speech-to-text), and declaring capabilities properly to the AI module.
Notable closed issues include Add PHPUnit test coverage for GeminiProvider, which established the testing foundation using AiProviderTestBase, and Declare supported model and provider capabilities, which resolves the problem of capabilities not being exposed to the AI module. The team also closed Update default models to current Gemini model lineup, bringing the module in line with the 2.x series models.
Several open issues remain that need attention. Add unit test coverage for textToImage() method still needs implementation, while ValueError: The GenerateContentResponse::parts() quick accessor only works for a single candidate has an open MR (!36) awaiting review to fix error handling when Gemini blocks prompts.
How can I help on this project?
Review the open merge request for ValueError handling when prompts are blocked (MR !36) to help close this error handling bug. Pick up Add unit test coverage for textToImage() method, which has no assigned contributor or MR yet. Consider tackling Security Coverage Application by helping prepare documentation for the application.
Google Vertex Provider
The Google Vertex Provider module saw development activity focused on expanding regional endpoint support. Daniel Mundra (dmundra) opened two merge requests addressing global and multi-region endpoint capabilities: Resolve #3592824 "Support for global" and Adding support for global and multi-region endpoints. Both MRs contain 25 lines of diff and remain open pending review. No commits were merged during the reporting period, and no issues received updates or status changes.
How can I help on this project?
- Review the two open merge requests from dmundra addressing global and multi-region endpoint support to help move them toward merge.
- Test the endpoint configuration changes against your own Google Vertex AI setup to validate functionality across different regions.
Model Context Protocol
The MCP module saw significant housekeeping activity over the past 24 hours, with thirteen issues closed as the project undergoes a major consolidation. The closures reflect a shift in architecture and compatibility: issues including Support JSONRPC ^3, The mcp_auth provider conflicts with basic_auth, and Add MCP - Tool API (mcp_tool) submodule were all resolved. Work on tools configuration, naming improvements, SSE handling, and resource implementation also wrapped up, suggesting a major milestone or refactoring effort.
Active development continues on several fronts. A critical performance issue, tools/list request hangs for 90+ seconds when drush plugin is enabled, has an open merge request (!51) addressing the problem in DrushCaller::defaultConfiguration(). Two bugs remain in needs-review state: Token Auth is not working (affecting #states selectors in admin/config/mcp) and DrushCaller plugin not working (due to incorrect escapeshellarg() usage). Compatibility work for JSON-RPC 3.x continues via merge request !50.
Contributors active in recent issue updates include jibla, gagosha, aalin, merilainen, and shubhamgoel.
How can I help on this project?
- Review the open merge request for tools/list request hangs for 90+ seconds when drush plugin is enabled (!51) to help resolve the DrushCaller performance bottleneck.
- Test and provide feedback on Make compatible with JSON-RPC 3.x (!50) to validate the semver implications.
- Pick up "General" plugin, an unassigned planning issue needing renaming and functionality discussion.
AI Agents
Activity on the AI Agents module remained quiet over the past 24 hours, with no merge requests merged or commits pushed. However, a new issue surfaced that highlights a data leakage bug in the GetEntityFieldInformation function call plugin.
Marc Orcau (budalokko) reported GetEntityFieldInformation leaks target_entity_type / target_bundle_type across fields, identifying a flaw in the GetEntityFieldInformation::execute() method. The issue stems from the reuse of the $information array across iterations in the per-field loop. When an entity_reference field populates target_entity_type and target_bundle_type keys, subsequent fields in the same bundle incorrectly inherit those values until another entity_reference field overwrites them. This bug affects field metadata accuracy and could impact AI agent behavior when working with entity field information.
The issue remains unassigned with no related merge requests, representing an opportunity for contributors to address a clearly defined bug in the function call API.
How can I help on this project?
- Pick up the unassigned GetEntityFieldInformation leaks target_entity_type / target_bundle_type across fields issue and submit a patch that properly resets or scopes the $information array within the field loop.
- Review the GetEntityFieldInformation plugin for similar variable reuse patterns that might cause unexpected behavior.
Tool API
The Tool API project saw issue activity over the past 24 hours but no merges or commits. Two issues remain in active development, both part of the AI Initiative Sprint focused on improving agent and MCP (Model Context Protocol) capabilities.
Work continues on Introduce support for Discovery, Planning and Execute calls for MCP and Agents, which addresses performance degradation when handling large tool counts. The issue focuses on reducing noise and hallucinations by implementing a phased approach to tool execution rather than sending all tools on every request.
Abhisek Mazumdar (abhisekmazumdar) is assigned to File Input Handling, a proof-of-concept and research task exploring how Tools should accept and process file inputs securely when invoked by AI agents. Key areas include input formats, file loading, and normalization schemas.
Both issues remain in the opened state with no merge requests or commits pushed during the reporting period, indicating planning and research phases are ongoing.
How can I help on this project?
- Pick up the unassigned Discovery, Planning and Execute calls issue and contribute implementation approaches for phased tool execution.
- Assist with research on file input handling by documenting security considerations and normalization patterns for AI agent file operations.
Drupal Canvas
Two fixes merged during the reporting period. Lauri Timmanee landed Follow-up: Stabilize Canvas preview for in-place vh updates and tall content, improving preview rendering for tall content (861 lines). Anjali Prasannan (AnjaliPrasannan) merged #3590307: revert the code in 3572865, removing a temporary workaround now that the upstream ai_agents issue has been resolved.
Active work continued on several fronts. Christian López Espínola (penyaskito) opened MR !1171 addressing Props whose source shape differs from the resolved value can't be validated client-side, a blocker for client-side validation of content-entity-reference props. He also pushed MR !1163 for Symmetric translation: component instance version updates must propagate to all translations, introducing TranslationInputReconciler to ensure component version updates propagate across all entity translations.
Ben Mullins (bnjmnm) opened MR !1162 for language preview in templates. AKHIL BABU (AkhilBabu) created Canvas AI: add layout fixture support, now at RTBC status, enabling realistic layout testing for Canvas AI agents. Dave Long (longwave) refactored AstroIsland in MR !1143, adding #inner_html and #attributes properties, and MR !1144 for Add machine name to JsComponent::renderComponent() output.
How can I help on this project?
Review Christian López Espínola's MR !1171 addressing client-side validation of props with differing source/resolved shapes. Review Dave Long's MR !1145 fixing the flaky video.spec.ts:21 Playwright test. Help with accessibility improvements by picking up unassigned issues in [meta] Improve the accessibility of Drupal Canvas.
Context Control Center (CCC)
The CCC team merged two improvements to the administrative interface during the reporting period. MR !157 shipped a toggle allowing users to hide the overview page directly from the interface itself, complementing the existing general settings option, and revised welcome text for clarity. MR !162 introduced an extensions page under settings to surface optional CCC integrations like Diff and Dynamic Entity Reference, helping users discover available functionality. Both merges were contributed by Kristen Pol (kepol).
The team also resolved Fix PHPStan failures in CCC via MR !163, addressing 16 PHPStan level 2 errors across entity field typing, diff builder return types, and scope plugin interfaces. A discussion issue on Selection extension points and diagnostics for context selection closed after determining the stable extension model, leading to follow-up work on Add stable selection pipeline events for contrib extension and Add opt-in AiContextSelectionDiagnostics to selection results.
Progress toward the 1.0 release remains focused on API stabilization. High-priority pre-RC1 work includes Complete scope plugin API before RC1: persistence, form encapsulation, validation, capability flags, and documented interface sections, assigned to Kristen Pol (kepol). Michael Anello (ultimike) raised configuration and UX questions regarding default settings and admin menu placement.
How can I help on this project?
Review MR !158 to test hiding non-global scope options when global context is selected. Review MR !131 introducing post-select and post-render selection events for contrib extension. Pick up unassigned issues like Document supported vs internal CCC APIs to clarify the public API surface before RC1.
Field Widget Actions
The Field Widget Actions module saw one merge land in the reporting period. Adam Gefen (manandearth) closed Suggestions buttons should not be primary and should be closer to the field with MR !17, addressing UI concerns around button styling and spacing. The merge removes excess margin and switches suggestion buttons to secondary styling so they feel more associated with their fields rather than competing visually with primary actions like node save.
Two issues remain in active development. Artem Dmitriiev (a.dmitriiev) has MR !21 open for Field Widget Actions show in the "Add New Action" unavailable tools, which filters the configuration dropdown to omit plugins that fail the isAvailable check, reducing confusion when automators don't exist for a given entity type and field. A second MR !20 from Artem Dmitriiev addresses Deprecate multiple property in plugin attribute, deprecating the confusing multiple attribute in FieldWidgetAction plugin definitions for eventual removal in 2.0.x. Edward Zwart (ezeedub) has also introduced MR !19 for interactive refinement capabilities, adding RefinementAwareInterface and enable_refinement configuration options to allow iterative AI content improvement.
How can I help on this project?
- Review MR !21 for Field Widget Actions show in the "Add New Action" unavailable tools to validate the isAvailable filtering logic.
- Test MR !19's interactive refinement feature with real AI automators and provide feedback on the RefinementAwareInterface implementation.
- Review MR !20 for the multiple property deprecation to ensure backward compatibility.
AI translate
Activity this period focused on error handling improvements in the translation batch process. Miriam Nugent (Peacog) opened fix: #3542014 Display error message when translation fails, addressing the issue Translation batch process does not handle translation errors. The problem involves translation errors being collected during batch operations but never displayed to users, resulting in translation entities being created with untranslated data when field translations fail. The MR proposes a solution with 105 lines of changes and is currently awaiting review. Ilia Nozadze (IliaNoz) is assigned to the issue, which remains in needs work status.
How can I help on this project?
FlowDrop
The FlowDrop project saw significant milestone activity over the past day, with 94 issues closed as Phase 1 and Phase 2 work concluded. The team successfully completed foundational backend infrastructure and delivered the initial visual workflow editor.
Phase 1 (Foundational Setup) reached completion, covering module structure finalization, entity and config architecture, the node processor plugin system, and the node runtime execution engine. Key components include the workflow entity, node type definitions, and FlowDropNodeRuntime service with DAG compilation and error handling. The execution engine now supports fail-fast and skip-failed modes with job recording.
Phase 2 (Visual Workflow Editor) also closed, delivering the Svelte-based drag-and-drop canvas, node parameter editing via inline configuration, and workflow editor API with event communication. The system supports real-time UX enhancements including validation, auto-layout, and node state highlighting. Integration with node definition plugins enables dynamic discovery and schema-driven configuration.
Phase 3 (Frontend & Visual Workflow Editor) and Phase 4 (Execution Engine & Monitoring) were marked complete, along with several AI integration tasks. Phase 5 (Advanced Features & AI Integration) closed with AI node processors, data preprocessing, and inference nodes implemented.
Multiple planning and testing phases were also completed, including deployment and CI/CD integration, UX and accessibility validation, and security testing. Contributors active during this period include Shibin Das (D34dMan), gxleano, and joevagyok.
Several new feature requests remain open, including file and audio input for the playground, file extractor node processor support, and improved AI assistant interaction with complex node processors.
How can I help on this project?
- Pick up unassigned issues like Add file and audio input to the playground or Add File Extractor node processor which have no related MRs.
- Address the UX bug in Chat input flow confusing when HITL node is present, which affects playground mode usability.
References
[1] Adopt symfony/ai component v0.8 as platform provider
[3] ai_observability: streaming OTel spans drop final token usage (span ended on un-consumed iterator)
[11] Use ai_provider_configuration form element in RestrictToTopic configuration form
[12] Release script does not set the version for json-schema-editor
[21] Global LLM-based guardrails cause infinite recursive LLM calls (no re-entrancy guard)
[23] Draft: feat: #3586427 Adopt symfony/ai component v0.8 as platform provider
[24] fix: #3586473 Finalize streaming OTel spans on the terminal event
[27] Resolve "Fix 1.x error messages in phpstan"
[28] Issue #3586472: Use ai provider configuration form element and use proper...
[36] Resolve "Global LLM-based guardrails cause infinite recursive LLM calls (no re-entrancy guard)"
[118] Props whose source shape differs from the resolved value can't be validated client-side
[126] Canvas AI: Remove temporary workaround from #3572865
[133] Follow-up: Stabilize Canvas preview for in-place `vh` updates and tall content