|
morph 0.1.0
Asynchronous bridge between GUI thread and business models
|
Thrown by replay() when a recorded entry's payload fingerprint (LogEntry::schema) disagrees with the fingerprint this build computes for the same action, and no migration covers the pair. More...
#include <journal.hpp>
Public Member Functions | |
| SchemaMismatchError (std::string_view modelType, std::string_view actionType, std::string_view recorded, std::string_view current) | |
| Builds the message naming the action and both fingerprints. | |
Thrown by replay() when a recorded entry's payload fingerprint (LogEntry::schema) disagrees with the fingerprint this build computes for the same action, and no migration covers the pair.
Without this signal the same situation reconstructs, successfully, a state that was never recorded — a renamed field decoding to its default, reported with as much confidence as a correct one. There is no "degraded" reconstruction to fall back to and no way to tell how much of the entry survived the decode, so this throws rather than warning: an audit trail that cannot be reconstructed faithfully must say so.
Definition at line 43 of file journal.hpp.
|
inline |
Builds the message naming the action and both fingerprints.
| modelType | LogEntry::modelType of the offending entry. |
| actionType | LogEntry::actionType of the offending entry. |
| recorded | Fingerprint stamped on the entry when it was written. |
| current | Fingerprint this build computes for that action. |
Definition at line 49 of file journal.hpp.