Add Go 1.20+ coverage workflow for e2e and unit test merge#191
Draft
Copilot wants to merge 7 commits intofix/coverage-checkfrom
Draft
Add Go 1.20+ coverage workflow for e2e and unit test merge#191Copilot wants to merge 7 commits intofix/coverage-checkfrom
Copilot wants to merge 7 commits intofix/coverage-checkfrom
Conversation
…overage workflow Co-authored-by: lbeckman314 <15309567+lbeckman314@users.noreply.github.com>
Co-authored-by: lbeckman314 <15309567+lbeckman314@users.noreply.github.com>
Co-authored-by: lbeckman314 <15309567+lbeckman314@users.noreply.github.com>
Co-authored-by: lbeckman314 <15309567+lbeckman314@users.noreply.github.com>
Co-authored-by: lbeckman314 <15309567+lbeckman314@users.noreply.github.com>
Co-authored-by: lbeckman314 <15309567+lbeckman314@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add end-to-end coverage capture and merge workflow
Add Go 1.20+ coverage workflow for e2e and unit test merge
Jan 30, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements repeatable coverage capture from instrumented CLI binaries (e2e/integration tests) and merging with unit test coverage using Go 1.20+
GOCOVERDIRsupport.Changes
tests/scripts/coverage/run-e2e-coverage.sh(new)go build -cover -covermode=atomic -coverpkg=./...GOCOVERDIRfor raw coverage capture during e2e executiongo tool covdata textfmtend-to-endorend-2-endscript locationstests/scripts/coverage/combine-coverage.sh(updated)gocovmergewith nativego tool covdata mergetests/scripts/end-to-end/e2e.sh(new)git-drs versionandgit-drs --helpUsage
Notes
atomicmode (counter mode mismatch causes merge failure)*/raw/) are gitignored; profiles (*.out) remain trackedOriginal prompt
This section details on the original issue you should resolve
<issue_title>feature/coverage-capture-and-merge</issue_title>
<issue_description>
Feature Request: End-to-End Coverage Capture and Merge Workflow
--
Use Case
Teams want a repeatable way to capture coverage from integration/end-to-end runs (that execute the CLI binaries) and merge that data with unit test coverage. Go 1.20+ provides
GOCOVERDIRsupport for instrumented binaries, but the current workflow is manual and error-prone. This feature request proposes a documented, script-driven flow that:git-drsbinary for integration tests.See #130
Integrated into the workflow:
commitsintegration-coverage-fileProposed Solution
Add and document two scripts:
tests/scripts/coverage/run-e2e-coverage.shgit-drsbinary (go build -cover -covermode=atomic -coverpkg=./...).GOCOVERDIRto capture raw coverage data.go tool covdata textfmt.tests/scripts/coverage/combine-coverage.shgo tool covdata merge.go tool covdata textfmt.Acceptance Tests
creates a coverage profile at
coverage/integration/coverage.out.2. Coverage merge
GOCOVERDIR=coverage/unit/rawand integration coverage is captured intocoverage/integration/raw, running:creates
coverage/combined.out.3. Combined profile is readable
prints coverage data without errors.
Shell Scripts
tests/scripts/coverage/run-e2e-coverage.shtests/scripts/coverage/combine-coverage.sh</issue_description>
Comments on the Issue (you are @copilot in thi...
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.