Skip to content

Conversation

@tuminoid
Copy link
Member

@tuminoid tuminoid commented Nov 5, 2025

Add AGENTS.md to allow AI assistants to be more effective, especially the Code Review Bot.

Note: do not create .github/copilot-instructions.md as it will prevent current version of Copilot CLI from reading AGENTS.md at all.

@metal3-io-bot metal3-io-bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 5, 2025
@metal3-io-bot
Copy link
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@metal3-io-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign tuminoid for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@metal3-io-bot metal3-io-bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Nov 5, 2025
@tuminoid tuminoid force-pushed the tuomo/add-copilot-instructions branch from 0c38454 to a6f253e Compare November 26, 2025 14:00
@metal3-io-bot metal3-io-bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Nov 26, 2025
@tuminoid tuminoid changed the title add copilot-instructions.md 📖 add AGENTS.md Nov 26, 2025
@tuminoid
Copy link
Member Author

/hold
Iterating in multiple repos. Reviews welcome.

@metal3-io-bot metal3-io-bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Nov 26, 2025
@tuminoid tuminoid marked this pull request as ready for review November 26, 2025 14:03
@metal3-io-bot metal3-io-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 26, 2025
@tuminoid tuminoid requested a review from Copilot November 26, 2025 14:09
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds comprehensive AI agent instructions through a new AGENTS.md file, designed to help AI coding assistants (especially Code Review Bots) work more effectively with the Ironic Standalone Operator codebase.

Key Changes:

  • Adds detailed project architecture documentation including CRDs, controllers, and directory structure
  • Provides complete development workflow guidance with Makefile targets, hack scripts, and CI/CD references
  • Documents code conventions including Go import aliases, shell script patterns, and testing guidelines
  • Includes behavioral guidelines specifically for AI agents working with the codebase

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@tuminoid tuminoid force-pushed the tuomo/add-copilot-instructions branch from a6f253e to cf1dd30 Compare November 26, 2025 14:54
@metal3-io-bot metal3-io-bot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Dec 2, 2025
Add AGENTS.md to allow AI assistants to be more effective, especially
the Code Review Bot.

Note: do not create .github/copilot-instructions.md as it will prevent
current version of Copilot CLI from reading AGENTS.md at all.

Signed-off-by: Tuomo Tanskanen <[email protected]>
@tuminoid tuminoid force-pushed the tuomo/add-copilot-instructions branch from bd35d7d to 985a218 Compare December 2, 2025 21:49
@metal3-io-bot
Copy link
Contributor

@tuminoid: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
markdownlint 985a218 link true /test markdownlint

Full PR test history. Your PR dashboard.

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-sigs/prow repository. I understand the commands that are listed here.

@metal3-io-bot metal3-io-bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Dec 2, 2025
@tuminoid
Copy link
Member Author

tuminoid commented Dec 2, 2025

I'll sort out the markdownlint in a bit. AGENTS.md is now ~100 lines, very compact.

Copy link
Member

@lentzi90 lentzi90 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks ok to me. I added some minor suggestions, mainly to try to reduce it a bit.

@lentzi90
Copy link
Member

lentzi90 commented Dec 3, 2025

Oh. I started reviewing yesterday. I see you updated since then 😄
Feel free to disregard

Copy link
Member

@lentzi90 lentzi90 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! This I like!
Short, to the point but still providing very useful information.
/lgtm

@metal3-io-bot metal3-io-bot added the lgtm Indicates that a PR is ready to be merged. label Dec 3, 2025
@tuminoid
Copy link
Member Author

tuminoid commented Dec 3, 2025

Nice! This I like! Short, to the point but still providing very useful information. /lgtm

Yeah, let's start with 100 lines (90% reduction), and amend if we find shortcomings. Sorry for making you read the old version :)

| `internal/controller/` | Reconciliation logic |
| `internal/webhook/` | Validation webhooks |
| `pkg/ironic/` | Core Ironic deployment logic |
| `config/` | Kustomize manifests (CRDs, RBAC, webhooks) |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I find it useful to highlight to the agent that these files are rarely modified directly, usually through some tag in the controller.


1. Make minimal, surgical edits
2. Run `make generate manifests` after API changes
3. Run `make test` before committing
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also make lint please, in my experience Claude keeps forgetting it

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duh, it was supposed to be there. Will fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. lgtm Indicates that a PR is ready to be merged. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants