
GitHub Action für Heisenberg SSC
Eine leichte PR-Leitplanke für Abhängigkeitsaktualisierungen.
Es scannt nur neue oder geänderte Abhängigkeiten (aus Ihrer Lock-/Manifestdatei), ruft Gesundheits- und Risikosignale ab (deps.dev + Heuristiken), markiert frische Veröffentlichungen, fügt einen Bericht als PR-Kommentar hinzu, kennzeichnet es optional für eine Sicherheitsüberprüfung und kann den Job bei Richtlinientreffern fehlschlagen lassen.
Unterstützte Ökosysteme: PyPI (poetry.lock, requirements.txt, uv.lock), npm/yarn (package-lock.json, yarn.lock), Go (go.mod).
security review-Label hinzugefügt und im WARNMODUS ausgeführt (CI bleibt grün, um die Störung gering zu halten).Standardmäßig nicht blockierend: Es ist kein harter Block, sondern nur eine kleine Hürde, damit Sie benachrichtigt werden, wenn etwas Verdächtiges erkannt wird. Ihre CI-Pipeline wird nicht fehlschlagen, aber die Abhängigkeitsrisiken werden im Kommentar angezeigt. Sie können auf dem PR
accept-riskkommentieren, um zukünftige Benachrichtigungen für die markierten Pakete zu unterdrücken, bis Sie ein weiteres Commit an der Manifestdatei vornehmen.
Minimaler Workflow für ein Repository, das Poetry / npm / Yarn / Go verwendet:
name: Heisenberg Health Check
on:
pull_request:
paths:
- "**/poetry.lock"
- "**/uv.lock"
- "**/package-lock.json"
- "**/yarn.lock"
- "**/requirements.txt"
- "**/go.mod"
permissions:
contents: read
pull-requests: write # PR comment
issues: write # create label (only needed if add_security_label is true)
jobs:
deps-health:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Detect changed manifest
id: detect
run: |
git fetch origin ${{ github.base_ref }} --depth=1
LOCK_PATH=$(git diff --name-only origin/${{ github.base_ref }} | \
grep -E 'poetry.lock$|uv.lock$|package-lock.json$|yarn.lock$|requirements.txt$|go.mod$' | head -n1 || true)
echo "lock_path=$LOCK_PATH" >> $GITHUB_OUTPUT
- name: Heisenberg Dependency Health Check
uses: AppOmni-Labs/heisenberg-ssc-gha@v1
with:
package_file: ${{ steps.detect.outputs.lock_path }}
Security Review-LabelsWenn Sie nicht möchten, dass die Aktion das Security Review-Label zu PRs mit markierten Abhängigkeiten hinzufügt, setzen Sie add_security_label auf "false":
- name: Heisenberg Dependency Health Check
uses: AppOmni-Labs/heisenberg-ssc-gha@v1
with:
package_file: ${{ steps.detect.outputs.lock_path }}
add_security_label: "false"