Decompose "Code Suggestions" Unit Primitive into "Code Generation" and "Code Completion"

Background

Currently, our "Code Suggestions" feature is represented as a single unit primitive in our configuration. To enable more granular reporting and insights, we need to break this down into two separate unit primitives: "Code Generation" and "Code Completion".

This decomposition aligns with our goal of having more fine-grained reporting on our features and is similar to the work being done by the Chat team in https://gitlab.com/groups/gitlab-org/-/epics/15212.

Objective

Decompose the existing "Code Suggestions" unit primitive into two new unit primitives: "Code Generation" and "Code Completion".

Documentation: https://docs.gitlab.com/ee/development/cloud_connector/configuration.html

Tasks

  1. Add two new unit primitives:
    • generate_code
    • complete_code
  2. Ensure that the new unit primitives maintain the same service, bundling, and version requirements as the original "Code Suggestions" primitive.
  3. Ensure that this change doesn't disrupt existing user access or permissions.
  4. Update any relevant documentation to reflect this change.

Impact

This change will allow for more detailed reporting and analysis of our AI-generated code suggestion features, differentiating between code generation and code completion functionalities. Related Issues

Dashboard update issue: https://gitlab.com/gitlab-data/product-analytics/-/issues/2169

Edited by Matt Nohr