Skip to content

Commit 1fefa14

Browse files
docs: Add comprehensive section comments to all GitHub workflows and configurations
- Add clear section markers (=======================) to all 13 workflows - Document purpose, triggers, and features for each workflow - Improve workflow organization and readability - Standardize documentation format across all workflows and configs All GitHub workflows and configurations now have comprehensive documentation.
1 parent 9d42bf0 commit 1fefa14

15 files changed

+146
-3
lines changed

.github/CODEOWNERS

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
1-
# You can use this CODEOWNERS file to define individuals or teams that are responsible for code in a repository.
2-
3-
# See https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
1+
# =======================
2+
# FORRT CODEOWNERS Configuration
3+
# =======================
4+
# Purpose: Defines code ownership and review requirements
5+
# Documentation: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
6+
# Used by: GitHub for automatic review assignment
47

8+
# Global rule: All files require review from the website team
59
* @forrtproject/team-website

.github/labeler.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,27 @@
1+
# =======================
2+
# GitHub Labeler Configuration
3+
# =======================
4+
# Purpose: Defines automatic labeling rules for PRs and issues
5+
# Used by: labeler.yaml workflow
6+
# Rules: Based on branch names and changed file paths
7+
8+
# Bug-related branches
19
bug:
210
- head-branch: ['^bug', 'bug', '^hotfix', 'hotfix']
311

12+
# CI/CD workflow changes
413
cicd:
514
- changed-files:
615
- any-glob-to-any-file:
716
- .github/workflows/*
817

18+
# Content and documentation changes
919
content related:
1020
- changed-files:
1121
- any-glob-to-any-file:
1222
- content/**/*
1323

24+
# Documentation files
1425
documentation:
1526
- changed-files:
1627
- any-glob-to-any-file:
@@ -20,5 +31,6 @@ documentation:
2031
- .github/ISSUE_TEMPLATE/*
2132
- .github/CODEOWNERS
2233

34+
# Feature enhancement branches
2335
enhancement:
2436
- head-branch: ['^feature', 'feature']

.github/workflows/check_images.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: Check Images in PR
22

3+
# =======================
4+
# Image Validation Workflow
5+
# =======================
6+
# Purpose: Validates image files and references in pull requests
7+
# Triggers: PR opened, synchronized, or reopened
8+
# Checks: Image format, size, accessibility, and broken references
9+
310
on:
411
pull_request:
512
types: [opened, synchronize, reopened]

.github/workflows/close-stale.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: close-stale
22

3+
# =======================
4+
# Stale Issue Management
5+
# =======================
6+
# Purpose: Automatically closes stale issues and pull requests
7+
# Triggers: Daily at 2 AM UTC or manual dispatch
8+
# Features: Marks inactive items as stale, then closes them after 7 days
9+
310
on:
411
schedule:
512
- cron: '0 2 * * *'

.github/workflows/data-processing.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,15 @@ jobs:
2020
env:
2121
PYTHON_VERSION: "3.11"
2222
steps:
23+
# =======================
24+
# Repository Setup
25+
# =======================
2326
- name: Checkout repository
2427
uses: actions/checkout@v4
2528

29+
# =======================
30+
# Workflow Configuration
31+
# =======================
2632
- name: Check if monthly run
2733
id: monthly-run
2834
run: |
@@ -35,6 +41,9 @@ jobs:
3541
echo "🔄 Monthly run detected - will run contributor analysis"
3642
fi
3743
44+
# =======================
45+
# Environment Setup
46+
# =======================
3847
- name: Configure Git
3948
run: |
4049
git config --global user.email "mudaherarich@gmail.com"
@@ -52,6 +61,9 @@ jobs:
5261
- name: Install tenzing R dependencies
5362
run: Rscript -e 'install.packages(c("rmarkdown","ggplot2", "readxl", "dplyr", "googlesheets4", "stringr", "gridExtra", "glue", "tidygraph", "ggraph", "igraph", "visNetwork"))'
5463

64+
# =======================
65+
# Contributor Analysis (Monthly)
66+
# =======================
5567
- name: Run Contributor Analysis
5668
if: steps.monthly-run.outputs.is_monthly == 'true'
5769
continue-on-error: true # Continue even if this step fails
@@ -79,6 +91,9 @@ jobs:
7991
8092
echo "✅ Contributor analysis complete"
8193
94+
# =======================
95+
# Tenzing Data Processing
96+
# =======================
8297
- name: Install Python dependencies
8398
run: python3 -m pip install -r ./requirements.txt
8499

@@ -109,6 +124,9 @@ jobs:
109124
fi
110125
done
111126
127+
# =======================
128+
# Google Analytics Data
129+
# =======================
112130
- name: Download GA Data
113131
continue-on-error: true # Continue even if this step fails
114132
env:
@@ -185,12 +203,18 @@ jobs:
185203
GITHUB_TOKEN: ${{ secrets.FORRT_PAT }}
186204
GH_TOKEN: ${{ secrets.FORRT_PAT }}
187205

206+
# =======================
207+
# Google Scholar Citations
208+
# =======================
188209
- name: Run Google Scholar script
189210
continue-on-error: true
190211
run: python3 scripts/gs-cite/google_scholar.py
191212
env:
192213
SERPAPI: ${{ secrets.SERPAPI }}
193214

215+
# =======================
216+
# Artifact Upload
217+
# =======================
194218
- name: Upload data artifact
195219
id: upload-artifact
196220
uses: actions/upload-artifact@v4

.github/workflows/deploy.yaml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: deploy
22

3+
# =======================
4+
# FORRT Website Deployment
5+
# =======================
6+
# Purpose: Build and deploy the FORRT Hugo website
7+
# Triggers: Push to master, PRs, or manual dispatch
8+
# Target: Production deployment
9+
310
on:
411
push:
512
branches:
@@ -25,12 +32,18 @@ jobs:
2532
HUGO_VERSION: "0.123.3"
2633
HUGO_EXTENDED: true
2734
steps:
35+
# =======================
36+
# Repository Setup
37+
# =======================
2838
- name: Checkout repository
2939
uses: actions/checkout@v4
3040
with:
3141
ref: ${{ github.event.inputs.pr_number || github.ref }}
3242
fetch-depth: 0
3343

44+
# =======================
45+
# Data Artifact Retrieval
46+
# =======================
3447
- name: Try to download data artifact
3548
id: download-artifact
3649
uses: dawidd6/action-download-artifact@07ab29fd4a977ae4d2b275087cf67563dfdf0295
@@ -41,6 +54,9 @@ jobs:
4154
path: .
4255
github_token: ${{ secrets.GITHUB_TOKEN }}
4356

57+
# =======================
58+
# Fallback Data Processing
59+
# =======================
4460
- name: Run data processing if needed
4561
if: steps.download-artifact.outcome == 'failure'
4662
env:
@@ -67,12 +83,18 @@ jobs:
6783
fi
6884
6985
86+
# =======================
87+
# Hugo Build Environment
88+
# =======================
7089
- name: Setup Hugo
7190
uses: peaceiris/actions-hugo@75d2e84710de30f6ff7268e08f310b60ef14033f
7291
with:
7392
hugo-version: ${{ env.HUGO_VERSION }}
7493
extended: ${{ env.HUGO_EXTENDED }}
7594

95+
# =======================
96+
# Website Build
97+
# =======================
7698
- name: Build site
7799
run: |
78100
if [ "$BRANCH" != 'refs/heads/master' ]; then
@@ -83,6 +105,9 @@ jobs:
83105
env:
84106
BRANCH: ${{ github.ref }}
85107

108+
# =======================
109+
# Deployment Artifact
110+
# =======================
86111
- name: Upload site artifact
87112
uses: actions/upload-artifact@v4
88113
with:

.github/workflows/gemini-dispatch.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: '🔀 Gemini Dispatch'
22

3+
# =======================
4+
# AI Assistant Dispatch
5+
# =======================
6+
# Purpose: Dispatches AI assistant requests from PR comments and reviews
7+
# Triggers: PR review comments, PR reviews, and PR events
8+
# Features: AI command parsing and workflow triggering
9+
310
on:
411
pull_request_review_comment:
512
types:

.github/workflows/gemini-invoke.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: '▶️ Gemini Invoke'
22

3+
# =======================
4+
# AI Assistant Invocation
5+
# =======================
6+
# Purpose: Invokes AI assistant for code analysis and suggestions
7+
# Triggers: Called by other workflows (workflow_call)
8+
# Features: AI-powered code review and automated feedback
9+
310
on:
411
workflow_call:
512
inputs:

.github/workflows/gemini-review.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: '🔎 Gemini Review'
22

3+
# =======================
4+
# AI-Powered Code Review
5+
# =======================
6+
# Purpose: Provides automated code review using Google Gemini AI
7+
# Triggers: Called by other workflows (workflow_call)
8+
# Features: Code analysis, suggestions, and automated feedback
9+
310
on:
411
workflow_call:
512
inputs:

.github/workflows/gemini-triage.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: '🔀 Gemini Triage'
22

3+
# =======================
4+
# AI-Powered Issue Triage
5+
# =======================
6+
# Purpose: Automatically triages issues and PRs using AI
7+
# Triggers: Called by other workflows (workflow_call)
8+
# Features: AI-powered categorization, labeling, and routing
9+
310
on:
411
workflow_call:
512
inputs:

0 commit comments

Comments
 (0)