Это не совсем конкретный ответ на ваш вопрос, но я просто хотел бы добавить, что я думаю, что вы на правильных линиях, и я не буду беспокоиться о том, что вы вышли за пределы архитектурной линии, поэтому говорить.
Интернет переходит от одного из представленных документов (где сервер делал абсолютно все, а браузер был по сути тупым) к тому, где браузер и сервер более симметричны - и ваши проблемы становятся все более актуальными в отношении сохранения двух полноценных MVC синхронизированные приложения!
(Возможно, мы могли бы увидеть мир, в котором серверы становятся довольно тупыми по сравнению с богатством приложений на стороне клиента. Я полагаю, что это только следующий цикл маятника толстого клиента / тонкого клиента, который качается на протяжении десятилетий ;-))
Но для мобильных устройств это не просто произвольная компьютерная проблема - мобильное устройство может легко иметь частичное или спорадическое покрытие сети, и поэтому конечной проверкой дизайна вашего приложения является выяснение, сможет ли пользователь продолжить работу над ним. приложение, когда устройство находится в автономном режиме - например, подключено к туннелю - и затем повторно синхронизируется, как только сеть снова станет доступной. Богатый, отзывчивый клиент - действительно единственный путь.
В этом случае разумное сохранение сессии в браузере кажется разумным шагом. На самом деле проще поддерживать синхронизацию состояния сеанса между одним клиентом и сервером, чем для некоторых других типов записей данных (которыми могут манипулировать несколько клиентов одновременно).