laxy-verify 1.1.20 → 1.1.22
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/README.md +72 -72
- package/package.json +38 -38
package/README.md
CHANGED
|
@@ -11,9 +11,9 @@ It is built around three simple questions:
|
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
13
|
npx laxy-verify --init --run
|
|
14
|
-
npx laxy-verify .
|
|
15
|
-
npx laxy-verify . --plan-override pro
|
|
16
|
-
npx laxy-verify login
|
|
14
|
+
npx laxy-verify .
|
|
15
|
+
npx laxy-verify . --plan-override pro
|
|
16
|
+
npx laxy-verify login
|
|
17
17
|
npx laxy-verify whoami
|
|
18
18
|
npx laxy-verify --help
|
|
19
19
|
```
|
|
@@ -77,15 +77,15 @@ env:
|
|
|
77
77
|
|
|
78
78
|
| Plan | Question it answers |
|
|
79
79
|
|------|---------------------|
|
|
80
|
-
| Free | Any critical issues right now? |
|
|
81
|
-
| Pro | Ready to show a client? |
|
|
82
|
-
| Pro+ | Ready for production? |
|
|
83
|
-
|
|
84
|
-
## Grades
|
|
85
|
-
|
|
86
|
-
| Grade | Meaning |
|
|
87
|
-
|-------|---------|
|
|
88
|
-
| Gold | Build passed + E2E passed + Lighthouse passed + Pro+ viewport evidence passed |
|
|
80
|
+
| Free | Any critical issues right now? |
|
|
81
|
+
| Pro | Ready to show a client? |
|
|
82
|
+
| Pro+ | Ready for production? |
|
|
83
|
+
|
|
84
|
+
## Grades
|
|
85
|
+
|
|
86
|
+
| Grade | Meaning |
|
|
87
|
+
|-------|---------|
|
|
88
|
+
| Gold | Build passed + E2E passed + Lighthouse passed + Pro+ viewport evidence passed |
|
|
89
89
|
| Silver | Build passed + E2E passed |
|
|
90
90
|
| Bronze | Build passed |
|
|
91
91
|
| Unverified | Build failed |
|
|
@@ -133,12 +133,12 @@ All fields are optional in `.laxy.yml`.
|
|
|
133
133
|
framework: "auto"
|
|
134
134
|
build_command: ""
|
|
135
135
|
dev_command: ""
|
|
136
|
-
package_manager: "auto"
|
|
137
|
-
port: 3000
|
|
138
|
-
build_timeout: 300
|
|
139
|
-
dev_timeout: 60
|
|
140
|
-
lighthouse_runs: 1
|
|
141
|
-
|
|
136
|
+
package_manager: "auto"
|
|
137
|
+
port: 3000
|
|
138
|
+
build_timeout: 300
|
|
139
|
+
dev_timeout: 60
|
|
140
|
+
lighthouse_runs: 1
|
|
141
|
+
|
|
142
142
|
thresholds:
|
|
143
143
|
performance: 70
|
|
144
144
|
accessibility: 85
|
|
@@ -158,21 +158,21 @@ Typical cases:
|
|
|
158
158
|
|
|
159
159
|
```text
|
|
160
160
|
npx laxy-verify [project-dir]
|
|
161
|
-
|
|
162
|
-
Options:
|
|
163
|
-
--format console|json
|
|
164
|
-
--ci
|
|
165
|
-
--config <path>
|
|
166
|
-
--fail-on unverified|bronze|silver|gold
|
|
167
|
-
--skip-lighthouse
|
|
168
|
-
--plan-override free|pro|pro_plus
|
|
169
|
-
--badge
|
|
170
|
-
--init
|
|
171
|
-
--multi-viewport
|
|
172
|
-
--help
|
|
173
|
-
|
|
174
|
-
Subcommands:
|
|
175
|
-
login [email]
|
|
161
|
+
|
|
162
|
+
Options:
|
|
163
|
+
--format console|json
|
|
164
|
+
--ci
|
|
165
|
+
--config <path>
|
|
166
|
+
--fail-on unverified|bronze|silver|gold
|
|
167
|
+
--skip-lighthouse
|
|
168
|
+
--plan-override free|pro|pro_plus
|
|
169
|
+
--badge
|
|
170
|
+
--init
|
|
171
|
+
--multi-viewport
|
|
172
|
+
--help
|
|
173
|
+
|
|
174
|
+
Subcommands:
|
|
175
|
+
login [email]
|
|
176
176
|
logout
|
|
177
177
|
whoami
|
|
178
178
|
```
|
|
@@ -186,37 +186,37 @@ It will reject upgrades above your real entitlement.
|
|
|
186
186
|
Each run writes `.laxy-result.json`.
|
|
187
187
|
|
|
188
188
|
Paid plans also write a readable markdown summary to `laxy-verify-report.md`.
|
|
189
|
-
|
|
189
|
+
|
|
190
190
|
- `Pro`: client-ready delivery report
|
|
191
|
-
- `Pro+`: release-readiness report with viewport and visual evidence
|
|
192
|
-
|
|
193
|
-
Exit behavior follows the verification verdict, not just the legacy grade.
|
|
194
|
-
|
|
195
|
-
- `build-failed` -> exit 1
|
|
196
|
-
- `hold` -> exit 1
|
|
197
|
-
- `Pro+ investigate` -> exit 1
|
|
198
|
-
- plain lower-tier pass states can still exit 0
|
|
199
|
-
|
|
200
|
-
```json
|
|
201
|
-
{
|
|
202
|
-
"grade": "Gold",
|
|
203
|
-
"timestamp": "2026-04-09T09:00:00Z",
|
|
204
|
-
"build": { "success": true, "durationMs": 12000, "errors": [] },
|
|
205
|
-
"e2e": { "passed": 5, "failed": 0, "total": 5, "results": [] },
|
|
206
|
-
"lighthouse": { "performance": 82, "accessibility": 94, "seo": 90, "bestPractices": 92, "runs": 3 },
|
|
207
|
-
"multiViewport": {
|
|
208
|
-
"allPassed": true,
|
|
209
|
-
"summary": "Desktop, tablet, and mobile checks passed."
|
|
210
|
-
},
|
|
211
|
-
"visualDiff": {
|
|
212
|
-
"verdict": "pass",
|
|
213
|
-
"differencePercentage": 0
|
|
214
|
-
},
|
|
215
|
-
"verification": {
|
|
216
|
-
"tier": "pro_plus",
|
|
217
|
-
"report": { "verdict": "release-ready" }
|
|
218
|
-
},
|
|
219
|
-
"exitCode": 0,
|
|
191
|
+
- `Pro+`: release-readiness report with viewport and visual evidence
|
|
192
|
+
|
|
193
|
+
Exit behavior follows the verification verdict, not just the legacy grade.
|
|
194
|
+
|
|
195
|
+
- `build-failed` -> exit 1
|
|
196
|
+
- `hold` -> exit 1
|
|
197
|
+
- `Pro+ investigate` -> exit 1
|
|
198
|
+
- plain lower-tier pass states can still exit 0
|
|
199
|
+
|
|
200
|
+
```json
|
|
201
|
+
{
|
|
202
|
+
"grade": "Gold",
|
|
203
|
+
"timestamp": "2026-04-09T09:00:00Z",
|
|
204
|
+
"build": { "success": true, "durationMs": 12000, "errors": [] },
|
|
205
|
+
"e2e": { "passed": 5, "failed": 0, "total": 5, "results": [] },
|
|
206
|
+
"lighthouse": { "performance": 82, "accessibility": 94, "seo": 90, "bestPractices": 92, "runs": 3 },
|
|
207
|
+
"multiViewport": {
|
|
208
|
+
"allPassed": true,
|
|
209
|
+
"summary": "Desktop, tablet, and mobile checks passed."
|
|
210
|
+
},
|
|
211
|
+
"visualDiff": {
|
|
212
|
+
"verdict": "pass",
|
|
213
|
+
"differencePercentage": 0
|
|
214
|
+
},
|
|
215
|
+
"verification": {
|
|
216
|
+
"tier": "pro_plus",
|
|
217
|
+
"report": { "verdict": "release-ready" }
|
|
218
|
+
},
|
|
219
|
+
"exitCode": 0,
|
|
220
220
|
"_plan": "pro_plus"
|
|
221
221
|
}
|
|
222
222
|
```
|
|
@@ -224,13 +224,13 @@ Exit behavior follows the verification verdict, not just the legacy grade.
|
|
|
224
224
|
### `laxy-verify-report.md`
|
|
225
225
|
|
|
226
226
|
For Pro and Pro+ runs, the markdown report is designed to be easy to read and easy to paste into an AI coding tool.
|
|
227
|
-
|
|
228
|
-
It includes:
|
|
229
|
-
|
|
230
|
-
- the main decision in plain English
|
|
231
|
-
- what passed
|
|
232
|
-
- blockers and warnings
|
|
233
|
-
- exact verification evidence
|
|
227
|
+
|
|
228
|
+
It includes:
|
|
229
|
+
|
|
230
|
+
- the main decision in plain English
|
|
231
|
+
- what passed
|
|
232
|
+
- blockers and warnings
|
|
233
|
+
- exact verification evidence
|
|
234
234
|
- failed E2E scenarios
|
|
235
235
|
- a `Copy For AI` section you can paste directly into Codex, Cursor, Claude, or ChatGPT
|
|
236
236
|
|
|
@@ -255,8 +255,8 @@ They intentionally break build, navigation, coverage, performance, viewport beha
|
|
|
255
255
|
|
|
256
256
|
## Links
|
|
257
257
|
|
|
258
|
-
- GitHub: https://github.com/
|
|
259
|
-
- Issues: https://github.com/
|
|
258
|
+
- GitHub: https://github.com/SUNgm24/Laxy/tree/main/laxy-verify
|
|
259
|
+
- Issues: https://github.com/SUNgm24/Laxy/issues
|
|
260
260
|
|
|
261
261
|
## License
|
|
262
262
|
|
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "laxy-verify",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.22",
|
|
4
4
|
"description": "Frontend verification CLI for build checks, Lighthouse, E2E, and release readiness",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "commonjs",
|
|
7
|
-
"homepage": "https://github.com/
|
|
7
|
+
"homepage": "https://github.com/SUNgm24/Laxy/tree/main/laxy-verify#readme",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
10
|
-
"url": "git+https://github.com/
|
|
10
|
+
"url": "git+https://github.com/SUNgm24/Laxy.git",
|
|
11
11
|
"directory": "laxy-verify"
|
|
12
12
|
},
|
|
13
13
|
"bugs": {
|
|
14
|
-
"url": "https://github.com/
|
|
14
|
+
"url": "https://github.com/SUNgm24/Laxy/issues"
|
|
15
15
|
},
|
|
16
16
|
"keywords": [
|
|
17
17
|
"frontend",
|
|
@@ -31,37 +31,37 @@
|
|
|
31
31
|
"bin": {
|
|
32
32
|
"laxy-verify": "dist/cli.js"
|
|
33
33
|
},
|
|
34
|
-
"files": [
|
|
35
|
-
"dist/"
|
|
36
|
-
],
|
|
37
|
-
"scripts": {
|
|
38
|
-
"build": "tsc",
|
|
39
|
-
"start": "node dist/cli.js",
|
|
40
|
-
"test": "vitest run",
|
|
41
|
-
"test:coverage": "vitest run --coverage"
|
|
42
|
-
},
|
|
43
|
-
"dependencies": {
|
|
44
|
-
"@lhci/cli": "^0.14.0",
|
|
45
|
-
"chrome-launcher": "^0.13.4",
|
|
46
|
-
"js-yaml": "^4.1.0",
|
|
47
|
-
"lighthouse": "^12.1.0",
|
|
48
|
-
"pixelmatch": "^7.1.0",
|
|
49
|
-
"pngjs": "^7.0.0",
|
|
50
|
-
"puppeteer": "^24.40.0",
|
|
51
|
-
"tree-kill": "^1.2.2"
|
|
52
|
-
},
|
|
53
|
-
"devDependencies": {
|
|
54
|
-
"@types/js-yaml": "^4.0.9",
|
|
55
|
-
"@types/node": "^20.0.0",
|
|
56
|
-
"typescript": "^5.4.0",
|
|
57
|
-
"vitest": "^2.0.0"
|
|
58
|
-
},
|
|
59
|
-
"peerDependencies": {
|
|
60
|
-
"playwright": "^1.40.0"
|
|
61
|
-
},
|
|
62
|
-
"peerDependenciesMeta": {
|
|
63
|
-
"playwright": {
|
|
64
|
-
"optional": true
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
34
|
+
"files": [
|
|
35
|
+
"dist/"
|
|
36
|
+
],
|
|
37
|
+
"scripts": {
|
|
38
|
+
"build": "tsc",
|
|
39
|
+
"start": "node dist/cli.js",
|
|
40
|
+
"test": "vitest run",
|
|
41
|
+
"test:coverage": "vitest run --coverage"
|
|
42
|
+
},
|
|
43
|
+
"dependencies": {
|
|
44
|
+
"@lhci/cli": "^0.14.0",
|
|
45
|
+
"chrome-launcher": "^0.13.4",
|
|
46
|
+
"js-yaml": "^4.1.0",
|
|
47
|
+
"lighthouse": "^12.1.0",
|
|
48
|
+
"pixelmatch": "^7.1.0",
|
|
49
|
+
"pngjs": "^7.0.0",
|
|
50
|
+
"puppeteer": "^24.40.0",
|
|
51
|
+
"tree-kill": "^1.2.2"
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"@types/js-yaml": "^4.0.9",
|
|
55
|
+
"@types/node": "^20.0.0",
|
|
56
|
+
"typescript": "^5.4.0",
|
|
57
|
+
"vitest": "^2.0.0"
|
|
58
|
+
},
|
|
59
|
+
"peerDependencies": {
|
|
60
|
+
"playwright": "^1.40.0"
|
|
61
|
+
},
|
|
62
|
+
"peerDependenciesMeta": {
|
|
63
|
+
"playwright": {
|
|
64
|
+
"optional": true
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|