Сессия может исчезать при работе с бэкэндом на Flask по нескольким причинам:
1. Неправильная конфигурация сессий. Возможно, вы не настроили сессии правильно в приложении Flask, что может привести к проблемам с их сохранением и доступом к данным в них.
2. Проблемы с хранением сессий. Если используется неадекватное хранилище для сессий (например, встроенное в память), то сессии могут быть утеряны при перезагрузке сервера или других действиях.
3. Проблемы с CSRF защитой. Если не настроена защита от CSRF атак, то браузер может не сохранять сессии корректно.
Относительно значения `session['username']`, которое остаётся пустым, возможно, что значение не сохраняется в сессии корректно. Возможно, вы не устанавливаете значение `session['username']` в нужной функции перед попыткой его получить в функции `home`. Убедитесь, что значение устанавливается корректно и сохраняется в сессии перед его использованием в других частях приложения.