-
Notifications
You must be signed in to change notification settings - Fork 0
audit + fixes: forensic 2026-05-23 — 9 commits, 5 P0/P1 fixes, ESLint -34 #126
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
3c175b7
c41d0ff
6ae8d82
978a6fe
5d3b377
a4509e1
c4e9879
d76689e
79f3bf1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -30,9 +30,9 @@ jobs: | |
| continue-on-error: true | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result: Key breaking change when moving from actions/checkout v4 to v5: runner/Node.js runtime requirement. 1) Minimum compatible runner version + Node runtime bump - actions/checkout v5.0.0 requires a minimum GitHub Actions Runner version of v2.327.1 to use that release [1]. - The main action README notes that “Checkout v5 now supports Node.js 24” and “This requires a minimum Actions Runner version of v2.327.1 to run.” [2]. - The v5.0.0 release changelog confirms the underlying change: “Update actions checkout to use node 24” [1]. What this means in practice - If your workflows run on self-hosted runners older than 2.327.1, they may fail to execute actions/checkout@v5 (so you should upgrade the runner before switching) [2][1]. 2) What appears NOT to be breaking (based on the sources found) - The sources located for v5 vs v4 primarily document the Node/runner requirement. I did not find additional explicit, v4-to-v5 “breaking change” items (e.g., input renames/removals or behavior changes) in the retrieved authoritative excerpts beyond this requirement [2][1]. Reference points in case you also need the context - The v5.0.0 release notes and full changelog link from the comparison page v4→v5 [3]. - The releases page includes later v5.x changes (not necessarily “breaking”), which you can review as you upgrade within the v5 major line [4]. Citations:
Verifique o requisito mínimo do runner ao usar 🤖 Prompt for AI Agents |
||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
|
|
||
|
|
@@ -55,9 +55,9 @@ jobs: | |
| timeout-minutes: 90 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -189,8 +189,8 @@ jobs: | |
| needs: quality | ||
| timeout-minutes: 15 | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/checkout@v5 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -207,9 +207,9 @@ jobs: | |
| timeout-minutes: 75 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -239,7 +239,7 @@ jobs: | |
|
|
||
| - name: Upload coverage report | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result: Compared to actions/upload-artifact@v4, the only documented breaking change in actions/upload-artifact@v5.0.0 (upstream release notes) is that it supports Node v24.x and the release is treated as a breaking change accordingly [1]. What this likely means for you: - If you run self-hosted runners with older Node runtimes, you may need to ensure the runner environment (or GitHub Actions/runner setup) can execute actions/upload-artifact@v5; v5.0.0 explicitly calls out Node v24 support as the breaking change [1]. - For GitHub Enterprise Server (GHES), the repo notes that upload-artifact@v4+ is not supported “yet” and you must use v3 (with Node 16 or node20 guidance). The v4…v5 comparison page carries that updated GHES guidance text [2]. Notable context (from v4 era, included here because many “v5 vs v4” upgrade issues are actually v4 changes): - v4 included behavioral changes around artifact immutability/overwrite semantics and hidden files being ignored by default (with include-hidden-files to opt in). These are described in the official MIGRATION.md for v3→v4 [3]. If you share which exact v4 tag you’re on (e.g., v4.4.0 vs v4.6.x) and whether runners are GitHub-hosted or self-hosted/GHES, I can map the likely practical deltas more precisely. Citations:
🏁 Script executed: #!/bin/bash
set -euo pipefail
# Find all occurrences of upload-artifact@v5 in the workflow
rg -n "actions/upload-artifact@v5" .github/workflows/ci.yml || true
# Also show the surrounding lines for each match
rg -n -C 2 "actions/upload-artifact@v5" .github/workflows/ci.yml || trueRepository: adm01-debug/promo-gifts-v4 Length of output: 2145 🌐 Web query:
💡 Result: Behavior of actions/upload-artifact retention-days did not materially change from v4 to v5: in both cases the input “retention-days” is interpreted as “duration after which artifact will expire in days”, where 0 means “use the default retention”, with constraints that it must be at least 1 day and at most 90 days (unless overridden by repo/org/enterprise retention settings). This is described in the v4 action README and is also reflected in the current action input definition. [1][2] What likely changed between v4 and v5 is the underlying artifact backend/runtime (v5 is built on newer internals), but the documented retention-days contract remains the same; the v5 release is documented as a major backend/architecture package update rather than a change to retention semantics. [3][4] Practical implications for migration: - If you set retention-days: 0 in v4, it continues to mean “use default retention” in v5. [1][2] - If you set retention-days to a value between 1 and 90 inclusive in v4, you can keep using the same value in v5; it must not exceed the repository/organization/enterprise retention limit. [1][5] - If your value exceeds the retention limit configured at the repo/org/enterprise level, uploads will not be able to retain longer than that limit; this rule is consistent in the official docs. [5] Sources: v4 README for retention-days semantics and limits, main action.yml for the same semantics, GitHub Docs for the “cannot exceed configured retention limit” rule, and the v5.0.0 release/change context from the upstream compare/release pages. [1][2][5][4][3] Citations:
🌐 Web query:
💡 Result: In short: the main path-pattern “breaking change” people hit moving from upload-artifact@v4.0.x (or early v4) to later v4 releases is that hidden files/directories (paths containing components starting with “.”) are excluded by default; you must opt in with include-hidden-files: true. [1][2][3] What changed (v4 path patterns / globbing behavior) 1) Hidden files and hidden directories are excluded by default. - If your glob/path patterns match content under directories like.terragrunt-download/ then those files will not be included unless you set include-hidden-files to true. This was reported as “path patterns not working” after upgrading to actions/upload-artifact@v4.4.0, where only plan.txt showed up because it lived outside the hidden directory, while patterns under.terragrunt-download didn’t match any uploaded files. [1] - The GitHub changelog/blog posts around this period describe excluding hidden files by default for security reasons, and the fix is to set include-hidden-files: true. [2] 2) Wildcards/globs still work, but must be expressed as supported patterns. - The v4 README explains that path is “a file, directory or wildcard pattern,” and references Citations:
🌐 Web query:
💡 Result: actions/upload-artifact v5 Node 24 “breaking changes” (i.e., changes introduced with v5 that affect runners/actions behavior for Node 24) can be summarized as follows: 1) Node 24 runtime support (v5.0.0) - In actions/upload-artifact v5.0.0, GitHub added support for Node v24.x and the release notes explicitly label this as a “BREAKING CHANGE” (treated as breaking for the purpose of upgrade guidance). [1] 2) Action behavior change: v5 is intended to run on Node 24 by default (not Node 20) - The project’s PR that updates the action to use Node.js 24 states that v5 had preliminary support for Node 24 but was by default still running on Node 20; it now runs on Node 24 by default. [2] Practical implication for workflows - If your workflow or custom runner environment was only compatible with the action running on Node 20, you should test again under the Node 24 runtime used by upload-artifact v5. (This follows directly from the v5 “BREAKING CHANGE”/runtime update language above.) [1][2] Notes - Other “breaking changes” reported by the community for upload-artifact@v4/v4.x (for example, hidden files handling) are separate from the Node 24 runtime switch described above; the sources above specifically cover the Node 24-related v5 change. [3] Citations:
Checar compatibilidade e inputs do
Also applies to: 292-292, 316-316, 345-345, 403-403, 458-458, 512-512, 540-540, 595-595 🤖 Prompt for AI Agents |
||
| with: | ||
| name: coverage-report-${{ github.run_id }} | ||
| path: coverage/ | ||
|
|
@@ -261,8 +261,8 @@ jobs: | |
| runs-on: ubuntu-latest | ||
| needs: quality | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/checkout@v5 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -289,7 +289,7 @@ jobs: | |
| --coverage.thresholds.branches=0 | ||
| --coverage.thresholds.statements=0 | ||
| - name: Upload Coverage Artifacts | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: full-coverage-report | ||
| path: coverage/ | ||
|
|
@@ -300,8 +300,8 @@ jobs: | |
| runs-on: ubuntu-latest | ||
| needs: quality | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/checkout@v5 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -313,7 +313,7 @@ jobs: | |
| run: npm run test:e2e:critical | ||
| - name: Upload E2E Report | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: playwright-report | ||
| path: playwright-report/ | ||
|
|
@@ -329,8 +329,8 @@ jobs: | |
| runs-on: ubuntu-latest | ||
| needs: build-gate | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/checkout@v5 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -342,7 +342,7 @@ jobs: | |
| run: npx playwright test e2e/flows/elite-ux-validation.spec.ts | ||
| - name: Upload Elite E2E Report | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: playwright-elite-report | ||
| path: playwright-report/ | ||
|
|
@@ -355,9 +355,9 @@ jobs: | |
| timeout-minutes: 10 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -400,7 +400,7 @@ jobs: | |
|
|
||
| - name: Upload ref-warning console snapshot | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: console-snapshot-ref-${{ github.run_id }} | ||
| path: | | ||
|
|
@@ -415,9 +415,9 @@ jobs: | |
| timeout-minutes: 10 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -455,7 +455,7 @@ jobs: | |
|
|
||
| - name: Upload hook coverage artifact | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: hooks-coverage | ||
| path: coverage/ | ||
|
|
@@ -468,9 +468,9 @@ jobs: | |
| timeout-minutes: 10 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -509,7 +509,7 @@ jobs: | |
|
|
||
| - name: Upload price-freshness coverage artifact | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: price-freshness-coverage | ||
| path: coverage/ | ||
|
|
@@ -522,9 +522,9 @@ jobs: | |
| timeout-minutes: 10 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -537,7 +537,7 @@ jobs: | |
|
|
||
| - name: Upload cloud-status coverage artifact | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: cloud-status-coverage | ||
| path: coverage/ | ||
|
|
@@ -550,9 +550,9 @@ jobs: | |
| timeout-minutes: 15 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
|
|
||
|
|
@@ -574,9 +574,9 @@ jobs: | |
| timeout-minutes: 20 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - uses: actions/setup-node@v4 | ||
| - uses: actions/setup-node@v6 | ||
| with: | ||
| node-version-file: '.nvmrc' | ||
| cache: npm | ||
|
|
@@ -592,7 +592,7 @@ jobs: | |
|
|
||
| - name: Upload Theme Validation Report | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| uses: actions/upload-artifact@v5 | ||
| with: | ||
| name: theme-validation-report | ||
| path: | | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🌐 Web query:
actions/checkout v5 breaking changes compared to v4💡 Result:
Compared to actions/checkout@v4, the main breaking change in actions/checkout@v5 is the required Node.js runtime and therefore your minimum GitHub Actions Runner version. 1) Node.js runtime update (breaking for self-hosted/older runners) - v5 updates the action to use the Node.js 24 runtime [1][2]. - The v5.0.0 release notes state this requires a minimum Actions Runner version of v2.327.1 to run [2][3]. 2) v5 docs/README guidance reflects the above - The action’s README/usage explicitly labels “Checkout v5” as supporting Node.js 24 and links it to the runner requirement [4]. What is not evidenced as “v4 → v5 breaking” beyond the runtime change - In the sources surfaced here, I do not see other documented behavioral-breaking changes specifically attributed to the v5 major bump (for example, no confirmed v4→v5 change to inputs like persist-credentials, fetch behavior, etc.). If you’re upgrading from v4 to v5, the practical checklist is: - Ensure your GitHub-hosted runner is already new enough, or for self-hosted runners upgrade to at least Actions Runner v2.327.1 [2][3]. - Bump the workflow reference from actions/checkout@v4 to actions/checkout@v5 [1][4].
Citations:
Garanta compatibilidade do runner com
actions/checkout@v5(.github/workflows/branch-protection-sentinel.yml:40)O breaking change relevante do
actions/checkout@v5vsv4é o runtime Node.js (Node 24), que exige GitHub Actions Runner ≥ v2.327.1; sem isso o step pode falhar e o sentinel deixar de auditar/rodar. Não há evidência nas fontes encontradas de mudança breaking especificamente emfetch-depthoupersist-credentials.🤖 Prompt for AI Agents