From 9549caf82bc97b0fc4c539d724f004e26ee773cb Mon Sep 17 00:00:00 2001 From: Filip Leonarski Date: Wed, 5 Aug 2026 16:48:50 +0200 Subject: [PATCH] docs: do not run the whole test suite locally, and do not push Running bare `./jfjoch_test` costs far more time than it is worth on a developer machine, and CI runs the full suite on every push regardless; the useful local run is the cases or tags covering the code that changed. Same reasoning for the 37-crystal rotation battery - it belongs on changes that plausibly move merged results, not on every edit. Also record that pushing is the maintainer's decision, not part of "make the change". Co-Authored-By: Claude Opus 5 (1M context) --- CLAUDE.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 5720a3a5..d008eafc 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -78,12 +78,21 @@ Tests use **Catch2** and are collected into a single binary `tests/jfjoch_test`. ``` make -j$(nproc) jfjoch_test cd tests -./jfjoch_test # all tests ./jfjoch_test "" # one test case (exact name in TEST_CASE) +./jfjoch_test "Prefix*" # by name prefix ./jfjoch_test "[tag]" # by tag ./jfjoch_test -r junit -o report.xml ``` +**Do not run the whole suite** (`./jfjoch_test` with no filter). It takes far too long to be worth +running locally, and **CI runs it on every push anyway**. Run only the cases or tags covering the +code you changed and stop there; a bare `./jfjoch_test` is justified only for a genuinely sweeping +change. The same applies to the 37-crystal rotation battery (`rugnux_vs_xds.py`) — run it when a +change plausibly moves merged results, not as a reflex. + +**Do not `git push`.** Commit when asked; pushing is a separate decision that belongs to the +maintainer. + `make jfjoch_hdf5_test` builds the HDF5 write-speed benchmark (it lives in `tools/`, so the binary is `build/tools/jfjoch_hdf5_test`); CI also uses it to produce files that are validated against XDS (Durin/Neggia), DIALS and CrystFEL. `jfjoch_hdf5_enospc_test` + the `enospc_shim` module test