Skip to content

fix: detect unpinned workflow actions#113

Open
nyxst4ck wants to merge 1 commit into
anthropics:mainfrom
nyxst4ck:fix/detect-unpinned-workflow-actions
Open

fix: detect unpinned workflow actions#113
nyxst4ck wants to merge 1 commit into
anthropics:mainfrom
nyxst4ck:fix/detect-unpinned-workflow-actions

Conversation

@nyxst4ck

@nyxst4ck nyxst4ck commented Jun 15, 2026

Copy link
Copy Markdown

Summary

  • Add a deterministic scanner for newly added uses: entries in .github/workflows/*.yml and .yaml files that reference tags or branches instead of full 40-character commit SHAs.
  • Ignore local actions and Docker actions, then merge these findings into the existing audit results before the current filtering pipeline.
  • Add focused coverage for workflow parsing, including quoted refs, inline comments, reusable workflows, line-number tracking, and end-to-end audit output behavior.
  • Document production guidance for pinning GitHub Actions dependencies to reviewed commit SHAs.

Addresses #112.

Test plan

  • python -m pytest claudecode/test_workflow_security.py claudecode/test_main_function.py claudecode/test_github_action_audit.py -q - 35 passed
  • python -m ruff check claudecode/workflow_security.py claudecode/github_action_audit.py claudecode/test_workflow_security.py claudecode/test_main_function.py - passed
  • python -m py_compile claudecode\workflow_security.py claudecode\github_action_audit.py - passed
  • python -m pytest claudecode -q -k "not test_anthropic_api_key_handling and not test_full_workflow_with_real_pr_structure and not test_workflow_with_llm_filtering and not test_workflow_with_no_security_issues and not test_workflow_with_massive_pr and not test_workflow_with_binary_files" - 173 passed, 6 deselected

Attempted full test suite with python -m pytest claudecode -q; the local Windows environment still has existing blockers unrelated to this change: the Claude CLI is not installed for TestEnvironmentSetup.test_anthropic_api_key_handling, and five workflow integration tests fail during TemporaryDirectory cleanup after changing into the temp directory.

Co-Authored-By: claude-flow <ruv@ruv.net>
@nyxst4ck
nyxst4ck force-pushed the fix/detect-unpinned-workflow-actions branch from 2c257ed to ad469e6 Compare June 15, 2026 18:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant