Bump GLQL to 0.36.0 and add the DuoWorkflow data source
What does this MR do and why?
Bumps @gitlab/query-language-rust and gitlab_query_language from 0.35.0 to 0.36.0, adding the DuoWorkflows analytics source, so type = DuoWorkflow with mode: analytics compiles against the existing analytics.duoWorkflows engine. Note: the engine sits behind the default-off dap_impact_v1 flag (also off on GitLab.com), so it only returns data where the flag is on.
- Frontend: the
userdimension onDuoWorkflowsAggregationResponseDimensionsgoes to the avatar presenter,projectsCountgets a number presenter, and the fivecreditsUsed*metrics get a credits presenter capped at two fraction digits, acreditsunit with its own "Credits" axis label, and stat descriptions. No trend direction is set for credits, so stat badges stay neutral (deliberate, open to discussion). - Docs: a new page,
doc/user/glql/data_sources/duo_workflows.md, plus an index row, marked Status: Experiment, with a flag note explaining that the source depends on theanalytics.duoWorkflowsengine behinddap_impact_v1, and no GitLab Dedicated while that flag is off. The credits metrics needread_agent_artifacts(Owner or Security Manager by default, or a custom role) and are empty for other users. - API doc:
doc/api/glql.mdmoves the example schema version to 0.36.0 and lists the newmulti_scopeattribute, because the documentation spec checks the table against the gem. Scope lists inqueryare documented in a separate MR. - yarn.lock:
signal-exitandyargswere deduplicated to clear a Danger warning (they were already duplicated on master).
References
- Resolves #606576 (closed) (UI integration)
- Resolves #606575 (closed) (docs)
- GLQL 0.36.0 changelog: https://gitlab.com/gitlab-org/glql/-/blob/main/CHANGELOG.md
- Previous bump for AgentPlatformSession, for comparison: 5b0c107a
Screenshots or screen recordings
How to set up and validate locally
-
Check out the branch, then run
bundle installandyarn install. -
Enable the flag in a Rails console:
Feature.enable(:dap_impact_v1). -
Make sure ClickHouse is enabled in GDK and
duo_workflows_workflows_enrichedhas rows for a group you can access. If it does not, insert a few rows withtraversal_pathmatching the group'straversal_path(with_organization: true), acreated_atin the last 60 days, and acredits_usedvalue. -
As an Owner, add a GLQL block (a
```glqlfence) to a work item description:display: table mode: analytics query: type = DuoWorkflow and group = "gitlab-org" and created > -60d dimensions: flowType, user, project, created(weekly) metrics: totalCount, usersCount, projectsCount, creditsUsedSum, creditsUsedMean, creditsUsedQuantile(0.9) sort: totalCount desc -
Try
display: columnChartwithdimensions: created(weekly)andmetrics: creditsUsedSum. -
Try
display: statwithmetrics: creditsUsedSum. -
Check the browser console for errors.
-
Repeat as a Developer and confirm the credits cells render empty.
MR acceptance checklist
This MR was evaluated against the MR acceptance checklist.
- No database changes.
- No new feature flag. This reuses
dap_impact_v1. - Changelog trailer added on the bump commit.
- New UI strings are externalized.






