Skip to content

add CI and other components for tests#37

Closed
Ferret-san wants to merge 1 commit into
mainfrom
add-ci
Closed

add CI and other components for tests#37
Ferret-san wants to merge 1 commit into
mainfrom
add-ci

Conversation

@Ferret-san

Copy link
Copy Markdown
Contributor

Overview

Adds workflows for testing and releasing new versions

@Ferret-san
Ferret-san requested review from Copilot and sysrex November 7, 2025 18:02
@github-actions

github-actions Bot commented Nov 7, 2025

Copy link
Copy Markdown

⚠️ Deprecation Warning: The deny-licenses option is deprecated for possible removal in the next major release. For more information, see issue 997.

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
actions/actions/checkout 4.*.* 🟢 6.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 67 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 6
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Packaging⚠️ -1packaging workflow not detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ -1internal error: error during GetBranch(releases/v2): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 8SAST tool detected but not run on all commits
actions/actions/setup-go 5.*.* 🟢 6
Details
CheckScoreReason
Maintained🟢 57 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 10all changesets reviewed
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Security-Policy🟢 9security policy file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 9SAST tool is not run on all commits -- score normalized to 9
actions/actions/upload-artifact 3.*.* 🟢 5.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Packaging⚠️ -1packaging workflow not detected
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ 1dependency not pinned by hash detected -- score normalized to 1
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST🟢 9SAST tool detected but not run on all commits
Vulnerabilities🟢 64 existing vulnerabilities detected
actions/aquasecurity/trivy-action master 🟢 5.8
Details
CheckScoreReason
Maintained🟢 1011 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 22/23 approved changesets -- score normalized to 9
Binary-Artifacts🟢 10no binaries found in the repo
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Security-Policy⚠️ 0security policy file not detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Vulnerabilities🟢 100 existing vulnerabilities detected
actions/benchmark-action/github-action-benchmark 1.*.* 🟢 3.8
Details
CheckScoreReason
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 3Found 9/30 approved changesets -- score normalized to 3
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Maintained🟢 55 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 5
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Packaging⚠️ -1packaging workflow not detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Security-Policy⚠️ 0security policy file not detected
Vulnerabilities⚠️ 010 existing vulnerabilities detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/codecov/codecov-action 4.*.* 🟢 7.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 1013 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Dependency-Update-Tool🟢 10update tool detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging⚠️ -1packaging workflow not detected
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
License🟢 10license file detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Vulnerabilities🟢 100 existing vulnerabilities detected
Security-Policy🟢 10security policy file detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
CI-Tests🟢 1030 out of 30 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 13 contributing companies or organizations
actions/docker/build-push-action 5.*.* 🟢 5.4
Details
CheckScoreReason
Code-Review🟢 7Found 7/9 approved changesets -- score normalized to 7
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 106 commit(s) and 7 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 9security policy file detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Packaging🟢 10packaging workflow detected
Vulnerabilities⚠️ 010 existing vulnerabilities detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/docker/login-action 3.*.* 🟢 5.6
Details
CheckScoreReason
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Security-Policy🟢 9security policy file detected
Maintained🟢 1030 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
Packaging⚠️ -1packaging workflow not detected
Code-Review🟢 3Found 1/3 approved changesets -- score normalized to 3
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Vulnerabilities🟢 37 existing vulnerabilities detected
SAST🟢 9SAST tool detected but not run on all commits
actions/docker/metadata-action 5.*.* 🟢 5.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 9 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 9security policy file detected
Code-Review⚠️ 2Found 1/4 approved changesets -- score normalized to 2
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Binary-Artifacts🟢 10no binaries found in the repo
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Packaging🟢 10packaging workflow detected
Vulnerabilities⚠️ 28 existing vulnerabilities detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/docker/setup-buildx-action 3.*.* 🟢 5.1
Details
CheckScoreReason
Maintained🟢 1013 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review⚠️ 1Found 1/6 approved changesets -- score normalized to 1
Binary-Artifacts🟢 10no binaries found in the repo
Security-Policy🟢 9security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Packaging🟢 10packaging workflow detected
Vulnerabilities⚠️ 28 existing vulnerabilities detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/github/codeql-action/upload-sarif 3.*.* UnknownUnknown
actions/golangci/golangci-lint-action 3.*.* 🟢 6.2
Details
CheckScoreReason
Code-Review🟢 3Found 1/3 approved changesets -- score normalized to 3
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Binary-Artifacts🟢 10no binaries found in the repo
Packaging⚠️ -1packaging workflow not detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 10security policy file detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities🟢 91 existing vulnerabilities detected
SAST🟢 10SAST tool is run on all commits
actions/securego/gosec master 🟢 6.4
Details
CheckScoreReason
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Maintained🟢 1030 commit(s) and 11 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 5Found 7/13 approved changesets -- score normalized to 5
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Security-Policy⚠️ 0security policy file not detected
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
CII-Best-Practices🟢 5badge detected: Passing
Packaging⚠️ -1packaging workflow not detected
Vulnerabilities🟢 100 existing vulnerabilities detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
SAST🟢 10SAST tool is run on all commits
actions/actions/checkout 4.*.* 🟢 6.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 67 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 6
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Packaging⚠️ -1packaging workflow not detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ -1internal error: error during GetBranch(releases/v2): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 8SAST tool detected but not run on all commits
actions/actions/setup-go 5.*.* 🟢 6
Details
CheckScoreReason
Maintained🟢 57 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 10all changesets reviewed
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Security-Policy🟢 9security policy file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 9SAST tool is not run on all commits -- score normalized to 9
actions/github/codeql-action/analyze 3.*.* UnknownUnknown
actions/github/codeql-action/autobuild 3.*.* UnknownUnknown
actions/github/codeql-action/init 3.*.* UnknownUnknown
actions/actions/checkout 4.*.* 🟢 6.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 67 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 6
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Packaging⚠️ -1packaging workflow not detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ -1internal error: error during GetBranch(releases/v2): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 8SAST tool detected but not run on all commits
actions/actions/dependency-review-action 4.*.* 🟢 7.7
Details
CheckScoreReason
Security-Policy🟢 9security policy file detected
Maintained🟢 1030 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Binary-Artifacts🟢 10no binaries found in the repo
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Code-Review🟢 10all changesets reviewed
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 6branch protection is not maximal on development and all release branches
Vulnerabilities🟢 64 existing vulnerabilities detected
SAST🟢 10SAST tool is run on all commits
actions/actions/delete-package-versions 4.*.* 🟢 4.2
Details
CheckScoreReason
Maintained⚠️ 00 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Code-Review🟢 8Found 4/5 approved changesets -- score normalized to 8
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ 1branch protection is not maximal on development and all release branches
SAST⚠️ 1SAST tool is not run on all commits -- score normalized to 1
Vulnerabilities⚠️ 013 existing vulnerabilities detected
actions/snok/container-retention-policy 2.*.* 🟢 5.1
Details
CheckScoreReason
Code-Review⚠️ 0Found 2/25 approved changesets -- score normalized to 0
Binary-Artifacts🟢 10no binaries found in the repo
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Maintained🟢 1013 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Security-Policy⚠️ 0security policy file not detected
Vulnerabilities🟢 91 existing vulnerabilities detected
Packaging🟢 10packaging workflow detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/actions/checkout 4.*.* 🟢 6.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 67 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 6
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Packaging⚠️ -1packaging workflow not detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ -1internal error: error during GetBranch(releases/v2): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 8SAST tool detected but not run on all commits
actions/actions/setup-go 5.*.* 🟢 6
Details
CheckScoreReason
Maintained🟢 57 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 10all changesets reviewed
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Security-Policy🟢 9security policy file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 9SAST tool is not run on all commits -- score normalized to 9
actions/actions/upload-artifact 3.*.* 🟢 5.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Packaging⚠️ -1packaging workflow not detected
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ 1dependency not pinned by hash detected -- score normalized to 1
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
SAST🟢 9SAST tool detected but not run on all commits
Vulnerabilities🟢 64 existing vulnerabilities detected
actions/actions/checkout 4.*.* 🟢 6.8
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 67 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 6
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Pinned-Dependencies🟢 3dependency not pinned by hash detected -- score normalized to 3
Packaging⚠️ -1packaging workflow not detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection⚠️ -1internal error: error during GetBranch(releases/v2): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 8SAST tool detected but not run on all commits
actions/actions/setup-go 5.*.* 🟢 6
Details
CheckScoreReason
Maintained🟢 57 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 10all changesets reviewed
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Security-Policy🟢 9security policy file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST🟢 9SAST tool is not run on all commits -- score normalized to 9
actions/docker/build-push-action 5.*.* 🟢 5.4
Details
CheckScoreReason
Code-Review🟢 7Found 7/9 approved changesets -- score normalized to 7
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 106 commit(s) and 7 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 9security policy file detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Packaging🟢 10packaging workflow detected
Vulnerabilities⚠️ 010 existing vulnerabilities detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/docker/login-action 3.*.* 🟢 5.6
Details
CheckScoreReason
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Security-Policy🟢 9security policy file detected
Maintained🟢 1030 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
Packaging⚠️ -1packaging workflow not detected
Code-Review🟢 3Found 1/3 approved changesets -- score normalized to 3
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Vulnerabilities🟢 37 existing vulnerabilities detected
SAST🟢 9SAST tool detected but not run on all commits
actions/docker/metadata-action 5.*.* 🟢 5.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 9 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 9security policy file detected
Code-Review⚠️ 2Found 1/4 approved changesets -- score normalized to 2
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Binary-Artifacts🟢 10no binaries found in the repo
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Packaging🟢 10packaging workflow detected
Vulnerabilities⚠️ 28 existing vulnerabilities detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/docker/setup-buildx-action 3.*.* 🟢 5.1
Details
CheckScoreReason
Maintained🟢 1013 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review⚠️ 1Found 1/6 approved changesets -- score normalized to 1
Binary-Artifacts🟢 10no binaries found in the repo
Security-Policy🟢 9security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Packaging🟢 10packaging workflow detected
Vulnerabilities⚠️ 28 existing vulnerabilities detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/docker/setup-qemu-action 3.*.* 🟢 4.7
Details
CheckScoreReason
Security-Policy🟢 9security policy file detected
Code-Review🟢 7Found 5/7 approved changesets -- score normalized to 7
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 54 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 5
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 011 existing vulnerabilities detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
actions/softprops/action-gh-release 1.*.* 🟢 5.2
Details
CheckScoreReason
Packaging⚠️ -1packaging workflow not detected
Code-Review⚠️ 2Found 2/9 approved changesets -- score normalized to 2
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 1024 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies🟢 10all dependencies are pinned
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Security-Policy⚠️ 0security policy file not detected
Vulnerabilities🟢 100 existing vulnerabilities detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0

Scanned Files

  • .github/workflows/ci.yml
  • .github/workflows/codeql.yml
  • .github/workflows/dependency-review.yml
  • .github/workflows/ghcr-cleanup.yml
  • .github/workflows/integration.yml
  • .github/workflows/release copy.yml

@github-advanced-security

Copy link
Copy Markdown
Contributor

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

Comment thread .github/workflows/ci.yml
Comment on lines +18 to +36
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: ${{ env.GO_VERSION }}
cache: true

- name: Run golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLANGCI_LINT_VERSION }}
args: --timeout=5m

test:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI 9 months ago

To resolve the issue, an explicit permissions block should be added to the workflow, specifying the minimum required permissions for the jobs. Since none of the jobs seem to modify repository contents or create issues/pull requests (based on the provided code), starting with:

permissions:
  contents: read

at the root level (top of the workflow) is advised. This will restrict the GITHUB_TOKEN to read-only access to repository contents for all jobs unless a job overrides it with its own permissions block.

  • Add the following block at the top of .github/workflows/ci.yml, after the workflow name definition (after line 1):
    permissions:
      contents: read
  • If in future a job needs increased permissions, you can override at the job level as needed.

No additional imports or dependencies are required.

Suggested changeset 1
.github/workflows/ci.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1,4 +1,6 @@
 name: CI
+permissions:
+  contents: read
 
 on:
   push:
EOF
@@ -1,4 +1,6 @@
name: CI
permissions:
contents: read

on:
push:
Copilot is powered by AI and may make mistakes. Always verify output.
Comment thread .github/workflows/ci.yml
cache: true

- name: Run golangci-lint
uses: golangci/golangci-lint-action@v3

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'CI' step
Uses Step
uses 'golangci/golangci-lint-action' with ref 'v3', not a pinned commit hash
Comment thread .github/workflows/ci.yml
Comment on lines +37 to +77
name: Test
runs-on: ubuntu-latest
strategy:
matrix:
go-version: ['1.20', '1.21', '1.22']
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: ${{ matrix.go-version }}
cache: true

- name: Install dependencies
run: go mod download

- name: Run tests with coverage
run: |
go test -v -race -coverprofile=coverage.txt -covermode=atomic ./...
go test -v -race ./... -json > test-results.json

- name: Upload coverage to Codecov
if: matrix.go-version == '1.21'
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ./coverage.txt
flags: unittests
name: codecov-umbrella
fail_ci_if_error: false

- name: Upload test results
if: always()
uses: actions/upload-artifact@v3
with:
name: test-results-${{ matrix.go-version }}
path: test-results.json

build:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI 9 months ago

To fix the problem, we should add a permissions block with the minimum permissions needed to the workflow. Since none of the jobs appear to require write access (e.g., they don't push to the repo, comment on issues/PRs, or update release assets), the minimal recommended permissions would be contents: read at the workflow (root) level: this ensures all jobs use the most restrictive set unless they need something broader. The best way is to insert the explicit block just after name: CI, before any job or workflow triggers. No imports or extra steps are needed. Only a small change at the top of .github/workflows/ci.yml is required.

Suggested changeset 1
.github/workflows/ci.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1,4 +1,6 @@
 name: CI
+permissions:
+  contents: read
 
 on:
   push:
EOF
@@ -1,4 +1,6 @@
name: CI
permissions:
contents: read

on:
push:
Copilot is powered by AI and may make mistakes. Always verify output.
Comment thread .github/workflows/ci.yml

- name: Upload coverage to Codecov
if: matrix.go-version == '1.21'
uses: codecov/codecov-action@v4

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'CI' step
Uses Step
uses 'codecov/codecov-action' with ref 'v4', not a pinned commit hash
Comment thread .github/workflows/ci.yml
Comment on lines +78 to +108
name: Build
runs-on: ubuntu-latest
strategy:
matrix:
os: [linux]
arch: [amd64, arm64]
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: ${{ env.GO_VERSION }}
cache: true

- name: Build binary
env:
GOOS: ${{ matrix.os }}
GOARCH: ${{ matrix.arch }}
run: |
go build -v -o da-server-${{ matrix.os }}-${{ matrix.arch }} ./cmd/da-server
chmod +x da-server-${{ matrix.os }}-${{ matrix.arch }}

- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: da-server-${{ matrix.os }}-${{ matrix.arch }}
path: da-server-${{ matrix.os }}-${{ matrix.arch }}

integration-test:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
Comment thread .github/workflows/ci.yml
path: benchmark-results.txt

- name: Store benchmark results
uses: benchmark-action/github-action-benchmark@v1

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'CI' step
Uses Step
uses 'benchmark-action/github-action-benchmark' with ref 'v1', not a pinned commit hash
runs-on: ubuntu-latest
steps:
- name: Delete PR images older than 30 days
uses: snok/container-retention-policy@v2

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Cleanup GHCR Packages' step
Uses Step
uses 'snok/container-retention-policy' with ref 'v2', not a pinned commit hash
Comment on lines +12 to +84
name: Integration Test with Localestia
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.21'
cache: true

- name: Start Localestia
run: |
# Pull and run localestia container
docker run -d \
--name localestia \
-p 26658:26658 \
-p 9090:9090 \
ghcr.io/celestiaorg/localestia:latest

# Wait for localestia to be ready
echo "Waiting for Localestia to start..."
for i in {1..60}; do
if curl -s http://localhost:26658/status > /dev/null 2>&1; then
echo "Localestia is ready!"
break
fi
echo "Waiting... ($i/60)"
sleep 2
done

# Get auth token from container
export AUTH_TOKEN=$(docker exec localestia cat /home/celestia/.celestia-light/auth_token)
echo "AUTH_TOKEN=${AUTH_TOKEN}" >> $GITHUB_ENV

- name: Build DA Server
run: |
go build -v -o da-server ./cmd/da-server

- name: Run DA Server Tests
env:
CELESTIA_SERVER: http://localhost:26658
CELESTIA_AUTH_TOKEN: ${{ env.AUTH_TOKEN }}
CELESTIA_NAMESPACE: "0000000000000000000000000000000000000000000000000000000000000000"
run: |
# Start DA server in background
./da-server \
--celestia.server=$CELESTIA_SERVER \
--celestia.auth-token=$CELESTIA_AUTH_TOKEN \
--celestia.namespace=$CELESTIA_NAMESPACE \
--addr=127.0.0.1 \
--port=3100 &

DA_SERVER_PID=$!
echo "DA Server PID: $DA_SERVER_PID"

# Wait for DA server to be ready
sleep 5

# Run integration tests
go test -v -tags=integration ./test/integration/...

# Cleanup
kill $DA_SERVER_PID || true

- name: Cleanup
if: always()
run: |
docker stop localestia || true
docker rm localestia || true

integration-kurtosis:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI 9 months ago

To fix the problem, add a permissions block to the root of the workflow YAML file (.github/workflows/integration.yml). This will explicitly define the permissions the GITHUB_TOKEN has when workflows and jobs run. The minimal safe starting point is contents: read. If any workflow step requires additional permissions (such as creating or updating pull requests, issues, etc.), those privileges should be explicitly added for those jobs only where needed.

For now, the fix is to add the following below the name: line, before on:, at the root of the YAML file:

permissions:
  contents: read

This applies the restriction to all jobs in the workflow unless overridden.


Suggested changeset 1
.github/workflows/integration.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml
--- a/.github/workflows/integration.yml
+++ b/.github/workflows/integration.yml
@@ -1,4 +1,6 @@
 name: Integration Tests
+permissions:
+  contents: read
 
 on:
   push:
EOF
@@ -1,4 +1,6 @@
name: Integration Tests
permissions:
contents: read

on:
push:
Copilot is powered by AI and may make mistakes. Always verify output.
Comment on lines +85 to +144
name: Integration Test with Kurtosis
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.21'
cache: true

- name: Install Kurtosis
run: |
echo "Installing Kurtosis CLI..."
curl -s https://raw.githubusercontent.com/kurtosis-tech/kurtosis/main/scripts/install.sh | bash

- name: Start Kurtosis Engine
run: |
kurtosis engine start

- name: Run Kurtosis Devnet
run: |
# Create kurtosis configuration
cat > devnet-config.yaml << EOF
participants:
- el_type: op-geth
cl_type: op-node
count: 1

da_params:
image: ghcr.io/celestiaorg/localestia-da-server:latest

altda_deploy_config:
use_altda: true
da_commitment_type: GenericCommitment
da_challenge_window: 100
da_resolve_window: 100
da_bond_size: 0
da_resolver_refund_percentage: 0
EOF

# Run the devnet
kurtosis run github.com/ethpandaops/optimism-package --args-file devnet-config.yaml

- name: Run Integration Tests
run: |
# Get service details from Kurtosis
DA_SERVER_URL=$(kurtosis port print optimism-devnet da-server http)

# Run tests against the devnet
go test -v -tags=kurtosis ./test/kurtosis/...

- name: Cleanup
if: always()
run: |
kurtosis clean -a || true
kurtosis engine stop || true

e2e-test:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI 9 months ago

To fix the problem, add a permissions: key either at the top level of the workflow (applying to all jobs unless overridden by a job-specific permissions block), or directly to each job definition if fine-grained control is needed. Since none of the shown jobs require write access to repository contents, the best starting permissions are contents: read, which allows the checkout action and read-only access to repository files. For jobs that use actions like actions/upload-artifact, this does not require extra token permissions. Therefore, insert the following at the top of the workflow (after the name: key):

permissions:
  contents: read

No other imports, code changes, or dependency adjustments are required.

Suggested changeset 1
.github/workflows/integration.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml
--- a/.github/workflows/integration.yml
+++ b/.github/workflows/integration.yml
@@ -1,4 +1,6 @@
 name: Integration Tests
+permissions:
+  contents: read
 
 on:
   push:
EOF
@@ -1,4 +1,6 @@
name: Integration Tests
permissions:
contents: read

on:
push:
Copilot is powered by AI and may make mistakes. Always verify output.
Comment on lines +145 to +221
name: End-to-End Test
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.21'
cache: true

- name: Setup Docker Compose
run: |
# Create docker-compose for e2e testing
cat > docker-compose.e2e.yml << 'EOF'
version: '3.8'

services:
localestia:
image: ghcr.io/celestiaorg/localestia:latest
ports:
- "26658:26658"
- "9090:9090"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:26658/status"]
interval: 10s
timeout: 5s
retries: 5

da-server:
build:
context: .
dockerfile: Dockerfile
depends_on:
localestia:
condition: service_healthy
environment:
- OP_ALTDA_CELESTIA_SERVER=http://localestia:26658
- OP_ALTDA_CELESTIA_NAMESPACE=0000000000000000000000000000000000000000000000000000000000000000
- OP_ALTDA_ADDR=0.0.0.0
- OP_ALTDA_PORT=3100
ports:
- "3100:3100"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3100/health"]
interval: 10s
timeout: 5s
retries: 5
EOF

- name: Run E2E Tests
run: |
docker-compose -f docker-compose.e2e.yml up -d

# Wait for services to be ready
sleep 30

# Run e2e tests
go test -v -tags=e2e ./test/e2e/...

- name: Collect Logs
if: failure()
run: |
docker-compose -f docker-compose.e2e.yml logs > e2e-logs.txt

- name: Upload Logs
if: failure()
uses: actions/upload-artifact@v3
with:
name: e2e-logs
path: e2e-logs.txt

- name: Cleanup
if: always()
run: |
docker-compose -f docker-compose.e2e.yml down -v

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI 9 months ago

The fix is to add the permissions key at the top level of the workflow to enforce the principle of least privilege for the GITHUB_TOKEN. This change restricts token access to repository contents with read-only rights, which is the minimal permission level required for most test/build workflows that do not create releases, modify code, or interact with issues or PRs via the API.
To do this, edit .github/workflows/integration.yml and insert the following at the root (anywhere before the jobs block is conventionally preferred, typically after the on: trigger but before jobs:):

permissions:
  contents: read

No other changes, imports, or dependencies are needed, and no existing workflow logic will be affected.

Suggested changeset 1
.github/workflows/integration.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml
--- a/.github/workflows/integration.yml
+++ b/.github/workflows/integration.yml
@@ -7,6 +7,9 @@
     branches: [ main, develop ]
   workflow_dispatch:
 
+permissions:
+  contents: read
+
 jobs:
   integration-localestia:
     name: Integration Test with Localestia
EOF
@@ -7,6 +7,9 @@
branches: [ main, develop ]
workflow_dispatch:

permissions:
contents: read

jobs:
integration-localestia:
name: Integration Test with Localestia
Copilot is powered by AI and may make mistakes. Always verify output.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive CI/CD infrastructure and testing components for the op-alt-da project. The changes introduce automated workflows for testing, building, releasing, and maintaining the project, along with supporting scripts and configuration files.

  • Adds GitHub Actions workflows for CI, integration testing, releases, security scanning, and package cleanup
  • Introduces Docker configuration and development tooling via Makefile, docker-compose, and helper scripts
  • Sets up PR/issue templates and monitoring infrastructure with Prometheus
  • Refactors function naming from public to private (SubmitAndCreateBlobID → submitAndCreateBlobID)
  • Updates import path from go-square/v2 to v3 and moves dependency from indirect to direct

Reviewed Changes

Copilot reviewed 19 out of 19 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
setup.sh Setup script for automating local development environment configuration
scripts/ghcr-auth.sh Helper script for GitHub Container Registry authentication
monitoring/prometheus.yml Prometheus configuration for metrics collection from DA server and localestia
go.mod Updates go-square dependency from v2 to v3 and promotes it to direct dependency
docker-compose.yml Defines local development environment with localestia, DA server, and optional monitoring/S3 services
cmd/daserver/main_test.go Adds placeholder integration and benchmark test structure
celestia_storage.go Updates function call to use new private function name
celestia_server.go Updates import path to use go-square v3
Makefile Comprehensive build system with development, testing, and Docker targets
Dockerfile Multi-stage build with security improvements and proper metadata
.github/workflows/release copy.yml Release workflow for building and publishing binaries and Docker images
.github/workflows/integration.yml Integration testing workflows with localestia and Kurtosis
.github/workflows/ghcr-cleanup.yml Automated cleanup of old container images in GHCR
.github/workflows/dependency-review.yml Dependency security review for pull requests
.github/workflows/codeql.yml CodeQL security analysis workflow
.github/workflows/ci.yml Main CI pipeline with linting, testing, building, and security scanning
.github/pull_request_template.md Standardized PR template for consistent submissions
.github/ISSUE_TEMPLATE/feature_request.md Template for feature requests
.github/ISSUE_TEMPLATE/bug_report.md Template for bug reports
Comments suppressed due to low confidence (1)

go.mod:3

  • Go version 1.24.6 does not exist. As of January 2025, the latest stable Go version is 1.22.x. Update this to a valid Go version such as '1.21' or '1.22'.
go 1.24.6

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread Dockerfile
Comment on lines +8 to 9
RUN make da-server

Copilot AI Nov 7, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Dockerfile copies files and sets up the workspace after line 8, but attempts to run 'make da-server' at line 8 before the source code is copied. This will fail because the source files don't exist yet. These lines should be removed as they are superseded by the complete build process defined later in the file (lines 16-33).

Suggested change
RUN make da-server

Copilot uses AI. Check for mistakes.
Comment thread cmd/daserver/main_test.go
Comment on lines +96 to +98
_, cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()

Copilot AI Nov 7, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The context variable is assigned but never used. Either use the context in the test implementation or remove the underscore: 'ctx, cancel := context.WithTimeout(...)'

Suggested change
_, cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()

Copilot uses AI. Check for mistakes.
@sysrex sysrex closed this Nov 11, 2025
@nuke-web3
nuke-web3 deleted the add-ci branch June 30, 2026 02:30
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.

4 participants