Намерих отговора, изглежда, че Rails се опитва да бъде ефективен, като създава сесия само ако има нещо за съхранение. Така че достъпът до session.id без съхраняване на нещо не връща последователни резултати.
Трябва да принудите сесията да бъде създадена, като съхраните нещо в нея.
TLDR:Добавете това някъде, преди да получите достъп до идентификатора на сесията.
session[:foo] = "bar"
Източник :http://www.gani.com.au/2013/08/force-session-creation-in-rails/