arcanon

Drift Detection

Automatically detect version mismatches, type changes, and API contract drift.

Overview

Drift detection surfaces inconsistencies across your service graph — version mismatches between services that depend on the same library, type definition changes, and OpenAPI contract drift.

Drift tab showing version mismatch between services

Drift types

Version drift

Two services depend on the same package but use different versions. Example: api-gateway uses pydantic 2.12.5 while payment-processor uses pydantic 2.9.0.

Type drift

A shared type definition has diverged between services. Example: a UserResponse type has a created_at field in one service but not another.

OpenAPI drift

An API contract has changed between scans. Example: a new required field was added to a request body, potentially breaking consumers.

Viewing drift

Navigate to the Drift page in the sidebar. Drift items are shown in a table with:

ColumnDescription
DependencyThe shared package or type
Service AFirst service with this dependency
Service BSecond service with a different version
SeverityCritical, High, Medium, or Low
DetectedWhen the drift was first detected

Severity levels

  • Critical — Major version mismatch or breaking API change
  • High — Minor version mismatch with known breaking changes
  • Medium — Minor version mismatch
  • Low — Patch version difference

Acknowledging drift

Some drift is intentional (e.g., gradual migration). Click Acknowledge on a drift item to mark it as reviewed. Acknowledged items are hidden from the default view but can be shown with the "Show acknowledged" filter.

API access

Query drift via the MCP server:

get_drift(service_name="api-gateway")

On this page