Skip to content

Commit a089cc8

Browse files
KSXGitHubclaude
andauthored
docs(guide/dev): emphasize importance of running full test suite before committing (#368)
* docs(ai): add reminder to always run full test suite https://claude.ai/code/session_01KKiNFj2QH1VCLR2AHyEvN4 * docs(ai): add hint to follow `RUSTFLAGS` suggestions from failing tests https://claude.ai/code/session_01KKiNFj2QH1VCLR2AHyEvN4 * docs(ai): use generic `pdu_test_skip_*` pattern instead of specific flag name https://claude.ai/code/session_01KKiNFj2QH1VCLR2AHyEvN4 --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent b2d64ec commit a089cc8

5 files changed

Lines changed: 14 additions & 4 deletions

File tree

.github/copilot-instructions.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ Read and follow the CONTRIBUTING.md file in this repository for all code style c
1515
- Custom errors: `#[derive(Debug, Display, Error)]`
1616
- Minimize `unwrap()` in non-test code — use proper error handling
1717
- Install toolchain before running tests: `rustup toolchain install "$(< rust-toolchain)" && rustup component add --toolchain "$(< rust-toolchain)" rustfmt clippy`
18-
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes
18+
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes. If a test fails with a hint about `RUSTFLAGS` and `--cfg pdu_test_skip_*`, follow the hint and rerun with the suggested flags.
19+
- **ALWAYS run the full test suite** (`FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh`) before committing, regardless of how trivial the change seems — this includes documentation-only changes, comment edits, config changes, and refactors. The test suite checks formatting, linting, building, tests, and docs across multiple feature combinations; any type of change can break any of these checks.

AGENTS.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ Read and follow the CONTRIBUTING.md file in this repository for all code style c
1515
- Custom errors: `#[derive(Debug, Display, Error)]`
1616
- Minimize `unwrap()` in non-test code — use proper error handling
1717
- Install toolchain before running tests: `rustup toolchain install "$(< rust-toolchain)" && rustup component add --toolchain "$(< rust-toolchain)" rustfmt clippy`
18-
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes
18+
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes. If a test fails with a hint about `RUSTFLAGS` and `--cfg pdu_test_skip_*`, follow the hint and rerun with the suggested flags.
19+
- **ALWAYS run the full test suite** (`FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh`) before committing, regardless of how trivial the change seems — this includes documentation-only changes, comment edits, config changes, and refactors. The test suite checks formatting, linting, building, tests, and docs across multiple feature combinations; any type of change can break any of these checks.

CLAUDE.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,6 @@ Read and follow the CONTRIBUTING.md file in this repository for all code style c
1515
- Custom errors: `#[derive(Debug, Display, Error)]`
1616
- Minimize `unwrap()` in non-test code — use proper error handling
1717
- Install toolchain before running tests: `rustup toolchain install "$(< rust-toolchain)" && rustup component add --toolchain "$(< rust-toolchain)" rustfmt clippy`
18-
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes
18+
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes. If a test fails with a hint about `RUSTFLAGS` and `--cfg pdu_test_skip_*`, follow the hint and rerun with the suggested flags.
19+
- **ALWAYS run the full test suite** (`FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh`) before committing, regardless of how trivial the change seems — this includes documentation-only changes, comment edits, config changes, and refactors. The test suite checks formatting, linting, building, tests, and docs across multiple feature combinations; any type of change can break any of these checks.
1920
- `gh` (GitHub CLI) is not installed — do not attempt to use it

CONTRIBUTING.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -342,3 +342,9 @@ The CI script `test.sh` runs all of these across 5 feature combinations. You can
342342
```sh
343343
FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh
344344
```
345+
346+
> [!IMPORTANT]
347+
> Always run the full test suite before committing, even for seemingly trivial changes such as documentation edits, comment changes, or config updates. Any change can break formatting, linting, building, tests, or doc generation across the different feature combinations.
348+
349+
> [!NOTE]
350+
> Some tests may fail with a hint about `RUSTFLAGS` and `--cfg pdu_test_skip_*` flags. Follow the hint and rerun with the suggested flags.

template/ai-instructions/shared.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ Read and follow the CONTRIBUTING.md file in this repository for all code style c
1515
- Custom errors: `#[derive(Debug, Display, Error)]`
1616
- Minimize `unwrap()` in non-test code — use proper error handling
1717
- Install toolchain before running tests: `rustup toolchain install "$(< rust-toolchain)" && rustup component add --toolchain "$(< rust-toolchain)" rustfmt clippy`
18-
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes
18+
- Run `FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh` to validate changes. If a test fails with a hint about `RUSTFLAGS` and `--cfg pdu_test_skip_*`, follow the hint and rerun with the suggested flags.
19+
- **ALWAYS run the full test suite** (`FMT=true LINT=true BUILD=true TEST=true DOC=true ./test.sh`) before committing, regardless of how trivial the change seems — this includes documentation-only changes, comment edits, config changes, and refactors. The test suite checks formatting, linting, building, tests, and docs across multiple feature combinations; any type of change can break any of these checks.

0 commit comments

Comments
 (0)