Skip to the content.

ADR: Quality Agents for Connector Assurance

Status

Accepted

Context

GNAT maintenance agents can detect upstream drift, classify impact, and prepare repository changes. That is necessary but not sufficient.

Connector repositories often fail in a more subtle way: the code still runs, but the normalized meaning changes. In a CTM-oriented platform, semantic drift and inconsistent connector structure are high-risk failure modes.

Decision

GNAT will implement a dedicated quality agent family with three initial responsibilities:

  1. normalization regression
  2. connector contract enforcement
  3. fixture coverage analysis

These agents will be separate from maintenance agents but wired into the same review and CI path.

Rationale

Why separate quality from maintenance

Maintenance focuses on change detection and repair planning. Quality focuses on confidence in connector behavior and repository consistency.

Keeping these separate makes the policy model clearer:

Why normalization regression first

GNAT’s true contract is the normalized output that downstream systems consume. Preventing semantic drift protects that contract better than simple execution tests.

Why contract enforcement

As connector count grows, the repo becomes harder to maintain if each connector evolves its own local conventions. Contract checks create a lightweight, reviewable pressure toward consistency.

Why fixture coverage analysis

Weak or shallow fixtures hide risk. Coverage scoring makes fragility visible and provides a policy input for draft PRs, manual review, and prioritization.

Consequences

Positive

Negative

Alternatives considered

Fold all checks into maintenance agents

Rejected because it mixes change detection with trust evaluation and makes review policy harder to reason about.

Rely on standard unit tests only

Rejected because semantic drift and fixture weakness are often not captured by ordinary unit test coverage.

Future work


Licensed under the Apache License, Version 2.0