# 15A Saving Information That Needs to Survive

When an application saves information, I need to know what has been saved, where it is stored, and how long it is expected to remain.
A visible confirmation can show that one request succeeded, but it does not explain what will happen after a restart or a migration.
Some data belongs in the database, while temporary interface state may exist only in the current browser session or running process.
For a learning product, completed lessons and saved vocabulary usually need to remain available when the learner returns on another day.
The position of an open dialog may not require the same treatment, depending on the experience that the product intends to offer.
I ask for these choices to be explicit so that a local convenience does not accidentally become the only copy of important information.
Before changing storage behavior, we review the existing records and identify which values are shared, private, temporary, or safe to regenerate.
We also check whether the new version can read information that was saved by the old version before the change.
A successful update should preserve the data that the user expects to keep, rather than merely make the newest empty example work.
Understanding persistence helps us describe the real behavior of the product and plan changes without making unsupported promises about what survives.