
Ação do GitHub para Heisenberg SSC
Uma proteção leve de PR para atualizações de dependências.
Escaneia apenas dependências novas ou alteradas (do seu lock/manifest), obtém sinais de saúde e risco (deps.dev + heurísticas), sinaliza publicações recentes, comenta um relatório no PR, opcionalmente adiciona uma etiqueta para revisão de segurança e pode falhar o job em caso de violação de política.
Ecossistemas suportados: PyPI (poetry.lock, requirements.txt, uv.lock), npm/yarn (package-lock.json, yarn.lock), Go (go.mod).
security review e executa em MODO DE AVISO (CI permanece verde para manter um nível mais baixo de incômodo).Não bloqueante por padrão: Não é um bloqueio definitivo, apenas um redutor de velocidade para que você seja alertado se algo suspeito for detectado. Seu pipeline de CI não falhará, mas os riscos de dependência serão exibidos no comentário. Você pode comentar
accept-riskno PR para suprimir notificações futuras para os pacotes sinalizados até fazer outro commit no manifesto.
Workflow mínimo para um repositório que usa Poetry / npm / Yarn / Go:
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 ReviewSe você não quiser que a ação adicione a etiqueta Security Review a PRs com dependências sinalizadas, defina add_security_label como "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"