From a3a7b6a77e40fe181d5fe97471d5921be8eec4cd Mon Sep 17 00:00:00 2001 From: Patrick Ellis <319655+pje@users.noreply.github.com> Date: Mon, 5 May 2025 00:17:20 -0400 Subject: [PATCH] Add copilot-instructions.md (#3810) --- .github/copilot-instructions.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/copilot-instructions.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 100644 index 000000000..834c16632 --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1,25 @@ +## Making changes + +### Tests + +Whenever possible, changes should be accompanied by non-trivial tests that meaningfully exercise the core functionality of the new code being introduced. + +All tests are in the `Test/` directory at the repo root. Fast unit tests are in the `Test/L0` directory and by convention have the suffix `L0.cs`. For example: unit tests for a hypothetical `src/Runner.Worker/Foo.cs` would go in `src/Test/L0/Worker/FooL0.cs`. + +Run tests using this command: + +```sh +cd src && ./dev.sh test +``` + +### Formatting + +After editing .cs files, always format the code using this command: + +```sh +cd src && ./dev.sh format +``` + +### Feature Flags + +Wherever possible, all changes should be safeguarded by a feature flag; `Features` are declared in [Constants.cs](src/Runner.Common/Constants.cs).