Guard: приложение для GitHub. В каждом pull request оно читает изменённые файлы, оставляет один комментарий и проверку, которая не проходит, если что-то нужно исправить сейчас.
Вы открываете pull requestGuard читает только изменённые файлы.Запускаются правилаУтёкшие ключи, выдуманные пакеты, похожие названия и известные уязвимости.Один комментарий, одна проверкаПроверка не проходит, только если что-то нужно исправить сейчас.Вы отправляете исправлениеGuard никогда ничего не пушит, не сливает и не удаляет. Изменение ваше.Комментарий обновляется на местеТот же комментарий, теперь чистый, и проверка проходит.
Pull request 57: orders exportfeat/orders-export → main
package.json · src/config.ts+3
keys: Stripe live secret key sk_live_FwIw•••••••• fix now
packages: reqeusts-helper is not on npm fix now
packages: expres looks like express fix this week
yof Guard commented: 2 to fix now, 1 to fix this week✗ check failed
yof Guard commented · edited: nothing to fix in the changed files✓ check passed
03 Охранять · Следует вашим правилам
Охрана, которая следует вашим правилам
Guard: приложение для GitHub с файлом правил. В каждом pull request оно оставляет один комментарий и проверку, которая не проходит, если что-то нужно исправить. Оно никогда ничего не пушит, не сливает и не удаляет.
Как работает yof: пример с тестовыми данными
Guardshop-example/shop-web · delete-account → main
Account: delete account endpoint
Проверка yof Guard не пройдена
Находки2
Исправить сейчасapp/api/account/route.ts:20
Это изменение позволяет кому угодно удалять аккаунты.
Предложенное изменение. yof никогда не вносит его сам.
const { id } = await req.json();+ const user = await currentUser(req);+ if (user?.role !== "admin") return forbidden(); await db.account.delete({ where: { id } });
Исправить на этой неделеrequirements.txt · example-http-kit 0.52.1
Обновить пакет до безопасной версии
.yof.yml
Ваши правилаСбалансированный
Код6
Пакеты3
ignoredocs/**
Ваш файл правил.yof.yml задаёт профиль и то, что пропускать. Его читают и CLI, и Guard.
Три профиляМягкий, сбалансированный или строгий. По умолчанию сбалансированный.
Перед каждым коммитомХук проверяет то, что вы собираетесь закоммитить, до того как код покинет ваш компьютер.
В каждом pull requestОдин комментарий, который обновляется на месте, и проверка, которая не проходит, если что-то нужно исправить.
Никогда самБез отправки, слияния и удаления. Решаете вы.