Show YAML editor for DAP flows
Overview
This issue proposes implementing a YAML editor for DAP flows as an interim solution while the complete flow editor is being developed. This would allow users to create and edit flows sooner than waiting for the full visual flow builder.This YAML-based flow editor that directly uses flow registry YAML without requiring catalog agent references. The syntax follows the specification outlined in the flow registry v1 documentation.
Note that the flow registry currently supports three environments: chat, chat-partial, and ambient.
Each is used for different purposes https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/blob/main/docs/flow_registry/v1.md#environment:
At the moment, we're not entirely sure what will happen if a flow is created with the chat-partial environment in the AI catalog and then triggered using one of the supported triggers, such as assign (which runs the flow on Remote CI).
So, for now, we've limited flow creation to the ambient environment only.
If we later determine that other environments need to be supported, we can update the backend to allow flow creation across all environments. We should also make sure to include this note in the documentation.
Implementation Details
- Delete existing AI Catalog Items of type
flow - (optional) Remove
stepsfield - Use
definitionfield
Frontend Flow Creation
- Enable users to create flows using flow registry syntax
- Store YAML flows in database with same item type classification
Execution Changes
- Send YAML data directly to DWS for execution
Feature Flag Implementation
- This feature will use the same feature flag as before:
ai_catalog_flows.
Flow behavior when triggered from different events
- When "@mentioning some_text_here" the flow treats the user input as the goal. Note: The user input includes "some_text_here" along with some additional context about the Issue or MR where the comment is made.
- When a flow is assigned as an assignee or reviewer, it passes the
issue_idormr_idas the goal to the flow.
NOTE: Flow designed for the @mention event should not be used for assignment or review events. If such a flow is used in a different event type, it may not produce the expected output.
Background Discussion
During the 2025-10-12 – 2025-10-25 iteration planning, @shekharpatnaik asked whether this would be possible.