Skip to content

Commit cb23161

Browse files
committed
Merge branch 'master' into develop
2 parents f8131f0 + 66f6d81 commit cb23161

54 files changed

Lines changed: 33433 additions & 42 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.distignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,4 @@ package.json
1616
phpcs.xml
1717
/tests/
1818
phpunit.watcher.yml.dist
19+
playwright.config.ts

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,5 @@ webpack.config.js export-ignore
1111
phpcs.xml.dist export-ignore
1212
phpunit.xml.dist export-ignore
1313
README.md export-ignore
14+
tests export-ignore
15+
playwright.config.ts export-ignore

.github/sync-file-list.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,5 @@ wpeverest/user-registration-pro@develop:
1313
- phpcs.xml
1414
- uninstall.php
1515
- wpml-config.xml
16+
- tests/e2e
17+
- playwright.config.ts

.github/workflows/qa-suite.yml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Written by `/claudegrill:setup`. Safe to edit — it is a plain caller.
2+
#
3+
# THIS IS THE ONLY PR CHECK MOST PRODUCTS NEED. No ANTHROPIC_API_KEY, no agent,
4+
# runner minutes only.
5+
#
6+
# It works without AI because the developer already wrote the spec: they ran
7+
# /claudegrill:verify-fix locally, write-spec added a @fresh spec to their
8+
# branch, and they committed it with the fix. By the time CI sees the PR the
9+
# regression is already a deterministic assertion.
10+
#
11+
# ONE job, on pull requests only. Nothing runs on a schedule: the team's model is
12+
# a local /claudegrill:verify-fix while the fix is being written, and the e2e
13+
# suite on the PR. No cron, no nightly, no WordPress-core watcher.
14+
#
15+
# `scope: changed` narrows a run to the areas the diff maps to. That is safe by
16+
# construction — a changed file matching no `area_paths` pattern in
17+
# .themegrill-qa/suite.json falls back to the full tier, so an unmapped change
18+
# costs runner time, never coverage.
19+
#
20+
# Worth knowing, since nothing else runs the suite now: a spec whose area is
21+
# never touched by any PR will not execute. Set `scope: full` below if you would
22+
# rather every PR run the whole @fresh tier.
23+
24+
name: QA suite
25+
26+
on:
27+
pull_request:
28+
types: [opened, synchronize, reopened, ready_for_review]
29+
workflow_dispatch:
30+
31+
jobs:
32+
# The only check. Scoped, fast, runs on every PR including drafts.
33+
pr:
34+
uses: ThemeGrill/claudegrill/.github/workflows/suite.yml@main
35+
with:
36+
product_slug: user-registration
37+
product_type: plugin
38+
scope: changed
39+
# The shared default is 45s, and it is too tight for THIS product.
40+
#
41+
# Nearly every spec here is a whole user journey — provision a form,
42+
# publish a page, register an account on the front end, log in as that
43+
# account, then delete it — which is a dozen page loads against
44+
# Playground's WASM PHP. Measured on a reset Playground locally the
45+
# slowest is ~25s, and the GitHub runner is comfortably slower than a
46+
# developer's machine: at 45s the three login specs passed only on retry
47+
# and the ajax spec timed out outright, all of them for want of headroom
48+
# rather than because anything was wrong.
49+
#
50+
# 90s is roughly 3x the measured worst case, so a genuinely hung spec is
51+
# still capped. It stays well inside the ceilings above it, which the
52+
# reusable workflow asks for: max_failures (3) x 90s is 4.5 minutes
53+
# against a 30-minute timeout_ms and a 40-minute job limit.
54+
test_timeout_ms: 90000
55+

.gitignore

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,12 @@ Thumbs.db
3131
/vendor/
3232

3333
# PHP Unit Tests
34-
/tests/
34+
# Directory contents are excluded, but the entry itself must stay listable
35+
# ('/tests/' would exclude the directory, and git cannot re-include a path
36+
# whose parent directory is excluded).
37+
/tests/*
38+
# The Playwright QA suite is source, not a build artifact — CI runs it.
39+
!/tests/e2e/
3540

3641
# act local secrets (do not commit)
3742
.act/.secrets
@@ -44,3 +49,15 @@ phpunit-watcher.yml
4449

4550
#Release
4651
/release/
52+
53+
# claudegrill — never track QA credentials
54+
.themegrill-qa/.env.local
55+
56+
# Playwright run artifacts
57+
/test-results/
58+
/playwright-report/
59+
/blob-report/
60+
/.cache/
61+
62+
# claudegrill: raw doc scrape cache, regenerated by ingest-docs.mjs
63+
.themegrill-qa/.docs-cache/

0 commit comments

Comments
 (0)