
Ви відправляєте транзакцію, вона підтверджується, але ваш гаманець все ще показує старий баланс. Оновлюєте — з’являється. Оновлюєте знову — зникає. Нічого не зламалося. Ви просто потрапили на іншу репліку, яка ще не встигла оновитися. Rialo опублікував керівництво з моделей послідовності, яке точно пояснює це явище — і це пояснення корисніше, ніж більшість порад щодо UX гаманців. Розподілені системи реплікують дані між серверами, і ці сервери отримують оновлення в різний час. Запит на читання, що потрапляє на відстаючу репліку, повертає старіший зафіксований стан. Це правильна поведінка за більшістю моделей послідовності, але дуже заплутує користувача. Розв’язок має назву: читай свої записи. Після того як клієнт зафіксував запис у сесії, кожен наступний запит на читання в цій сесії має відображати цей запис. Ви завжди бачите свою транзакцію, навіть якщо інші користувачі ще ні. У поєднанні з монотонним читанням ваше представлення рухається лише вперед, тому баланс ніколи не повертається назад під час сесії. У документації @RialoHQ це зазначено як функція, яку гаманці повинні реалізовувати на рівні додатка, а також окремо зазначено, яка модель підходить для кожної частини ланцюга: сильна послідовність для контрольних точок фінальності; послідовний префікс для упорядкування блоків під час синхронізації; обмежена застарілість для легких клієнтів. Більшість ланцюгів не документують послідовність і залишають розробникам виявляти її через звіти про помилки. Записування того, які гарантії стосуються яких частин — це непримітна робота, яка збереге комусь тиждень часу на пошуки проблеми, яка навряд чи була помилкою.

