fitness-functionslisted
Install: claude install-skill michaelalber/ai-toolkit
# Fitness Functions
> "An architectural fitness function provides an objective integrity assessment of some
> architectural characteristic(s)."
> -- Neal Ford, Rebecca Parsons & Patrick Kua, *Building Evolutionary Architectures*
## Core Philosophy
A fitness function turns an architectural intention into an automated, objective check that the CI
pipeline enforces on every push. It is the executable memory of an ADR: the ADR records *why* a
boundary exists; the fitness function makes crossing that boundary *fail the build*. Without the
gate, architectural decisions decay silently between reviews. The mechanism is uniform across
stacks -- a check wired into CI as a gatekeeper -- but the tool is per-stack.
**Non-Negotiable Constraints:**
1. A fitness function is a GATE, not a report -- it exits non-zero and fails CI on violation; a
check that only prints is not a fitness function
2. TRACEABLE -- every fitness function names the ADR or measurable quality attribute it enforces;
no orphan checks
3. PROVE it gates -- pass against today's code AND fail against a deliberate violation before you
declare it done; an untested gate is assumed broken
4. PER-STACK tool, uniform mechanism -- load `references/<stack>.md`; never hardcode a stack's
tooling into the gate-wiring logic
5. CONTEXT BUDGET: keep utilization under 40%. At 60%, write progress to the target's
`architecture.md` fitness section and tell the user to start a fresh session.
## Workflow
```
PRE-FLIGHT