Explore: ECA + setup module for Drupal → GitLab workflow automation
## Research Question Is [ECA (Event - Condition - Action)](https://www.drupal.org/project/eca) a better fit than Rules for hosting the AI Initiative's GitLab workflow automation, and what would a thin "AI Initiative GitLab automation" setup module on top of ECA look like? ## Background The umbrella issue #3586474 captures the full goal. ECA is the modern successor to Rules in spirit, with a graphical modeller and broader event coverage. Because we will likely ship the result as a reusable module that other Drupal contrib projects can install, ECA's "model as configuration" story may be a strong fit — bundle the workflow as a default ECA model in a custom module. ## Scope **In scope:** - Standing up a minimal Drupal site with ECA + the BPMN modeller. - Wiring an inbound webhook endpoint that fires an ECA event. - A proof-of-concept ECA model: same scenario as the Rules exploration ("MR pipeline fails on `state::needsReview` → `state::needsWork`") so the two can be compared apples-to-apples. - Sketching a thin custom module (`ai_initiative_gitlab_automation` or similar) that ships ECA models as default config and any custom events / actions required to talk to the GitLab API. **Out of scope:** - Production deployment. - Implementing all 7 automations — those are separate tickets blocked by this exploration. ## Approach - Install Drupal + ECA + ECA UI + (if needed) `gitlab_api`. - Configure a GitLab project webhook pointing at the dev site. - Build the same PoC scenario as the Rules exploration, end-to-end through ECA. - Prototype a custom ECA event/action (or reuse `gitlab_api`'s if any) for "call GitLab API". - Compare: maintainability, packaging story, learning curve, gap-filling code surface. ## Deliverables - [ ] PoC site / DDEV recipe demonstrating the ECA-driven webhook round-trip. - [ ] Sketch of a minimal `ai_initiative_gitlab_automation` setup module that wraps the ECA model as default config. - [ ] Written findings + side-by-side comparison with the Rules exploration. - [ ] Recommendation on which platform to adopt. ## Findings <!-- To be filled during and after the investigation. --> ## Related issues ## AI Usage - [x] AI Assisted Issue — This issue was generated with AI assistance, but was reviewed and refined by the creator.
issue