Т.е. гуглобот проиндексирует json, даже если этого нет в html?
В реальности конечно JSON значительно больше и содержит как куски html так и нормальные данные (активный пользователь, списки, фразы перевода на текущий язык и тд.) По сути он описывает весь отрисованный в html контент частично вместе с html и даже немного больше, так как есть данные для использования в динамике на клиенте.
Клоакинга здесь нет. После полной загрузки странички контент не меняется, даже если компонент решит перерисоваться (данные то те же самые, что и на сервере были). Контент может поменяться только после действий пользователя.