ci(auto-sync): pause remote-fix schedule until v7 migration #3
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: agents-md-guard | |
| on: | |
| pull_request_target: | |
| types: | |
| - opened | |
| - synchronize | |
| - reopened | |
| permissions: | |
| contents: read | |
| issues: write | |
| pull-requests: write | |
| jobs: | |
| close-when-agents-md-changed: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Detect AGENTS.md changes and close PR | |
| uses: actions/github-script@v7 | |
| with: | |
| script: | | |
| const prNumber = context.payload.pull_request.number; | |
| const { owner, repo } = context.repo; | |
| const files = await github.paginate(github.rest.pulls.listFiles, { | |
| owner, | |
| repo, | |
| pull_number: prNumber, | |
| per_page: 100, | |
| }); | |
| const touchesAgentsMd = (path) => | |
| typeof path === "string" && | |
| (path === "AGENTS.md" || path.endsWith("/AGENTS.md")); | |
| const touched = files.filter( | |
| (f) => touchesAgentsMd(f.filename) || touchesAgentsMd(f.previous_filename), | |
| ); | |
| if (touched.length === 0) { | |
| core.info("No AGENTS.md changes detected."); | |
| return; | |
| } | |
| const changedList = touched | |
| .map((f) => | |
| f.previous_filename && f.previous_filename !== f.filename | |
| ? `- ${f.previous_filename} -> ${f.filename}` | |
| : `- ${f.filename}`, | |
| ) | |
| .join("\n"); | |
| const body = [ | |
| "This repository does not allow modifying `AGENTS.md` in pull requests.", | |
| "", | |
| "Detected changes:", | |
| changedList, | |
| "", | |
| "Please revert these changes and open a new PR without touching `AGENTS.md`.", | |
| ].join("\n"); | |
| try { | |
| await github.rest.issues.createComment({ | |
| owner, | |
| repo, | |
| issue_number: prNumber, | |
| body, | |
| }); | |
| } catch (error) { | |
| core.warning(`Failed to comment on PR #${prNumber}: ${error.message}`); | |
| } | |
| await github.rest.pulls.update({ | |
| owner, | |
| repo, | |
| pull_number: prNumber, | |
| state: "closed", | |
| }); | |
| core.setFailed("PR modifies AGENTS.md"); |