-
Notifications
You must be signed in to change notification settings - Fork 500
[Copilot] Add instructions for OpenTelemetry C++ #3614
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
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3614 +/- ##
=======================================
Coverage 90.03% 90.03%
=======================================
Files 220 220
Lines 7069 7069
=======================================
Hits 6364 6364
Misses 705 705 🚀 New features to boost your workflow:
|
Co-authored-by: lalitb <1196320+lalitb@users.noreply.github.com>
@copilot - Running maintainer's build is an important step, to ensure all warnings are resolved. Pleas add that as the validation step. |
Co-authored-by: lalitb <1196320+lalitb@users.noreply.github.com>
Added maintainer mode validation as a critical step throughout the instructions. The updates emphasize that |
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.
LGTM as first version, something we can iterate/improve in future based on the copilot behavior.
Ok to merge for me, but waiting on others for comment, as this is the very first copilot pr. |
Merging for now, comments if any to be added in subsequent PRs |
This PR adds a comprehensive
.github/copilot-instructions.md
file that provides GitHub Copilot coding agents with detailed instructions for working effectively in the OpenTelemetry C++ codebase, with special emphasis on maintainer mode validation to ensure warning-free code.Key Features
Exhaustive Build Validation: All commands have been tested and validated with accurate timing measurements:
./ci/do_ci.sh cmake.test
- 5.2 minutes)./tools/format.sh
- 17 seconds)Critical Maintainer Mode Validation: Emphasizes the importance of running maintainer builds to catch all warnings:
./ci/do_ci.sh cmake.maintainer.sync.test
as a critical validation step-Wall -Werror -Wextra
compiler flagsCritical Timeout Guidance: Includes explicit "NEVER CANCEL" warnings for long-running operations with specific timeout recommendations to prevent premature build cancellation.
Complete Development Workflow: Documents both CMake and Bazel build systems, example execution, validation scenarios, and troubleshooting guidance with maintainer mode validation integrated throughout.
Repository Navigation: Provides a comprehensive guide to key directories (
api/
,sdk/
,exporters/
,examples/
,ci/
,tools/
) and important files.Enhanced Validation Scenarios: Includes specific steps for validating changes with maintainer mode:
Real-World Testing: Every command and workflow has been validated in a fresh environment to ensure the instructions work reliably for any developer acquiring a fresh clone.
The instructions follow an imperative tone ("Run this command", "Do not do this") and prioritize actionable guidance over verbose explanations, making them ideal for AI coding assistants. The maintainer mode validation ensures all contributions meet the project's strict warning standards.
Fixes #3613.
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.