-
Notifications
You must be signed in to change notification settings - Fork 21
Daily Test Coverage Improver - Updates to complete configuration #2260
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Daily Test Coverage Improver - Updates to complete configuration #2260
Conversation
This action provides comprehensive test coverage analysis infrastructure: - Runs Go tests with coverage profiling - Runs JavaScript tests with coverage - Generates detailed coverage reports and breakdowns - Identifies lowest coverage areas and zero-coverage functions - Uploads all coverage artifacts for analysis The action logs all steps to coverage-steps.log for debugging and transparency.
|
Agentic Changeset Generator triggered by this pull request. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds a composite GitHub Action to run comprehensive test coverage analysis for the gh-aw repository. The action sets up Go and Node.js environments, runs tests with coverage profiling, generates detailed analysis reports, and uploads all artifacts for the Daily Test Coverage Improver workflow to consume.
Key Changes:
- Introduces a new composite action that orchestrates complete test coverage generation and analysis
- Implements multi-language coverage support (Go and JavaScript/Vitest)
- Creates detailed coverage breakdowns including package-level metrics, low-coverage areas, and zero-coverage function lists
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| shell: bash | ||
| run: | | ||
| echo "=== Installing JavaScript Dependencies ===" | tee -a coverage-steps.log | ||
| cd pkg/workflow/js |
Copilot
AI
Oct 25, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The cd pkg/workflow/js command changes directory but the subsequent commands execute in a subshell. If the directory change fails (e.g., directory doesn't exist), the npm commands will execute in the wrong directory. Add error handling: cd pkg/workflow/js || exit 1
| cd pkg/workflow/js | |
| cd pkg/workflow/js || exit 1 |
| shell: bash | ||
| run: | | ||
| echo "=== Running JavaScript Tests with Coverage ===" | tee -a coverage-steps.log | ||
| cd pkg/workflow/js |
Copilot
AI
Oct 25, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The cd pkg/workflow/js command changes directory but lacks error handling. If the directory change fails, npm test will execute in the wrong directory. Add error handling: cd pkg/workflow/js || exit 1
| cd pkg/workflow/js | |
| cd pkg/workflow/js || exit 1 |
| npm ci 2>&1 | tee -a ../../coverage-steps.log | ||
| echo "" | tee -a ../../coverage-steps.log |
Copilot
AI
Oct 25, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The relative path ../../coverage-steps.log assumes specific directory nesting and could break if directory structure changes. Consider using $GITHUB_WORKSPACE/coverage-steps.log for a more robust absolute path reference.
| npm ci 2>&1 | tee -a ../../coverage-steps.log | |
| echo "" | tee -a ../../coverage-steps.log | |
| npm ci 2>&1 | tee -a $GITHUB_WORKSPACE/coverage-steps.log | |
| echo "" | tee -a $GITHUB_WORKSPACE/coverage-steps.log |
| npm test -- --coverage 2>&1 | tee -a ../../coverage-steps.log | ||
| EXIT_CODE=${PIPESTATUS[0]} | ||
| echo "" | tee -a ../../coverage-steps.log |
Copilot
AI
Oct 25, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The relative path ../../coverage-steps.log assumes specific directory nesting and could break if directory structure changes. Consider using $GITHUB_WORKSPACE/coverage-steps.log for a more robust absolute path reference.
Daily Test Coverage Improver - Coverage Steps Configuration
This PR adds the coverage steps action that will be used by the Daily Test Coverage Improver workflow to run comprehensive test coverage analysis.
What This PR Adds
.github/actions/daily-test-improver/coverage-steps/action.ymlA composite GitHub Action that:
coverage.outandcoverage.htmlcoverage-steps.login repository rootcoverageartifactCoverage Reports Generated
The action generates several valuable reports:
coverage.html- Interactive HTML coverage visualizationcoverage.out- Raw coverage profile for toolingcoverage-summary.txt- Function-level coverage summarypackage-coverage.txt- Coverage breakdown by packagelow-coverage-areas.txt- Top 30 functions needing testszero-coverage-sample.txt- Sample of uncovered functionscoverage-steps.log- Complete execution logHow This Will Be Used
The Daily Test Coverage Improver workflow will:
coverageartifactTesting Plan
After this PR is merged, I will:
Please Review
Important: Please review this action carefully to ensure:
The action is designed to be self-contained and transparent, logging all operations to
coverage-steps.logfor easy debugging.Related
AI generated by Daily Test Coverage Improver