From c8f7e9102b88d3273d14b3c4bd4e3b76d0d679ea Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sun, 31 May 2026 13:42:42 +0100 Subject: [PATCH] docs: clarify runtime migration boundary --- AGENTS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/AGENTS.md b/AGENTS.md index ff0efb55970..145e623f175 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -64,6 +64,7 @@ Skills own workflows; root owns hard policy and routing. - Tests may use observed examples, but prod literals need a short contract reason. - Compatibility is opt-in. "Shipped" means reachable from a release Git tag; main/GitHub/PR/unreleased code is not shipped. - Refactor default: one canonical path. Delete the old path unless user explicitly wants compat or the shipped public contract is obvious and cited. +- Core runtime consumes only current canonical shapes/config/data. Legacy or retired shapes normalize only in doctor/migration code before runtime; no runtime shims, aliases, or fallback readers. - Keep old behavior only for an explicit public API/config/plugin SDK/data contract, tagged upgrade path, security/migration boundary, dependency contract, or observed prod state. - If unsure, ask before preserving compat. Do not keep aliases, shims, fallback stacks, stale names, or obsolete tests just in case. - Tests alone do not make internals contracts. If compat stays, name the contract and migration/removal plan in code, test, or PR.