From f220d9249559dfa4c6c0f036288a67c125f00808 Mon Sep 17 00:00:00 2001 From: Mads Lorentzen Date: Fri, 31 Jul 2026 11:32:56 +0200 Subject: [PATCH] docs(contributing): complete the 'run what CI runs' list (#262) The list omitted security_guards.py and the exact unittest invocation; the one recent contributor CI failure fitting #262's description (#238) failed on precisely the omitted script. Reported by @jakob1379. Co-Authored-By: Claude Fable 5 --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6f48596..8c3b3ee 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -34,7 +34,7 @@ Reviews here are empirical. Bug reports are reproduced on master before the fix - State the failing case and how to reproduce it. - **Reproduce on the real path, not a constructed input.** A test that fails on master and passes on the fix is necessary but not sufficient: the failing input has to be one the workflow actually produces, not one the test hand-builds. Show the failure through the path the code really runs - the documented CLI invocation, real portal output, an actual data file - not a synthetic value fed straight to the function. A fix whose only demonstration is an input the real code path never receives gets declined even though its test is green. - Put CLI tests in `.agents/skills//cli/tests/` (bun test, network-free where possible); Python tool tests in `tests/`. -- Run what CI runs: `python3 tools/lint_skills.py`, `python3 tools/check_framework_version.py`, `bun run typecheck` in touched CLIs, and the relevant test suites. +- Run what CI runs: `python3 tools/lint_skills.py`, `python3 tools/check_framework_version.py`, `python3 tools/security_guards.py`, `python3 -m unittest discover -s tests`, and in touched CLIs `bun run typecheck` + `bun test`. **Credit norm:** a change that incorporates your actual code gets a `Co-authored-by` trailer; a change written independently from your observation or report gets a named mention in the commit message and PR. Both happen unprompted.