Variable: CHECKSUM_KEYS
const CHECKSUM_KEYS: readonly string[];
Defined in: packages/core/src/submission/submission.ts:126
The checksum covers an allowlist, not an exclusion list (spine §6, docs/10 §2.3).
Two properties matter and an exclusion list delivers neither:
- Stable across the submission's life. Everything omitted here changes while
the payload does not —
statuswalks draft → queued → sending → synced,serverRevis stamped on acknowledgement,clientRev/updatedAtmove on every local write,auditgrows. Hashing any of them would make a submission fail its own integrity check the moment the sync engine touched it, which docs/09 §13 reports asRASD_STORAGE_INTEGRITY— i.e. every outgoing submission would look tampered with. - Recomputable by the server. The server verifies this hash from the wire body, so the input must be exactly what it receives. An allowlist also keeps the hash stable when a later spec version adds a field.
finalizedAt is covered — it lives inside meta.