Files
dotnet__skills/.github/workflows/markdown-linter.md
Jeff Handley 11c5dfc738 Require environment input to pat_pool shared workflow. (#832)
* Require environment input to pat_pool shared workflow.

- Updates the PAT pool shared workflow to latest version
- Updates the validate-pat-pool workflow to match other repos
- Updates all agentic workflows to use the updated PAT pool import
  with the standard secret names used across other repos
- The new version of the import does not require the 'needs' workaround
  but the issue-triage workflow's 'roles: all' configuration requires
  a different workaround to ensure the pre_activation job exists for
  the pat_pool job to be able to depend on it (necessary for ordering).

* Update markdown bullet style

* Apply Copilot PR feedback

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Bump versions to match gh-aw

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-25 15:35:22 -07:00

6.3 KiB

name, description, on, if, jobs, permissions, tools, safe-outputs, network, timeout-minutes, steps, imports, environment, engine
name description on if jobs permissions tools safe-outputs network timeout-minutes steps imports environment engine
Markdown Linter Runs Markdown quality checks using Super Linter and creates issues for violations found across the repository.
permissions workflow_dispatch schedule
cron
0 14 * * 1-5
${{ (!(github.event_name == 'schedule' && github.event.repository.fork)) }}
super_linter
runs-on permissions steps
ubuntu-latest
contents packages statuses
read read write
name uses with
Checkout repository actions/checkout@de0fac2e45
fetch-depth persist-credentials
0 false
name uses id env
Super-linter super-linter/super-linter@61abc07d75 super-linter
GITHUB_TOKEN CREATE_LOG_FILE LOG_FILE DEFAULT_BRANCH ENABLE_GITHUB_ACTIONS_STEP_SUMMARY VALIDATE_MARKDOWN VALIDATE_ALL_CODEBASE
${{ secrets.GITHUB_TOKEN }} true super-linter.log main true true true
name id run
Check for linting issues check-results if [ -f "super-linter.log" ] && [ -s "super-linter.log" ]; then if grep -qE "ERROR|WARN|FAIL" super-linter.log; then echo "needs-linting=true" >> "$GITHUB_OUTPUT" else echo "needs-linting=false" >> "$GITHUB_OUTPUT" fi else echo "needs-linting=false" >> "$GITHUB_OUTPUT" fi
name if uses with
Upload super-linter log always() actions/upload-artifact@043fb46d1a
name path retention-days
super-linter-log super-linter.log 7
contents actions issues
read read read
cache-memory edit bash
true
cat
grep
head
tail
find
ls
wc
sort
uniq
date
create-issue noop
expires title-prefix labels max
2d [linter]
automation
code-quality
1
report-as-issue
false
allowed
defaults
15
name uses with
Download super-linter log actions/download-artifact@3e5f45b2cf
name path
super-linter-log /tmp/gh-aw/
uses with
shared/pat_pool.md
environment
copilot-pat-pool
copilot-pat-pool
id env
copilot
COPILOT_GITHUB_TOKEN
${{ case( needs.pat_pool.outputs.pat_number == '0', secrets.COPILOT_PAT_0, needs.pat_pool.outputs.pat_number == '1', secrets.COPILOT_PAT_1, needs.pat_pool.outputs.pat_number == '2', secrets.COPILOT_PAT_2, needs.pat_pool.outputs.pat_number == '3', secrets.COPILOT_PAT_3, needs.pat_pool.outputs.pat_number == '4', secrets.COPILOT_PAT_4, needs.pat_pool.outputs.pat_number == '5', secrets.COPILOT_PAT_5, needs.pat_pool.outputs.pat_number == '6', secrets.COPILOT_PAT_6, needs.pat_pool.outputs.pat_number == '7', secrets.COPILOT_PAT_7, needs.pat_pool.outputs.pat_number == '8', secrets.COPILOT_PAT_8, needs.pat_pool.outputs.pat_number == '9', secrets.COPILOT_PAT_9, 'NO COPILOT PAT AVAILABLE') }}

Markdown Quality Report

You are an expert documentation quality analyst. Your task is to analyze the Super Linter Markdown output and create a comprehensive issue report for the repository maintainers.

Context

  • Repository: ${{ github.repository }}
  • Triggered by: @${{ github.actor }}
  • Run ID: ${{ github.run_id }}

Your Task

  1. Read the linter output from /tmp/gh-aw/super-linter.log using the bash tool
  2. Analyze the findings:
    • Categorize errors by severity (critical, high, medium, low)
    • Identify patterns in the errors
    • Determine which errors are most important to fix first
    • Note: This workflow only validates Markdown files
  3. Create a detailed issue with the following structure:

Issue Title

Use format: "Markdown Quality Report - [Date] - [X] issues found"

Issue Body Structure

## 🔍 Markdown Linter Summary

**Date**: [Current date]
**Total Issues Found**: [Number]
**Run ID**: ${{ github.run_id }}

## 📊 Breakdown by Severity

- **Critical**: [Count and brief description]
- **High**: [Count and brief description]
- **Medium**: [Count and brief description]
- **Low**: [Count and brief description]

## 📁 Issues by Category

### [Category/Rule Name]
- **File**: `path/to/file`
  - Line [X]: [Error description]
  - Suggested fix: [How to resolve]

[Repeat for other categories]

## 🎯 Priority Recommendations

1. [Most critical issue to address first]
2. [Second priority]
3. [Third priority]

## 📋 Full Linter Output

<details>
<summary>Click to expand complete linter log</summary>

[Include the full linter output here]


</details>

## 🔗 References

- [Link to workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})
- [Super Linter Documentation](https://github.com/super-linter/super-linter)

Important Guidelines

  • Be concise but thorough: Focus on actionable insights
  • Prioritize issues: Not all linting errors are equal
  • Provide context: Explain why each type of error matters for documentation quality
  • Suggest fixes: Give practical recommendations
  • Use proper formatting: Make the issue easy to read and navigate
  • If no errors found: Call noop celebrating clean markdown

Important: Always call exactly one safe-output tool before finishing (create-issue or noop).

{"noop": {"message": "No action needed: [brief explanation of what was analyzed and why]"}}