Settings writes now keep a copy of the exact bytes they replaced and note if no file existed.
What's wrong with this entry?
The result of a settings write now records missing when there was no prior file, and on an actual write includes a backup holding the exact bytes it replaced plus a flag saying the write came from a cached copy. These sit alongside the existing did-write, legacy-repair and corrupt fields and the guard that prevents losing stored credentials.
- Backup bytes are kept as
replaced: new Uint8Array(...). - The locked re-read path measures byte length from the cached value directly and reports
missing: !0in its no-write result.
legacyRepair, repairingFromCache
Strings lifted out of the shipped bundle, so the claim above can be checked against them.