-
Notifications
You must be signed in to change notification settings - Fork 1
fix: comprehensive code-audit fixes (perf, concurrency, error-handling, security, tests, CI) #90
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
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 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -23,10 +23,12 @@ jobs: | |||||||||||||
| runs-on: ${{ matrix.runner }} | ||||||||||||||
| steps: | ||||||||||||||
| - uses: actions/checkout@v7 | ||||||||||||||
| with: | ||||||||||||||
| persist-credentials: false | ||||||||||||||
|
|
||||||||||||||
| - uses: actions/setup-go@v6 | ||||||||||||||
| with: | ||||||||||||||
| go-version: '1.26.x' | ||||||||||||||
| go-version: '1.26.5' | ||||||||||||||
| cache: true | ||||||||||||||
|
|
||||||||||||||
| - uses: actions/setup-node@v6 | ||||||||||||||
|
|
@@ -58,7 +60,7 @@ jobs: | |||||||||||||
| run: go run github.com/wailsapp/wails/v2/cmd/wails@v2.12.0 build -clean | ||||||||||||||
|
|
||||||||||||||
| - name: Sign Windows binaries | ||||||||||||||
| if: runner.os == 'Windows' && env.WINDOWS_SIGN_CERT != '' | ||||||||||||||
| if: runner.os == 'Windows' && secrets.WINDOWS_SIGN_CERT != '' | ||||||||||||||
|
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. 🎯 Functional Correctness | 🔴 Critical | ⚡ Quick win
actionlint confirms: the 🔧 Fix: use env instead of secrets in the if condition - name: Sign Windows binaries
- if: runner.os == 'Windows' && secrets.WINDOWS_SIGN_CERT != ''
+ if: runner.os == 'Windows' && env.WINDOWS_SIGN_CERT != ''
env:
WINDOWS_SIGN_CERT: ${{ secrets.WINDOWS_SIGN_CERT }}
WINDOWS_SIGN_CERT_PASSWORD: ${{ secrets.WINDOWS_SIGN_CERT_PASSWORD }}📝 Committable suggestion
Suggested change
🧰 Tools🪛 actionlint (1.7.12)[error] 63-63: context "secrets" is not allowed here. available contexts are "env", "github", "inputs", "job", "matrix", "needs", "runner", "steps", "strategy", "vars". see https://docs.github.com/en/actions/learn-github-actions/contexts#context-availability for more details (expression) 🤖 Prompt for AI AgentsSource: Linters/SAST tools |
||||||||||||||
| env: | ||||||||||||||
| WINDOWS_SIGN_CERT: ${{ secrets.WINDOWS_SIGN_CERT }} | ||||||||||||||
| WINDOWS_SIGN_CERT_PASSWORD: ${{ secrets.WINDOWS_SIGN_CERT_PASSWORD }} | ||||||||||||||
|
|
@@ -110,6 +112,8 @@ jobs: | |||||||||||||
| runs-on: ubuntu-latest | ||||||||||||||
| steps: | ||||||||||||||
| - uses: actions/checkout@v7 | ||||||||||||||
| with: | ||||||||||||||
| persist-credentials: false | ||||||||||||||
|
|
||||||||||||||
| - uses: actions/download-artifact@v8 | ||||||||||||||
| with: | ||||||||||||||
|
|
||||||||||||||
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.
🔒 Security & Privacy | 🟠 Major | ⚖️ Poor tradeoff
Pinning to exact
1.26.5contradicts the documented auto-patch strategy.docs/SECURITY-NOTES.md:10-14states CI/release builds usego-version: '1.26'/'1.26.x'to automatically pull each Go security patch. Pinning to the exact1.26.5means future patches (e.g., 1.26.6) won't be picked up without a manual workflow update, degrading the security posture the docs describe. Either update the docs to reflect the intentional pinning strategy, or use'1.26.x'to retain auto-patching.Also applies to: 56-56
🤖 Prompt for AI Agents