Daily Digest
Daily Digest – 5 August 2026
2026 Capabilities Progress
- Page generation — The AI-powered Canvas page builder refactored its request processing to pause after each AI decision and stream progress to the browser, improving responsiveness during page builds [109]. The system also received a fix to prevent discarding entire page builds when the AI references non-existent regions [108].
- Context management — The Context Control Center in progress UI design work for subscription limit indicators and advanced toward its 1.0 release with documentation, QA scripts, and configuration improvements underway [143][144][145][146][147][148][149][152][153][156][159]. Token budget persistence and access control hardening are in active development.
- Background agents — Agent reliability improved with fixes for hostname filtering during unattended execution and expanded test coverage for externally-driven agent runs [84][83]. The ECA agent was migrated to modern tools architecture [61][66], and work continues on agent status streaming and tool execution limits [87][92].
- Design system integration — Canvas in progress support for pushing code components from headless codebases and enabling field additions to page entities [103][101][122]. Brand kit color support and component metadata handling remain in progress [102][124][127].
- Content creation and discovery — Interactive refinement capability is in progress for Field Widget Actions, enabling iterative content improvement through conversational prompts [2][3][32][34]. A chat memory plugin type was introduced for persistent conversation history [10][38][39]. Search indexing stability work continues with a data integrity issue under investigation [164].
- Advanced governance — AI translation added documentation and fixed pipeline infrastructure, with batch translation of referenced entities under review [165][166][167][168][169][171]. Work on guardrails configuration and automator status handling is in progress [4][13][18].
- Intelligent website improvements — No direct progress today.
- Multi-channel campaigns — The ECA integration added nine new operation actions covering text-to-image, translation, summarization, and video generation, enabling workflow automation across content formats [50][51][52][53][54][55][56][57][58][59][60][65].
Shipped
- Interactive refinement for AI-generated content — Field Widget Actions allows editors to iteratively improve AI outputs through conversational prompts before accepting them, giving more control over automated content creation, with work continuing on the 2.x branch [2][3][32][34].
- Chat memory foundation for persistent conversations — A new plugin type enables chatbots to store conversation history across sessions using server-side backends, supporting more sophisticated conversational experiences [10][35][36][38][39].
- Nine new AI workflow building blocks for ECA — Operations covering text-to-image, classification, translation, summarization, and video creation are now available as visual workflow actions without custom code [49][50][51][52][53][54][55][56][57][58][59][60][64][65].
- ECA agent modernization — The agent that generates workflow automations from plain language descriptions was migrated to structured tools and reasoning loops architecture [61][66].
- Postgres vector search performance fixes — Cosine search now properly utilizes embedding indexes, attribute columns are preserved during reindexing, and collection deletion queries were corrected [71][72][73].
Ongoing
- AI module releases 1.4.6 and 1.3.11 in quality assurance — Both versions are undergoing testing before release to ensure stability [8][9].
- Model Context Protocol adoption proposal pending approval — A substantial architectural change for rich structured chat in version 1.6.x awaits maintainer review before work can proceed [20][21][22][23][24][25][26][27][28][29].
- Context Control Center approaching first release candidate — Documentation, QA scripts, configuration video, and interface refinements are in progress toward the 1.0 milestone [143][144][145][146][147][148][149][160][161][162][163].
- Canvas headless architecture improvements under review — Brand kit color support, additional entity type compatibility, and AI chat tools integration are actively being developed [102][103][114][115][122][124][126][127][128][141].
- AI Search indexing completeness bug identified — Progressive indexing can drop content chunks when miscounting document splits, affecting search accuracy and requiring engineering attention [164].
AI (Artificial Intelligence)
The project delivered several important capabilities during this period. A major advancement was completed to enable interactive refinement in Field Widget Actions, allowing editors to iteratively improve AI-generated content through conversational prompts before accepting it. This work enhances content creation workflows by giving editors more control over automated outputs.
A new chat memory plugin type was introduced, providing chatbots with standardized mechanisms to persist conversation history across requests. Each chatbot can now opt into server-side memory backends or continue managing history entirely in the browser. This foundation supports more sophisticated conversational experiences.
Multiple bug fixes were addressed, including issues affecting guardrail configuration forms and automator status settings. Work continued on improving chatbot stability, particularly around interactions with modals and the Drupal toolbar.
Looking ahead, the team is preparing releases for versions 1.4.6 and 1.3.11 following quality assurance testing. A substantial architectural proposal for rich structured chat—adopting Model Context Protocol shapes—has been filed but remains postponed pending maintainer approval. This proposal would affect the 1.6.x branch once created.
Several issues remain under review, including concerns around reranking logic for chunked search results, request tag registration for better visibility, and proper handling of unconfigured AI provider states. These reflect ongoing refinements as the module matures toward stable releases.
How can I help on this project?
Prioritize maintainer review of the Model Context Protocol adoption proposal to unblock architectural planning for version 1.6. Ensure adequate testing resources are allocated for the pending 1.4.6 and 1.3.11 releases to maintain quality standards. Consider whether additional resources are needed to address the backlog of open issues currently under review.
Contributors: Abhishek Dhariwal (adaptative), Ahmad Khader (Ahmad-Khader), Ahmad Khalil (ahmad-khalil-imagex), Ann Mary Sruthy (annmarysruthy), Artem Dmitriiev (a.dmitriiev) [1], Joshua Fernandes (joshua1234511), Levente Besenyei (LeventeB), Miguel Guerreiro (gueguerreiro), Prabhavathi Vanipenta (prabha1997), Ricardo Castañeda (cadence96), Rob Loach (robloach) [1]
Drupal AI Initiative
Activity this period focused on planning and quality assurance. A roadmap was established targeting DrupalCon Rotterdam in late September, with the goal of demonstrating a fully integrated AI-powered Drupal site. The planned demonstration will showcase AI search, content review, translation, editor chat, observability, and guardrails working together on multilingual content. Visitors will be able to launch the demonstration site themselves within seconds. According to the [META] 2026 AI Inside Roadmap to DrupalCon Rotterdam 2026 issue, most individual features already function; the remaining work involves packaging them together with recipes and demonstration content.
The quality assurance team held its bi-weekly meeting, documented in QA Bi-Weekly Meeting - 5th August 2026. Testing is underway on Drupal CCC and regular releases. The team noted that developers are not consistently flagging issues as needing QA review, and plans are being made to onboard new QA team members.
How can I help on this project?
- Ensure the team has adequate resourcing and budget to complete the DrupalCon Rotterdam demonstration on schedule, including recipe development and demonstration content creation.
- Support QA capacity expansion by approving onboarding time for new quality assurance volunteers joining the initiative.
AI Integration - ECA
This module bridges Drupal's Event-Condition-Action (ECA) workflow system with the AI module's capabilities. Over the past 24 hours, two major deliverables were merged that significantly expand what users can do with the integration and prepare it for its 1.0 release.
Nine new workflow building blocks were added, covering operations like text-to-image generation, image and text classification, translation, summarization, and video creation. Users can now trigger these AI operations through visual ECA workflows without writing custom code. This completes the coverage of all supported AI operation types except one (image-and-audio-to-video), which remains niche. A final operation—Rerank—is in development but not yet merged.
The ECA agent—a tool that lets users describe workflow automations in plain language and have the system generate them—was migrated to a new architecture that uses structured tools and reasoning loops. This modernizes the agent's implementation and brings it in line with the upstream AI module's current design patterns.
Work also began on improving how users configure structured responses in chat actions, and on a new feature that will allow workflows to intercept and modify AI requests and responses in real time.
How can I help on this project?
- Ensure testing resources are available to validate the new operation actions before the stable 1.0 release, particularly for media-heavy operations like video and image generation.
- Prioritize a decision on whether the AI Interceptor feature warrants release alongside 1.0 or should follow in a later version.
Contributors: Ahmad Khader (Ahmad-Khader), Marcus Johansson (Marcus_Johansson) [2]
Anthropic Provider
Activity this period focused on project infrastructure and new feature development. Issue templates for bug reports and feature requests were added to the repository to streamline how contributors and users report problems and suggest improvements. This will help the team triage and respond to feedback more efficiently as the module matures.
A significant feature addition is in review that would add three new capabilities to the module: token counting (to track usage and costs), citation support (to reference sources in AI-generated responses), and context management tools (to handle long conversations more effectively). These features are designed to be optional and disabled by default, meaning existing functionality remains unchanged for current users. The work represents a major expansion of the module's capabilities for organizations that need tighter control over AI interactions and associated costs.
How can I help on this project?
- Ensure the team conducting the feature review has sufficient time allocated to thoroughly evaluate the token counting and context management additions before they reach production.
- Clarify organizational priorities around AI cost visibility and citation requirements to help guide which optional features should be recommended for broader adoption.
Contributors: Carlos Ospina (camoa), Mykola Podpriatov (nickolaj)
Microsoft Azure AI
A user interface improvement was merged during this period to clarify how model identifiers are used when connecting to Azure services. The model ID field description update helps users understand that the value they enter will be sent directly to Azure when making requests. This reduces potential confusion during configuration and should help prevent setup errors.
The change represents incremental progress in making the module more accessible to site builders configuring Azure AI integrations.
How can I help on this project?
With no outstanding issues reported in this period, consider checking whether the module has sufficient user feedback to guide its roadmap toward a stable release, or whether additional testing resources would help validate the configuration experience improvements now in place.
Contributors: Peter Törnstrand (peter_tornstrand)
Postgres VDB Provider
The Postgres VDB Provider module saw three improvements merged during this period, addressing core reliability and performance issues. A fix was applied to resolve a problem where the cosine vector search was not properly utilizing the embedding index it creates, which improves search performance. Another change ensures that attribute columns are correctly preserved when collections are cleared and reindexed, preventing data loss during maintenance operations. Finally, a query issue affecting the deletion of items from collections was corrected, ensuring data can be removed reliably.
These fixes strengthen the foundation of the module's vector database capabilities, making it more dependable for production use in AI-powered search and content retrieval features.
How can I help on this project?
- Support allocation of testing resources to validate these fixes in realistic production scenarios before wider deployment.
- Ensure stakeholder alignment on prioritizing stability work as the module matures toward a stable release.
Contributors: calmforce [1], Ignacio Pérez Puertas (djnash2002) [1], Mykola Podpriatov (nickolaj), Sergiu Nagailic (Nikro)
AI Agents
The AI Agents module made significant progress over the past 24 hours, with version 1.3.3 released and several quality improvements merged.
Two key fixes were completed. First, a missing close button in the tool configuration popup has been resolved, improving the usability of the agent editing interface. Second, a technical error that prevented agents from correctly restoring conversation histories containing images has been fixed, ensuring agents can reliably continue conversations that include visual content.
The team also addressed issues affecting agent reliability: a security filtering inconsistency was resolved to ensure hostname restrictions work correctly in all execution modes, and additional test coverage was added to protect the external execution mode used by interactive interfaces. A new per-tool setting now allows administrators to prevent certain tools from being called multiple times in a single response, helping maintain control over agent behavior.
Open work includes a minor deletion bug affecting single-tool configurations, ongoing research into multi-agent communication patterns, and several proposals for advanced features such as streaming responses and improved progress reporting.
How can I help on this project?
Consider whether the project needs additional testing resources to address the CI pipeline stability issue. Review and approve or defer the three postponed feature proposals awaiting maintainer decision, as they represent significant architectural direction. Clarify requirements for the file size limit feature request to help contributors move forward.
Contributors: AKHIL BABU (AkhilBabu) [2], Alexis Martínez (alexismmd), Bharat Kelotra (bharatkelotra), Marcus Johansson (Marcus_Johansson)
Drupal Canvas
Activity this period focused on improving the headless architecture, developer tooling, and the AI-powered page builder. Two significant improvements were merged that streamline workflows for teams building decoupled frontends.
The headless SDK now uses a dedicated Canvas content endpoint instead of relying on an external Lupus dependency, giving the project full control over how content is delivered to decoupled frontends. The CLI tool also gained the ability to synchronize flexible codebase files (package configuration, shared libraries) when pulling content from Canvas back to local development environments, with backward compatibility for older Canvas installations.
The AI page builder's developer chat underwent internal refactoring to improve how it processes requests. Instead of running the AI agent to completion in a single server request, the system now pauses after each decision and streams progress back to the browser, which should improve responsiveness and transparency during complex page builds.
Several user-facing fixes were merged, including a correction for blank previews when editing content templates in view modes other than "full," and improvements to video thumbnail rendering.
Work is progressing on brand kit color management, support for additional entity types beyond pages, and tools integration in the AI chat interface. Several issues remain open around component metadata handling, link editing in translated content, and data migration for properties created before version 1.8.
How can I help on this project?
- Prioritize decisions on which entity types beyond pages should support Canvas editing to guide the open entity type work.
- Review whether the brand kit color management roadmap aligns with your organization's design system requirements before implementation advances further.
Contributors: **** (project_19391_bot_17a61b0edeafd5a3db3e8b2462b6c010), **** (project_19391_bot_cb443e60680723bba08a5351bf595251), Adam G-H (phenaproxima), AKHIL BABU (AkhilBabu) [1], Ben Mullins (bnjmnm), Bálint Kléri (balintbrews), Chandan Singh (chandu7929), Dave Long (longwave), David Bravo (davidbp), Harumi Jang (hooroomoo) [1], Jakub Piasecki (zaporylie) [1], Juan Correa (jucs7), Kunal Sachdev (kunal.sachdev), Matt Glaman (mglaman), Rajab Natshah (RajabNatshah), Rajendar Pothireddypally (RajendarReddy), wotnak [2]
Context Control Center (CCC)
The project continued refinement work toward its first release candidate. Multiple design and quality initiatives advanced during the period.
A UI indicator design for subscription limits was completed and closed. This work will help site builders understand when they have reached or are approaching capacity for context items attached to AI agents, and guide them to appropriate next steps. The completed design work feeds into implementation of token count persistence and budget usage displays.
Preparations for the 1.0 release continued with planning around QA test scripts, a configuration video tutorial, and documentation updates to reflect the module's naming approach. Several open proposals address code cleanup, permission hardening, and interface improvements ahead of the release candidate milestone.
Work in progress includes renaming plugins for better usability, decoupling UI descriptions from internal plugin text, and simplifying configuration by relying solely on token budgets rather than item count limits.
How can I help on this project?
- Confirm resourcing for the QA testing window; the team has flagged a preference for 14 days lead time before the planned release date.
- Review and approve the design decisions around subscription limits and token budgets to unblock implementation.
Contributors: Juan Correa (jucs7), Kristen Pol (kepol), Tamas Balog (tbalog), Tekla Aivazashvili (aivazashvilit)
AI Search
The AI Search module is addressing a data integrity issue in its indexing process. A bug was identified where the progressive indexing feature can fail to process all content chunks, potentially leaving portions of documents unindexed and unsearchable. This occurs when the system miscounts how many pieces a document needs to be split into, causing the indexing process to stop prematurely while incorrectly marking the work as complete.
The issue, Progressive indexing can drop tail chunks, was opened during this period and is now being tracked. This affects search completeness and accuracy—users searching for content may miss relevant results if that content happens to fall in the unprocessed portions of documents. The problem is reproducible and occurs when certain language processing configurations are used.
No code changes were merged or committed during this 24-hour window. As an early-stage module under active development, open bugs of this nature are expected and part of normal progress toward stability.
How can I help on this project?
- Prioritize engineering capacity to resolve the indexing completeness bug, as it directly impacts search quality and user trust in results.
- Support expanded testing resources to validate indexing across different language and content configurations before wider adoption.
AI translate
The AI Translate module made progress on foundational quality improvements during this period. Documentation has been added to help users understand how to configure and use the module, addressing a previous gap in onboarding materials. Separately, automated testing infrastructure was repaired to ensure code quality checks run correctly, which supports more reliable future development.
Two proposals are under review to extend the module's translation capabilities. One addresses a bug where translating media entities (such as images) fails due to incorrect language handling. A related proposal would enable automatic translation of linked content, such as taxonomy terms referenced within an article, streamlining workflows where multiple related pieces of content need translation together.
How can I help on this project?
- Ensure review capacity is available to evaluate the two open translation enhancement proposals, which could materially improve user workflows if validated and merged.
- Consider user testing or feedback loops with teams translating media-heavy content to validate the proposed fixes meet real-world needs.
Contributors: Carlos Romero (o0Charly0o), Marcus Johansson (Marcus_Johansson) [1], Rob Loach (robloach) [1], szato (odi)
Langfuse
Development progress continues on the Langfuse module with work underway to expand its feedback capabilities. A new merge request has been opened to introduce functionality for collecting user feedback, which will be packaged as a dedicated submodule. This addition will enable organizations to capture structured feedback within their Langfuse implementation, supporting better measurement of user sentiment and product quality. The work is currently under review and has not yet been integrated into the main codebase.
No new issues were raised during this period, and the project continues its development phase without critical blockers.
How can I help on this project?
- Ensure the team has access to subject matter experts or early adopters who can validate the feedback functionality against real-world use cases.
- Clarify the project's release roadmap and stability goals to help prioritize remaining development work.
Contributors: Abhisek Mazumdar (abhisekmazumdar)
References
[1] Drupal 11.4 DeepChat Block does not work with Webprofiler enabled
[2] Add interactive refinement capability to Field Widget Actions
[3] Add interactive refinement capability to Field Widget Actions 2.x
[10] Add a ChatMemoryInterface for storing ChatBot chat history
[18] Add a setup-guardrails agent skill to configure guardrails, guardrail sets, and global guardrails
[20] Approve the Chat Fundamentals (MCP-shaped rich chat) issue set for 1.6.x
[21] [Meta] Rich structured chat: adopt MCP content and interaction shapes
[22] (Optional) Typed context references on user messages via input-side content blocks
[23] Citations/sources and suggested replies via MCP shapes
[24] Elicitation round-trip: MCP-shaped request/result objects and pause/resume on ChatProcessor
[25] ChatBlockRenderer plugin type with default renderers and entity cards
[26] ChatProcessor: structured response channel and block-aware message history
[27] Add MCP content blocks and a _meta bag to ChatMessage
[29] Add ChatOutput::setMetadata() and stop discarding chunk metadata in streamed reconstruction
[32] Issue #3586468: "Add interactive refinement capability to Field Widget Actions Automation"
[34] Issue #3586468: "Add interactive refinement capability to Field Widget Actions Automation"
[35] Issue#3586539: Cherry pick d8017c74
[36] Issue#3586539: Cherry pick d8017c74
[38] Issue #3586539: Add ChatMemory plugin type
[39] Issue #3586539: Add ChatMemory plugin type
[49] Simplify structured output configuration in the Chat action
[50] [Meta] Cover remaining AI operation types with ECA execute actions
[51] Add ECA execute action for Translate Text
[52] Add ECA execute action for Text to Image
[53] Add ECA execute action for Text Classification
[54] Add ECA execute action for Summarization
[55] Add ECA execute action for Speech to Speech
[56] Add ECA execute action for Object Detection
[57] Add ECA execute action for Image to Video
[58] Add ECA execute action for Image to Image
[59] Add ECA execute action for Image Classification
[60] Add ECA execute action for Audio to Audio
[61] Migrate the ECA agent to the Tools + ReAct architecture (create-only)
[64] Issue #3585014 Simplify structured output configuration in the Chat action
[65] Resolve "9 different new actions"
[66] Resolve "Migrate the ECA agent to the Tools + ReAct architecture (create-only)"
[71] fix: #3609274 Cosine vectorSearch() defeats the embedding index it creates
[72] Issue #3586862 by ignacio.perez.puertas: Re-apply Attributes columns after clear+reindex cycle
[73] Issue #3553475: Fix query in deleteFromCollection().
[83] Add test coverage for externally-driven execution (setLooped(FALSE))
[84] Disable hostname filtering does not work when looping is off
[87] Expose the agent status stream as MCP-shaped progress to any chat consumer
[92] Add limits on how often a tool can run
[101] Allow fields to be added to the page entity type
[102] Brand Kit color support
[103] Support pushing code components from a headless codebase
[108] Canvas AI: page builder discards the whole build when the LLM names a region that does not exist
[109] Canvas AI: Run the component agent in the dev chat with setLooped(FALSE), driven by the browser
[114] Replace Lupus CE API with a dedicated Canvas Headless endpoint
[122] feat(Page builder): #3568228 Add field_ui_base_route support for Canvas Page entity
[124] #3591838 brand kit color implementation
[126] feat(CLI Tool): Push components as external metadata when the Headless SDK is present
[127] Draft: #3591838 [PHASE 2] introduce color props
[128] feat: #3518272 support all entity types with configurable displays for content templates
[141] #3498525 Allow entity types other than node; add feature flag module for taxonomy terms.
[143] Rename entity bundle and target entity scope plugins for better DX
[144] Clean up CCC inconsistencies and DX issues before rc1 (part 3)
[145] [Meta] CCC MVP 1.0 roadmap
[146] Update ai_context project page and docs based on new naming approach
[147] Create CCC video showing how to configure it
[148] CCC QA scripts for 1.0 testing
[149] Create CCC rc1 release
[152] Persist context-item token counts and show token-budget usage in CCC UI
[153] Decouple context item form descriptions from scope plugin descriptions
[156] Harden CCC context item access checks and document the authoring trust model
[159] Remove max_items context limit and rely on the token budget
[160] Issue #3586271: Clean up CCC inconsistencies and DX issues before rc1 (part 3)
[161] Issue #3586276: Rename entity bundle and target entity scope plugins for better DX
[162] Issue #3586361: Decouple context item form descriptions from scope plugin descriptions.
[163] Issue #3586356: Harden CCC context item access checks and document the authoring trust model.
[164] Progressive indexing can drop tail chunks
[165] Add documentation
[166] Fix Pipeline
[167] InvalidArgumentException: Invalid translation language (und) when translating media entities
[168] Resolve "Add documentation"
[169] Issue #3585537: Fix the Pipelines by adding composer.json
[171] feat: Add batch translation for referenced translatable entities in AiTranslateController
Shipped
- ChatMemoryInterface merged in AI module — A new ChatMemory plugin type was merged, allowing chatbots to persist conversation history across requests through server-side memory backends [10][35][36][38][39].
- Interactive refinement for Field Widget Actions — Users can now iteratively improve AI-generated content through conversational prompts before accepting it into a field, merged for both 1.x and backported to 2.x [2][3][32][34].
- Nine new ECA execute actions for AI operations — AI Integration ECA shipped actions for AudioToAudio, ImageClassification, ImageToImage, ImageToVideo, ObjectDetection, SpeechToSpeech, Summarization, TextClassification, and TextToImage [50][51][52][53][54][55][56][57][58][59][60][65].
- ECA agent migrated to Tools and ReAct architecture — The ECA agent submodule replaced legacy AiAgentBase with the AI module's native agent system and tool integration [61][66].
- Canvas headless infrastructure improvements — The SDK migrated from Lupus CE API to a dedicated /canvas/content-api endpoint, and CLI tool gained codebase sync compatibility detection [105][114][132][134][142].
Ongoing
- AI Automator disabled setting ignored — Disabling an AI Automator config entity currently has no effect, automators continue firing on every entity save, merge request open [4][33].
- Tool validation exceptions not caught — AiToolsValidationException thrown by tools is not caught and converted into tool results for model retry, surfaces to end users instead [12].
- Progressive indexing drops tail chunks in AI Search — Tokenizer mismatch between computeItemChunks() and getEmbedding() causes chunks to be dropped when using non-GPT-3.5 tokenizers [164].
- CCC scope plugin naming refactor under review — Large merge request renames AiContextScopeEntityBundle to clearer Entity Type terminology for better developer experience [143][161].
- Canvas Brand Kit color support in review — Two-phase implementation adding color prop type and Brand Kit integration for Canvas page builder [102][124][127].
AI (Artificial Intelligence)
The past 24 hours saw significant progress on memory handling and field widget refinement capabilities. Add a ChatMemoryInterface for storing ChatBot chat history was merged, introducing a new ChatMemory plugin type that allows chatbots to persist conversation history across requests. Each chatbot now decides whether to use a server-side memory backend via ChatMemoryInterface or handle history entirely on the frontend.
Add interactive refinement capability to Field Widget Actions closed after its merge request landed, enabling users to iteratively improve AI-generated content through conversational prompts before accepting it into a field. The feature was also backported to the 2.x branch and cherry-picked to other versions. Work is underway to port these changes to the 2.x branch in Add interactive refinement capability to Field Widget Actions 2.x, where the ai_automator architecture differs slightly.
Several bug reports surfaced issues with automator configuration handling. AiAutomatorEntityModifier::entityHasConfig() ignores the AI Automator's disabled (status: false) setting was opened with a merge request addressing the fact that disabling an AI Automator config entity currently has no effect—automators continue to fire on every entity save. AiToolsValidationException is not caught and passed back as tool output highlights that validation exceptions thrown by tools are not caught and converted into tool results for the model to retry, instead surfacing to end users.
A major architectural planning effort began around structured chat, with Approve the Chat Fundamentals (MCP-shaped rich chat) issue set for 1.6.x coordinating 12 postponed issues proposing adoption of Model Context Protocol shapes for citations, content blocks, elicitation, and other rich chat features targeting the future 1.6.x branch.
How can I help on this project?
Review the open merge request on AiAutomatorEntityModifier::entityHasConfig() ignores the AI Automator's disabled setting to verify the fix correctly respects entity status. Test and provide feedback on If only one tool, cannot delete it, gives an error where a merge request fixes ToolsLibrary element handling. Pick up AiToolsValidationException is not caught, which needs implementation to catch validation exceptions and return them as tool output.
Contributors: Abhishek Dhariwal (adaptative), Ahmad Khader (Ahmad-Khader), Ahmad Khalil (ahmad-khalil-imagex), Ann Mary Sruthy (annmarysruthy), Artem Dmitriiev (a.dmitriiev) [1], Joshua Fernandes (joshua1234511), Levente Besenyei (LeventeB), Miguel Guerreiro (gueguerreiro), Prabhavathi Vanipenta (prabha1997), Ricardo Castañeda (cadence96), Rob Loach (robloach) [1]
Drupal AI Initiative
Activity this period focused on planning and quality assurance coordination. A [META] 2026 AI Inside Roadmap to DrupalCon Rotterdam 2026 issue was updated, outlining the goal to demonstrate an integrated demo site at DrupalCon Rotterdam featuring AI Search, content review, translation, editor chat, observability, and guardrails working together on multilingual content. The emphasis is on shipping recipes and demos rather than building new core capabilities.
The QA Bi-Weekly Meeting - 5th August 2026 summary was posted, noting that QA testing is actively underway for Drupal CCC and regular releases. The meeting highlighted that use of the "Needs QA" label remains low among developers, and that onboarding sessions for new QA team members are being arranged. Issue queue monitoring for Drupal Pod and testing coordination with Drupal Forge are ongoing.
No merge requests were merged and no commits were pushed during this period.
How can I help on this project?
- Review open issues and add the "Needs QA" label where appropriate to help surface work ready for testing.
- Contribute to recipe or demo development supporting the DrupalCon Rotterdam roadmap goals.
AI Integration - ECA
The AI Integration ECA module saw significant progress in the last 24 hours, with two major merge requests landing. MR !9 was merged, delivering nine new ECA execute actions to cover previously unsupported AI operation types: AudioToAudio, ImageClassification, ImageToImage, ImageToVideo, ObjectDetection, SpeechToSpeech, Summarization, TextClassification, and TextToImage. Each new action extends AiConfigActionBase and follows the existing pattern established by Chat.php, allowing ECA flows to drive these operations without custom plugins. This work closed the corresponding child issues under the meta tracking coverage of remaining AI operation types, which is now itself closed.
A second major architectural change was merged via MR !14, migrating the ECA agent in the agents submodule from the legacy AiAgentBase architecture to the new Tools and ReAct framework. The agent previously hand-rolled control flow through three YAML sub-prompts; it now uses the AI module's native agent system with tool integration.
Two issues remain open: Add ECA execute action for Rerank (no MR yet) and Simplify structured output configuration in the Chat action, which has an open MR !12 proposing to replace the raw JSON text field with the ai_json_schema form element.
How can I help on this project?
- Review MR !12 to evaluate the ai_json_schema form element integration for structured output configuration.
- Pick up Add ECA execute action for Rerank and implement the missing Rerank operation action following the AudioToAudio pattern.
Contributors: Ahmad Khader (Ahmad-Khader), Marcus Johansson (Marcus_Johansson) [2]
Anthropic Provider
The Anthropic Provider module saw two merge requests progress during the reporting period. A GitLab issue templates merge request was closed, while a significant new feature addition remains under review.
The Add token counting, citations, and context management merge request (1930 diff lines) is still open. This work implements phase 3 of the native SDK integration meta, introducing three opt-in features: token counting via a new public AnthropicProvider::countTokens() method backed by the SDK's $client->messages->countTokens(), citation support, and context management including compaction and editing. All features are disabled by default and configured through new admin form sections, ensuring backward compatibility with the existing GA chat path.
The Added GitLab issue templates merge request was closed after 112 lines of changes related to repository maintenance.
How can I help on this project?
Review the open token counting, citations, and context management MR, particularly testing the new countTokens() API and verifying backward compatibility. Check the admin form UX and confirm all three features remain properly disabled by default.
Microsoft Azure AI
The Alter description for model ID field in AzureProvider form to make clear the... merge request was merged during this period. This change updates the form description text for the model ID field in the AzureProvider configuration form, clarifying that the entered value will be used directly in Azure API requests. The merge addresses potential confusion around how the model identifier is applied when communicating with Azure AI services.
No other merge activity, commits, or issue updates occurred during this reporting period.
How can I help on this project?
Review the module's open issues on the project issue queue to identify bugs or feature requests without assigned merge requests. Test the recently merged model ID field description change to ensure the updated text adequately clarifies usage for new users configuring Azure providers.
Contributors: Peter Törnstrand (peter_tornstrand)
Postgres VDB Provider
Three merge requests were integrated during this period, addressing key bugs in the vector database provider. A fix for the cosine vectorSearch() defeating the embedding index it creates was merged, correcting inefficient query patterns. The attribute columns reapplication after clear+reindex cycle issue was resolved, ensuring schema integrity is maintained through reindexing operations. Additionally, a query fix in deleteFromCollection() was merged, addressing deletion logic problems.
These changes touch core vector database operations including search indexing, schema management, and collection deletion workflows. The fixes should improve both performance and data integrity for sites using PostgreSQL as their vector database backend.
How can I help on this project?
Review the codebase for additional edge cases in vector search operations, particularly around index usage patterns. Test the recent fixes with various PostgreSQL versions and pgvector configurations to ensure compatibility. Consider contributing documentation on schema management best practices for vector collections.
Contributors: calmforce [1], Ignacio Pérez Puertas (djnash2002) [1], Mykola Podpriatov (nickolaj), Sergiu Nagailic (Nikro)
AI Agents
Version 1.3.3 was released during the reporting period. The release included several important bug fixes that improve agent reliability and the configuration UI.
A fix was merged for Tool settings popup on agent edit form has no visible close/save button, resolving a CSS issue where the close control in the MicroModal tool configuration dialog was functional but invisible. A critical serialization bug was also resolved in AiAgentEntityWrapper::fromArray() fatals when the serialized chat history contains an image, which caused fatals when restoring agents whose chat history contained files. The fix ensures file objects are properly reconstructed from their serialized array form.
Several other issues were closed: Disable hostname filtering does not work when looping is off resolved a trust flag issue in externally-driven execution mode, PHPUnit CI job fails (exit code 1) for every test class despite all assertions passing fixed CI reliability, and Make it possible to pick providers per agent shipped per-agent provider selection. Additional features merged include test coverage for setLooped(FALSE) and a per-tool restriction to prevent multiple calls per response.
How can I help on this project?
Review the open merge request for preventing undefined array key warnings when parameters is missing. Help triage the array key error when deleting the last tool, which needs testing and reproduction steps. Consider picking up file size limit configuration, which needs design input.
Contributors: AKHIL BABU (AkhilBabu) [2], Alexis Martínez (alexismmd), Bharat Kelotra (bharatkelotra), Marcus Johansson (Marcus_Johansson)
Drupal Canvas
Two significant headless infrastructure improvements merged this period. Replace Lupus CE API with a dedicated Canvas Headless endpoint landed, migrating the SDK from /ce-api to a new /canvas/content-api route and removing the Lupus Decoupled dependency. The new endpoint provides a unified response contract for content, document head metadata, routing, and redirects. Separately, Return flexible codebase files to local environment on canvas pull was merged, adding codebase sync capability detection to the CLI tool so it remains compatible with older Canvas versions when updating the global asset library.
AI development saw Canvas AI: Run the component agent in the dev chat with setLooped(FALSE), driven by the browser merged, replacing the hard-coded mock response with a real agent that pauses after each model decision and serializes to tempstore, allowing the browser to re-POST with fresh page context on each step. A fix for Content template preview is blank for every non-full view mode resolved the blank preview issue introduced in #3588074 when editing non-full view modes by fixing iframe height calculation.
Open work includes MRs for Brand Kit color support (two phases in review), Canvas AI: Send resolved prop values with current_layout, on both request paths (merging layout structure and prop values), and Allow fields to be added to the page entity type with a new Field UI route. Several bugs need attention: DefaultImagePreview renders the video src in an img tag instead of the poster, CKEditor links fail due to missing 'allow-forms' in ExtensionPage iframe sandbox, and Missing upgrade path: stored default-relative-url prop sources written before 1.8 contain $id and fail DefaultRelativeUrlPropSource::parse().
How can I help on this project?
Review MR !1468 fixing DefaultImagePreview to read the poster property for video props. Propose a sandbox attribute fix for CKEditor iframe link blocking. Implement an update path for default-relative-url prop sources with extraneous $id keys from pre-1.8 installs.
Contributors: **** (project_19391_bot_17a61b0edeafd5a3db3e8b2462b6c010), **** (project_19391_bot_cb443e60680723bba08a5351bf595251), Adam G-H (phenaproxima), AKHIL BABU (AkhilBabu) [1], Ben Mullins (bnjmnm), Bálint Kléri (balintbrews), Chandan Singh (chandu7929), Dave Long (longwave), David Bravo (davidbp), Harumi Jang (hooroomoo) [1], Jakub Piasecki (zaporylie) [1], Juan Correa (jucs7), Kunal Sachdev (kunal.sachdev), Matt Glaman (mglaman), Rajab Natshah (RajabNatshah), Rajendar Pothireddypally (RajendarReddy), wotnak [2]
Context Control Center (CCC)
No merge requests or commits landed during this period, but significant preparatory work advanced toward the rc1 and 1.0 releases. Two open merge requests continue to undergo review: Issue #3586276: Rename entity bundle and target entity scope plugins for better DX (7194 lines) refactors scope plugin naming from AiContextScopeEntityBundle to a clearer Entity Type terminology, while Issue #3586271: Clean up CCC inconsistencies and DX issues before rc1 (part 3) (3553 lines) tackles constructor promotion, snake_case local variables, and service interface consistency without functional API changes.
Several issues opened to address pre-1.0 requirements. Persist context-item token counts and show token-budget usage in CCC UI proposes storing estimated token counts at save time and displaying budget usage indicators. A related issue, Remove max_items context limit and rely on the token budget, suggests eliminating the max_items setting in favor of token budget controls alone. MR !233 hardens access checks for context items, and MR !239 decouples form descriptions from scope plugin descriptions to improve context-specific guidance.
How can I help on this project?
Review MR !195 or MR !211 for API naming and DX consistency. Contribute to CCC QA scripts for 1.0 testing, which needs documentation and test scripts for the QA team. Join the discussion on context selection ranking factors before 1.0 ships.
Contributors: Juan Correa (jucs7), Kristen Pol (kepol), Tamas Balog (tbalog), Tekla Aivazashvili (aivazashvilit)
AI Search
No merge requests or commits were recorded during this period, but a critical indexing bug was reported. The issue Progressive indexing can drop tail chunks describes a scenario where the progressive/Long Chunk embedding strategy can prematurely mark items as fully indexed, causing chunks to be dropped. The root cause is a mismatch between tokenizer configurations: computeItemChunks() uses a hard-coded GPT-3.5 tokenizer to count chunks, while getEmbedding() uses the tokenizer configured on the Search API server. In one reproducible case, this led to a discrepancy where tracking counted 106 chunks but actual chunking produced 370, causing Search API to stop after the batch starting at chunk 100 and leaving 270 chunks unembedded. This is currently blocking reliable indexing when using tokenizers other than GPT-3.5, such as XLM-RoBERTa.
How can I help on this project?
- Investigate and propose a fix for Progressive indexing can drop tail chunks by aligning the tokenizer used in
computeItemChunks()with the configured Search API tokenizer. - Test the Long Chunk strategy with various tokenizer configurations to identify additional edge cases.
AI translate
Two infrastructure improvements shipped this period. The pipeline issues on the 2.0.x branch affecting phpstan and phpunit were resolved by adding a composer.json file, and documentation for the module was added. Both changes merged on 2026-08-05.
Work is underway to address entity translation edge cases. An InvalidArgumentException: Invalid translation language (und) when translating media entities issue remains open, with two related merge requests now available. MR !36 tackles the media entity translation exception in the AiTranslateController, while MR !35 extends batch translation support to referenced translatable entities. Both target issues around handling untranslated (und) language states during AI-powered translation workflows.
How can I help on this project?
Review MR !36 or MR !35, which address media entity and referenced entity translation handling. Test the media translation fix against various entity types with field sync configurations to confirm it resolves the InvalidArgumentException.
Contributors: Carlos Romero (o0Charly0o), Marcus Johansson (Marcus_Johansson) [1], Rob Loach (robloach) [1], szato (odi)
Langfuse
A new merge request was opened this period to add createScore() for feedback and a langfuse_feedback submodule. The MR introduces 511 lines of changes across the codebase, adding functionality for feedback scoring through a dedicated submodule. The merge request is currently awaiting review.
No commits were pushed or merged during this reporting period.
How can I help on this project?
Review the open createScore() feedback submodule MR to provide feedback on the implementation approach and API design. Test the new langfuse_feedback submodule functionality in a development environment to verify the createScore() method works as expected.
Contributors: Abhisek Mazumdar (abhisekmazumdar)
References
[1] Drupal 11.4 DeepChat Block does not work with Webprofiler enabled
[2] Add interactive refinement capability to Field Widget Actions
[3] Add interactive refinement capability to Field Widget Actions 2.x
[10] Add a ChatMemoryInterface for storing ChatBot chat history
[12] AiToolsValidationException is not caught and passed back as tool output
[32] Issue #3586468: "Add interactive refinement capability to Field Widget Actions Automation"
[33] bug: #3586654 AiAutomatorEntityModifier::entityHasConfig() ignores the AI...
[34] Issue #3586468: "Add interactive refinement capability to Field Widget Actions Automation"
[35] Issue#3586539: Cherry pick d8017c74
[36] Issue#3586539: Cherry pick d8017c74
[38] Issue #3586539: Add ChatMemory plugin type
[39] Issue #3586539: Add ChatMemory plugin type
[50] [Meta] Cover remaining AI operation types with ECA execute actions
[51] Add ECA execute action for Translate Text
[52] Add ECA execute action for Text to Image
[53] Add ECA execute action for Text Classification
[54] Add ECA execute action for Summarization
[55] Add ECA execute action for Speech to Speech
[56] Add ECA execute action for Object Detection
[57] Add ECA execute action for Image to Video
[58] Add ECA execute action for Image to Image
[59] Add ECA execute action for Image Classification
[60] Add ECA execute action for Audio to Audio
[61] Migrate the ECA agent to the Tools + ReAct architecture (create-only)
[65] Resolve "9 different new actions"
[66] Resolve "Migrate the ECA agent to the Tools + ReAct architecture (create-only)"
[102] Brand Kit color support
[105] Return flexible codebase files to local environment on canvas pull
[114] Replace Lupus CE API with a dedicated Canvas Headless endpoint
[124] #3591838 brand kit color implementation
[127] Draft: #3591838 [PHASE 2] introduce color props
[132] fix(CLI Tool): #3591862 Add backward compatibility for codebase sync
[134] feat(CLI Tool): Return flexible codebase files to local environment on canvas pull
[142] feat(Headless): #3591861 Use the new Canvas content API endpoint in the headless SDK
[143] Rename entity bundle and target entity scope plugins for better DX
[161] Issue #3586276: Rename entity bundle and target entity scope plugins for better DX