Add the remote connection indicator and its test action

What does this MR do and why?

Draws a remote repository's stored connection verdict, and the control that refreshes it, on two surfaces: the repository edit form and the repository detail sidebar. Both read the verdict Artifact Registry recorded, whether the probe behind it came from either surface or from AR's own scheduled sweep.

A shared connection_indicator.vue renders the three HealthStatus values as a badge carrying an icon and a word, so the verdict reaches a reader who cannot see its colour, plus the time it was recorded. It stacks by default and draws on one row when asked.

The edit form adds a test action over a wholly @client mutation in the local Apollo layer, so the flow is drivable in a browser ahead of its schema. A resolved probe updates the indicator in place and reports itself on a transient line carrying the upstream HTTP status. The detail sidebar hosts the same probe and reports it through a toast, having no room for a line beside the badge.

An unreachable upstream is a result rather than an error and does not block submit. Only a probe that could not run at all raises the service-unavailable alert, and it leaves the stored verdict alone.

This MR implements two steps from two plans:

Plan Step
monolith/S07 Repository CRUD - remote repositories Step 7: Connection indicator and the test action on the edit form
monolith/S05 repository detail - remote repositories Step 8: Connection sidebar section

They ship together because S05 Step 8 mounts connection_indicator.vue, which S07 Step 7 creates. Splitting them would put a component and its only second consumer in two MRs with a merge order between them.

Screenshots or screen recordings

Surface State
Edit form Screenshot_2026-08-26_at_2.44.13_pm
Detail sidebar Screenshot_2026-08-26_at_2.42.55_pm

Both are behind a disabled flag; screenshots to follow from a local GDK run.

How to set up and validate locally

  1. Enable the flag: Feature.enable(:artifact_registry_ui).
  2. Open a remote repository's edit form. The Source section carries the test action and the indicator.
  3. Click Test upstream connection repeatedly. The mock cycles a healthy probe, a failure that leaves the stored verdict alone, a failure that flips it, and an AR 500.
  4. Open the same repository's detail page. The sidebar's Connection section hosts the same probe and reports it through a toast.

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.

Behind the artifact_registry_ui feature flag, which is disabled, so there is no changelog entry.

Related to #618515 (closed) Related to gitlab-org#22453

Edited by Rahul Chanila

Merge request reports

Loading
Loading