Imported from modem-dev/ossrules (
public/files/rustfs/.github/AGENTS.md). Install upstream withnpx skills add modem-dev/ossrules --skill .github. Copyright stays with the author.
GitHub Workflow Instructions
Applies to .github/.
Pull Requests
PR conventions (English title/body, template usage, --body-file with the
heredoc pattern, review-thread etiquette) live in the root AGENTS.md under
"Git and PR Baseline" — that section is the single normative home; do not
duplicate its rules here.
Workflow Changes
- Any change touching
.github/workflows/must passactionlint(run from the repo root) with zero findings before commit/PR. Install viabrew install actionlint, or the download script in the actionlint repo (rhysd/actionlint);make pre-prdoes not cover workflow files, so this is the required check for them. - Custom self-hosted runner labels (
sm-standard-*,dind-*) are declared in.github/actionlint.yaml. When introducing a newruns-on:label, declare it there in the same change. Never use the config or-ignoreto silence real findings — fix the workflow (rootAGENTS.md: make checks pass by fixing the cause, not by weakening the gate). - If
shellcheckis installed, actionlint also lintsrun:scripts; treat those findings as part of the gate.
CI Alignment
When changing CI-sensitive behavior, keep local validation aligned with
.github/workflows/ci.yml. Read the workflow file directly for the current
gate steps — do not rely on (or add) a copied command list here; copies go
stale. make pre-pr is the local equivalent of the main gate.