Дело в том, что перед ошибкой я делаю проверку и вижу, что JSON переопределён, а после выполнения всех скриптов JSON стандартный.
window.JSON проверяю в контексте window
if (!JSON.stringify) {
if (JSON.encode) {
JSON.stringify = JSON.encode;
}
}
Так очень страшно?