Skip to content

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:

Sub-key Type
method str

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