ci: verify examples and Copilot integration tests - #931
ci: verify examples and Copilot integration tests#931Michelle Clayton (michelle-clayton-work) wants to merge 6 commits into
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a scheduled GitHub Actions workflow that runs a minimal GitHub Copilot-backed example end-to-end via the existing cmd/verifyexamples harness, to continuously validate the Copilot provider integration without external secrets or Azure/Foundry setup.
Changes:
- Add a new Copilot “function tool canary” example that exposes a fixed tool result and prompts Copilot to include it in the final response.
- Register the new example in
cmd/verifyexampleswith output assertions to validate the run. - Add a new scheduled/manual GitHub Actions workflow to execute the example and upload logs/reports as artifacts.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| examples/02-agents/providers/github-copilot/function_tool/main.go | New minimal Copilot-backed agent example with a single fixed function tool and locked-down session config. |
| examples/02-agents/providers/github-copilot/function_tool/main_test.go | Unit test to verify the function tool returns the expected canary string. |
| cmd/verifyexamples/examples.go | Adds the Copilot canary example to the 02-agents verifyexamples set with must-contain / must-not-contain assertions. |
| .github/workflows/live-examples.yml | New scheduled/manual workflow that installs Copilot CLI, runs verifyexamples for the canary, writes a job summary, and uploads artifacts. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This comment has been minimized.
This comment has been minimized.
13490ce to
12076d7
Compare
|
API Consistency Review
This PR adds a CI workflow, modifies internal example-verification tooling (
|
Summary
Add scheduled and manually dispatched CI that runs every example supported by the configured credentials, then runs dedicated GitHub Copilot provider integration tests.
The first provider covered is GitHub Copilot. The workflow uses the short-lived
${{ github.token }}withcopilot-requests: write, so it does not require a repository secret, API key, Foundry project, or Azure setup. Examples for providers without configured credentials skip with their existing reasons.Copilot integration tests
Port an initial safe subset of
GitHubCopilotAgentTests.csfrom the .NET Agent Framework:The tests live in
provider/copilotprovider/agent_e2e_test.go. Ordinary test runs skip them. GitHub Actions runs them whenGITHUB_TOKENis available, and developers can opt in locally withRUN_COPILOT_INTEGRATION_TESTS=true.Shell, URL, and MCP integration cases are left for follow-up because they add external side effects or dependencies.
Example verification
Run the existing
cmd/verifyexamplescommand without a name filter. In the current Copilot-only configuration, the live workflow ran 24 available examples and skipped 83 unavailable examples with explicit reasons.Two fixed-input number-guessing examples now use their existing deterministic output checks instead of requiring Foundry semantic grading.
Authentication and safety
Validation
go test -count=1 ./...go vet ./cmd/verifyexamples ./provider/copilotprovidergit diff --checkThe live run passed all 24 available examples and all three Copilot integration tests.
Upstream reference