-
Notifications
You must be signed in to change notification settings - Fork 199
Open
Labels
cookieIssue Monster Loves Cookies!Issue Monster Loves Cookies!improvementrefactoringshared-component
Description
Skill Overview
Extract the common daily report discussion configuration pattern into a reusable shared component. Currently, 30+ workflows matching the daily-* pattern contain nearly identical safe-outputs configuration for creating discussions with auto-expiration and cleanup.
Current Usage
This configuration pattern appears in the following workflows:
-
daily-issues-report.md(lines 19-29) -
daily-code-metrics.md(lines 20-25) -
daily-firewall-report.md(lines 20-27) -
daily-performance-summary.md(lines 21-30) -
daily-observability-report.md(similar pattern) -
daily-team-evolution-insights.md(similar pattern) -
daily-compiler-quality.md(similar pattern) -
daily-safe-outputs-conformance.md(similar pattern) -
daily-secrets-analysis.md(similar pattern) -
daily-security-red-team.md(similar pattern) -
daily-doc-updater.md(similar pattern) -
daily-workflow-updater.md(similar pattern) -
daily-cli-performance.md(similar pattern) -
daily-mcp-concurrency-analysis.md(similar pattern) - + 16 more daily-* workflows
Common Configuration Pattern
safe-outputs:
upload-asset:
create-discussion:
expires: 3d # Most use 3d, some use 2d or 1d
category: "general" # or "audits"
title-prefix: "[workflow-name] "
max: 1
close-older-discussions: true
close-discussion:
max: 10
timeout-minutes: 30
tracker-id: daily-workflow-nameProposed Shared Component
File: .github/workflows/shared/daily-report-discussion.md
Configuration:
---
# Daily Report Discussion Configuration
# Provides standard safe-outputs configuration for daily reporting workflows
# that create GitHub Discussions with automatic cleanup
safe-outputs:
upload-asset:
create-discussion:
expires: 3d
category: "general"
title-prefix: "[\$\{WORKFLOW_NAME}] "
max: 1
close-older-discussions: true
close-discussion:
max: 10
timeout-minutes: 30
tracker-id: \$\{TRACKER_ID}
---
# Daily Report Discussion Configuration
This shared component provides standard configuration for daily reporting workflows that create GitHub Discussions.
### Features
- **Automatic expiration**: Discussions expire after 3 days
- **Auto-cleanup**: Previous discussions are automatically closed
- **Single discussion**: Only 1 discussion created per run (max: 1)
- **Consistent timeout**: 30-minute timeout for analysis workflows
- **Deduplication**: tracker-id ensures no duplicate runs
### Usage
Import this component in your daily report workflow:
````yaml
imports:
- shared/daily-report-discussion.md
- shared/reporting.md
- shared/mood.mdCustomization
If you need different expiration (2d, 1d) or category ("audits"), you can override:
imports:
- shared/daily-report-discussion.md
safe-outputs:
create-discussion:
expires: 2d # Override to 2 days
category: "audits" # Override category
**Usage Example**:
````yaml
# In daily-issues-report.md (BEFORE)
---
description: Daily report analyzing repository issues
on: daily
permissions:
contents: read
safe-outputs:
upload-asset:
create-discussion:
expires: 3d
category: "general"
title-prefix: "[daily issues] "
max: 1
close-older-discussions: true
close-discussion:
max: 10
timeout-minutes: 30
tracker-id: daily-issues-report
imports:
- shared/mood.md
- shared/reporting.md
---
# AFTER (saves 15 lines)
---
description: Daily report analyzing repository issues
on: daily
permissions:
contents: read
imports:
- shared/daily-report-discussion.md
- shared/mood.md
- shared/reporting.md
---
Impact
- Workflows affected: 30+ workflows
- Lines saved: ~20 lines per workflow × 30 = ~600 lines
- Maintenance benefit: Update expiration policy in one place instead of 30
- Consistency: Ensures all daily reports follow the same cleanup pattern
- Discoverability: Makes the daily report pattern more discoverable for new workflows
Implementation Plan
- Create shared component at
.github/workflows/shared/daily-report-discussion.md - Test with 2-3 sample workflows (daily-issues-report, daily-code-metrics, daily-firewall-report)
- Validate that discussions are created and cleaned up correctly
- Update remaining 27+ daily-* workflows to use the shared component
- Document in AGENTS.md or workflow documentation
- Update any workflow templates or examples
Related Analysis
This recommendation comes from the Workflow Skill Extractor analysis run on 2026-02-15.
Analysis findings:
- 154 total workflows analyzed
- 30 workflows use this exact pattern
- Potential to save ~600 lines of configuration
- Standardizes daily report behavior across the repository
Generated by Workflow Skill Extractor
- expires on Feb 17, 2026, 4:20 PM UTC
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
cookieIssue Monster Loves Cookies!Issue Monster Loves Cookies!improvementrefactoringshared-component