Humans follow edge-case logic that exists nowhere in the schema.

An analyst running a revenue report follows a five-step runbook that exists only in their head. Check if the report period crosses a fiscal year boundary: if yes, use fy_revenue. Exclude accounts where contract_end_date is within 14 days. If enterprise accounts show $0 MRR, check the invoicing_hold flag first. For Q4 only, add the annual prepay adjustment from finance_adjustments. Cross-check against Salesforce closed-won: gap over 5% needs sign-off.
The AI agent received the schema and the prompt. It did not receive the runbook. Fiscal year boundary logic: not available. Churn risk exclusion rule: not available. invoicing_hold flag behavior: not available. Q4 prepay adjustment: not available. Salesforce reconciliation check: not available.
These are the decisions that make the output correct: the accumulated logic of everyone who has run this report and hit the places where the obvious answer was wrong.
Runbooks exist because schemas are insufficient specifications. They encode the gap between what the data says and what the business means. The analyst who wrote the runbook did so because they needed to, because they got the wrong answer without it.
AI agents will produce the same wrong answers the runbook was written to prevent. Until that runbook is part of the context an agent can access, automation inherits the schema and nothing else.