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 *)"