SlopGradeby Maxor Global LLC
Se connecterDémarrer
Docs · Action GitHub

Ajoute le gate en deux minutes.

Un fichier de workflow. Aucun compte requis pour un repo public, aucun secret à stocker — GitHub prouve ton repo par OIDC. Ton code reste dans ton runner.

Démarrage rapide

Trois étapes vers une pull request protégée.

1

Ajoute le workflow

Crée .github/workflows/slop-gate.yml. Garde le nom de job slop — c'est le check que tu exigeras.

# .github/workflows/slop-gate.yml
name: slop-gate
on: { pull_request: {} }
jobs:
  slop:                        # keep the job name: it is the check you require
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write          # required — OIDC proves the repo, no secret
      pull-requests: write     # optional — inline findings on the PR
      security-events: write   # optional — Security tab (Code Scanning)
    steps:
      - uses: actions/checkout@v4
        with: { fetch-depth: 0 }
      - uses: maxor-tech/slopgrade-firewall@ad16c325dfe136c2f66107da87655b3b330e8575  # v0.9.2
2

Ouvre une pull request

Le check slop tourne sur la PR. Les findings apparaissent sur leur ligne, dans le résumé du run et — avec security-events: write — dans l'onglet Security.

3

Exige le check

Fais de slop un status check requis sur main (protection de branche GitHub, ou « Protéger main » dans l'app). Un finding bloquant arrête maintenant le merge.

Inputs

Chaque option est désactivée ou sûre par défaut.

InputDéfautCe qu'il fait
firewall-modegategate bloque sur un finding bloquant quand le repo y a droit ; advisory signale seulement ; off désactive.
strictfalseÉchoue fermé quand aucun verdict n'est disponible (par défaut : fail-open).
upload-sariftrueEnvoie les findings vers Code Scanning avec ton propre jeton (requiert security-events: write).
sarif-file—Écrit aussi le rapport SARIF dans un fichier.
deep-scanfalsePayant, opt-in : envoie aussi la source des fichiers porteurs d'un sink (≤ 40 fichiers) au moteur de taint hébergé. Le seul mode qui envoie du code.
deep-scan-blockfalseAvec deep-scan + gate : un nouveau finding du deep scan fait échouer le check.
Qui est bloqué

Gratuit là où ça compte le plus.

Gratuit · bloque

Repos publics

Le gate cross-tenant + les 22 classes open source bloquent, pour toujours.

Gratuit · bloque

Ton premier repo privé

Les mêmes classes qu'un repo public — un par compte.

Informatif

Autres repos privés

Le nombre + un exemple localisé par classe ; jamais bloqué tant que le repo n'a pas de slot payant.

Outputs et dépannage

Branche-le sur le reste de ton pipeline.

Outputs

verdict (advisory · gate-blocked · gate-unpaid · gate-pass), blocked, hard-leaks, blocking-findings, conformance, entitled, sarif-uploaded.

Pas de commentaires sur les PR venant de forks ?

GitHub donne aux PR de forks un jeton en lecture seule : le gate tourne quand même, le feed de commentaires et l'envoi vers l'onglet Security sont ignorés.

Le run est passé sans rien trouver — a-t-il scanné ?

Chaque run affiche une ligne de couverture (packs · fichiers scannés) : un run propre n'est jamais confondu avec un run vide.

Voir exactement ce qui est envoyé

node isolation-gate.mjs --print-payload affiche le payload et s'arrête sans contacter le serveur.