Skip to content

UX Improvements - Experiment List

Eduardo Bonet requested to merge 387509-ux-improvements-experiment-list into master

What does this MR do and why?

Experiments List had poor UX, this improves it a bit. This also moves Pagination from page to keyset.

Screenshots or screen recordings

Before After
With Experiments image image
Empty State image image

How to set up and validate locally

  1. Enable feature flag

    echo "Feature.enable(:ml_experiment_tracking)" | bundle exec rails c
  2. Open <SOME_PROJECT_PATH>/-/ml/experiments. It should show the empty state

  3. Create some data:

    # Added variables
    project_id = <ID FOR SOME_PROJECT>
    
    exp1 = Ml::Experiment.create!(name: "Awesome Gitlab Experiment", user_id: nil, project_id: project_id)
    exp2 = Ml::Experiment.create!(name: "Awesome Gitlab Experiment2", user_id: nil, project_id: project_id)
  4. Open <SOME_PROJECT_PATH>/-/ml/experiments. It should show the experiments

Database

https://postgres.ai/console/gitlab/gitlab-production-tunnel-pg12/sessions/15253/commands/53088

SELECT
    ml_experiments.*,
    count(ml_candidates.id) AS candidate_count
FROM
    "ml_experiments"
    LEFT OUTER JOIN "ml_candidates" ON "ml_candidates"."experiment_id" = "ml_experiments"."id"
WHERE
    "ml_experiments"."project_id" = 21
GROUP BY
    "ml_experiments"."id"
ORDER BY
    "ml_experiments"."id" DESC
LIMIT 21

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #387509 (closed)

Edited by Eduardo Bonet

Merge request reports

Loading