94 Commits

Author SHA1 Message Date
dagecko
910b91e74e fix: pin 5 unpinned action(s) (#6157) 2026-03-26 14:27:11 +05:30
Avelino
24273bf86b Fix pwn request vulnerability in PR quality checks workflow
The pull_request_target workflow checked out and executed Go scripts from
the PR head, allowing attackers to inject arbitrary code via init()
functions with access to a write-scoped GITHUB_TOKEN. This was confirmed
exploited in the wild (ref: StepSecurity blog).

Checkout now targets the base branch so only trusted scripts execute.
PR head SHA is fetched as data-only for diffing via a new PR_HEAD_SHA
env var. Write operations (comments, labels) are isolated in a separate
report job that never checks out code. All job permissions follow least
privilege — quality runs read-only, report holds the write token.

fixed: #6083

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
Co-Authored-By: Thierry Abalea <thierry.abalea@shipfox.io>
2026-03-02 11:51:11 -03:00
Avelino
64b3ad32b7 fixed netlify timeout
Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
2026-02-28 11:55:43 -03:00
Avelino
a532200f99 new layout (#6065)
* new layout

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>

* project page in site

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>

---------

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
2026-02-28 11:27:46 -03:00
Avelino
45f2b49ef4 fix(ci): add safe.directory config to fix git fetch in container (#6064)
The "Fetch base branch" step fails with exit code 128 when running
inside the golang:latest container because Git does not recognize the
workspace as a safe directory. This is a Git security feature (CVE-2022-24765)
that blocks operations in directories owned by a different user, which
happens when actions/checkout runs inside a container.

https://claude.ai/code/session_01NBtQtSPnsSvAwqUMBMLGFh

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-28 09:52:42 -03:00
Avelino
00b59434f5 Add environment specification to recheck workflow 2026-02-28 05:37:52 -03:00
Avelino
18e5e3b34c fix(ci): use PAT (GH_TOKEN) instead of GITHUB_TOKEN for recheck workflow (#6057)
Events created by GITHUB_TOKEN do not trigger other workflows (GitHub
design to prevent infinite loops). Switch to the repo's GH_TOKEN PAT
so close/reopen events properly trigger pr-quality-check.

https://claude.ai/code/session_01JcdbDdtERhAXFFZmu3pCVY

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-28 05:35:18 -03:00
Avelino
f74f180683 Migrate PR quality checks from Node.js to Go (#6055)
* automate PR review: rewrite quality checks in Go and add diff validation

- Replace check-quality.js with Go implementation that adds:
  open source license detection, repo maturity (5+ months),
  CI/CD presence check, and README existence verification
- Add new check-pr-diff tool that validates README changes:
  single item per PR, link consistency with PR body,
  description format, non-promotional language, and
  category minimum size (3 items)
- Update pr-quality-check workflow to run both Go tools
  with separate quality and diff reporting sections
- Improve CONTRIBUTING.md with new "What is checked automatically"
  section documenting all blocking and non-blocking CI checks,
  plus what still requires manual maintainer review
- Improve PR template with clearer structure separating
  CI-validated requirements from manual review items

https://claude.ai/code/session_01JcdbDdtERhAXFFZmu3pCVY

* add actionable fix instructions to automated PR review comments

Each failed check now includes a "How to fix" section with specific
commands and steps the contributor needs to take, e.g.:
- missing go.mod → shows exact `go mod init` + `go mod tidy` commands
- missing semver release → shows `git tag v1.0.0` command and GitHub UI link
- low Go Report Card grade → shows `gofmt`, `go vet` commands
- missing PR body links → shows the exact text to paste
- description without period → shows the corrected entry line
- link mismatch → shows both URLs and which to update

https://claude.ai/code/session_01JcdbDdtERhAXFFZmu3pCVY

* add auto-merge when all PR quality checks pass

Adds an auto-merge job that enables GitHub's native auto-merge (squash)
after the quality and diff checks succeed. GitHub will only execute the
merge once ALL required branch protection status checks are green
(including the tests workflow).

Requires "Allow auto-merge" to be enabled in repo settings.

https://claude.ai/code/session_01JcdbDdtERhAXFFZmu3pCVY

* add workflow to re-run quality checks on all open PRs

Creates a manual workflow_dispatch workflow that iterates through all
open PRs and closes/reopens each one to re-trigger the quality check
pipeline. Includes a 2s delay between PRs to respect API rate limits.

Usage: Actions tab → "Re-check all open PRs" → Run workflow

https://claude.ai/code/session_01JcdbDdtERhAXFFZmu3pCVY

* skip quality checks for PRs that don't modify README.md

The quality checks (forge link, pkg.go.dev, Go Report Card, etc.) only
apply to package addition/removal PRs. Internal PRs (workflow changes,
docs, scripts) were failing because they naturally don't have those
fields in the PR body.

Now the workflow first detects if README.md is in the changed files:
- If yes: runs full quality + diff checks as before
- If no: posts a "Skipped" notice and passes cleanly

Fixes false failures like PR #6055.

https://claude.ai/code/session_01JcdbDdtERhAXFFZmu3pCVY

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-27 07:05:00 -03:00
Daniel Bates
b004a84243 fix: accept app.codecov.io URLs in quality check script (#6044)
The codecov.io URL format changed to use an app. subdomain
(e.g. https://app.codecov.io/gh/user/repo). Update the regex
to accept both codecov.io and app.codecov.io.

Closes #6025

Co-authored-by: Your Name <your-email@example.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 01:13:56 +05:30
Pádraic Slattery
2e31843b91 docs: Update outdated GitHub Actions versions (#5991) 2026-01-16 22:45:02 +05:30
Avelino
ac88c3e8cf docs: add AGENTS.md with LLM contribution guide
This commit introduces AGENTS.md, a comprehensive guide outlining conventions and project context for language model (LLM) contributions to the awesome-go repository. The document details project structure, coding guidelines for Go and JavaScript, CI/testing expectations, and documentation standards. It aims to ensure consistency, quality, and clarity for both human and automated contributors.

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
2025-10-07 21:27:57 -03:00
Avelino
8cb5e86f56 remove duplicate PR quality check workflow and script
Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
2025-10-06 06:49:23 -03:00
Avelino
728d16b6d2 fix: use sticky-pull-request-comment for quality check report
Replaces the previous comment action with marocchino/sticky-pull-request-comment@v2 to avoid duplicate comments on PRs. This ensures the quality check report is always updated in place, improving PR clarity and reducing notification noise.

Ref: https://github.com/avelino/awesome-go/pull/5820#issuecomment-3346082315

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
2025-10-06 06:49:23 -03:00
coderabbitai[bot]
be0217f5b7 📝 Add docstrings to avelino/auto-check
Docstrings generation was requested by @avelino.

* https://github.com/avelino/awesome-go/pull/5810#issuecomment-3289725831

The following files were modified:

* `.github/scripts/check-quality.js`
* `.github/scripts/extract-pr-links.js`
2025-09-14 15:00:16 -03:00
Avelino
1a93ba0fab Update .github/scripts/check-quality.js
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-09-14 15:00:16 -03:00
Avelino
8a1c8ef576 Update .github/scripts/check-quality.js
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-09-14 15:00:16 -03:00
Avelino
c2be79cb1d feat: add automated PR quality checks and PR link extraction scripts
- Introduce `.github/scripts/check-quality.js` to automate validation of PRs against minimum standards from `CONTRIBUTING.md`:
  - Checks repo accessibility, go.mod presence, SemVer release, Go Report Card grade, pkg.go.dev, and coverage link.
  - Outputs a markdown report and sets fail status for critical issues.
- Add `.github/scripts/extract-pr-links.js` to extract required links from PR body and format a review comment.
- Update workflow to run these scripts and post results as PR comments.
- Update `CONTRIBUTING.md` to clarify requirements and reference new automation.

fixed https://app.codacy.com/gh/avelino/awesome-go/pull-requests/5810/issues

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
2025-09-14 15:00:16 -03:00
Avelino
12dc8e9fde feat: add automated PR quality checks for CONTRIBUTING.md standards
- Add `.github/scripts/check-quality.js` to extract PR links and validate minimum standards:
  - Checks repo accessibility, go.mod, SemVer release, Go Report Card (A- or better), coverage, and pkg.go.dev.
  - Outputs markdown report and sets fail status for critical issues.
- Add `.github/scripts/extract-pr-links.js` to extract and format PR body links for review.
- Add `.github/workflows/pr-quality-check.yaml` to run quality checks on PRs, post results as comments, sync labels, and fail PR if critical checks fail.
- Update `CONTRIBUTING.md` to clarify required PR body links and quality standards.
- Update `.github/workflows/pull-request-first-comment.yaml` to support new automation.

This improves PR review automation and enforces minimum quality standards for new submissions.

Signed-off-by: Avelino <31996+avelino@users.noreply.github.com>
2025-09-14 15:00:16 -03:00
Phani Rithvij
8d972e873e netlify-deploy change dependency to nwtgck/actions-netlify@v3.0
setup node ourselves
2025-02-27 18:40:06 +05:30
yassinebenaid
b971941897 bump actions/checkout to v4 (#5366) 2024-08-04 21:19:12 +05:30
oliverpool
73af87e792 Refactor PR template: hint to curate packages around the submission (#5233)
* refactor PR template

* typo
2024-03-08 15:14:25 +05:30
Bob Glickstein
4d656474cb Wording tweaks to the PR comment added by the first-comment GH Action. (#5177) 2024-01-19 21:12:22 +05:30
Alex Bozhenko
e05ea4cec3 correct test run usage 2023-12-21 08:55:56 -03:00
Avelino
8495071046 fixed run-check job 2023-10-28 22:04:12 -03:00
Tomasz Piowczyk
395e8489ab Fix event trigger type 2023-10-04 12:39:09 -03:00
Tom Godkin
22c7595b8f Allow trunk-based workflows for awesome projects (#4976) 2023-08-15 23:37:23 +05:30
Avelino
e4d782899c pull-request-first-comment: permission issue write 2023-08-04 17:05:02 -03:00
Paul Burlumi
db09a6a398 build(ci): fix first comment github action
This fixes the error seen creating a new pull request.
2023-05-22 17:22:17 -03:00
Paul Burlumi
33967055c8 Fix typo in github action workflow (#4878) 2023-05-08 07:39:52 +03:00
Avelino
cb92c8e141 Rename config.yaml to config.yml 2023-05-01 17:57:07 -03:00
Avelino
e93f430a06 Update and rename awesome-go-com.md to bug.yml 2023-05-01 17:56:21 -03:00
Avelino
f807a57e84 Delete awesome-go-related-topic.md 2023-05-01 17:52:37 -03:00
Avelino
f10c0bf38a Create config.yaml 2023-05-01 17:51:47 -03:00
Avelino
013e1dda90 Update pull-request-first-comment.yaml 2023-04-07 14:10:48 -03:00
Avelino
23308179f3 Update pull-request-first-comment.yaml 2023-04-05 07:40:30 -03:00
Avelino
1519857fea first comment: set dynamic pull request number 2023-04-03 08:38:48 -03:00
Kirill Zhuravlev
b6ee793145 change resulting build dir for netlify 2023-04-03 08:16:26 -03:00
Kirill Zhuravlev
7aa3985741 change workflow site-deploy.yaml 2023-04-03 08:16:26 -03:00
Kirill Zhuravlev
7713914b96 fix gh wf 2023-04-03 08:16:26 -03:00
Avelino
58f71c3bbc Update check-for-spammy-issues.yml 2023-03-18 11:03:46 -03:00
Avelino
f6bc652061 Update check-for-spammy-issues.yml 2023-03-18 09:53:03 -03:00
Avelino
eb06322d4d auto msg first comment in PR 2023-03-18 08:37:22 -03:00
Avelino
3ee45b6c29 workflow: check issue spammy
fixed: #4772
2023-03-18 07:48:46 -03:00
Avelino
979e55167a pr template: remove gocover.io
ref: 6ef5fb11ad
2023-01-12 22:24:01 -03:00
Alex
6c1da6d88e GitHub Workflows security hardening (#4586) 2022-10-31 06:47:17 +05:30
Kevin Mulvey
f59afbd692 correct spelling of 'details' in pr template (#4567) 2022-10-25 18:00:02 +05:30
Avelino
2697da01c5 Remove stale action
fixed: #4479
2022-10-18 11:17:02 -03:00
harishmatheshwaran
7053eec62f Update run-check.yaml 2022-10-17 16:58:43 -03:00
harishmatheshwaran
efe54277c5 Update tests.yaml 2022-10-17 16:58:43 -03:00
harishmatheshwaran
4737de3dc2 Update site-deploy.yaml 2022-10-17 16:58:43 -03:00