Skip to content

ci: lint workflow files with actionlint - #47

Merged
loss-and-quick merged 1 commit into
mainfrom
ci/actionlint-workflow
Jun 20, 2026
Merged

ci: lint workflow files with actionlint#47
loss-and-quick merged 1 commit into
mainfrom
ci/actionlint-workflow

Conversation

@loss-and-quick

@loss-and-quick loss-and-quick commented Jun 20, 2026

Copy link
Copy Markdown
Owner

Summary

Add a dedicated Lint Workflows workflow that runs actionlint on .github/workflows/**. It catches what plain YAML validity and the existing CI can't — undefined needs:/job references, malformed ${{ }} expressions, unknown action inputs, and (via shellcheck) issues in run: blocks. The recently-fixed dead needs: release reference shipped silently precisely because nothing guarded the workflow files; this closes that gap.

Affected layer

  • frontend/ — React Web UI
  • module/ — Magisk/KernelSU/APatch payload (shell + packaged kasumi-proxy backend)
  • scripts/ — build / release helpers
  • CI / .github/
  • Docs only

Verification

Workflow-only change; the Web UI / module checks below don't apply.

  • actionlint clean on all workflow files (the new job itself, plus ci.yml/release.yml/nightly.yml)
  • Install logic (pinned binary + checksum verify) tested locally — checksum OK, binary runs

Checklist

  • Title is a scoped Conventional Commit; commits are logically split
  • No build artifacts committed
  • If user-visible strings changed: n/a — no user-visible strings
  • Renames touching the project id were grepped — n/a

Notes for reviewers

actionlint is installed by downloading the pinned release binary (1.7.12) and verifying it against the release's own published checksums.txttaiki-e/install-action doesn't carry actionlint, and curl|bash of an upstream script pins nothing. Triggers only when .github/workflows/** changes.

@loss-and-quick
loss-and-quick force-pushed the ci/actionlint-workflow branch from a521c96 to 084147d Compare June 20, 2026 16:45
Add a dedicated workflow that runs actionlint on `.github/workflows/**`.
It catches what plain YAML validity doesn't — undefined `needs`/job
references, malformed `${{ }}` expressions, unknown action inputs, and
(via shellcheck) issues in `run:` scripts. A dead `needs:` reference
previously shipped because nothing guarded the workflows themselves.
@loss-and-quick
loss-and-quick force-pushed the ci/actionlint-workflow branch from 084147d to e73eea0 Compare June 20, 2026 16:49
@loss-and-quick
loss-and-quick merged commit 56c8651 into main Jun 20, 2026
4 checks passed
@loss-and-quick
loss-and-quick deleted the ci/actionlint-workflow branch June 20, 2026 16:51
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.

1 participant