From 31df088e7b745517f4d9b72441ea5e14c438d2a1 Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Sat, 17 Jan 2026 00:17:12 -0400 Subject: [PATCH 1/9] chore: sync AGENTS rules to keep contributor guidance consistent (#4) --- .gitignore | 1 + AGENTS.md | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 AGENTS.md diff --git a/.gitignore b/.gitignore index a6135e8..3a4434f 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,4 @@ htmlcov .pytest_cache/ .tox +.worktrees/ diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..1695fbf --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,15 @@ +# Agent Requirements + +All agents must follow these rules: + +1) Fully test your changes before submitting a PR (run the full suite or all relevant tests). +2) PR titles must be descriptive and follow Conventional Commits-style prefixes: + - Common: `feat:`, `fix:`, `chore:`, `refactor:`, `docs:`, `test:`, `perf:` + - Support titles: `fix(docs):`, `fix(benchmarks):`, `fix(cicd):` +3) Commit messages must follow the same Conventional Commits-style prefixes and include a short functional description plus a user-facing value proposition. +4) PR descriptions must include Summary, Rationale, and Details sections. +5) Run relevant Python tests for changes (pytest/unittest or the repo's configured runner). +6) Follow formatting/linting configured in pyproject.toml, setup.cfg, tox.ini, or ruff.toml. +7) Update dependency lockfiles when adding or removing Python dependencies. + +Reference: https://www.conventionalcommits.org/en/v1.0.0/ From 2071d742f05497931793c9731d3fa292a71e45b1 Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Mon, 19 Jan 2026 19:49:15 -0400 Subject: [PATCH 2/9] chore: update agent requirements to keep contributor workflow consistent --- AGENTS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index 1695fbf..c92cbb0 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -7,7 +7,7 @@ All agents must follow these rules: - Common: `feat:`, `fix:`, `chore:`, `refactor:`, `docs:`, `test:`, `perf:` - Support titles: `fix(docs):`, `fix(benchmarks):`, `fix(cicd):` 3) Commit messages must follow the same Conventional Commits-style prefixes and include a short functional description plus a user-facing value proposition. -4) PR descriptions must include Summary, Rationale, and Details sections. +4) PR descriptions must include `Summary`, `Rationale`, and `Details` sections. 5) Run relevant Python tests for changes (pytest/unittest or the repo's configured runner). 6) Follow formatting/linting configured in pyproject.toml, setup.cfg, tox.ini, or ruff.toml. 7) Update dependency lockfiles when adding or removing Python dependencies. From 7ee12f28ece08da59e46521aa0241d306b711cde Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Tue, 20 Jan 2026 02:24:57 -0400 Subject: [PATCH 3/9] chore: update agent requirements to keep contributor guidance current --- AGENTS.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index c92cbb0..5a1ca5e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -7,9 +7,11 @@ All agents must follow these rules: - Common: `feat:`, `fix:`, `chore:`, `refactor:`, `docs:`, `test:`, `perf:` - Support titles: `fix(docs):`, `fix(benchmarks):`, `fix(cicd):` 3) Commit messages must follow the same Conventional Commits-style prefixes and include a short functional description plus a user-facing value proposition. -4) PR descriptions must include `Summary`, `Rationale`, and `Details` sections. +4) PR descriptions must include Summary, Rationale, and Details sections. 5) Run relevant Python tests for changes (pytest/unittest or the repo's configured runner). 6) Follow formatting/linting configured in pyproject.toml, setup.cfg, tox.ini, or ruff.toml. 7) Update dependency lockfiles when adding or removing Python dependencies. +8) Maximize the use of caching in GitHub workflow files to minimize run duration. +9) Use one of `paths` or `paths-ignore` in every workflow file to make sure workflows only run when required. Reference: https://www.conventionalcommits.org/en/v1.0.0/ From fc34f8e132f7fddc427a99ef93a5725a0b664b6c Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Tue, 20 Jan 2026 22:35:24 -0400 Subject: [PATCH 4/9] chore: clarify AGENTS remote-branch guidance for up-to-date work --- AGENTS.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 5a1ca5e..655306c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -11,7 +11,6 @@ All agents must follow these rules: 5) Run relevant Python tests for changes (pytest/unittest or the repo's configured runner). 6) Follow formatting/linting configured in pyproject.toml, setup.cfg, tox.ini, or ruff.toml. 7) Update dependency lockfiles when adding or removing Python dependencies. -8) Maximize the use of caching in GitHub workflow files to minimize run duration. -9) Use one of `paths` or `paths-ignore` in every workflow file to make sure workflows only run when required. +8) If the branch you're assigned to work on is from a remote (ie origin/master or upstream/awesome-feature) you must ensure you fetch and pull from the remote before you begin your work. Reference: https://www.conventionalcommits.org/en/v1.0.0/ From 5b1f5ebb351c28e8ec7d709ecd27c03e612475b8 Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Thu, 22 Jan 2026 00:30:33 -0400 Subject: [PATCH 5/9] docs: add workflow paths rule to avoid unnecessary CI runs (#8) --- AGENTS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/AGENTS.md b/AGENTS.md index 655306c..35cab8f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -12,5 +12,6 @@ All agents must follow these rules: 6) Follow formatting/linting configured in pyproject.toml, setup.cfg, tox.ini, or ruff.toml. 7) Update dependency lockfiles when adding or removing Python dependencies. 8) If the branch you're assigned to work on is from a remote (ie origin/master or upstream/awesome-feature) you must ensure you fetch and pull from the remote before you begin your work. +9) Use one of `paths` or `paths-ignore` in every workflow file to make sure workflows only run when required. Reference: https://www.conventionalcommits.org/en/v1.0.0/ From 117f1dd4197eb43081b627484f9f3753f8fd8302 Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Thu, 22 Jan 2026 00:43:27 -0400 Subject: [PATCH 6/9] docs: add workflow caching rule to reduce CI duration --- AGENTS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/AGENTS.md b/AGENTS.md index 35cab8f..308eeb6 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -13,5 +13,6 @@ All agents must follow these rules: 7) Update dependency lockfiles when adding or removing Python dependencies. 8) If the branch you're assigned to work on is from a remote (ie origin/master or upstream/awesome-feature) you must ensure you fetch and pull from the remote before you begin your work. 9) Use one of `paths` or `paths-ignore` in every workflow file to make sure workflows only run when required. +10) Maximize the use of caching in GitHub workflow files to minimize run duration. Reference: https://www.conventionalcommits.org/en/v1.0.0/ From 3ff4f307e7e30da336f62e90cbc2de443e32be9d Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Thu, 22 Jan 2026 16:41:33 -0400 Subject: [PATCH 7/9] chore: align gitignore with upstream to keep PRs focused --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index 3a4434f..a6135e8 100644 --- a/.gitignore +++ b/.gitignore @@ -36,4 +36,3 @@ htmlcov .pytest_cache/ .tox -.worktrees/ From c7f37316500ffeb472aba64e1cd95a18e09e472a Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Thu, 22 Jan 2026 16:41:39 -0400 Subject: [PATCH 8/9] chore: drop fork-only AGENTS notes to keep upstream PRs focused --- AGENTS.md | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md deleted file mode 100644 index 308eeb6..0000000 --- a/AGENTS.md +++ /dev/null @@ -1,18 +0,0 @@ -# Agent Requirements - -All agents must follow these rules: - -1) Fully test your changes before submitting a PR (run the full suite or all relevant tests). -2) PR titles must be descriptive and follow Conventional Commits-style prefixes: - - Common: `feat:`, `fix:`, `chore:`, `refactor:`, `docs:`, `test:`, `perf:` - - Support titles: `fix(docs):`, `fix(benchmarks):`, `fix(cicd):` -3) Commit messages must follow the same Conventional Commits-style prefixes and include a short functional description plus a user-facing value proposition. -4) PR descriptions must include Summary, Rationale, and Details sections. -5) Run relevant Python tests for changes (pytest/unittest or the repo's configured runner). -6) Follow formatting/linting configured in pyproject.toml, setup.cfg, tox.ini, or ruff.toml. -7) Update dependency lockfiles when adding or removing Python dependencies. -8) If the branch you're assigned to work on is from a remote (ie origin/master or upstream/awesome-feature) you must ensure you fetch and pull from the remote before you begin your work. -9) Use one of `paths` or `paths-ignore` in every workflow file to make sure workflows only run when required. -10) Maximize the use of caching in GitHub workflow files to minimize run duration. - -Reference: https://www.conventionalcommits.org/en/v1.0.0/ From 566b65c884bcd976ecdf11397565ef6e5fde7a65 Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Thu, 22 Jan 2026 16:41:45 -0400 Subject: [PATCH 9/9] chore(cicd): add pip cache to tests for faster CI --- .github/workflows/test.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7168992..a0d317b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -27,6 +27,8 @@ jobs: - uses: actions/setup-python@v5 with: python-version: 3.11 + cache: "pip" + cache-dependency-path: pyproject.toml - name: Install dependencies run: | @@ -61,6 +63,8 @@ jobs: with: python-version: ${{ matrix.python }} allow-prereleases: true + cache: "pip" + cache-dependency-path: pyproject.toml - name: Install dependencies run: |