Config Keys Reference
Every .abicheck.yml top-level key and block sub-key that abicheck.buildsource.inline.BuildConfig itself validates, with its exact required YAML type — generated directly from BuildConfig's strict-schema registries (an unknown key or a wrong-typed value is a hard error, ADR-043). "Other recognized top-level keys" below are also accepted but parsed by a sibling module instead, so no type is claimed for them here. See Config File Reference for effective defaults, CLI-override precedence, and a worked example; this page is the exhaustive key/type list for BuildConfig's own schema only.
Blocks
build:
| Sub-key |
Type |
compile_db |
str |
query |
str |
system |
str |
compile:
| Sub-key |
Type |
defines |
list[str] (or a single str) |
frontend |
str |
include_dirs |
list[str] (or a single str) |
nostdinc |
bool |
std |
str |
sysroot |
str |
debug:
| Sub-key |
Type |
debuginfod |
bool |
debuginfod_url |
str |
dwarf_only |
bool |
format |
str |
scope:
| Sub-key |
Type |
collapse_versioned_symbols |
bool |
public |
bool |
public_symbols |
list[str] (or a single str) |
show_redundant |
bool |
severity:
| Sub-key |
Type |
abi_breaking |
str |
addition |
str |
potential_breaking |
str |
preset |
str |
quality_issues |
str |
source:
sources:
| Sub-key |
Type |
exclude |
list[str] (or a single str) |
graph |
str |
public_headers |
list[str] (or a single str) |
suppression:
| Sub-key |
Type |
require_justification |
bool |
strict |
bool |
Top-level scalar keys
| Key |
Type |
exit_code_scheme |
str |
version |
int |
Other recognized top-level keys
Recognized (so they don't trigger the unknown-key warning) but parsed by a sibling module rather than BuildConfig itself — see abicheck/buildsource/CLAUDE.md's module map for which one:
baseline
bundles
crosschecks
profiles
risk_rules
targets