mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-15 15:02:04 +00:00
fix(backup): carry the account's own cycle symptoms into the payload
The section builder returned them, the wire schema declared them, and the restore has read them since v1.33.1 — including the throw that replaced the silent drop. The payload assembly copied its keys out one by one and was never extended, so every backup written carried an empty list. An account with a custom symptom did not get the silent drop that release removed; it got a restore that failed outright on a key nothing had written back. Spread the cycle and records sections instead of hand-picking their keys, so a field added to either section interface reaches the wire by construction. Declare labelEncrypted on the cycle section, which the builder already emitted.
This commit is contained in:
1 parent
60c30e1e3a
commit
e5b958cd86
2 files changed
+38
-15
No files matched your search
@@ -108,6 +108,16 @@ export interface CycleBackupSection {
|
||||
icon: string | null;
|
||||
sortOrder: number;
|
||||
isActive: boolean;
|
||||
/**
|
||||
* The user's own words for the symptom, carried as ciphertext verbatim.
|
||||
*
|
||||
* The builder has always emitted it and this interface did not declare it,
|
||||
* which held while the payload was assembled key by key and stopped holding
|
||||
* the moment the section is spread onto the wire: an undeclared field is a
|
||||
* field the wire type says is not there. Declared, so the type describes
|
||||
* the file.
|
||||
*/
|
||||
labelEncrypted: string | null;
|
||||
}>;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user