-
Notifications
You must be signed in to change notification settings - Fork 0
chore: sync plus with upstream main (upstream-preferred conflicts) #112
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
base: plus
Are you sure you want to change the base?
Changes from all commits
23ad7f8
b2d7719
76ff70e
b7e167b
de1e506
731a82e
bc74536
93c72de
e456de0
258867b
b4b297a
1d031a4
f1077ef
d4ad7ff
4c6c321
36b729d
41fd9de
28bb2c6
6048e90
7217b52
b789b68
6f2d328
1834b97
f368a1b
4c1c870
3fa04a3
984fa85
3ab4139
5e5bb3b
5ac4dd6
2894ecc
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 | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,142 @@ | ||||||||||||||||||||||||||||
| name: CI | ||||||||||||||||||||||||||||
|
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. P2: This Prompt for AI agentsThere 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. P2: Declare least-privilege workflow permissions, such as Prompt for AI agents
Suggested change
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. P2: Set Prompt for AI agentsThere 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. P2: Pin every action reference to a reviewed full commit SHA, including Prompt for AI agents |
||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||
| on: | ||||||||||||||||||||||||||||
| push: | ||||||||||||||||||||||||||||
| branches: | ||||||||||||||||||||||||||||
| - main | ||||||||||||||||||||||||||||
| pull_request: | ||||||||||||||||||||||||||||
| types: | ||||||||||||||||||||||||||||
| - 'synchronize' | ||||||||||||||||||||||||||||
| - 'opened' | ||||||||||||||||||||||||||||
|
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. P2: Add the Prompt for AI agents
Suggested change
|
||||||||||||||||||||||||||||
| branches: | ||||||||||||||||||||||||||||
| - '**' | ||||||||||||||||||||||||||||
|
Comment on lines
+7
to
+12
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 | 🟡 Minor | ⚡ Quick win Run CI when a pull request is reopened.
Proposed fix - 'synchronize'
- 'opened'
+ - 'reopened'📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||
| concurrency: | ||||||||||||||||||||||||||||
| group: ${{ github.workflow }}-${{ github.ref }} | ||||||||||||||||||||||||||||
| cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | ||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||
| jobs: | ||||||||||||||||||||||||||||
| setup: | ||||||||||||||||||||||||||||
| runs-on: ubuntu-latest | ||||||||||||||||||||||||||||
| timeout-minutes: 30 | ||||||||||||||||||||||||||||
|
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. P2: All CI jobs here use Prompt for AI agents
Suggested change
|
||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||
| - name: Get Latest | ||||||||||||||||||||||||||||
|
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. P3: The Prompt for AI agents |
||||||||||||||||||||||||||||
| uses: actions/setup-node@v6 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| node-version: 22.x | ||||||||||||||||||||||||||||
| - uses: actions/checkout@v5 | ||||||||||||||||||||||||||||
| - name: Restore Dependency Cache | ||||||||||||||||||||||||||||
| uses: actions/cache@v4 | ||||||||||||||||||||||||||||
|
Comment on lines
+24
to
+29
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. 🔒 Security & Privacy | 🟠 Major | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
# Expect no output after every action is pinned to a 40-character commit SHA.
rg -nP '^\s*uses:\s+[^@\s]+@(?!(?:[0-9a-f]{40})(?:\s|$))' .github/workflows/ci.ymlRepository: Cap-go/capacitor-plus Length of output: 444 🏁 Script executed: #!/bin/bash
set -euo pipefail
# Inspect the complete workflow action list and the referenced tag forms.
rg -n '^\s*uses:' .github/workflows/ci.ymlRepository: Cap-go/capacitor-plus Length of output: 444 Pin every action to a full commit SHA. Replace the mutable 🧰 Tools🪛 zizmor (1.29.0)[warning] 27-27: credential persistence through GitHub Actions artifacts (artipacked): does not set persist-credentials: false (artipacked) [error] 24-24: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy) (unpinned-uses) [error] 27-27: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy) (unpinned-uses) [error] 29-29: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy) (unpinned-uses) 🤖 Prompt for AI AgentsSource: Linters/SAST tools |
||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| path: ~/.npm | ||||||||||||||||||||||||||||
| key: ${{ runner.OS }}-dependencies-cache-${{ hashFiles('**/package.json') }} | ||||||||||||||||||||||||||||
|
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. P1: Merging this sync replaces the repo's bun-based CI with upstream's npm-based CI, which is incompatible with this repository's dependency management. The repo only has Prompt for AI agentsThere 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. P2: The cache key is derived only from Prompt for AI agents |
||||||||||||||||||||||||||||
| lint: | ||||||||||||||||||||||||||||
| runs-on: macos-15 | ||||||||||||||||||||||||||||
| timeout-minutes: 30 | ||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||
| - uses: actions/setup-node@v6 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| node-version: 22.x | ||||||||||||||||||||||||||||
| - uses: actions/checkout@v5 | ||||||||||||||||||||||||||||
| - name: Restore Dependency Cache | ||||||||||||||||||||||||||||
| uses: actions/cache@v4 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| path: ~/.npm | ||||||||||||||||||||||||||||
| key: ${{ runner.OS }}-dependencies-cache-${{ hashFiles('**/package.json') }} | ||||||||||||||||||||||||||||
| - run: npm install | ||||||||||||||||||||||||||||
| - run: brew install swiftlint | ||||||||||||||||||||||||||||
| - run: npm run lint | ||||||||||||||||||||||||||||
| test-cli: | ||||||||||||||||||||||||||||
| runs-on: macos-15 | ||||||||||||||||||||||||||||
| timeout-minutes: 30 | ||||||||||||||||||||||||||||
| needs: | ||||||||||||||||||||||||||||
| - setup | ||||||||||||||||||||||||||||
| - lint | ||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||
| - uses: actions/setup-node@v6 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| node-version: 22.x | ||||||||||||||||||||||||||||
| - uses: actions/checkout@v5 | ||||||||||||||||||||||||||||
| - name: Restore Dependency Cache | ||||||||||||||||||||||||||||
| uses: actions/cache@v4 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| path: ~/.npm | ||||||||||||||||||||||||||||
| key: ${{ runner.OS }}-dependencies-cache-${{ hashFiles('**/package.json') }} | ||||||||||||||||||||||||||||
| - run: npm install | ||||||||||||||||||||||||||||
| - run: npm run build | ||||||||||||||||||||||||||||
| working-directory: ./cli | ||||||||||||||||||||||||||||
| - run: npm test | ||||||||||||||||||||||||||||
| working-directory: ./cli | ||||||||||||||||||||||||||||
| test-core: | ||||||||||||||||||||||||||||
| runs-on: ubuntu-latest | ||||||||||||||||||||||||||||
| timeout-minutes: 30 | ||||||||||||||||||||||||||||
| needs: | ||||||||||||||||||||||||||||
| - setup | ||||||||||||||||||||||||||||
| - lint | ||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||
| - uses: actions/setup-node@v6 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| node-version: 22.x | ||||||||||||||||||||||||||||
| - uses: actions/checkout@v5 | ||||||||||||||||||||||||||||
| - name: Restore Dependency Cache | ||||||||||||||||||||||||||||
| uses: actions/cache@v4 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| path: ~/.npm | ||||||||||||||||||||||||||||
| key: ${{ runner.OS }}-dependencies-cache-${{ hashFiles('**/package.json') }} | ||||||||||||||||||||||||||||
| - run: npm install | ||||||||||||||||||||||||||||
| - run: npm run build | ||||||||||||||||||||||||||||
| working-directory: ./core | ||||||||||||||||||||||||||||
| - run: npm test | ||||||||||||||||||||||||||||
| working-directory: ./core | ||||||||||||||||||||||||||||
| test-ios: | ||||||||||||||||||||||||||||
| runs-on: macos-15 | ||||||||||||||||||||||||||||
| timeout-minutes: 30 | ||||||||||||||||||||||||||||
| needs: | ||||||||||||||||||||||||||||
| - setup | ||||||||||||||||||||||||||||
| - lint | ||||||||||||||||||||||||||||
| strategy: | ||||||||||||||||||||||||||||
| matrix: | ||||||||||||||||||||||||||||
| xcode: | ||||||||||||||||||||||||||||
| - /Applications/Xcode_26.0.app | ||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||
| - run: sudo xcode-select --switch ${{ matrix.xcode }} | ||||||||||||||||||||||||||||
| - run: xcrun simctl list > /dev/null | ||||||||||||||||||||||||||||
| - run: xcodebuild -downloadPlatform iOS | ||||||||||||||||||||||||||||
| - uses: actions/setup-node@v6 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| node-version: 22.x | ||||||||||||||||||||||||||||
| - uses: actions/checkout@v5 | ||||||||||||||||||||||||||||
| - name: Restore Dependency Cache | ||||||||||||||||||||||||||||
| uses: actions/cache@v4 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| path: ~/.npm | ||||||||||||||||||||||||||||
| key: ${{ runner.OS }}-dependencies-cache-${{ hashFiles('**/package.json') }} | ||||||||||||||||||||||||||||
| - run: npm install | ||||||||||||||||||||||||||||
| - run: npm run verify | ||||||||||||||||||||||||||||
| working-directory: ./ios | ||||||||||||||||||||||||||||
| - name: Validate native podspec | ||||||||||||||||||||||||||||
| run: sh ./scripts/native-podspec.sh lint | ||||||||||||||||||||||||||||
| test-android: | ||||||||||||||||||||||||||||
| runs-on: ubuntu-latest | ||||||||||||||||||||||||||||
| timeout-minutes: 30 | ||||||||||||||||||||||||||||
| needs: | ||||||||||||||||||||||||||||
| - setup | ||||||||||||||||||||||||||||
| - lint | ||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||
| - uses: actions/setup-node@v6 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| node-version: 22.x | ||||||||||||||||||||||||||||
| - name: set up JDK 21 | ||||||||||||||||||||||||||||
| uses: actions/setup-java@v5 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| java-version: '21' | ||||||||||||||||||||||||||||
| distribution: 'zulu' | ||||||||||||||||||||||||||||
| - uses: actions/checkout@v5 | ||||||||||||||||||||||||||||
| - name: Restore Dependency Cache | ||||||||||||||||||||||||||||
| uses: actions/cache@v4 | ||||||||||||||||||||||||||||
| with: | ||||||||||||||||||||||||||||
| path: ~/.npm | ||||||||||||||||||||||||||||
| key: ${{ runner.OS }}-dependencies-cache-${{ hashFiles('**/package.json') }} | ||||||||||||||||||||||||||||
| - run: npm install | ||||||||||||||||||||||||||||
| - run: npm run verify | ||||||||||||||||||||||||||||
| working-directory: ./android | ||||||||||||||||||||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,8 +3,70 @@ | |
| All notable changes to this project will be documented in this file. | ||
|
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. P3: Use Prompt for AI agents |
||
| See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. | ||
|
|
||
| ## [8.3.12](https://github.com/Cap-go/capacitor-plus/compare/8.3.11...8.3.12) (2026-08-13) | ||
| # [8.5.0](https://github.com/ionic-team/capacitor/compare/8.4.2...8.5.0) (2026-07-31) | ||
|
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. P2: The upstream-preferred merge moved upstream-only releases (8.5.0, 8.4.2, 8.4.1, 8.4.0) to the top of the plus CHANGELOG and dropped the plus 8.3.12 heading. Consumers of @capacitor-plus now see 8.5.0 as the latest release, which plus never published, with links resolving to ionic-team/capacitor. Keep the plus release line on top and re-append the upstream entries below it (with the 8.3.12 entry restored). Prompt for AI agents |
||
|
|
||
| ### Bug Fixes | ||
|
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. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win Resolve the repeated MD001 heading violations. The release sections use
This finding comes from markdownlint-cli2 warning MD001. 🧰 Tools🪛 markdownlint-cli2 (0.23.2)[warning] 8-8: Heading levels should only increment by one level at a time (MD001, heading-increment) 📍 Affects 4 files
🤖 Prompt for AI AgentsSource: Linters/SAST tools |
||
|
|
||
| - **cli:** support TypeScript 7 when loading capacitor.config.ts ([#8534](https://github.com/ionic-team/capacitor/issues/8534)) ([4c1c870](https://github.com/ionic-team/capacitor/commit/4c1c8709413b9c19b008c99122ca330cc3c90e6f)) | ||
|
|
||
| ### Features | ||
|
|
||
| - **cli:** add migrator functionality for adopting UIScene ([#8544](https://github.com/ionic-team/capacitor/issues/8544)) ([984fa85](https://github.com/ionic-team/capacitor/commit/984fa85ba0adab0aacf895aed6323bf4b503dccb)) | ||
| - **ios:** UIScene Support ([#8536](https://github.com/ionic-team/capacitor/issues/8536)) ([3fa04a3](https://github.com/ionic-team/capacitor/commit/3fa04a357c92af34cd6fccb8124791963804a9dc)) | ||
|
|
||
| ## [8.4.2](https://github.com/ionic-team/capacitor/compare/8.4.1...8.4.2) (2026-07-14) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
| - **android:** explicitly grant URI permissions for image capture intent ([#8526](https://github.com/ionic-team/capacitor/issues/8526)) ([6f2d328](https://github.com/ionic-team/capacitor/commit/6f2d3283897a375d09ca9ec8784a9f0d65f0a530)) | ||
|
|
||
| ## [8.4.1](https://github.com/ionic-team/capacitor/compare/8.4.0...8.4.1) (2026-06-19) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
| - **cli:** make SPM dependency patch work on prereleases ([#8508](https://github.com/ionic-team/capacitor/issues/8508)) ([6048e90](https://github.com/ionic-team/capacitor/commit/6048e90171afa0229a3c25b52a23c377c6bb804c)) | ||
| - **cli:** patch Capacitor SPM dependency version in plugins ([#8492](https://github.com/ionic-team/capacitor/issues/8492)) ([28bb2c6](https://github.com/ionic-team/capacitor/commit/28bb2c687069dfdd6aa7abc866004a1c6388d103)) | ||
|
|
||
| # [8.4.0](https://github.com/ionic-team/capacitor/compare/8.3.4...8.4.0) (2026-06-02) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
| - **android:** show only the requested system bar ([#8480](https://github.com/ionic-team/capacitor/issues/8480)) ([4c6c321](https://github.com/ionic-team/capacitor/commit/4c6c3219afb5223211e857457e46283c37eb9424)) | ||
| - **cli:** revert live reload config on failure ([#8485](https://github.com/ionic-team/capacitor/issues/8485)) ([1d031a4](https://github.com/ionic-team/capacitor/commit/1d031a4abec2c793079ba8897ad2e40c4cc6c7f9)) | ||
| - **SystemBars:** make `safe-area-inset-x` available on API <= 34 ([#8424](https://github.com/ionic-team/capacitor/issues/8424)) ([e456de0](https://github.com/ionic-team/capacitor/commit/e456de083e19644f484bec5a5359cb67960ac8bc)) | ||
| - **SystemBars:** respect `insetsHandling` disable ([#8481](https://github.com/ionic-team/capacitor/issues/8481)) ([d4ad7ff](https://github.com/ionic-team/capacitor/commit/d4ad7ffe39daf66e0cfc63af9028d5c05543bde7)) | ||
|
|
||
| ### Features | ||
|
|
||
| - add method getDouble to plugin config ([#7638](https://github.com/ionic-team/capacitor/issues/7638)) ([93c72de](https://github.com/ionic-team/capacitor/commit/93c72de40a2ec4c78b33659250cb08340083088e)) | ||
| - **cli:** add experimental packageOptions ([#8471](https://github.com/ionic-team/capacitor/issues/8471)) ([258867b](https://github.com/ionic-team/capacitor/commit/258867b7bf37b1837b99b02ec9638e5a6df08d97)) | ||
| - **cli:** capture ios_package_manager in telemetry ([#8482](https://github.com/ionic-team/capacitor/issues/8482)) ([b4b297a](https://github.com/ionic-team/capacitor/commit/b4b297a52f8732659662d5e5aaeff81c0f7d9835)) | ||
|
|
||
| ## [8.3.4](https://github.com/ionic-team/capacitor/compare/8.3.3...8.3.4) (2026-05-12) | ||
|
|
||
| **Note:** Version bump only for package capacitor | ||
|
|
||
| ## [8.3.3](https://github.com/ionic-team/capacitor/compare/8.3.2...8.3.3) (2026-05-08) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
| - **cli:** copy plugin files in CocoaPods projects ([#8467](https://github.com/ionic-team/capacitor/issues/8467)) ([b2d7719](https://github.com/ionic-team/capacitor/commit/b2d771926a180e60deea31992d7d4abcd5ca3bc7)) | ||
|
|
||
| ## [8.3.2](https://github.com/ionic-team/capacitor/compare/8.3.1...8.3.2) (2026-05-07) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
| - **cli:** add cSettings support for compiler flags in generated Package.swift ([#8448](https://github.com/ionic-team/capacitor/issues/8448)) ([0bd0676](https://github.com/ionic-team/capacitor/commit/0bd0676315c5fd77e50312dd7b5bf4990dcbd7d0)) | ||
| - **cli:** add system framework and weak framework support in SPM Package.swift ([#8447](https://github.com/ionic-team/capacitor/issues/8447)) ([3232f0f](https://github.com/ionic-team/capacitor/commit/3232f0fe1d9811b0b5c500e3dc05cb8a250177f8)) | ||
| - **cli:** correct Capacitor plugin SPM compat check ([#8440](https://github.com/ionic-team/capacitor/issues/8440)) ([e5ccc45](https://github.com/ionic-team/capacitor/commit/e5ccc451dda27d56bca824ed644bd20fe4d988cb)) | ||
| - **cli:** generate binaryTarget entries for custom xcframeworks in Package.swift ([#8445](https://github.com/ionic-team/capacitor/issues/8445)) ([1f7e33f](https://github.com/ionic-team/capacitor/commit/1f7e33fca43d183332ec19d22b0d75ef81d8cc6d)) | ||
| - **cli:** generate resource entries in Package.swift ([#8455](https://github.com/ionic-team/capacitor/issues/8455)) ([790bd27](https://github.com/ionic-team/capacitor/commit/790bd27123497111984227010c3162cec94a108e)) | ||
| - **cli:** handle Cordova plugins without iOS source files ([#8443](https://github.com/ionic-team/capacitor/issues/8443)) ([0da130e](https://github.com/ionic-team/capacitor/commit/0da130eb7a861bee4e2c35bc0aac53ba9c983fc3)) | ||
| - **cli:** link plugin dependencies in Package.swift ([#8457](https://github.com/ionic-team/capacitor/issues/8457)) ([b3c769e](https://github.com/ionic-team/capacitor/commit/b3c769e856c826b1174518877cf86ac7ce73bf09)) | ||
| - **ios:** support Cordova plugins with Package.swift ([#8438](https://github.com/ionic-team/capacitor/issues/8438)) ([139943b](https://github.com/ionic-team/capacitor/commit/139943b0c05fddb2d1ce2d6f468800fddf17b4cf)) | ||
| - **SystemBars:** avoid extra view padding on API <= 34 ([#8439](https://github.com/ionic-team/capacitor/issues/8439)) ([5b135a7](https://github.com/ionic-team/capacitor/commit/5b135a70217be560e7176c8d5b514cc92ed3e4e4)) | ||
|
|
||
| ## [8.3.1](https://github.com/ionic-team/capacitor/compare/8.3.0...8.3.1) (2026-04-16) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
|
|
||
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 | ⚡ Quick win
Limit token access and disable persisted checkout credentials.
The workflow has no explicit
permissionsblock. Each checkout also persists its token in local Git configuration. The laternpm installcommands run before checkout cleanup. Set read-only repository permissions and addpersist-credentials: falseto every checkout step.Proposed fix
Also applies to: 27-27, 40-40, 59-59, 80-80, 108-108, 134-134
🧰 Tools
🪛 zizmor (1.29.0)
[warning] 1-143: overly broad permissions (excessive-permissions): default permissions used due to no permissions: block
(excessive-permissions)
🤖 Prompt for AI Agents
Source: Linters/SAST tools