21 июня автор поста на Show HN опередил комментарии, не дав им приземлиться: его проект, писал он, — не «vibe-coding garbage», в нём «429 юнит-тестов, 33 миграции, полный CI/CD с E2E-тестами, нагрузочным тестированием и внесением отказов», плюс сканирование Trivy, Grype и OpenSCAP и движок карантинных политик для всего, что не прошло проверку. На той же неделе The Mog Programming Language попал на главную с одной-единственной посылкой — безопасность на основе capability для кода, который написал агент, потому что «если вы запускаете скрипты, написанные агентом, эти скрипты не наследуют ограничивающих агента разрешений… и это ведёт к взлому». А TesterArmy запустился с тезисом, что узкое место сместилось: «Инструменты разработки на ИИ резко ускорили выпуск кода, но тестирование по-прежнему остаётся узким местом… людям просто нужна уверенность, что их ключевые сценарии работают».
Прочтите достаточно таких историй — и вопрос 2026 года станет очевиден, и это не «умеет ли ИИ писать код». Очевидно, умеет. Вопрос в другом: можно ли доверять тому, что он написал?
Наш ответ — не обещание и не ощущение. Это бейдж, на который можно нажать. Публичное открытое ядро, которое Forge разворачивает в вашем облаке, — sc, Simple Container
— получило OpenSSF Best Practices Gold
. Каждый без исключения критерий отмечен как Met. Бейдж стал золотым 21 июня.
Доверие — не чувство. Это чек-лист, который проверяет кто-то другой.
Бейдж OpenSSF Best Practices существует именно потому, что фраза «мы серьёзно относимся к безопасности» ничего не значит. Это публичная, независимо определённая шкала под управлением Open Source Security Foundation, в трёх уровнях — Passing, Silver и Gold, — и до Gold почти никто не доходит, потому что он требует вещей, которые по-настоящему трудно подделать. В доверие нельзя самосертифицироваться: вы выполняете критерии строчка за строчкой, и оценка читается машиной , так что проверить её может кто угодно.
В этом и разница между «поверьте нам» и «проверьте нас». Когда вся отрасль нервничает из-за происхождения кода, сторонняя шкала со словами все критерии выполнены стоит больше любого объёма маркетинговых текстов — включая этот абзац. Так что вот что на самом деле стоит за бейджем.
1. Воспроизводимые сборки: бинарник, который вы получили, — это исходники, которые вы прочитали
Самый глубокий страх в цепочке поставок — что артефакт, который вы запускаете, не соответствует исходникам, которые вы проверяли. sc закрывает этот разрыв побайтово воспроизводимыми сборками: релизные бинарники собираются с -trimpath, -buildvcs=false, CGO_ENABLED=0 и зафиксированным тулчейном Go, а тарболы пакуются детерминированно (фиксированный порядок, mtime, владелец и права, без встроенной метки времени gzip). Две независимые сборки при разных umask дали идентичные sha256-дайджесты, а рецепт пересборки и сверки
опубликован, чтобы вы могли сами сверить это с опубликованным дайджестом. Вам не нужно доверять нашему сборочному серверу. Вы можете пересобрать сами.
2. Подпись без ключей и фаззинг криптографии: то, что на самом деле атакуют
Релизы подписываются Sigstore/cosign через keyless-подпись по GitHub OIDC — нет долгоживущего секретного ключа, который можно утечь, а личность проверяется при установке бутстрапом sc.sh. И критичный для безопасности код получает динамический анализ, а не только ревью: нативный фаззинг Go работает в CI по пути разбора HMAC-кеша целостности, с харнессами, которые проверяют, что подделанный или изменённый ввод отвергается и что ни один разрешённый путь не может выйти за пределы каталога кеша. Криптография тоже не самописная — HMAC-SHA256, RSA-OAEP, ed25519 + ChaCha20-Poly1305, HKDF, TLS 1.3 — и ни одного SHA-1, MD5 или InsecureSkipVerify в продакшен-коде.
3. Четыре блокирующих SAST-сканера и запрет на тихое подавление
Каждый pull request прогоняет четыре свободных статических анализатора — CodeQL, Semgrep, gosec и govulncheck, и каждый из них блокирует слияние при находке. Уровня «предупреждение, но не падаем» просто нет; golangci-lint работает строго, и любое предупреждение роняет сборку. Деталь, которой мы гордимся больше всего, — политика подавления: находку нельзя тихо заглушить через # nosemgrep, // nolint или .trivyignore — это запрещено. Единственный способ подавить — задокументированная запись OpenVEX
not_affected, которая открыто объясняет, почему именно. Плюс покрытие по строкам ≥90% на задокументированной области и SECURITY.md с SLA на подтверждение и исправление.
Что из этого следует
Вот почему это важнее бейджа. Forge — платформа, где ИИ-агенты пишут код и отправляют его в ваше облако, то есть вопрос «можно ли доверять софту, который ведут агенты» — это буквально наш вопрос. Мы не можем убедительно ответить на него про ваш код, если не отвечаем на него про свой собственный. Поэтому мы подтянули открытое ядро, которое и делает сам деплой, к самой высокой публичной планке из существующих — и дали оценить его третьей стороне.
Тревога отрасли — правильная тревога. Скорость без проверяемой строгости — это и есть способ выпустить инцидент в цепочке поставок. Лечится это не замедлением агентов, а тем, что строгость встраивается в сам конвейер: тогда доверие становится свойством артефакта, а не актом веры. Воспроизводимая сборка, подпись, фаззинг, четыре сканера — и золотая оценка со стороны.
Не верьте нам на слово. Нажмите на бейдж — а потом почитайте исходники .