mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-30 21:53:28 +08:00
Pin all GitHub Actions to commit SHAs instead of mutable version tags across ci.yml, release.yml, maintenance.yml, and all reusable workflows. This prevents supply-chain attacks via tag hijacking. Add the required Skills section to CLAUDE.md mapping project files (README.md, .github/workflows/*.yml) to their respective review skills.
52 lines
1.4 KiB
YAML
52 lines
1.4 KiB
YAML
name: Scheduled Maintenance
|
|
|
|
on:
|
|
schedule:
|
|
- cron: '0 9 * * 1' # Weekly Monday 9am UTC
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
issues: write
|
|
pull-requests: write
|
|
|
|
jobs:
|
|
dependency-check:
|
|
name: Check Dependencies
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
with:
|
|
node-version: '20.x'
|
|
- name: Check for outdated packages
|
|
run: npm outdated || true
|
|
|
|
security-audit:
|
|
name: Security Audit
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
with:
|
|
node-version: '20.x'
|
|
- name: Run security audit
|
|
run: |
|
|
if [ -f package-lock.json ]; then
|
|
npm ci
|
|
npm audit --audit-level=high
|
|
else
|
|
echo "No package-lock.json found; skipping npm audit"
|
|
fi
|
|
|
|
stale:
|
|
name: Stale Issues/PRs
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/stale@5bef64f19d7facfb25b37b414482c7164d639639 # v9
|
|
with:
|
|
stale-issue-message: 'This issue is stale due to inactivity.'
|
|
stale-pr-message: 'This PR is stale due to inactivity.'
|
|
days-before-stale: 30
|
|
days-before-close: 7
|