Skip to main content

Repository Lifecycle

After you connect a repository to Buzzbin, four maintenance actions become the most important over time:

  • rotating or replacing the GitLab token
  • switching the repository between active and inactive
  • disconnecting or deleting the repository
  • understanding webhook health and whether deliveries are still expected to work

This page explains the behavior of each one.

Who can do what

In practice:

  • view repository details: organization members
  • edit details, status, and rotate token: ADMIN and OWNER
  • delete or disconnect the repository: OWNER only

Rotating the GitLab token

If your Project Access Token expired, was revoked, leaked, or simply needs to be replaced, enter the new token in Repository Settings.

When a new token is saved, Buzzbin:

  • re-validates the token
  • refreshes the stored token hint and token-set timestamp
  • repairs the webhook if that is needed

The UI does not show the full old or new token value. It only keeps a non-sensitive hint and the timestamp of the last token set or rotation.

What active and inactive mean

Each repository has an isActive state.

  • Active: Buzzbin processes relevant events normally
  • Inactive: the connection remains in place, but webhook events are skipped for review work

Important detail: making a repository inactive does not necessarily remove the webhook. This is a soft product on/off switch, not a full disconnect from GitLab.

That makes inactive useful when:

  • you want to pause reviews temporarily
  • you want to stop usage without losing settings
  • the repository is in maintenance or transition

Deleting or disconnecting a repository

Deleting a repository is stronger than marking it inactive:

  • the repository connection is removed from the active product flow
  • Buzzbin attempts to deregister the GitLab webhook as well
  • from the user's point of view, this is the final disconnect action

If the webhook was already gone or GitLab is temporarily unreachable, Buzzbin still performs a best-effort cleanup. This is not meant to be a casual toggle, so use it only when you really want the connection removed.

Inactive vs delete

The short version:

  • inactive: soft pause for reviews, without losing the basic setup and without necessarily removing the webhook
  • delete: disconnect the repository and attempt to remove the webhook

If you only want reviews to stop for a while, inactive is usually the better choice. If you want the repository fully removed from Buzzbin's active flow, delete is the right action.

What webhook health means

Buzzbin does not rely only on the existence of a stored webhook ID. GitLab can temporarily disable a hook and still list it as present.

That is why Buzzbin keeps a separate webhook health status:

  • UNKNOWN: no health verdict has been recorded yet
  • HEALTHY: deliveries are expected to work normally
  • DISABLED: GitLab has disabled the hook temporarily
  • MISSING: the hook is no longer present on the GitLab side

What happens when the webhook is unhealthy

Buzzbin does more than warn about DISABLED or MISSING hooks. It also tries to repair them automatically.

In practice:

  • DISABLED is usually repaired by re-enabling or re-asserting the hook settings
  • MISSING is usually repaired by registering the webhook again

This repair is automatic and normally does not require a manual user action.

Useful signals in Repository Settings

The repository settings page helps you maintain the connection with fields such as:

  • repository name
  • repository URL
  • stored token hint
  • last token-set timestamp
  • active/inactive status
  • overall connection and webhook state

If reviews suddenly stop, this page plus Webhook Deliveries and Review Jobs is the right place to begin troubleshooting.

Common maintenance scenarios

The token expired

Rotate the token in GitLab and save the new value in Buzzbin.

You want reviews paused for a few weeks

Mark the repository inactive instead of deleting it.

The repository moved away or no longer uses Buzzbin

Delete the repository so the active connection and webhook can be cleaned up.

Reviews stopped silently

Check webhook health and the Webhook Deliveries page. The hook may have become disabled or missing on the GitLab side.