Hacker News Digest

Тег: #ci

Постов: 4

Creepy Crawlies (people.kernel.org) 🔥 Горячее 💬 Длинная дискуссия

AI-сканеры создают постоянную нагрузку на git.kernel.org, потребляя около 20% вычислительных ресурсов — 14–16 из 90 ядер на пяти узлах постоянно тратятся на рендеринг коммитов в HTML для обучения моделей, что превышает нагрузку от всех легитимных запросов, включая git clone. Причина — неэффективный метод сбора данных: вместо простого клонирования репозиториев сканеры запрашивают каждый коммит как отдельную HTML-страницу, генерируя миллиарды дублирующих URL из-за форков и параметров вроде diff и patch, что создаёт «фоновое излучение» нагрузки. Хотя сайт остаётся отзывчивым для людей, основные сбои вызывают не сканеры, а плохо спроектированные CI-системы с поверхностными клонами. Администраторы пытаются бороться блокировкой IP и подсетей, но боты маскируются под браузеры и распределяются по облакам. В долгосрочной перспективе планируется ограничить функциональность и сократить количество сканируемых URL, хотя это ухудшит доступ для анонимных пользователей. Все данные останутся доступны для загрузки, но с дополнительными барьерами. Проблема системная: пока спрос на обучающие данные для LLM растёт, а простых решений нет.

by zdw • 29 августа 2026 г. в 17:49 • 1015 points

ОригиналHN

#ci#cloud#fork#git#html#ip#kernel.org#llm

Комментарии (513)

Обсуждение дополняет статью: проблема не в технической неэффективности, а в системном провале этики веб-скрапинга. AI-скраперы игнорируют robots.txt и rate limiting, а защита через proof-of-work вредит легитимным пользователям, не останавливая продвинутых ботов. Советы по противодействию: - Замена Anubis на кастомную хеш-функцию без публикации обходит ASIC-скраперы, заточенные под стандартную реализацию. - Отказ от публичного HTML-интерфейса в пользу git clone для всех и веб-интерфейса только для авторизованных пользователей. - Лимит неавторизованных запросов — 5 в минуту с разрешением высокой частоты для авторизованных. - Рендеринг HTML на клиенте через JS-клиент, который клонирует репозиторий в браузере и кэширует данные. - Ловушки (бесконечные пути, медленная передача изображений, генерация абсурдного контента) заставляют ботов тратить ресурсы впустую. - Whitelist по IP/ASN вместо blacklist с общим списком между сайтами (риск: рынок поддельных доверенных узлов). - Повышение стоимости доступа к старым коммитам относительно новых — легитимные пользователи редко запрашивают древние данные. - Превращение proof-of-work в добровольный майнинг криптовалюты, где боты «платят» хостингом. - Временное повышение сложности Anubis при запросах к нестандартным URL с подсказкой посетить главную страницу. - Кэширование HTML-рендеров git-репозиториев, так как коммиты редко меняются. - Блокировка cgit-эндпоинтов (diffs, blame, snapshots) и возврат 402 за доступ — признание поражения, но единственный рабочий способ остановить ботов без отключения сервиса. Споры: - Anubis неэффективен: скраперы обходят его через куки, а мобильные пользователи страдают от высокой сложности. - AI-скраперы тратят ресурсы на обучение, но это не оправдание — они могли бы клонировать репозитории, а не запрашивать каждый коммит в HTML. Консенсус: - Современные AI-скраперы игнорируют robots.txt, rate limiting и другие устоявшиеся практики, делая традиционные методы защиты бесполезными. - Рост нагрузки от ботов не связан с качеством контента: скраперы сканируют всё подряд без фильтрации, создавая комбинаторный взрыв URL.

Cursor launches Origin, GitHub alternative (cursor.com) 🔥 Горячее 💬 Длинная дискуссия

Код теперь можно размещать напрямую в Cursor через новую функцию Origin — early‑beta‑режим для платных пользователей. В появившемся Codebase‑разделе можно создать репозиторий, задать ему название (URL будет выглядеть как cursor.com/codebase/название), установить CLI и начать пушить локальный проект. Синхронизация с GitHub позволяет держать репозитории как на GitHub, так и в Origin, при этом выбирая, какие из них синхронизировать, и отключать их в любой момент.

Pull‑requests работают в обе стороны: комментарии и реакции в Cursor мгновенно отражаются в GitHub и обратно. В каждом репозитории доступны встроенные агенты, которые могут отвечать на вопросы о коде, менять PR‑ы и пушить ветки. Интеграции с Vercel, Depot и Buildkite уже готовы: через Apps‑таб можно привязать Vercel для preview‑деплоя каждого PR, а Depot и Buildkite — для запуска CI‑pipeline, включая GitHub Actions. Настройки репозитория позволяют проверять статус синхронизации, управлять доступом и подключать приложения.

Запомните: название репозитория становится частью URL, а синхронизация происходит в реальном времени, сохраняя GitHub как источник истины. Сейчас Origin доступен в early‑beta для всех платных планов, кроме компаний, которые явно отключили его. Начать работу можно сразу в интерфейсе Cursor.

by tomasreimers • 17 августа 2026 г. в 17:02 • 379 points

ОригиналHN

#buildkite#ci#cli#cursor#depot#git#github#origin#pull-request#vercel

Комментарии (297)

Пользователи отвергают Origin как GitHub-альтернативу из-за связи с Илоном Маском и опасений, что код будет использоваться для обучения Grok. Предпочтение отдается децентрализованным решениям (Radicle, Forgejo, SourceHut, Codeberg, Tangled) или self-hosted Git — как более безопасным для приватности. Origin ограничен синхронизацией с GitHub и не предлагает инноваций в агентных рабочих процессах, что вызывает критику как «GitHub clone». Технические недостатки — высокий расход CPU и требование SMS-верификации — снижают доверие. Споры идут о природе рисков: одни считают проблему в росте кода из-за AI, другие — в принудительном сборе данных Cursor для обучения моделей. Эксперты полагают, что Cursor ориентирован не на хостинг, а на сбор истории версий и патчей для AI.

Qwen3.8-Max: A New Bar for Coding and Cowork (qwen.ai) 🔥 Горячее 💬 Длинная дискуссия

Qwen3.8-Max — новый флагман серии Qwen, впервые открывающий веса модели уровня Max (2,4 трлн параметров, из которых 95 млрд активно используются). Основное новшество — способность самостоятельно реализовывать сложные, длительные задачи: от создания полноценного CLI‑утилита с автогенерируемым механизмом обратной связи до многократного улучшения собственного тест‑пакета без вмешательства человека. В тестах модель прошла 10‑дневный автономный цикл, где её агент формировал задачи в GitHub Issues, выбирал их, писал код, запускал CI, сливал PR и даже улучшал процесс тестирования на основе результатов. Такой «loop‑engineering» позволяет модели не просто выполнять сценарии, а адаптировать их под текущие ограничения, что делает её результаты более надёжными и воспроизводимыми.

Ключевые цифры: 2,4 трлн параметров, 95 млрд активных, 10+ дней непрерывного кодинга без человеческого контроля, публичный репозиторий [qwen-code-dev-bot/oh‑my‑cli] с полной историей изменений. Открытие весов запланировано на следующую неделю, что откроет доступ к этим возможностям шире.

by ai2027 • 03 августа 2026 г. в 02:16 • 854 points

ОригиналHN

#ci#cli#github#large-language-model#loop-engineering#qwen.ai#qwen3.8-max

Комментарии (431)

Qwen3.8-27B может быть более эффективным, чем Qwen3.6-27B и Qwen3.5, а также чем KimiK3-Thinking. Qwen3.8-Max показывает лучшие результаты в визуальном веб-разработке и перцепшенбенче, имеет 2,4 трлн параметров и может быть слишком большим или сложным для использования на домашних компьютерах. Qwen3.6-35B-A3B подходит для задач Python и баз данных. Некоторые считают, что Qwen3.6 модели эффективны для домашнего использования. Qwen3.8-Max может иметь более низкую стоимость, чем Deepseek. Alibaba Cloud может создавать излишние барьеры для домашнего использования. Если LLM не может запоминать и учиться, его легко заменить — это означает, что AI-компании не обладают монопольным положением на рынке.

Examples Are the Best Documentation (rakhim.exotext.com) 🔥 Горячее

Разработчики часто сталкиваются с тем, что официальная документация описывает функцию, но не показывает, как её использовать. Пример: вместо того, чтобы показать, как вызывать max() в Python, документация тратит абзацы на то, чтобы объяснить, что такое iterable и что значит key=. А ведь достаточно было бы показать, как передавать кастомную функцию сортировки в max().

Проект ClojureDocs берёт на себя роль «примеры — лучшая документация». Пользователи добавляют примеры к встроенным функциям, и это оказывается куда более полезным, чем формальное описание API. Примеры показывают, как вызывать функцию, какие есть подводные камни и какие есть альтернативы.

by Bogdanp • 09 октября 2025 г. в 19:34 • 361 points

ОригиналHN

#api#ci#clojure#documentation#python#testing

Комментарии (134)

  • Документация должна включать и примеры, и полное API-описание; оба формата дополняют, а не конкурируют.
  • Примеры важны для новичков, но не заменяют полное описание параметров и контрактов; примеры без спецификации приводят к тому, что разработчики вынуждены читать исходники.
  • Примеры должны быть живыми: если они не запускаются как часть CI или не покрыты тестами, они быстро устаревают и вводят в заблуждение.
  • Документация должна быть двух типов: краткий пример для быстрого старта и полное руководство для продвинутых пользователей.
  • Примеры должны быть частью тестов и наоборот: примеры в документации должны быть тестируемыми как часть CI.