Alchemy state is not your site's data
Two things that both look like "the site" and must never share a lifecycle.
Placeholder article. The frontmatter and structure are real; the prose is a draft to exercise the layout and should be rewritten or removed before launch.
Infrastructure state records which cloud resources a stack manages and what their lifecycle is. Site data is what the site is for. They are stored differently, recovered differently, and lost differently, and the failure mode is treating one as a backup of the other.
Two lifecycles
Tearing down a stage should remove everything that stage created and nothing it merely referenced. That distinction has to be expressed at declaration time, not remembered at destroy time.
const zone = await Zone("digression.app", { adopt: true });
adopt says: this exists, this stack is not responsible for its lifecycle, and destroying
this stack must not destroy it.
Where this bites
A shared parent zone owned by an older stack. A bucket two stages both write to. Anything adopted rather than created is outside the blast radius of a destroy — and anything created is inside it, whether or not that was the intent.