Newer
Older
{/* Copyright 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH.
SPDX-License-Identifier: MIT */}
import { Callout } from 'nextra/components'
# Bus Factor
<Callout type="default">
Check type: `BUS_FACTOR`
</Callout>
This check calculates the bus factor of a project for a given time range.
The check passes if the bus factor is greater than or equal to the minimum threshold.
```yaml filename=".badge-api.yaml" copy
- type: BUS_FACTOR
description: Checks if multiple maintainers are working on the project.
threshold:
timeRangeInMonths: 6
min: 2
```
### Background
The bus factor is a measure of the risk resulting from information and capabilities not being shared among team members.
Imagine there is a pretty precise bus that unfortunately hits always exactly one person. The bus factor is the number of people
that need to be hit by the bus until half of the projects commits have no living producer anymore. The higher the bus factor,
the lower the risk of the project failing due to the loss of a single person.
For example if a project has a bus factor of 2, it means that the 2 most important contributors are responsible for 50% of the commits
and after both are gone, the project would be in danger.