Если выбран Node.js но в архиве .py — сразу ошибка. Фронтенд передаёт выбранный язык (ca-lang / e-lang-hidden) в запрос лintера.
Entrypoint формат module.function: лintер ищет module.py в архиве и проверяет что def function(...) определена внутри. Если нет — сразу ошибка, не нужно ждать таймаута вызова. Фронтенд передаёт entrypoint из поля e-entry / ca-entry.