# Fairlead Select: Run only the tests a change can touch.

Canonical: https://fairleadhq.com/platform/products/select/

Updated: 2026-09-21
Publication state: published
Product version: in-development

Agent summary: Fairlead Select: Shift left: select and run only the tests affected by each code change, directly in CI/CD. Instant per-commit feedback instead of hours-long suites, so bugs are caught in minutes, not days.

## Prerequisites

- None declared.

## Inputs

- None declared.

## Outputs

- None declared.

## Limitations

- None declared.

## Permissions

- None declared.

## Privacy

- None declared.


Run only the tests each change can affect, directly in CI. Feedback arrives on every commit in minutes, not after hours-long suites.

Status: In development

- 153: Of 9,850 tests run for one pull request
- ~12×: Cheaper to fix a defect at the pull request than at integration
- 0: Full-suite runs per pull request

## How it works

1. Parse: Read each commit of your services method by method, so a method keeps its identity when its body changes.
2. Record: The Fairlead agent runs inside your services in CI and staging. Unit, integration, API and end to end tests, and your QA team's manual sessions, carry x-fairlead-* headers, so every method a test executes is credited to that test.
3. Map: Join the two into a footprint map, kept current as your tests run. For every method, the tests in every stage that reach it.
4. Diff: Compare each pull request with its base, method by method. Methods are modified, deleted or added.
5. Match: Find the tests whose footprints reach the changed methods, in every stage, and the manual cases that reach them. A new method no test reaches is flagged as an untested change, and goes to Fairlead Test when it is enabled.
6. Deliver: Run the impacted tests as a check on the pull request, and give QA the manual cases worth rechecking. The same footprints give coverage per stage, over the API and in the control plane.

## What it does

- Change-impact mapping: Records which methods every test executes, in every stage, so it knows exactly which tests a given change can affect.
- Relevant subset per commit: Runs only the affected tests at the right time, directly in the CI pipeline.
- Shift left: Brings expensive end to end and integration tests into CI without the hours-long wait.
- Lower cost and time: Cuts both the cost and the time to resolve defects by catching them per commit.

## Target outcomes

- Feedback on every commit, in minutes rather than hours of CI.
- Lower CI cost, and less time to resolve a defect.
