feat(docs): Add AGENTS.md and Copilot instructions#3121
feat(docs): Add AGENTS.md and Copilot instructions#3121google-oss-prow[bot] merged 4 commits intokubeflow:masterfrom
Conversation
|
@andreyvelich: GitHub didn't allow me to request PR reviews from the following users: osamaahmed17. Note that only kubeflow members and repo collaborators can review this PR, and authors cannot review their own PRs. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
There was a problem hiding this comment.
Pull request overview
This PR introduces documentation to guide AI agents and improve code review effectiveness. It establishes development conventions, repository structure, and review guidelines for both automated tools and human contributors.
Changes:
- Added comprehensive agent guidelines covering behavior policies, development workflow, and coding standards
- Added Copilot-specific review instructions to focus on high-confidence, actionable feedback
- Documented repository structure, tooling, and testing requirements across Go, Python, and Rust
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| AGENTS.md | Provides comprehensive guidelines for AI agents and contributors, including repository structure, development workflow, and language-specific coding standards |
| .github/copilot-instructions.md | Defines code review philosophy and priorities for GitHub Copilot to ensure focused, high-confidence feedback |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
AGENTS.md
Outdated
| Agents must NOT: | ||
|
|
||
| - Bypass tests or linters | ||
| - Introduce dependencies without updating `go.mod` (Go) or `pyproject.toml` (Python) or `cargo.toml` (Rust) |
There was a problem hiding this comment.
Corrected filename 'cargo.toml' to 'Cargo.toml' - Rust uses capitalized Cargo.toml as the standard manifest filename.
| - Introduce dependencies without updating `go.mod` (Go) or `pyproject.toml` (Python) or `cargo.toml` (Rust) | |
| - Introduce dependencies without updating `go.mod` (Go) or `pyproject.toml` (Python) or `Cargo.toml` (Rust) |
AGENTS.md
Outdated
|
|
||
| - File names must have `*_test.go` postfix | ||
| - Use dictionary to define test cases | ||
| - Test functions must have the same name as |
There was a problem hiding this comment.
Incomplete sentence - appears to be cut off mid-thought. Should specify what test functions must have the same name as (likely 'the function being tested').
| - Test functions must have the same name as | |
| - Test functions must have the same name as the function being tested, prefixed with `Test` |
Signed-off-by: Andrey Velichkevich <andrey.velichkevich@gmail.com>
ee5b36e to
a963f3d
Compare
Pull Request Test Coverage Report for Build 21365977695Details
💛 - Coveralls |
Signed-off-by: Andrey Velichkevich <andrey.velichkevich@gmail.com>
@andreyvelich , is it possible for you to add me as a Kubeflow member? |
|
@osamaahmed17: changing LGTM is restricted to collaborators DetailsIn response to this: Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@osamaahmed17 Sure, please create PR to add yourself to the Kubeflow org: https://github.com/kubeflow/internal-acls |
| AI agents should: | ||
|
|
||
| - Make atomic, minimal, and reversible changes. | ||
| - Prefer local analysis (e.g. `make generate`, `make fmt`, `make test`, `make test-python`) before proposing commits. |
There was a problem hiding this comment.
Should we mention about scanning for vulnerabilities in the generated code or dependencies introduced?
.github/copilot-instructions.md
Outdated
|
|
||
| - Code that violates existing patterns in the codebase | ||
| - Missing error handling | ||
| - Code that is not following [Effective Go](https://go.dev/doc/effective_go) best practices |
There was a problem hiding this comment.
Should mention about python, rust as well
| - Match import patterns from neighboring files | ||
| - Preserve existing logging and error-handling conventions | ||
| - Understand the plugin architecture and extension framework before modifying runtime code | ||
| - Review CRD schemas in `pkg/apis/` before changing API structures |
There was a problem hiding this comment.
call out breaking api changes wherever required
|
|
||
| - **CRD schemas** (`pkg/apis/trainer/v1alpha1`): Changes require careful review | ||
| - Adding fields: Use `+optional` marker and provide defaults | ||
| - Removing/renaming fields: Requires API version bump and migration plan |
There was a problem hiding this comment.
Should mention using CEL validation whenever applicable - https://kubernetes.io/docs/reference/using-api/cel/
Signed-off-by: Andrey Velichkevich <andrey.velichkevich@gmail.com>
Signed-off-by: Andrey Velichkevich <andrey.velichkevich@gmail.com>
|
Thanks for review @akshaychitneni! |
There was a problem hiding this comment.
/approve
/assign @akshaychitneni @akshaychitneni @osamaahmed17 @franciscojavierarceo
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: andreyvelich The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
I added the AGENTS.md and Copilot instructions to make our code review more useful.
Copilot instructions are mostly inspired by the Goose project, let's see if that will help us.
/cc @astefanutti @kramaranya @tenzen-y @franciscojavierarceo @akshaychitneni @jaiakash @Electronic-Waste @osamaahmed17