From e69ea041d1a3c92154d9e272af9495101d520284 Mon Sep 17 00:00:00 2001 From: Justin Beckwith Date: Thu, 2 Apr 2026 09:34:38 -0700 Subject: [PATCH 1/4] docs: make CLAUDE.md a compatibility shim Co-authored-by: Codex --- CLAUDE.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 43c994c..29b1801 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1 +1,5 @@ -@AGENTS.md +# Compatibility Note + +The canonical repository guide is [AGENTS.md](./AGENTS.md). + +This file remains as a compatibility shim for tools that still auto-load `CLAUDE.md`. From f782023e1d4808022351210fd6d5cef1d7e05bad Mon Sep 17 00:00:00 2001 From: Justin Beckwith Date: Thu, 2 Apr 2026 10:03:41 -0700 Subject: [PATCH 2/4] ci: emit CI Success for docs-only PRs Co-authored-by: Codex --- .github/workflows/test.yml | 45 ++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6f748ce..069fc1e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,9 +2,6 @@ name: Python CI on: pull_request: - paths-ignore: - - "**.md" - - "LICENSE" push: branches: - main @@ -18,8 +15,40 @@ concurrency: cancel-in-progress: ${{ github.event_name == 'pull_request' }} jobs: + classify-changes: + name: Classify Changes + runs-on: ubuntu-latest + outputs: + code_changed: ${{ steps.classify.outputs.code_changed }} + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Check whether this PR changes non-doc files + id: classify + env: + BASE_SHA: ${{ github.event.pull_request.base.sha }} + HEAD_SHA: ${{ github.event.pull_request.head.sha }} + run: | + if [[ "${{ github.event_name }}" != "pull_request" ]]; then + echo "code_changed=true" >> "$GITHUB_OUTPUT" + exit 0 + fi + + changed_files="$(git diff --name-only "$BASE_SHA" "$HEAD_SHA")" + echo "$changed_files" + + if printf '%s\n' "$changed_files" | grep -Ev '(^$|\.md$|^LICENSE$)' > /dev/null; then + echo "code_changed=true" >> "$GITHUB_OUTPUT" + else + echo "code_changed=false" >> "$GITHUB_OUTPUT" + fi + lint: name: Lint and Format + needs: classify-changes + if: needs.classify-changes.outputs.code_changed == 'true' runs-on: ubuntu-latest timeout-minutes: 10 steps: @@ -43,6 +72,8 @@ jobs: type-check: name: Type Check (${{ matrix.type-checker }}) + needs: classify-changes + if: needs.classify-changes.outputs.code_changed == 'true' runs-on: ubuntu-latest timeout-minutes: 10 strategy: @@ -71,6 +102,8 @@ jobs: test: name: Test (py${{ matrix.python-version }}, ${{ matrix.os }}) + needs: classify-changes + if: needs.classify-changes.outputs.code_changed == 'true' runs-on: ${{ matrix.os }} timeout-minutes: 30 strategy: @@ -151,6 +184,8 @@ jobs: test-npx-fallback: name: Test npx fallback (py${{ matrix.python-version }}, ${{ matrix.os }}) + needs: classify-changes + if: needs.classify-changes.outputs.code_changed == 'true' runs-on: ${{ matrix.os }} timeout-minutes: 30 strategy: @@ -223,6 +258,8 @@ jobs: build: name: Build Package + needs: classify-changes + if: needs.classify-changes.outputs.code_changed == 'true' runs-on: ubuntu-latest timeout-minutes: 10 steps: @@ -246,7 +283,7 @@ jobs: ci-success: name: CI Success - needs: [lint, type-check, test, test-npx-fallback, build] + needs: [classify-changes, lint, type-check, test, test-npx-fallback, build] if: always() runs-on: ubuntu-latest steps: From 4386f992a809dfabdd22ecbe68f344bfe5cfef65 Mon Sep 17 00:00:00 2001 From: jbeckwith-oai Date: Thu, 2 Apr 2026 11:07:05 -0700 Subject: [PATCH 3/4] Update CLAUDE.md --- CLAUDE.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 29b1801..1a1c145 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,5 +1 @@ -# Compatibility Note - -The canonical repository guide is [AGENTS.md](./AGENTS.md). - -This file remains as a compatibility shim for tools that still auto-load `CLAUDE.md`. +@AGENTs.md From 865f4286b6a7fab923307fba4c682ceefd873dcf Mon Sep 17 00:00:00 2001 From: jbeckwith-oai Date: Thu, 2 Apr 2026 11:07:17 -0700 Subject: [PATCH 4/4] Update CLAUDE.md --- CLAUDE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 1a1c145..43c994c 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1 +1 @@ -@AGENTs.md +@AGENTS.md