From b6c036b8ef9c1e2d17727f4a90a938142c4d3be9 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 22 Feb 2026 14:00:50 +0000 Subject: [PATCH 1/2] Initial plan From 12a20cab77031e3035d6ba1a9a2566193e4ee38c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 22 Feb 2026 14:09:22 +0000 Subject: [PATCH 2/2] Normalize report formatting for org-health-report and daily-safe-outputs-conformance workflows Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> --- .../daily-safe-outputs-conformance.md | 29 +++++++--- .github/workflows/org-health-report.md | 57 ++++++++++++++----- 2 files changed, 63 insertions(+), 23 deletions(-) diff --git a/.github/workflows/daily-safe-outputs-conformance.md b/.github/workflows/daily-safe-outputs-conformance.md index 479e8abe04c..ef314cfe0c5 100644 --- a/.github/workflows/daily-safe-outputs-conformance.md +++ b/.github/workflows/daily-safe-outputs-conformance.md @@ -87,6 +87,17 @@ Analyze the output from `/tmp/conformance-results.txt`: - REQ-001 through REQ-003: Specification requirements - IMP-001 through IMP-003: Implementation requirements +## 📝 Report Formatting Guidelines + +**Use h3 (###) or lower for all headers in your report to maintain proper document hierarchy.** + +The issue title serves as the document title, so all content headers in the issue body should start at h3: +- Use `###` for main sections (e.g., "### Conformance Check Failure", "### Problem Description") +- Use `####` for subsections (e.g., "#### Affected Files", "#### Steps") +- Never use `##` (h2) or `#` (h1) in the issue body + +**Wrap long sections in `
Section Name` tags to improve readability and reduce scrolling.** + ## Phase 3: Generate Agentic Tasks For each conformance issue found, create a GitHub issue using the `create_issue` tool with the following structure: @@ -100,31 +111,31 @@ Example: `SEC-001: Agent job in workflow X has write permissions` **Body Format**: ```markdown -## Conformance Check Failure +### Conformance Check Failure **Check ID**: [CHECK_ID] **Severity**: [CRITICAL/HIGH/MEDIUM/LOW] **Category**: [Security/Usability/Specification/Implementation] -## Problem Description +### Problem Description [Detailed description of what conformance check failed and why it matters] -## Affected Components +### Affected Components - **Files**: [List specific files affected] - **Workflows**: [List workflows if applicable] - **Handlers**: [List handler files if applicable] -## Current Behavior +### Current Behavior [Describe what the code currently does that violates conformance] -## Expected Behavior +### Expected Behavior [Describe what the specification requires] -## Remediation Steps +### Remediation Steps This task can be assigned to a Copilot coding agent with the following steps: @@ -132,7 +143,7 @@ This task can be assigned to a Copilot coding agent with the following steps: 2. [Specific action 2] 3. [Specific action 3] -## Verification +### Verification After remediation, verify the fix by running: @@ -142,7 +153,7 @@ bash scripts/check-safe-outputs-conformance.sh The check [CHECK_ID] should pass without errors. -## References +### References - Safe Outputs Specification: docs/src/content/docs/reference/safe-outputs-specification.md - Conformance Checker: scripts/check-safe-outputs-conformance.sh @@ -162,7 +173,7 @@ The check [CHECK_ID] should pass without errors. If multiple similar issues are found (e.g., 3 handlers missing the same validation), consider creating ONE issue that covers all of them with a checklist: ```markdown -## Affected Components +### Affected Components - [ ] Handler 1: actions/setup/js/handler1.cjs - [ ] Handler 2: actions/setup/js/handler2.cjs diff --git a/.github/workflows/org-health-report.md b/.github/workflows/org-health-report.md index fce67627053..71cd281eecb 100644 --- a/.github/workflows/org-health-report.md +++ b/.github/workflows/org-health-report.md @@ -339,18 +339,44 @@ Create a comprehensive markdown report with the following sections: - Brief analysis of what the metrics mean - Suggestions for maintainers on where to focus +## 📝 Report Formatting Guidelines + +**Use h3 (###) or lower for all headers in your report to maintain proper document hierarchy.** + +The discussion title serves as h1, so all content headers should start at h3: +- Use `###` for main sections (e.g., "### 📊 Volume Metrics", "### Summary") +- Use `####` for subsections (e.g., "#### Overall Status", "#### Recent Activity") +- Never use `##` (h2) or `#` (h1) in the report body + +**Wrap long sections in `
Section Name` tags to improve readability and reduce scrolling.** + +Use collapsible sections for: +- "Top 10 Most Active Authors" table +- Full data and methodology details +- Any other verbose tables or data + +Example: +```markdown +
+Top 10 Most Active Authors + +[Author table here...] + +
+``` + ### Phase 6: Create Discussion Report Use the `create discussion` safe-output to publish the report: ```markdown -# Organization Health Report - [Date] +### 🏥 Organization Health Report - [Date] [Executive Summary] -## 📊 Volume Metrics +### 📊 Volume Metrics -### Overall Status +#### Overall Status | Metric | Count | |--------|-------| @@ -359,7 +385,7 @@ Use the `create discussion` safe-output to publish the report: | Total Open PRs | X | | Total Closed PRs | X | -### Recent Activity (7 Days) +#### Recent Activity (7 Days) | Metric | Count | |--------|-------| @@ -368,7 +394,7 @@ Use the `create discussion` safe-output to publish the report: | PRs Opened | X | | PRs Closed | X | -### Recent Activity (30 Days) +#### Recent Activity (30 Days) | Metric | Count | |--------|-------| @@ -377,7 +403,7 @@ Use the `create discussion` safe-output to publish the report: | PRs Opened | X | | PRs Closed | X | -## 🏆 Top 5 Most Active Repositories +### 🏆 Top 5 Most Active Repositories | Repository | Recent Issues | Recent PRs | Comments | Activity Score | |------------|---------------|------------|----------|----------------| @@ -385,7 +411,8 @@ Use the `create discussion` safe-output to publish the report: | repo2 | X | X | X | X | ... -## 👥 Top 10 Most Active Authors +
+Top 10 Most Active Authors | Author | Issues Opened | PRs Opened | Activity Score | |--------|---------------|------------|----------------| @@ -393,44 +420,46 @@ Use the `create discussion` safe-output to publish the report: | user2 | X | X | X | ... -## 🔥 High-Activity Unresolved Items +
+ +### 🔥 High-Activity Unresolved Items -### Hot Issues (Need Attention) +#### Hot Issues (Need Attention) | Issue | Repository | Comments | Age (days) | Link | |-------|------------|----------|------------|------| | #123: Title | repo | X | X | [View](#) | ... -### Hot PRs (Need Review) +#### Hot PRs (Need Review) | PR | Repository | Comments | Age (days) | Link | |----|------------|----------|------------|------| | #456: Title | repo | X | X | [View](#) | ... -## ⚠️ Items Needing Attention +### ⚠️ Items Needing Attention - **Stale Issues**: X issues open for 30+ days with no recent activity - **Stale PRs**: X PRs open for 30+ days with no recent activity - **Unassigned Issues**: X open issues without assignees - **Unlabeled Issues**: X open issues without labels -## 💡 Commentary and Recommendations +### 💡 Commentary and Recommendations [Analysis of the metrics and suggestions for where maintainers should focus their attention]
Full Data and Methodology -## Data Collection +#### Data Collection - **Date Range**: [dates] - **Repositories Analyzed**: X public, non-archived repositories - **Issues Analyzed**: X issues - **PRs Analyzed**: X pull requests -## Methodology +#### Methodology - Data collected using GitHub API via MCP server - Analyzed using Python pandas for efficient data processing