-
Notifications
You must be signed in to change notification settings - Fork 43
Add comprehensive project safe-output testing to smoke-copilot workflow #13029
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
Conversation
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
✨ The prophecy is fulfilled... Smoke Codex has completed its mystical journey. The stars align. 🌟 |
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
🎉 Yo ho ho! Changeset Generator found the treasure and completed successfully! ⚓💰 |
|
🎬 THE END — Smoke Claude MISSION: ACCOMPLISHED! The hero saves the day! ✨ |
Agent Container Tool Check
Result: 10/12 tools available Missing tools: java, dotnet
|
|
Smoke test (Codex)
|
|
✅ PASS - Copilot smoke test §21556383794 PRs:
Tests: 8/9 passed
|
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤 |
Smoke Test: Claude - PASS ✅Last 2 Merged PRs:
Overall: PASS
|
🔍 PR Triage ResultsCategory: test | Risk: medium | Priority: 30/100 Scores Breakdown
📋 Recommended Action: DeferThis PR is currently in draft status. Will be re-triaged once marked as ready for review. Current Status:
Next Steps:
Batch Info: Part of Triaged by PR Triage Agent on 2026-02-01
|
|
@copilot Consider integrating some of the smoke tests from this PR #13043 to make it more safe and robust. We either want to be testing with invalid project or with the dedicated one at "https://github.com/orgs/github-agentic-workflows/projects/1". |
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Updated to use the dedicated test project at
Changes committed in 66e40c0. |
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Reverted to use the fake/nonexistent project (
Changes committed in 1e5429d. |
|
@copilot Is there value in testing this if most tests will fail given no real project board? |
Good point. The test still validates several important aspects even with expected failure:
However, if you'd prefer a test that can actually succeed, we have two options:
Which approach would you prefer for this smoke test? |
|
@copilot Keep the current approach and add more tests for view creation, field creation, field update and project status udpdate. |
…pdates Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Added comprehensive project testing in test #9. The workflow now validates: a. Draft Issue Creation - Creates draft issue with multiple fields (Status, Priority) b. Field Update - Updates existing draft issue fields (Status: Todo→In Progress, Priority: High→Medium) c. View Creation - Auto-creates two views via safe-outputs config:
d. Project Status Update - Creates project status update with body and ON_TRACK status e. Verification - Each operation validates message formatting, project URL auto-population, and field structure Also increased Changes committed in 0305a19. |
|
@copilot Also add tests for update-project for field creation, issue creation and pr creation |
…ects Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Added additional tests to validate field creation, issue addition, and PR addition. Test 9 now includes: b. Field Creation with New Fields - Tests creating custom fields (Team, Sprint) alongside standard fields (Status, Priority) d. Existing Issue Addition - Finds an open issue from the repository and adds it to the project with e. Existing PR Addition - Finds an open PR from the repository and adds it to the project with Also increased
Changes committed in ccefc08. |
|
@copilot Add tests for project related safe outputs with and without top-level project field present to ensure proper scoping at all times. |
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Added test 10 to validate proper project scoping with and without the top-level project field. The test includes: a. With Top-Level Project (Default Scoping) - Calls b. Explicit Project Override - Calls c. Status Update with Default Project - Calls d. Status Update with Explicit Project - Calls e. Scoping Verification - Validates:
Also increased Changes committed in 875ef47. |
Extends smoke-copilot workflow to validate project-related safe-output functionality with a nonexistent test project, including update_project, view creation, field operations, status updates, and project scoping validation.
Changes
projectfield pointing tononexistent-test-org-12345/projects/99999(fake project) as default for safe-output operationsupdate-projecthandler with max 20 operations and auto-created views:create-project-status-updatehandler with max 5 operationscontent_type: "issue"content_type: "pull_request"update_projectwithout project field to verify frontmatter default is usedupdate_projectwith explicit different project URL to verify override capabilitycreate_project_status_updatewithout project field using frontmatter defaultcreate_project_status_updatewith explicit project URLThe project URL uses a nonexistent project to prevent pollution of real repositories. All tests validate message formatting, tool invocation, and scope isolation. Project URL auto-populates from frontmatter when not specified in safe-output messages.
{ "type": "update_project", "content_type": "draft_issue", "draft_title": "Smoke Test Draft Issue - Run ...", "draft_body": "Test draft issue for smoke test validation", "fields": {"Status": "Todo", "Priority": "High"} }{ "type": "update_project", "content_type": "issue", "content_number": 12345, "fields": {"Status": "In Review", "Priority": "Low"} }{ "type": "update_project", "content_type": "pull_request", "content_number": 67, "fields": {"Status": "In Progress", "Priority": "High"} }{ "type": "create_project_status_update", "body": "Smoke test project status - Run ...", "status": "ON_TRACK" }Testing Approach
The tests focus on validating safe-output message structure and tool invocation without polluting real repositories. Tests are expected to fail (project doesn't exist), which confirms that the scope remains within the configured project, message formatting is correct, and no real repositories or issues are modified. This approach validates the complete safe-outputs system for project operations including draft issues, custom field creation, field updates, adding existing issues/PRs, view creation, status updates, and proper project scoping with and without top-level project field configuration. Even though operations fail, the test confirms that real issues and PRs are correctly referenced in safe-output messages without actually modifying them, and that project scoping behaves correctly with auto-population and explicit overrides.
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.