# Evolution 4 — limitations (preserved)

1. **Simulated, not observed.** The differential replays recorded inputs under candidate rules. It does not observe
   what would really have happened.
2. **Path dependence is not modelled.** Budget usage, use counts and contract state are taken as recorded. A
   candidate that would have denied an earlier use would have left more budget or uses for later ones. Example: a
   template with more uses does not reopen a recorded STATE_CONSUMED denial. Budget-related changes are flagged
   PATH_DEPENDENT.
3. **Coverage is the corpus.** Only situations that actually happened are compared. "No changes" means "no changes on
   this history", not "equivalent". Symbolic equivalence of decide() versions is a separate (Evolution 7) concern.
4. **No new forecasts.** The replay never forecasts; it re-gates recorded forecasts. Decisions without one cannot be
   widened by a candidate (conservative).
5. **The prompt's causal layer was not built:** causal graph, hypothesis, intervention, feedback-loop,
   runaway-autonomy and model-competition engines. Nor were its 250 invariants and 2,000 adversarial scenarios. What
   exists: 43 differential tests with specific assertions, 10 named invariants, and a live check on 5 targets.
6. **Single host.** As for E2/E3: blue and green share tenant SQLite; there is no cross-host state.
7. **Scope:** the contract fabric over 4 of the 20 Frontier products (owner directive).
