[v6.0.x] AGENTS: add a AGENTS file in ompi/tests - #14365
Merged
Merged
Conversation
I've been noticing that my agents end up spending a good deal of tokens and money (which I just ran out of) trying to re-figure out how the various parts and pieces work in ompi/tests. Here's what my agent said about this file it wrote: Yes, I think a scoped `AGENTS.md` is a good idea here, and I've created one, following the same pattern as the existing `ompi/mpiext/AGENTS.md`. It covers exactly the friction points from the earlier task: 1. **A table mapping every `ompi/test/` subdirectory** to its scope and — critically — how it's actually run (`make check` vs. `make check-abi` vs. `make check-mpirun` vs. "built but not run"), so an agent doesn't have to read a dozen `Makefile.am`s to figure out `spc`/`monitoring` are `noinst_PROGRAMS`, or that `mpirun/` needs an install first. 2. **Cross-cutting conventions** every simple directory follows (the `Makefile.mca-dso-check` include, the `libmpi`+`libopen_mpi`+`libopen-pal` LDADD pattern, the "editing `Makefile.am` only needs `make`" rule, and the single-process-by-design scope of most directories). 3. **A dedicated `mpi-abi/` deep-dive** — this was the single biggest time sink last time: it explains the case-table → `.cbody.in`/`.prologue.in` → generated-C pipeline, the required `EXTRA_DIST` wiring (the mistake I actually made and had to fix), the optional table keys (`requires_feature`, `skip_exit_codes`, etc.), and gives copy-pasteable commands (verified to work, just re-ran them) for iterating on a probe before touching the Makefile, plus the full install-then-`check-abi` sequence. 4. **A decision guide** at the end so an agent can quickly pick the right home for a new test instead of defaulting to the wrong directory. I verified every factual claim in the document against the actual `Makefile.am`s and against live runs (`test_abi_units.py`, the probe-rendering snippet, and cross-checked the `spc`/`monitoring` "not run by make check" claim against their `noinst_PROGRAMS` declarations) rather than guessing.:q Signed-off-by: Howard Pritchard <howardp@lanl.gov> (cherry picked from commit 8480ded)
devreal
approved these changes
Aug 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Backport of #14359 to
v6.0.x.I've been noticing that my agents end up spending a good deal of tokens and money (which I just ran out of) trying to re-figure out how the various parts and pieces work in ompi/tests.
Here's what my agent said about this file it wrote:
Yes, I think a scoped
AGENTS.mdis a good idea here, and I've created one, following the same pattern as the existingompi/mpiext/AGENTS.md.It covers exactly the friction points from the earlier task:
ompi/test/subdirectory to its scope and — critically — how it's actually run (make checkvs.make check-abivs.make check-mpirunvs. "built but not run"), so an agent doesn't have to read a dozenMakefile.ams to figure outspc/monitoringarenoinst_PROGRAMS, or thatmpirun/needs an install first.Makefile.mca-dso-checkinclude, thelibmpi+libopen_mpi+libopen-palLDADD pattern, the "editingMakefile.amonly needsmake" rule, and the single-process-by-design scope of most directories).mpi-abi/deep-dive — this was the single biggest time sink last time: it explains the case-table →.cbody.in/.prologue.in→ generated-C pipeline, the requiredEXTRA_DISTwiring (the mistake I actually made and had to fix), the optional table keys (requires_feature,skip_exit_codes, etc.), and gives copy-pasteable commands (verified to work, just re-ran them) for iterating on a probe before touching the Makefile, plus the full install-then-check-abisequence.I verified every factual claim in the document against the actual
Makefile.ams and against live runs (test_abi_units.py, the probe-rendering snippet, and cross-checked thespc/monitoring"not run by make check" claim against theirnoinst_PROGRAMSdeclarations) rather than guessing.:q