Commit 0e68c36b95 for woocommerce

commit 0e68c36b955779f3a8e3f50d23748b9e32f3e8db
Author: Eric Binnion <ericbinnion@gmail.com>
Date:   Mon Nov 3 10:46:41 2025 -0600

    Actions: Add backwards compatibility review (#61727)

    * Actions: Add backwards compatibility review

    * Allow draft

    * Update after testing on ebinnion/woocommerce

    * Update .github/workflows/backwards-compatibility-review.yml

    Co-authored-by: Ján Mikláš <neosinner@gmail.com>

    ---------

    Co-authored-by: Ján Mikláš <neosinner@gmail.com>

diff --git a/.github/workflows/backwards-compatibility-review.yml b/.github/workflows/backwards-compatibility-review.yml
new file mode 100644
index 0000000000..21ada4c82a
--- /dev/null
+++ b/.github/workflows/backwards-compatibility-review.yml
@@ -0,0 +1,67 @@
+name: Backwards Compatibility PR Review
+
+on:
+  pull_request:
+    types: [opened, synchronize, ready_for_review, reopened]
+
+concurrency:
+  group: bc-review-${{ github.event.pull_request.number }}
+  cancel-in-progress: true
+
+jobs:
+  review-with-tracking:
+    runs-on: ubuntu-latest
+    timeout-minutes: 20
+    permissions:
+      contents: read
+      pull-requests: write
+      issues: write
+      id-token: write
+    steps:
+      - name: Checkout repository
+        uses: actions/checkout@v5
+        with:
+          fetch-depth: 0
+
+      - name: PR Review with Progress Tracking
+        uses: anthropics/claude-code-action@v1
+        with:
+          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
+
+          # Enable progress tracking
+          track_progress: true
+
+          # Your custom review instructions
+          prompt: |
+            REPO: ${{ github.repository }}
+            PR NUMBER: ${{ github.event.pull_request.number }}
+
+            PRIMARY OBJECTIVE: Backwards Compatibility (BC) Review for WooCommerce/WordPress
+
+            Only report on BC risks and required deprecations. Ignore styling, formatting, comments, and pure test/doc changes unless they mask a BC concern.
+
+            Output format (strict):
+            - Summary: Overall risk [None|Low|Medium|High] and a 2 to 4 sentence rationale.
+            - Testing Focus: targeted regression areas (e.g., checkout, gateways, subscriptions) with concrete steps.
+            - Confidence: a percentage and one-sentence justification.
+
+            Scope to analyze (but not limited to):
+            - PHP: public/protected API signature/visibility changes; default param or type-hint changes; thrown exceptions; removed/renamed hooks (`do_action`, `apply_filters`); template changes under `templates/**`; REST params/response shapes; DB/schema/options changes; global constants/vars; composer constraints.
+            - JS/Blocks: block names/attributes; script/style handle names, dependencies, and load order; REST schemas; data-store selectors/actions; settings/options keys.
+            - Ecosystem impact: payment gateways, popular Woo extensions (Subscriptions/Bookings/Memberships), themes customizing templates, custom checkout flows.
+
+            Method:
+            - Prefer exact citations with file:line for every item (from the diff and repo).
+            - Provide mitigation or migration guidance for each breaking/deprecation.
+            - If uncertain, state what evidence is missing and rate likelihood.
+            - Use inline comments for line-specific concerns and one top-level summary comment.
+
+            Ignore/limit noise and cost:
+            - Exclude generated/binary/third-party content (e.g., `vendor/**`, `node_modules/**`, `build/**`, `dist/**`, `*.min.*`, translations `*.mo`/`*.po`).
+            - Focus on files changed in this PR and related API touch points.
+
+            If no BC issues are found, explicitly state: "No breaking changes detected" and explain why, including deprecation sufficiency and ecosystem considerations.
+
+          # Tools for comprehensive PR review
+          claude_args: |
+            --allowedTools "mcp__github_inline_comment__create_inline_comment,Bash(gh pr comment:*),Bash(gh pr diff:*),Bash(gh pr view:*),Bash(gh api:*),Bash(git show:*),Bash(git diff:*),Bash(git ls-files:*),Bash(git grep:*),Bash(rg *)"