
Heisenberg SSC용 GitHub 액션
가벼운 PR 가드레일로, 종속성 업데이트를 위한 도구입니다.
신규 또는 변경된 종속성만 스캔하여(락/매니페스트 파일에서), 건강 및 위험 신호(deps.dev + 휴리스틱)를 가져오고, 새로 게시된 패키지를 표시하며, PR에 보고서를 댓글로 남깁니다. 선택적으로 보안 검토 레이블을 추가하고, 정책 위반 시 작업을 실패시킬 수 있습니다.
지원 생태계: PyPI (poetry.lock, requirements.txt, uv.lock), npm/yarn (package-lock.json, yarn.lock), Go (go.mod).
security review 레이블을 추가하고 경고 모드로 실행합니다 (CI는 계속 통과하여 불편을 최소화).기본적으로 비차단: 이는 하드 블록이 아니라 속도 방지턱으로, 의심스러운 것이 감지되면 경고를 받을 수 있습니다. CI 파이프라인은 실패하지 않지만, 종속성 위험은 댓글에 표시됩니다. PR에
accept-risk댓글을 달면 플래그가 지정된 패키지에 대한 향후 알림을 매니페스트에 또 커밋할 때까지 표시하지 않을 수 있습니다.
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 Review 레이블 비활성화플래그가 지정된 종속성이 있는 PR에 작업이 Security Review 레이블을 추가하지 않도록 하려면 add_security_label을 "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"