The violation of The Buffer.

An Infected Core is business logic that has fused with its environment. The rule and the infrastructure it happens to run on have grown together, so you can no longer exercise the rule without standing up the infrastructure.

The tell: a unit test that needs a database, a clock, a network, or an environment variable before it will run. If testing your pricing logic requires a live Postgres, the pricing logic is infected.

The infection usually enters quietly, one convenient reach at a time. A function reads os.environ because the value was right there. Another calls the database directly because passing a repository felt like ceremony. Each shortcut is small. Together they weld the core to the edges, and now the logic cannot be reasoned about, tested, or moved without dragging the whole environment along with it.

The fix is to push the infrastructure back out to the periphery and hand the core its inputs as plain data. The core should pass the Airplane Test: it runs and reasons correctly with no network attached.

A concrete example: a pipeline node that reads os.environ directly is untestable without setting environment variables first. A one-line build rule banning the pattern forces the config to arrive as a parameter instead, and the node goes back to being a pure function of its inputs.