Add client type to session details panel in agent artifacts

What does this MR do and why?

Adds a Client type row to the session details panel in the AI audit report (agent artifacts app), matching the information already shown in the audit report table. This closes the gap between the two surfaces.

The concept was also renamed from provider to client type to better reflect that it identifies the agent harness (Duo, Claude Code, Open Code, Codex, etc.), per the team's decision.

Changes

  • constants.js: Rename PROVIDERSCLIENT_TYPES and DEFAULT_PROVIDERDEFAULT_CLIENT_TYPE; update comments.
  • utils.js: Extract getClientType(item) helper so it can be shared between the table and the session details panel.
  • agent_artifacts_table.vue: Use the shared getClientType helper; rename data-testids from ai-item-provider-* to ai-item-client-type-*.
  • session_details_body.vue: Add Client type row (icon + label) following the existing Session/Date/Project row pattern.
  • Specs: Update table spec for renamed imports/testids; add client type row coverage to session details body spec; add getClientType unit tests to utils spec.

No backend/GraphQL changes are needed — item.clientType remains a frontend-only placeholder until the backend field is implemented in a future iteration.

References

Closes https://gitlab.com/gitlab-org/gitlab/-/issues/607540

Screenshots or screen recordings

Before After
Screenshot_2026-08-03_at_2.39.55_PM Screenshot_2026-08-04_at_1.38.20_PM

How to set up and validate locally

  1. Navigate to a group's AI audit report (/groups/<group>/-/security/agent_artifacts)
  2. Click on any session row to open the session details panel
  3. Verify the Client type row appears with the GitLab Duo icon and name

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Scott Hampton

Merge request reports

Loading
Loading