@tekyzinc/gsd-t 2.19.1 → 2.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  All notable changes to GSD-T are documented here. Updated with each release.
4
4
 
5
+ ## [2.20.0] - 2026-02-16
6
+
7
+ ### Added
8
+ - **Playwright Setup in Init**: `gsd-t-init` now installs Playwright, creates `playwright.config.ts`, and sets up E2E test directory for every project. Detects package manager (bun, npm, yarn, pnpm, pip) automatically
9
+ - **Playwright Readiness Guard**: Before any testing command (execute, test-sync, verify, quick, wave, milestone, complete-milestone, debug), checks for `playwright.config.*` and auto-installs if missing. Playwright must always be ready — no deferring to "later"
10
+
5
11
  ## [2.19.1] - 2026-02-16
6
12
 
7
13
  ### Changed
@@ -174,13 +174,35 @@ After initialization, verify all created documentation is consistent:
174
174
 
175
175
  ### Skip what's not affected — init creates docs, so most ripple is about consistency verification.
176
176
 
177
- ## Step 7.6: Test Verification
177
+ ## Step 7.6: Playwright Setup (MANDATORY)
178
+
179
+ Every GSD-T project must have Playwright ready for E2E testing. If `playwright.config.*` does not exist:
180
+
181
+ 1. **Detect package manager**: Check for `bun.lockb` (bun), `yarn.lock` (yarn), `pnpm-lock.yaml` (pnpm), `package-lock.json` or `package.json` (npm), `requirements.txt`/`pyproject.toml` (Python)
182
+ 2. **Install Playwright**:
183
+ - bun: `bun add -d @playwright/test && bunx playwright install chromium`
184
+ - npm: `npm install -D @playwright/test && npx playwright install chromium`
185
+ - yarn: `yarn add -D @playwright/test && yarn playwright install chromium`
186
+ - pnpm: `pnpm add -D @playwright/test && pnpm exec playwright install chromium`
187
+ - Python: `pip install playwright && playwright install chromium`
188
+ - No package manager detected: `npm init -y && npm install -D @playwright/test && npx playwright install chromium`
189
+ 3. **Create `playwright.config.ts`** (or `.js` if not using TypeScript) with sensible defaults:
190
+ - `testDir: './e2e'` (or `./tests/e2e`)
191
+ - `use: { baseURL: 'http://localhost:3000' }` (adjust based on project)
192
+ - Chromium only (keep it fast; user can add more browsers later)
193
+ - Screenshot on failure enabled
194
+ 4. **Create the E2E test directory** (`e2e/` or `tests/e2e/`) with a placeholder spec
195
+ 5. **Add test script** to `package.json` if it exists: `"test:e2e": "playwright test"`
196
+
197
+ Skip silently if `playwright.config.*` already exists.
198
+
199
+ ## Step 7.7: Test Verification
178
200
 
179
201
  After initialization:
180
202
 
181
203
  1. **If existing code with tests**: Run the full test suite to establish a baseline. Document results in `.gsd-t/progress.md`
182
- 2. **If existing code without tests**: Note the absencerecommend test setup as part of the first milestone
183
- 3. **If greenfield**: No tests to run, but note that test infrastructure should be in Milestone 1
204
+ 2. **If existing code without tests**: Playwright is now set up (Step 7.6) note unit test framework should be added as part of the first milestone
205
+ 3. **If greenfield**: Playwright is ready. Note that unit test infrastructure should be added in Milestone 1
184
206
  4. **Verify init outputs**: Confirm all created files exist and are non-empty
185
207
 
186
208
  ## Step 8: Report
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tekyzinc/gsd-t",
3
- "version": "2.19.1",
3
+ "version": "2.20.0",
4
4
  "description": "GSD-T: Contract-Driven Development for Claude Code — 41 slash commands with backlog management, impact analysis, test sync, and milestone archival",
5
5
  "author": "Tekyz, Inc.",
6
6
  "license": "MIT",
@@ -191,6 +191,16 @@ If any are missing:
191
191
 
192
192
  **Exempt commands** (do not trigger auto-init): `gsd-t-init`, `gsd-t-init-scan-setup`, `gsd-t-help`, `gsd-t-version-update`, `gsd-t-version-update-all`, `gsd-t-prompt`, `gsd-t-brainstorm`.
193
193
 
194
+ ## Playwright Readiness Guard
195
+
196
+ Before any command that involves testing (`gsd-t-execute`, `gsd-t-test-sync`, `gsd-t-verify`, `gsd-t-quick`, `gsd-t-wave`, `gsd-t-milestone`, `gsd-t-complete-milestone`, `gsd-t-debug`), check if `playwright.config.*` exists in the project. If it does not:
197
+ 1. Detect the package manager and install Playwright (`@playwright/test` + chromium)
198
+ 2. Create a basic `playwright.config.ts` with sensible defaults
199
+ 3. Create the E2E test directory with a placeholder spec
200
+ 4. Then continue with the original command
201
+
202
+ Playwright must always be ready before any testing occurs. Do not skip this check. Do not defer setup to "later."
203
+
194
204
  ## Prime Rule
195
205
  KEEP GOING. Only stop for:
196
206
  1. Unrecoverable errors after 2 fix attempts