Skip to main content
Service health gives you an at-a-glance view of how each repository in your organization is doing. Periscope classifies each monitored repository as healthy, warning, or stale based on recent activity.

What Periscope tracks

For each monitored repository, the dashboard shows:
  • Merge count — total PRs merged in the time period
  • Contributor count — number of distinct contributors
  • Average cycle time — mean PR cycle time (in hours)
  • Health status — healthy, warning, or stale
  • Last merge date — when the most recent PR was merged
  • Weekly sparkline — visual trend of merge activity

Health classification

StatusCriteria
HealthyRegular merge activity, multiple contributors, reasonable cycle times
WarningReduced activity, single contributor, or elevated cycle times
StaleNo merge activity in 14+ days

How it is calculated

Periscope queries all merged PRs for each repository in the selected time range and computes:
  • Total merges and distinct authors
  • Average cycle time across all PRs
  • Recency of the most recent merge
  • Weekly merge counts for the sparkline
The health classification uses a combination of these signals. A repository with only one contributor triggers a “warning” regardless of merge volume, since it indicates a bus factor risk.

Interpreting the data

Stale services

A stale repository is not necessarily a problem. It may be:
  • A mature, stable service that rarely changes
  • A deprecated service that should be decommissioned
  • A service that has been abandoned and needs ownership
Periscope flags stale services as risk signals so you can investigate and decide which category they fall into.

Single-contributor services

Services with only one contributor are a bus factor risk. If that person leaves or is unavailable, the team has no one who understands the codebase. Periscope flags this as a risk signal.

Cycle time outliers

A service with much higher cycle time than others may have:
  • More complex code that takes longer to review
  • Fewer reviewers available (related to bus factor)
  • A slower CI pipeline specific to that repository

MCP tool

Query service health from your AI coding assistant:
get_service_health(time_range: "30d")
Returns a list of services with name, merge count, contributor count, average cycle time, health status, and last merge date.