mirror of
https://github.com/storytold/craft-common-actions.git
synced 2026-10-31 07:48:02 +00:00
* ast-grep: a reusable structural-lint workflow driven by the app's sgconfig.yml A reusable workflow and composite action that install a pinned ast-grep (checked against a SHA256 kept in the action, since its releases publish none), run the caller's rule tests when its sgconfig.yml has testConfigs, then scan with that config. CI and a local `ast-grep scan` read the same rules. Findings become PR annotations; a failing scan also lists every finding as file:line, since GitHub shows only the first few annotations of a step. No rules ship here. test-ast-grep.yml checks the action against a fixture: clean code passes, a finding fails, a path outside the repository is refused. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * ast-grep: run the action from the workflow's own commit; always run rule tests ast-grep.yml loads the action with `$/actions/ast-grep`, GitHub's self-repository syntax, so a caller that pins the workflow to a commit, or calls a fork's, runs the action from the same commit rather than whatever is on main. The rule tests no longer depend on grepping for `testConfigs:`, which missed valid YAML such as `testConfigs :`. ast-grep test runs every time; with no testConfigs it has no tests to run. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>