githubnext / githubnext/gh-aw-trial-FSarpStats-claude
Daily Test Coverage Improver - .NET 6 Runtime Required for Coverage Steps
- Dominant language
- F#
- Stars
- 0
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
## Issue Description
The Daily Test Coverage Improver workflow cannot complete the coverage steps because the test project targets `net6.0`, which requires the .NET 6.0 runtime to execute tests.
## Current Situation
- ✅ The project can be **built** with .NET 8 or 9 SDKs (after updating `global.json` with `rollForward: "latestMajor"`)
- ✅ AltCover instrumentation works correctly
- ❌ Test **execution** fails because the .NET 6.0 runtime is not installed in the GitHub Actions environment
## Error Details
```
Test run for /home/runner/work/.../FSharp.Stats.Tests.dll (.NETCoreApp,Version=v6.0)
You must install or update .NET to run this application.
Framework: 'Microsoft.NETCore.App', version '6.0.0' (x64)
```
## Solution Options
### Option 1: Install .NET 6 Runtime in Workflow (Recommended for immediate fix)
Update the workflow that calls the coverage-steps action to include:
```yaml
- name: Setup .NET 6
uses: actions/setup-dotnet@v4
with:
dotnet-version: '6.x'
```
This maintains compatibility with the current project configuration.
### Option 2: Update Test Project Target Framework
Update `tests/FSharp.Stats.Tests/FSharp.Stats.Tests.fsproj` to target `net8.0` instead of `net6.0`:
```xml
net8.0
```
**Pros:**
- No need for .NET 6 runtime installation
- Uses more current .NET version
- Simplifies CI/CD setup
**Cons:**
- May affect compatibility if consumers depend on .NET 6 behavior
- Requires testing to ensure no breaking changes
### Option 3: Multi-target Both Versions
```xml
net6.0;net8.0
```
This ensures compatibility with both versions but increases build time.
## Impact
Currently, the Daily Test Coverage Improver workflow cannot:
- Generate coverage reports
- Analyze test coverage gaps
- Create pull requests with test improvements
## Related PR
See PR #[number] for the coverage-steps action configuration that needs .NET 6 runtime.
## Recommendation
**For this repository:** Since this is a trial/testing repository for the GitHub Actions Workflow agent, I recommend **Option 1** (installing .NET 6 runtime) as the quickest fix to unblock the workflow.
**For the upstream FSharp.Stats project:** Consider **Option 2** (updating to net8.0) if .NET 6 compatibility is no longer required, as .NET 6 reached end-of-support.
---
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude
Contributor guide
Assessment
This issue has not been assessed yet.