Daily Digest

Daily Digest – 2 June 2026

2026 Capabilities Progress

  1. Page generation — Significant progress on Canvas AI translation and component handling, with merged fixes for language-prefixed URLs and translation loss during publishing [94][100], plus ongoing work to expose block properties to agents [115] and restrict component catalogs during testing [113]. Next milestone is completing symmetric translation features and conflict resolution UI.
  2. Context management — The Context Control Center is preparing for community beta testing with work on recipe naming conventions [176], integration documentation [180], and scope extension capabilities [181]. Next milestone is launching beta testing program and updating project documentation with videos [179].
  3. Background agents — Progress on queue reliability with deduplication logic to prevent redundant AI calls when content is saved multiple times [7][72], and work to prevent only one queue item processing per cron run [15]. A fix for data-type conversion issues in agent configuration is ready for review [92]. Next milestone is merging queue improvements and expanding event hooks for pre-AI triggers [45].
  4. Design system integration — Canvas saw progress on component version propagation across translations [107] and component eligibility detection [101][143], plus work on entity reference selection UI [110][111][154]. Next milestone is completing symmetric translation for component updates and stabilizing the entity reference selection interface.
  5. Content creation and discovery — Development advanced on rich-text image description support for automators [2][67], interactive refinement for field widget actions [57][68][187], and CKEditor streaming fixes [4][47]. Critical bugs blocking CKEditor prompt creation [3] and Gemini streaming [4] remain open. Next milestone is resolving streaming bugs and merging image description and refinement capabilities.
  6. Advanced governance — Two critical guardrails fixes were merged: infinite recursion prevention for global LLM-based guardrails [26][75] and improved JSON parsing for topic restrictions [28][74]. Additional guardrails work includes PII detection [10] and better documentation [32][63]. Next milestone is clarifying where guardrails can be applied and adding them to Automators in AI 2.0 [48].
  7. Intelligent website improvements — No direct progress today.
  8. Multi-channel campaigns — A new text-to-music operation type was initiated to standardize music generation APIs across providers [19], expanding content creation beyond text and images. Next milestone is completing the operation type implementation and determining provider support.

Shipped

  1. AI Module: Global Guardrails Infinite Loop Fix — Fixed a critical bug where global guardrails that called AI models (such as content moderation checks) triggered infinite recursive loops, making the feature unusable in production [26][75].
  2. AI Module: Improved JSON Parsing for Guardrails — Updated the RestrictToTopic guardrail to handle AI responses wrapped in prose, improving reliability with models that don't return pure structured output [28][74].
  3. Canvas: Translation Preservation During Publishing — Resolved a bug where publishing a Canvas page through auto-save deleted all translations in non-default languages, preventing content loss for multilingual sites [100][142][144].
  4. Canvas: Language-Prefixed URL Support — Fixed the Canvas editor to work correctly when accessed via language-prefixed URLs like /es/canvas/, enabling use on multilingual sites with URL-based language negotiation [94][174].
  5. Field Widget Actions: Simplified Configuration — Deprecated a confusing configuration property and enabled administrators to control whether action buttons appear once per field or per item, simplifying setup without custom code [185][186][188].

Ongoing

  1. AI Module: Non-Streaming Failures in Fiber Contexts — Non-streaming chat calls fail when run inside PHP Fibers because the OpenAI client forces streaming mode, breaking the AI Search Block when streaming is disabled [1].
  2. AI Module: Gemini Streaming Errors — Streaming requests to Gemini 2.x models return 400 errors due to malformed payloads from the underlying PHP client, blocking production use of Gemini streaming [4].
  3. AI Module: Rich-Text Image Analysis — Development underway to enable AI Automators to analyze images embedded in formatted text fields, allowing automated summaries and quality checks to consider visual content [2][67].
  4. Canvas: Translation Deletion Routes — Work in progress on routes for deleting individual translations and ensuring component version updates propagate to all language versions [95][138].
  5. Context Control Center: Community Beta Testing — Preparing for broader community testing before the first release candidate, including organizing beta testers and updating project documentation with videos and getting-started guides [178][179].

AI (Artificial Intelligence)

Development Progress

The team merged two important fixes during the period. The first addressed a critical infinite-loop bug where global guardrails that themselves called AI models (such as the Restrict to Topic guardrail) would recursively trigger themselves, making global guardrails unusable in production. A re-entrancy guard was added to prevent guardrails from evaluating their own AI calls. The second merged fix ensures the RestrictToTopic guardrail can parse JSON responses wrapped in prose, improving reliability with models that do not yet return structured output.

Several new features entered development. Work began on rich-text image description support for AI Automators, which will allow automations (summaries, quality checks) to analyze images embedded in formatted text fields. A merge request is open with 2,280 lines of changes. A new text-to-music operation type was started to standardize music generation APIs across providers. Queue deduplication logic is in progress to prevent redundant AI calls when editors save content multiple times before cron runs, and interactive refinement for Field Widget Actions (613 lines) will let editors iteratively improve AI-generated content through conversational prompts before accepting it.

Five issues were closed, including the release of version 1.4.0, addition of a SECURITY.md file for responsible disclosure, and fixes to video recording in tests and the release tagging script.

Risks and Blockers

Two high-priority bugs remain open. Non-streaming chat calls fail when run inside PHP Fibers because the OpenAI client forces streaming on unconditionally; this affects the AI Search Block when streaming is disabled. Streaming requests to Gemini 2.x models return 400 errors due to malformed payloads from the underlying PHP client; non-streaming works. Both issues impact live deployments and are assigned for resolution.

A fatal error in the CKEditor prompt creation workflow is assigned and under investigation. Several usability and documentation gaps were reported, including missing guidance on where guardrails can be applied, inconsistent naming ("AI Guardrails" vs. "AI Moderation Guardrails"), and unclear documentation for guardrail thresholds.

How can I help on this project?

  • Prioritize resourcing for the two streaming bugs (Fiber conflicts and Gemini compatibility), which are blocking production use cases.
  • Commission a guardrails usage guide that clarifies where they can be applied (Automators, Assistants, Agents, CKEditor) and provides threshold configuration examples for non-technical site builders.

Drupal AI Initiative

The Drupal AI Initiative focused on partnership management and organizational improvements during this period. The team closed an issue to scrub partner mailing lists of non-partner email addresses, removing contacts who had been incorrectly added through event registrations. This ensures partner communications remain properly targeted and confidential.

Several new partnership support activities were initiated. The team is working to share recent partners meeting recordings and slides with potential partners currently in discussions, helping approximately 15 prospective organizations understand the initiative's progress. New work began on creating private partner channels to improve communication with partner organizations and their contributors.

Marketing efforts are advancing, with plans to source case studies from the upcoming AI Summit Rotterdam in September, and preparation to republish an article about AI Summit NYC on the Drupal AI blog. Administrative tasks included notifying partner contributors to add their GitLab usernames for improved reporting capabilities.

How can I help on this project?

  • Accelerate partnership conversions by engaging directly with the 15 potential partners currently in discussions, emphasizing strategic alignment and business value.
  • Ensure adequate resourcing for the September Rotterdam Summit to maximize case study collection and partnership development opportunities.

OpenAI Provider

The OpenAI Provider module saw one new development effort during this period. A merge request was opened by Artem Dmitriiev (a.dmitriiev) to address Fix unsupport max_tokens parameter. This work corrects how the module handles token limits when communicating with OpenAI's services, which will improve reliability and prevent errors when users configure content generation settings.

The fix is currently under review and has not yet been integrated into the module. Once merged, users should experience fewer configuration-related issues when setting up AI content generation features.

How can I help on this project?

  • Ensure the open merge request receives timely code review to prevent delays in delivering the token parameter fix to users.
  • Consider allocating resources for testing once the fix is merged to validate it resolves the issue across different use cases.

MCP Client

The MCP Client project saw development work continue on compatibility with the latest version of Drupal. Roberto Peruzzo (robertoperuzzo) opened a draft merge request addressing compatibility issues with Drupal 11.3, which introduced changes to how certain PHP operations work. This work ensures the module will continue to function properly as users upgrade their Drupal installations to the newest version.

The draft status indicates this is still work in progress, which is normal for active development. No issues or merge requests were finalized during this period, suggesting ongoing refinement of solutions before they are ready for deployment.

How can I help on this project?

  • Ensure the development team has sufficient time allocated to complete and review the Drupal 11.3 compatibility work before the next planned release.
  • Clarify the timeline and priority for Drupal 11.3 support to help the team plan testing and release scheduling.

Gemini Provider

The Gemini Provider module, which enables integration with Google's Gemini AI service, saw continued development work on capability declaration features. This work is part of the broader AI Initiative Sprint focused on product development.

Artem Dmitriiev (a.dmitriiev) opened a new feature request to properly declare what the Gemini provider can do within Drupal's AI framework. Currently, the provider doesn't explicitly state its capabilities, which will become important as the AI module begins checking for these declarations. Juan Correa (jucs7) has been assigned to work on this, and a merge request is already in progress. This work ensures the module will properly communicate its features to site administrators and other system components, enabling better AI service selection and configuration.

No code was merged during this reporting period. Activity remains focused on active development and review.

How can I help on this project?

  • Ensure Juan Correa has sufficient time allocated to complete the assigned capability declaration work.
  • Consider whether additional reviewer resources are needed to maintain development velocity as merge requests await review.

AI Agents

Activity over the last 24 hours focused on resolving a technical issue affecting how the AI Agents module handles content operations. When users try to configure automated agents to work with specific content items, they have been encountering errors due to how the system processes forced configuration values.

AKHIL BABU (AkhilBabu) advanced work on hide_property skips data-type conversion for forced values, breaking non-scalar context types, marking it as ready for final review. This fix addresses a problem where pre-configured agent settings weren't being properly translated into the format the system expects, preventing agents from executing tasks like saving content. The issue originated from troubleshooting reported in Proper value for entity__colon__node context?, where users documented difficulty setting up agents with content-saving capabilities.

Once merged, this will enable more reliable agent configuration, particularly for scenarios where administrators want to pre-define which content items agents should interact with.

How can I help on this project?

  • Prioritize code review resources to merge the ready fix, unblocking users who need reliable agent configuration.
  • Consider expanding testing capacity to catch data handling issues earlier in development.

Tool API

The Tool API module, which enables AI agents to invoke operations within Drupal, saw limited activity in the past 24 hours. An open task focused on File Input Handling remains unassigned. This work involves researching how the module should securely accept and process file inputs from AI agents—a critical capability for expanding what automated systems can accomplish within the platform.

The issue is labeled as research and proof-of-concept, meaning the team is still exploring how best to approach file handling, input formats, and security considerations. Once this exploratory phase concludes, it will inform decisions about what features to build and whether they belong in this module or elsewhere. No code changes or merge requests were completed during this period.

This represents foundational work to ensure the module can safely support more complex AI-driven workflows in the future.

How can I help on this project?

  • Assign development resources to the file input handling research task to accelerate progress on AI agent capabilities.
  • Prioritize security review resources early in the research phase to ensure file handling approaches meet organizational risk standards.

Drupal Canvas

Over the past 24 hours, the Canvas project addressed several critical issues affecting multilingual sites and made progress on translation infrastructure.

Two bugs affecting language support were resolved and merged. First, the team fixed a problem where publishing a Canvas page via auto-save dropped all non-default-language translations. This issue caused content editors to lose translated versions of pages when publishing changes. Second, the team resolved an issue where the Canvas editor broke when accessed with language-prefixed URLs (such as /es/canvas/), which prevented editors from working on multilingual sites that use URL-based language negotiation.

Development continued on symmetric translation features. Work is underway on routes for deleting translations and ensuring component version updates propagate to all translations. The team also improved image rendering by adding larger srcset candidates to prevent browser upscaling, which will deliver better visual quality to end users.

Additional work focused on test reliability, developer tooling, and AI-powered page generation capabilities. Progress on conflict detection and entity reference selection interfaces continues in draft.

How can I help on this project?

  • Prioritize testing of the translation deletion route and component version propagation features to ensure they meet editor needs before stable release.
  • Allocate resources for conflict resolution UI completion, which will enable safer collaborative editing workflows.

Context Control Center (CCC)

The Context Control Center team is preparing for broader community testing as the module approaches its first release candidate. With core features nearing completion, the focus has shifted to validation, integration feedback, and refinement based on real-world use.

Several planning discussions were initiated in the past day. The team is working through recipe naming conventions and locations to determine how to package different configurations for various user needs, including a minimal version for Drupal CMS, a full-featured setup, and a demo with sample content. Work is also underway to organize beta testing with the community and to update project documentation with videos and getting-started resources to support new testers.

Two integration-focused issues are informing the product roadmap. The team is evaluating the empathy module integration as an early adopter case study, and defining configuration steps for document loader support to enable users to pull context from markdown, PDFs, text files, and URLs.

A merge request addressing configuration validation was opened by Sven Decabooter (svendecabooter), and Ahmad Khader (Ahmad-Khader) is working on a scope extension issue that affects how downstream modules can customize the system.

How can I help on this project?

  • Prioritize recruiting beta testers from your network or partners to provide feedback before the release candidate lockdown.
  • Clarify strategic requirements for Drupal CMS integration, particularly around acceptable dependencies and feature scope.

Field Widget Actions

The Field Widget Actions module made steady progress over the past 24 hours, completing two improvements to how content editors can configure AI-assisted field actions.

The team merged work to deprecate a confusing configuration property, simplifying how administrators set up these tools. This builds on recently completed work that now allows site administrators to configure whether action buttons appear once per field or multiple times per item, giving them flexibility to match the tool to their content workflows without needing custom development.

A draft proposal for automatic field actions is under review by Ahmad Khader (Ahmad-Khader), which would eliminate manual button clicks when AI suggestions are ready, streamlining the editing experience. Separately, Edward Zwart (ezeedub) has proposed an interactive refinement capability that would let editors iteratively improve AI-generated content before accepting it, potentially increasing content quality and editor confidence in the tool.

How can I help on this project?

  • Review and provide feedback on the two open proposals for automatic actions and interactive refinement to help the team prioritize which user experience improvements deliver the most value.
  • Ensure the team has access to content editors for usability testing once these features are ready for evaluation.

FlowDrop

Over the past 24 hours, activity on FlowDrop focused on issue assignment and triage. Three issues were updated, all assigned to Shibin Das (D34dMan) for resolution.

Two interface alignment problems were identified and assigned: Broken styles on Range component and Filter buttons on FlowDrop listing pages are not well aligned. Both affect the visual presentation of user interface elements, which could impact user experience and perception of product quality. Addressing these will ensure the interface meets expected standards.

Additionally, work continues on Add file and audio input to the playground, a feature request to expand input options beyond text. This would allow users to upload images for processing and provide voice input as an alternative to typing, broadening accessibility and use cases for the playground environment.

No code was merged or committed during this period. The focus remains on planning and assigning work to move these improvements forward.

How can I help on this project?

  • Ensure Shibin Das has adequate capacity to address the three assigned issues, or consider adding design and frontend development resources to the team.
  • Clarify priority between user interface fixes and new feature development to help the team sequence their work effectively.

References

[1] non streaming broken (fiber branch) (ai, Issue)

[2] Add rich-text image description support to AI Automators (ai, Issue)

[3] "Create new prompt" button doesn't work in CKEditor plugin configuration (ai, Issue)

[4] ai_ckeditor: streamGenerateContent causes 400 Bad Request with Gemini 2.x models (ai, Issue)

[7] AI Automators Queue/Cron: prevent duplicate queue items when entity is saved multiple times (ai, Issue)

[10] checksum-validated PII guardrail plugins (Luhn for credit cards, MOD-97 for IBANs) (ai, Issue)

[15] Only one AI Automator worker queue item is processed per cron execution (ai, Issue)

[19] Add text_to_music operation type with required prompt and optional lyrics (ai, Issue)

[26] Global LLM-based guardrails cause infinite recursive LLM calls (no re-entrancy guard) (ai, Issue)

[28] RestrictToTopic guardrail should use the prompt JSON decoder service (ai, Issue)

[32] Where can Guardrails actually be used? (ai, Issue)

[45] Ai Automators could need more Events before asking AI (ai, Issue)

[47] CKEditor AI streaming fails for OpenAI when Guzzle uses StreamHandler for "stream => true" requests (ai, Issue)

[48] Add guardrails to Automators in AI 2.0 (ai, Issue)

[57] Add interactive refinement capability to Field Widget Actions (ai, Issue)

[63] Guardrail set - "Stop threshold" documentation (ai, Issue)

[67] Issue #3586478: "Add rich-text image description support to AI Automators" (ai, MR)

[68] Issue #3586468: "Add interactive refinement capability to Field Widget Actions Automation" (ai, MR)

[72] feat: #3586481 Prevent duplicate Queue/Cron items when entity is saved multiple times (ai, MR)

[74] Issue #3586469: Use prompt JSON decoder service in RestrictToTopic guardrail (ai, MR)

[75] Resolve "Global LLM-based guardrails cause infinite recursive LLM calls (no re-entrancy guard)" (ai, MR)

[92] hide_property skips data-type conversion for forced values, breaking non-scalar context types (entity, list, JSON, YAML) (ai_agents, Issue)

[94] Canvas editor does not support language-prefixed URLs, breaks when accessed as /[langcode]/canvas/... (canvas, Issue)

[95] Create Routes for Deleting Translations (canvas, Issue)

[100] Publishing a canvas_page via auto-save API drops all non-default-language translations (canvas, Issue)

[101] removeReason, updateReasons are never called when a component becomes more compatible (canvas, Issue)

[107] Symmetric translation: component instance version updates must propagate to all translations (canvas, Issue)

[110] [PP-1] Entity Reference Selection UI (canvas, Issue)

[111] Backend APIs for Entity Reference Selection (canvas, Issue)

[113] Canvas AI: Restrict component catalog to canvas_test_sdc components when canvas_ai_agents_test is installed (canvas, Issue)

[115] Canvas AI: Expose Props of Blocks to the Agent (canvas, Issue)

[138] Resolve "Create Route for Delete Translation" (canvas, MR)

[142] Draft: fix: #3591584 Auto-save should not re-create entities, but set the fields of them: otherwise translations get lost (canvas, MR)

[143] fix(Component sources): clear reasons and re-enable when component becomes eligible (canvas, MR)

[144] Fix translation related behaviour of auto save (canvas, MR)

[154] Draft: feat(Theme builder): #3585355 Entity Reference Selection UI (canvas, MR)

[174] #3591585: Canvas editor does not support language-prefixed URLs, breaks when accessed as /[langcode]/canvas/... (canvas, MR)

[176] [Discuss] Recipe naming conventions and locations for AI Context (CCC) recipes (ai_context, Issue)

[178] CCC beta / pre-rc1 community testing (ai_context, Issue)

[179] Add CCC beta tester info to the project page (ai_context, Issue)

[180] Create list of modules and configuration steps for how to integrate CCC with Document Loader MDXEditor submodule (ai_context, Issue)

[181] hook_ai_context_scope_values_alter() is not honored in scope value forms (ai_context, Issue)

[185] Deprecate multiple property in plugin attribute (field_widget_actions, Issue)

[186] Allow "Multiple" to be configured in widget (field_widget_actions, Issue)

[187] feat: #3547306 Add interactive refinement capability to Field Widget Actions (field_widget_actions, MR)

[188] Issue #3578821: Deprecate the multiple attribute plugin property (field_widget_actions, MR)


Period: 2 June 2026 to 3 June 2026  |  Generated: 3 June 2026 05:00 GMT

To view the full AI prompts used to generate this digest check this file: 24h_2026-06-02_prompts.txt

Looking for older digests? Browse all digests here.