Skip to content

chore: AGENTS.md file COR-1031#2148

Open
schell wants to merge 2 commits intomainfrom
chore/agents-md
Open

chore: AGENTS.md file COR-1031#2148
schell wants to merge 2 commits intomainfrom
chore/agents-md

Conversation

@schell
Copy link
Contributor

@schell schell commented Feb 16, 2026

Thes adds an initial AGENTS.md file (for humans and others).

@codecov
Copy link

codecov bot commented Feb 16, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.86%. Comparing base (e558d8c) to head (a9ef571).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2148   +/-   ##
=======================================
  Coverage   73.86%   73.86%           
=======================================
  Files         227      227           
  Lines       37518    37518           
=======================================
  Hits        27712    27712           
  Misses       9806     9806           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Contributor

@nullcopy nullcopy left a comment

Choose a reason for hiding this comment

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

First, I love this. As I think about it though, I think this should be done as part of a broader review of our contribution policies.

For example, much of this feels like general contribution guidelines and may more appropriately belong in CONTRIBUTING.md. AGENTS.md could/should include a directive to read and adhere to those guidelines, AND we should make sure those guidelines are efficient (this is good for humans as much as LLMs)

I also really like how Zebra adds "compliance checks" at the beginning. This way an LLM will warn the user if their PR is likely to be reject. This saves the users time AND the maintainers time.

The latter point becomes much more effective when coupled with some of the policy changes like ZFND recently made; namely that PRs may/will be closed without review IFF there is no pre-existing issue with sufficient conversation history to justify beginning work. For this reason, I think this should be done as a broader review of our contribution policies.

- Provide side-effect capabilities as explicit trait arguments (e.g., `clock: impl Clock`).
- Define capability traits in terms of domain types, not implementation details.

## Architecture Patterns
Copy link
Contributor

@nullcopy nullcopy Feb 16, 2026

Choose a reason for hiding this comment

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

I feel like a Crate Architecture section like what zebra/AGENST.md has would be very helpful context for an LLM

Copy link
Collaborator

Choose a reason for hiding this comment

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

We have this information in a Mermaid graph in the README; perhaps we should reference that?

- Provide side-effect capabilities as explicit trait arguments (e.g., `clock: impl Clock`).
- Define capability traits in terms of domain types, not implementation details.

## Architecture Patterns
Copy link
Collaborator

Choose a reason for hiding this comment

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

We have this information in a Mermaid graph in the README; perhaps we should reference that?

- Each commit that alters public API must also update docs and changelog in the same commit.
- Use `git revise` to maintain clean history within a PR.
- Commit messages: short title (<120 chars), body with motivation for the change.

Copy link
Collaborator

Choose a reason for hiding this comment

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

We need to add a section on branching: merge-based workflow (no squash merges permitted), branch based on maintenance branches when making bug fixes to released code, we enforce strict Rust-Flavored SemVer compliance (we consider MSRV bumps to be SemVer breaking changes), and therefore we require that fixes be branched from the earliest existing maint/ branch for the crate in question so that we're able to make a semver compatible release with the fix. If no maint/ branch is available, the branch should be from the latest release tag from the crate in question at the Rust-flavored semver "breaking" (x.y.z or 0.x.y) version depended upon by the earliest maint/zcash_client_sqlite branch available.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I'll add this, but it may be out of scope for an agent. Unless you want your agent branching and committing for you. I don't, and I don't want to imply that an agent should take these steps on my behalf, but the proof is in the pudding.

Copy link
Collaborator

@nuttycom nuttycom Feb 19, 2026

Choose a reason for hiding this comment

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

What I want from this is for the agent to take branching & semver compatibility into consideration; basically, to prompt me to branch from (or rebase to) earlier when/if it can.

@schell schell requested review from nullcopy and nuttycom February 18, 2026 04:55
@schell
Copy link
Contributor Author

schell commented Feb 18, 2026

All valid concerns @nullcopy and @nuttycom. I've made some changes to try to address them 👍 . I don't want the scope to creep too much here though. This is a rather large AGENTS.md file (I think typically they're ~150 lines). We just need to get something in place as a starting point and then we'll find out what's working and what's not as we get our work done.

@nuttycom
Copy link
Collaborator

I opened a similar PR on zcash/wallet; we should consider (a) reproducing some of the changes I made to that CONTRIBUTING.md here, and (b) unify our approach to AGENTS.md: zcash/wallet#377

@schell schell changed the title chore: AGENTS.md file chore: AGENTS.md file COR-1031 Feb 23, 2026
@linear
Copy link

linear bot commented Feb 23, 2026

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants