qa-skills 3.0.0 → 3.1.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.
Files changed (262) hide show
  1. package/README.md +20 -149
  2. package/bin/cli.js +1 -40
  3. package/package.json +23 -26
  4. package/dist/agents/registry.d.ts +0 -5
  5. package/dist/agents/registry.d.ts.map +0 -1
  6. package/dist/agents/registry.js +0 -101
  7. package/dist/agents/registry.js.map +0 -1
  8. package/dist/agents/types.d.ts +0 -9
  9. package/dist/agents/types.d.ts.map +0 -1
  10. package/dist/agents/types.js +0 -2
  11. package/dist/agents/types.js.map +0 -1
  12. package/dist/dependencies.d.ts +0 -21
  13. package/dist/dependencies.d.ts.map +0 -1
  14. package/dist/dependencies.js +0 -125
  15. package/dist/dependencies.js.map +0 -1
  16. package/dist/installer.d.ts +0 -25
  17. package/dist/installer.d.ts.map +0 -1
  18. package/dist/installer.js +0 -437
  19. package/dist/installer.js.map +0 -1
  20. package/dist/scaffold.d.ts +0 -27
  21. package/dist/scaffold.d.ts.map +0 -1
  22. package/dist/scaffold.js +0 -182
  23. package/dist/scaffold.js.map +0 -1
  24. package/skills/qa-accessibility-test-writer/SKILL.md +0 -127
  25. package/skills/qa-accessibility-test-writer/references/axe-core-patterns.md +0 -349
  26. package/skills/qa-accessibility-test-writer/references/best-practices.md +0 -184
  27. package/skills/qa-accessibility-test-writer/references/wcag-tests.md +0 -331
  28. package/skills/qa-api-contract-curator/SKILL.md +0 -104
  29. package/skills/qa-api-contract-curator/references/breaking-changes.md +0 -363
  30. package/skills/qa-api-contract-curator/references/openapi-structure.md +0 -404
  31. package/skills/qa-browser-data-collector/SKILL.md +0 -132
  32. package/skills/qa-browser-data-collector/references/data-collection-checklist.md +0 -91
  33. package/skills/qa-browser-data-collector/references/playwright-mcp-patterns.md +0 -113
  34. package/skills/qa-bug-ticket-creator/SKILL.md +0 -148
  35. package/skills/qa-bug-ticket-creator/references/bug-report-format.md +0 -149
  36. package/skills/qa-bug-ticket-creator/references/severity-guide.md +0 -81
  37. package/skills/qa-bug-ticket-creator/templates/bug-ticket-template.md +0 -39
  38. package/skills/qa-changelog-analyzer/SKILL.md +0 -134
  39. package/skills/qa-changelog-analyzer/references/git-analysis-patterns.md +0 -138
  40. package/skills/qa-changelog-analyzer/references/impact-mapping.md +0 -120
  41. package/skills/qa-clickup-integration/SKILL.md +0 -166
  42. package/skills/qa-clickup-integration/references/api-patterns.md +0 -102
  43. package/skills/qa-clickup-integration/references/field-mapping.md +0 -71
  44. package/skills/qa-codeceptjs-writer/SKILL.md +0 -136
  45. package/skills/qa-codeceptjs-writer/references/best-practices.md +0 -207
  46. package/skills/qa-codeceptjs-writer/references/config.md +0 -255
  47. package/skills/qa-codeceptjs-writer/references/patterns.md +0 -285
  48. package/skills/qa-coverage-analyzer/SKILL.md +0 -166
  49. package/skills/qa-coverage-analyzer/references/best-practices.md +0 -142
  50. package/skills/qa-coverage-analyzer/references/coverage-dimensions.md +0 -155
  51. package/skills/qa-coverage-analyzer/references/tools.md +0 -204
  52. package/skills/qa-cypress-writer/SKILL.md +0 -134
  53. package/skills/qa-cypress-writer/references/assertions.md +0 -121
  54. package/skills/qa-cypress-writer/references/best-practices.md +0 -82
  55. package/skills/qa-cypress-writer/references/config.md +0 -121
  56. package/skills/qa-cypress-writer/references/patterns.md +0 -170
  57. package/skills/qa-data-factory/SKILL.md +0 -126
  58. package/skills/qa-data-factory/references/factory-patterns.md +0 -164
  59. package/skills/qa-data-factory/references/faker-guide.md +0 -131
  60. package/skills/qa-diagram-generator/SKILL.md +0 -125
  61. package/skills/qa-diagram-generator/references/c4-model.md +0 -53
  62. package/skills/qa-diagram-generator/references/charts.md +0 -58
  63. package/skills/qa-diagram-generator/references/class-diagram.md +0 -85
  64. package/skills/qa-diagram-generator/references/er-diagram.md +0 -69
  65. package/skills/qa-diagram-generator/references/flowchart.md +0 -92
  66. package/skills/qa-diagram-generator/references/from-screenshot.md +0 -45
  67. package/skills/qa-diagram-generator/references/gantt.md +0 -49
  68. package/skills/qa-diagram-generator/references/journey.md +0 -50
  69. package/skills/qa-diagram-generator/references/mindmap.md +0 -75
  70. package/skills/qa-diagram-generator/references/sequence.md +0 -69
  71. package/skills/qa-diagram-generator/references/state-diagram.md +0 -56
  72. package/skills/qa-discovery-interview/SKILL.md +0 -182
  73. package/skills/qa-discovery-interview/references/completeness-checklist.md +0 -53
  74. package/skills/qa-discovery-interview/references/conflict-patterns.md +0 -101
  75. package/skills/qa-discovery-interview/references/qa-categories.md +0 -147
  76. package/skills/qa-discovery-interview/templates/qa-brief-template.md +0 -168
  77. package/skills/qa-environment-checker/SKILL.md +0 -142
  78. package/skills/qa-environment-checker/references/dependency-matrix.md +0 -101
  79. package/skills/qa-environment-checker/references/health-checks.md +0 -209
  80. package/skills/qa-environment-checker/templates/env-readiness-template.md +0 -64
  81. package/skills/qa-flaky-detector/SKILL.md +0 -153
  82. package/skills/qa-flaky-detector/references/ci-analysis.md +0 -140
  83. package/skills/qa-flaky-detector/references/flaky-patterns.md +0 -247
  84. package/skills/qa-github-issues-enhanced/SKILL.md +0 -175
  85. package/skills/qa-github-issues-enhanced/references/issue-templates.md +0 -425
  86. package/skills/qa-github-issues-enhanced/references/label-taxonomy.md +0 -130
  87. package/skills/qa-github-issues-enhanced/references/workflow-patterns.md +0 -188
  88. package/skills/qa-httpx-writer/SKILL.md +0 -138
  89. package/skills/qa-httpx-writer/references/assertions.md +0 -195
  90. package/skills/qa-httpx-writer/references/best-practices.md +0 -140
  91. package/skills/qa-httpx-writer/references/config.md +0 -212
  92. package/skills/qa-httpx-writer/references/patterns.md +0 -262
  93. package/skills/qa-jest-writer/SKILL.md +0 -131
  94. package/skills/qa-jest-writer/references/assertions.md +0 -125
  95. package/skills/qa-jest-writer/references/best-practices.md +0 -136
  96. package/skills/qa-jest-writer/references/config.md +0 -134
  97. package/skills/qa-jest-writer/references/patterns.md +0 -172
  98. package/skills/qa-jira-integration/SKILL.md +0 -135
  99. package/skills/qa-jira-integration/references/api-patterns.md +0 -143
  100. package/skills/qa-jira-integration/references/field-mapping.md +0 -79
  101. package/skills/qa-jira-integration/references/xray-integration.md +0 -85
  102. package/skills/qa-jmeter-writer/SKILL.md +0 -171
  103. package/skills/qa-jmeter-writer/references/best-practices.md +0 -157
  104. package/skills/qa-jmeter-writer/references/config.md +0 -204
  105. package/skills/qa-jmeter-writer/references/patterns.md +0 -242
  106. package/skills/qa-junit5-writer/SKILL.md +0 -157
  107. package/skills/qa-junit5-writer/references/assertions.md +0 -118
  108. package/skills/qa-junit5-writer/references/config.md +0 -97
  109. package/skills/qa-junit5-writer/references/patterns.md +0 -162
  110. package/skills/qa-k6-writer/SKILL.md +0 -155
  111. package/skills/qa-k6-writer/references/best-practices.md +0 -236
  112. package/skills/qa-k6-writer/references/config.md +0 -219
  113. package/skills/qa-k6-writer/references/patterns.md +0 -304
  114. package/skills/qa-linear-integration/SKILL.md +0 -137
  115. package/skills/qa-linear-integration/references/api-patterns.md +0 -249
  116. package/skills/qa-linear-integration/references/field-mapping.md +0 -121
  117. package/skills/qa-locust-writer/SKILL.md +0 -151
  118. package/skills/qa-locust-writer/references/best-practices.md +0 -126
  119. package/skills/qa-locust-writer/references/config.md +0 -170
  120. package/skills/qa-locust-writer/references/patterns.md +0 -235
  121. package/skills/qa-manual-test-designer/SKILL.md +0 -145
  122. package/skills/qa-manual-test-designer/references/exploratory-charters.md +0 -138
  123. package/skills/qa-manual-test-designer/references/personas.md +0 -146
  124. package/skills/qa-manual-test-designer/templates/exploratory-charter-template.md +0 -47
  125. package/skills/qa-manual-test-designer/templates/test-case-template.md +0 -31
  126. package/skills/qa-mobile-test-writer/SKILL.md +0 -144
  127. package/skills/qa-mobile-test-writer/references/best-practices.md +0 -214
  128. package/skills/qa-mobile-test-writer/references/config.md +0 -309
  129. package/skills/qa-mobile-test-writer/references/patterns.md +0 -304
  130. package/skills/qa-nfr-analyst/SKILL.md +0 -177
  131. package/skills/qa-nfr-analyst/references/iso-25010-model.md +0 -159
  132. package/skills/qa-nfr-analyst/references/owasp-wstg-baseline.md +0 -202
  133. package/skills/qa-nfr-analyst/references/wcag-checklist.md +0 -184
  134. package/skills/qa-nfr-analyst/templates/owasp-checklist-template.md +0 -89
  135. package/skills/qa-nfr-analyst/templates/wcag-checklist-template.md +0 -48
  136. package/skills/qa-orchestrator/SKILL.md +0 -132
  137. package/skills/qa-orchestrator/references/handoff-chains.md +0 -105
  138. package/skills/qa-orchestrator/references/pipeline-modes.md +0 -115
  139. package/skills/qa-orchestrator/references/scheduler-rules.md +0 -84
  140. package/skills/qa-pact-writer/SKILL.md +0 -133
  141. package/skills/qa-pact-writer/references/best-practices.md +0 -100
  142. package/skills/qa-pact-writer/references/config.md +0 -135
  143. package/skills/qa-pact-writer/references/patterns.md +0 -161
  144. package/skills/qa-plan-creator/SKILL.md +0 -139
  145. package/skills/qa-plan-creator/references/introduction-plan.md +0 -43
  146. package/skills/qa-plan-creator/references/migration-plan.md +0 -44
  147. package/skills/qa-plan-creator/references/onboarding-plan.md +0 -46
  148. package/skills/qa-plan-creator/references/performance-plan.md +0 -44
  149. package/skills/qa-plan-creator/references/regression-plan.md +0 -45
  150. package/skills/qa-plan-creator/references/release-plan.md +0 -45
  151. package/skills/qa-plan-creator/references/sprint-plan.md +0 -44
  152. package/skills/qa-plan-creator/references/test-plan.md +0 -59
  153. package/skills/qa-plan-creator/references/uat-plan.md +0 -43
  154. package/skills/qa-plan-creator/templates/checklist-template.md +0 -36
  155. package/skills/qa-plan-creator/templates/regression-checklist-template.md +0 -49
  156. package/skills/qa-plan-creator/templates/release-checklist-template.md +0 -46
  157. package/skills/qa-plan-creator/templates/test-plan-template.md +0 -74
  158. package/skills/qa-playwright-py-writer/SKILL.md +0 -156
  159. package/skills/qa-playwright-py-writer/references/best-practices.md +0 -194
  160. package/skills/qa-playwright-py-writer/references/config.md +0 -195
  161. package/skills/qa-playwright-py-writer/references/patterns.md +0 -212
  162. package/skills/qa-playwright-ts-writer/SKILL.md +0 -151
  163. package/skills/qa-playwright-ts-writer/references/assertions.md +0 -109
  164. package/skills/qa-playwright-ts-writer/references/best-practices.md +0 -191
  165. package/skills/qa-playwright-ts-writer/references/config.md +0 -144
  166. package/skills/qa-playwright-ts-writer/references/patterns.md +0 -171
  167. package/skills/qa-pytest-writer/SKILL.md +0 -145
  168. package/skills/qa-pytest-writer/references/assertions.md +0 -149
  169. package/skills/qa-pytest-writer/references/best-practices.md +0 -97
  170. package/skills/qa-pytest-writer/references/config.md +0 -176
  171. package/skills/qa-pytest-writer/references/patterns.md +0 -251
  172. package/skills/qa-qase-integration/SKILL.md +0 -149
  173. package/skills/qa-qase-integration/references/api-reference.md +0 -354
  174. package/skills/qa-qase-integration/references/ci-integration.md +0 -196
  175. package/skills/qa-qase-integration/references/field-mapping.md +0 -157
  176. package/skills/qa-requirements-generator/SKILL.md +0 -152
  177. package/skills/qa-requirements-generator/references/iso-29148-structure.md +0 -153
  178. package/skills/qa-requirements-generator/references/requirement-patterns.md +0 -278
  179. package/skills/qa-rest-assured-writer/SKILL.md +0 -137
  180. package/skills/qa-rest-assured-writer/references/best-practices.md +0 -50
  181. package/skills/qa-rest-assured-writer/references/config.md +0 -124
  182. package/skills/qa-rest-assured-writer/references/patterns.md +0 -192
  183. package/skills/qa-risk-analyzer/SKILL.md +0 -158
  184. package/skills/qa-risk-analyzer/references/impact-analysis.md +0 -133
  185. package/skills/qa-risk-analyzer/references/risk-factors.md +0 -123
  186. package/skills/qa-robot-framework-writer/SKILL.md +0 -147
  187. package/skills/qa-robot-framework-writer/references/best-practices.md +0 -249
  188. package/skills/qa-robot-framework-writer/references/config.md +0 -204
  189. package/skills/qa-robot-framework-writer/references/libraries.md +0 -273
  190. package/skills/qa-robot-framework-writer/references/patterns.md +0 -216
  191. package/skills/qa-security-test-writer/SKILL.md +0 -123
  192. package/skills/qa-security-test-writer/references/best-practices.md +0 -155
  193. package/skills/qa-security-test-writer/references/owasp-top10.md +0 -331
  194. package/skills/qa-security-test-writer/references/zap-config.md +0 -258
  195. package/skills/qa-selenium-java-writer/SKILL.md +0 -143
  196. package/skills/qa-selenium-java-writer/references/best-practices.md +0 -59
  197. package/skills/qa-selenium-java-writer/references/config.md +0 -143
  198. package/skills/qa-selenium-java-writer/references/patterns.md +0 -170
  199. package/skills/qa-selenium-py-writer/SKILL.md +0 -150
  200. package/skills/qa-selenium-py-writer/references/best-practices.md +0 -175
  201. package/skills/qa-selenium-py-writer/references/config.md +0 -224
  202. package/skills/qa-selenium-py-writer/references/patterns.md +0 -255
  203. package/skills/qa-shortcut-integration/SKILL.md +0 -143
  204. package/skills/qa-shortcut-integration/references/api-patterns.md +0 -126
  205. package/skills/qa-shortcut-integration/references/field-mapping.md +0 -66
  206. package/skills/qa-spec-auditor/SKILL.md +0 -162
  207. package/skills/qa-spec-auditor/references/audit-checklist.md +0 -144
  208. package/skills/qa-spec-auditor/references/drift-patterns.md +0 -207
  209. package/skills/qa-spec-writer/SKILL.md +0 -143
  210. package/skills/qa-spec-writer/references/gherkin-guide.md +0 -253
  211. package/skills/qa-spec-writer/references/specification-patterns.md +0 -274
  212. package/skills/qa-spring-test-writer/SKILL.md +0 -170
  213. package/skills/qa-spring-test-writer/references/best-practices.md +0 -57
  214. package/skills/qa-spring-test-writer/references/config.md +0 -179
  215. package/skills/qa-spring-test-writer/references/patterns.md +0 -235
  216. package/skills/qa-supertest-writer/SKILL.md +0 -150
  217. package/skills/qa-supertest-writer/references/assertions.md +0 -192
  218. package/skills/qa-supertest-writer/references/best-practices.md +0 -102
  219. package/skills/qa-supertest-writer/references/config.md +0 -166
  220. package/skills/qa-supertest-writer/references/patterns.md +0 -242
  221. package/skills/qa-task-creator/SKILL.md +0 -142
  222. package/skills/qa-task-creator/references/linking-patterns.md +0 -127
  223. package/skills/qa-task-creator/references/task-types.md +0 -169
  224. package/skills/qa-task-creator/templates/task-template.md +0 -24
  225. package/skills/qa-test-doc-compiler/SKILL.md +0 -114
  226. package/skills/qa-test-doc-compiler/references/agile-tailoring.md +0 -220
  227. package/skills/qa-test-doc-compiler/references/iso-29119-3-documents.md +0 -302
  228. package/skills/qa-test-healer/SKILL.md +0 -101
  229. package/skills/qa-test-healer/references/diagnosis-patterns.md +0 -142
  230. package/skills/qa-test-healer/references/fix-strategies.md +0 -177
  231. package/skills/qa-test-reporter/SKILL.md +0 -130
  232. package/skills/qa-test-reporter/references/best-practices.md +0 -162
  233. package/skills/qa-test-reporter/references/iso-29119-reports.md +0 -236
  234. package/skills/qa-test-reporter/references/report-formats.md +0 -287
  235. package/skills/qa-test-reviewer/SKILL.md +0 -142
  236. package/skills/qa-test-reviewer/references/anti-patterns.md +0 -268
  237. package/skills/qa-test-reviewer/references/review-checklist.md +0 -93
  238. package/skills/qa-test-strategy/SKILL.md +0 -133
  239. package/skills/qa-test-strategy/references/entry-exit-criteria.md +0 -176
  240. package/skills/qa-test-strategy/references/risk-matrix.md +0 -102
  241. package/skills/qa-test-strategy/references/testing-types.md +0 -143
  242. package/skills/qa-testcase-from-docs/SKILL.md +0 -161
  243. package/skills/qa-testcase-from-docs/references/test-case-format.md +0 -196
  244. package/skills/qa-testcase-from-docs/references/test-design-techniques.md +0 -126
  245. package/skills/qa-testcase-from-docs/templates/test-case-template.md +0 -31
  246. package/skills/qa-testcase-from-ui/SKILL.md +0 -109
  247. package/skills/qa-testcase-from-ui/references/ui-element-patterns.md +0 -126
  248. package/skills/qa-testcase-from-ui/references/visual-analysis-guide.md +0 -146
  249. package/skills/qa-testcase-from-ui/templates/test-case-template.md +0 -31
  250. package/skills/qa-visual-regression-writer/SKILL.md +0 -175
  251. package/skills/qa-visual-regression-writer/references/best-practices.md +0 -154
  252. package/skills/qa-visual-regression-writer/references/config.md +0 -220
  253. package/skills/qa-visual-regression-writer/references/patterns.md +0 -213
  254. package/skills/qa-vitest-writer/SKILL.md +0 -141
  255. package/skills/qa-vitest-writer/references/assertions.md +0 -105
  256. package/skills/qa-vitest-writer/references/best-practices.md +0 -62
  257. package/skills/qa-vitest-writer/references/config.md +0 -127
  258. package/skills/qa-vitest-writer/references/patterns.md +0 -141
  259. package/skills/qa-webdriverio-writer/SKILL.md +0 -145
  260. package/skills/qa-webdriverio-writer/references/best-practices.md +0 -176
  261. package/skills/qa-webdriverio-writer/references/config.md +0 -240
  262. package/skills/qa-webdriverio-writer/references/patterns.md +0 -269
@@ -1,404 +0,0 @@
1
- # OpenAPI 3.x Specification Structure Reference
2
-
3
- Reference for building and validating OpenAPI 3.x specifications. Use when generating or curating API contracts.
4
-
5
- ## Document Root
6
-
7
- ```yaml
8
- openapi: 3.0.3
9
- info:
10
- title: API Title
11
- description: API description
12
- version: 1.0.0
13
- contact:
14
- name: API Support
15
- email: support@example.com
16
- servers:
17
- - url: https://api.example.com/v1
18
- description: Production
19
- - url: https://staging-api.example.com/v1
20
- description: Staging
21
- paths: {}
22
- components: {}
23
- ```
24
-
25
- ## Paths
26
-
27
- ### Basic Path Structure
28
-
29
- ```yaml
30
- paths:
31
- /users:
32
- get:
33
- summary: List users
34
- operationId: listUsers
35
- tags:
36
- - Users
37
- parameters: []
38
- responses:
39
- '200':
40
- description: Success
41
- content:
42
- application/json:
43
- schema:
44
- $ref: '#/components/schemas/UserList'
45
- post:
46
- summary: Create user
47
- operationId: createUser
48
- tags:
49
- - Users
50
- requestBody:
51
- required: true
52
- content:
53
- application/json:
54
- schema:
55
- $ref: '#/components/schemas/UserCreate'
56
- responses:
57
- '201':
58
- description: Created
59
- content:
60
- application/json:
61
- schema:
62
- $ref: '#/components/schemas/User'
63
- '400':
64
- description: Validation error
65
- content:
66
- application/json:
67
- schema:
68
- $ref: '#/components/schemas/Error'
69
-
70
- /users/{userId}:
71
- parameters:
72
- - $ref: '#/components/parameters/UserId'
73
- get:
74
- summary: Get user by ID
75
- operationId: getUserById
76
- responses:
77
- '200':
78
- description: Success
79
- content:
80
- application/json:
81
- schema:
82
- $ref: '#/components/schemas/User'
83
- '404':
84
- description: Not found
85
- ```
86
-
87
- ### Path Parameters
88
-
89
- ```yaml
90
- /users/{userId}/orders/{orderId}:
91
- parameters:
92
- - name: userId
93
- in: path
94
- required: true
95
- schema:
96
- type: string
97
- format: uuid
98
- - name: orderId
99
- in: path
100
- required: true
101
- schema:
102
- type: string
103
- ```
104
-
105
- ## Parameters
106
-
107
- ### Query Parameters
108
-
109
- ```yaml
110
- parameters:
111
- - name: page
112
- in: query
113
- description: Page number (1-based)
114
- schema:
115
- type: integer
116
- minimum: 1
117
- default: 1
118
- - name: limit
119
- in: query
120
- description: Items per page
121
- schema:
122
- type: integer
123
- minimum: 1
124
- maximum: 100
125
- default: 20
126
- - name: sort
127
- in: query
128
- schema:
129
- type: string
130
- enum: [createdAt, updatedAt, name]
131
- - name: filter
132
- in: query
133
- description: JSON filter expression
134
- schema:
135
- type: string
136
- ```
137
-
138
- ### Header Parameters
139
-
140
- ```yaml
141
- parameters:
142
- - name: X-Request-ID
143
- in: header
144
- description: Idempotency key
145
- schema:
146
- type: string
147
- format: uuid
148
- - name: X-Correlation-ID
149
- in: header
150
- schema:
151
- type: string
152
- ```
153
-
154
- ## Schemas (Components)
155
-
156
- ### Basic Schema
157
-
158
- ```yaml
159
- components:
160
- schemas:
161
- User:
162
- type: object
163
- required:
164
- - id
165
- - email
166
- properties:
167
- id:
168
- type: string
169
- format: uuid
170
- readOnly: true
171
- email:
172
- type: string
173
- format: email
174
- name:
175
- type: string
176
- nullable: true
177
- createdAt:
178
- type: string
179
- format: date-time
180
- readOnly: true
181
- ```
182
-
183
- ### Schema with Examples
184
-
185
- ```yaml
186
- User:
187
- type: object
188
- properties:
189
- id:
190
- type: string
191
- format: uuid
192
- example: "550e8400-e29b-41d4-a716-446655440000"
193
- email:
194
- type: string
195
- format: email
196
- example: "user@example.com"
197
- example:
198
- id: "550e8400-e29b-41d4-a716-446655440000"
199
- email: "user@example.com"
200
- name: "Jane Doe"
201
- createdAt: "2024-01-15T10:30:00Z"
202
- ```
203
-
204
- ### Array Schema
205
-
206
- ```yaml
207
- UserList:
208
- type: object
209
- properties:
210
- items:
211
- type: array
212
- items:
213
- $ref: '#/components/schemas/User'
214
- total:
215
- type: integer
216
- description: Total count
217
- page:
218
- type: integer
219
- limit:
220
- type: integer
221
- ```
222
-
223
- ### Enum and OneOf
224
-
225
- ```yaml
226
- OrderStatus:
227
- type: string
228
- enum: [pending, confirmed, shipped, delivered, cancelled]
229
-
230
- PaymentMethod:
231
- oneOf:
232
- - $ref: '#/components/schemas/CardPayment'
233
- - $ref: '#/components/schemas/BankTransfer'
234
- ```
235
-
236
- ### Error Schema
237
-
238
- ```yaml
239
- Error:
240
- type: object
241
- required:
242
- - code
243
- - message
244
- properties:
245
- code:
246
- type: string
247
- example: "VALIDATION_ERROR"
248
- message:
249
- type: string
250
- example: "Invalid input"
251
- details:
252
- type: array
253
- items:
254
- type: object
255
- properties:
256
- field:
257
- type: string
258
- reason:
259
- type: string
260
- ```
261
-
262
- ## Security Schemes
263
-
264
- ### API Key (Header)
265
-
266
- ```yaml
267
- components:
268
- securitySchemes:
269
- ApiKeyAuth:
270
- type: apiKey
271
- in: header
272
- name: X-API-Key
273
- description: API key for authentication
274
- ```
275
-
276
- ### Bearer JWT
277
-
278
- ```yaml
279
- BearerAuth:
280
- type: http
281
- scheme: bearer
282
- bearerFormat: JWT
283
- description: JWT token from /auth/login
284
- ```
285
-
286
- ### OAuth2
287
-
288
- ```yaml
289
- OAuth2:
290
- type: oauth2
291
- flows:
292
- authorizationCode:
293
- authorizationUrl: https://auth.example.com/oauth/authorize
294
- tokenUrl: https://auth.example.com/oauth/token
295
- scopes:
296
- read: Read access
297
- write: Write access
298
- ```
299
-
300
- ### Applying Security
301
-
302
- ```yaml
303
- # Global (all operations)
304
- security:
305
- - ApiKeyAuth: []
306
-
307
- # Per-operation override
308
- paths:
309
- /users:
310
- get:
311
- security: [] # Public
312
- post:
313
- security:
314
- - BearerAuth: [write]
315
- ```
316
-
317
- ## Responses
318
-
319
- ### Success and Error Responses
320
-
321
- ```yaml
322
- responses:
323
- '200':
324
- description: Success
325
- content:
326
- application/json:
327
- schema:
328
- $ref: '#/components/schemas/User'
329
- examples:
330
- default:
331
- value:
332
- id: "550e8400-e29b-41d4-a716-446655440000"
333
- email: "user@example.com"
334
- '400':
335
- description: Bad request
336
- content:
337
- application/json:
338
- schema:
339
- $ref: '#/components/schemas/Error'
340
- '401':
341
- description: Unauthorized
342
- '404':
343
- description: Not found
344
- '500':
345
- description: Internal server error
346
- ```
347
-
348
- ## Reusable Components
349
-
350
- ### Parameters
351
-
352
- ```yaml
353
- components:
354
- parameters:
355
- UserId:
356
- name: userId
357
- in: path
358
- required: true
359
- schema:
360
- type: string
361
- format: uuid
362
- PageSize:
363
- name: limit
364
- in: query
365
- schema:
366
- type: integer
367
- default: 20
368
- maximum: 100
369
- ```
370
-
371
- ### Examples
372
-
373
- ```yaml
374
- components:
375
- examples:
376
- UserExample:
377
- summary: Sample user
378
- value:
379
- id: "550e8400-e29b-41d4-a716-446655440000"
380
- email: "jane@example.com"
381
- name: "Jane Doe"
382
- ```
383
-
384
- ## Tags
385
-
386
- ```yaml
387
- tags:
388
- - name: Users
389
- description: User management operations
390
- - name: Orders
391
- description: Order lifecycle operations
392
- ```
393
-
394
- ## Deprecation
395
-
396
- ```yaml
397
- paths:
398
- /v1/legacy/users:
399
- deprecated: true
400
- get:
401
- summary: List users (deprecated)
402
- deprecated: true
403
- description: Use GET /v2/users instead. Will be removed in v3.
404
- ```
@@ -1,132 +0,0 @@
1
- ---
2
- name: qa-browser-data-collector
3
- description: Autonomously explore live web applications using Playwright MCP to collect page structure, form fields, validation rules, API endpoints, and user flows for test case generation.
4
- ---
5
-
6
- # QA Browser Data Collector
7
-
8
- ## Purpose
9
-
10
- Use Playwright MCP to autonomously explore live web applications and collect structured data for test generation. The skill navigates URLs, captures accessibility snapshots, inspects forms, records network traffic, and maps navigation paths—producing a "UI spec" that feeds into test case generators (e.g., qa-testcase-from-docs, qa-playwright-ts-writer).
11
-
12
- ## Trigger Phrases
13
-
14
- - "Collect data from [URL]" / "Explore [app URL] and gather UI spec"
15
- - "Capture form fields and validation from [URL]"
16
- - "Map navigation and API calls for [application]"
17
- - "Generate UI spec from live app at [URL]"
18
- - "Browser data collection for test generation"
19
- - "Explore [URL] and extract page structure, forms, and endpoints"
20
-
21
- ## Data Collection Workflow
22
-
23
- 1. **Navigate URLs** — Open target URLs via Playwright MCP; support multiple entry points (home, login, key flows).
24
- 2. **Capture accessibility snapshots** — Use snapshot tools to extract DOM structure, headings, landmarks, interactive elements.
25
- 3. **Collect form fields & validation rules** — Identify inputs, selects, textareas; infer types, required/optional, placeholders, validation patterns.
26
- 4. **Record error messages** — Trigger validation (e.g., submit empty), capture error text, fallback pages, toast/alert messages.
27
- 5. **Capture API endpoints from network** — Intercept or record XHR/fetch requests: endpoints, methods, status codes, payloads.
28
- 6. **Map navigation paths** — Extract links, menus, breadcrumbs, routing patterns; document user flow sequences.
29
- 7. **Screenshot pages** — Capture key screens for visual reference and test traceability.
30
- 8. **Extract state transitions** — Document login/logout, modal open/close, tab switches, conditional visibility.
31
-
32
- ## Collected Data Types
33
-
34
- | Category | Examples |
35
- |----------|----------|
36
- | **Page structure** | DOM tree, headings (h1–h6), landmarks (main, nav, aside), ARIA roles |
37
- | **Forms** | Fields (name, type, placeholder, required/optional), validation rules, submit targets |
38
- | **Navigation** | Links (href, text), menus, breadcrumbs, routing patterns |
39
- | **API calls** | Endpoints, HTTP methods, status codes, request/response payloads |
40
- | **Error handling** | Validation messages, error pages, fallbacks, console errors |
41
- | **Authentication flows** | Login form, session indicators, token storage, logout paths |
42
-
43
- ## Output Format
44
-
45
- Structured "UI spec" suitable for test case generators:
46
-
47
- ```json
48
- {
49
- "url": "https://example.com/login",
50
- "collectedAt": "ISO8601",
51
- "pages": [
52
- {
53
- "path": "/login",
54
- "title": "Sign In",
55
- "headings": ["Sign In", "Forgot password?"],
56
- "forms": [
57
- {
58
- "id": "login-form",
59
- "fields": [
60
- { "name": "email", "type": "email", "required": true },
61
- { "name": "password", "type": "password", "required": true }
62
- ],
63
- "submitButton": "Sign In",
64
- "validationMessages": ["Email is required", "Invalid email format"]
65
- }
66
- ],
67
- "links": [...],
68
- "apiCalls": [...]
69
- }
70
- ],
71
- "navigationPaths": [...],
72
- "authFlow": { "login": "/login", "logout": "/logout" }
73
- }
74
- ```
75
-
76
- Markdown output is also supported for human-readable specs. See `references/data-collection-checklist.md` for a full checklist.
77
-
78
- ## Scope
79
-
80
- **Can do (autonomous):**
81
- - Navigate to provided URLs and follow links within scope
82
- - Capture accessibility snapshots and extract structure
83
- - Inspect forms (fields, types, validation) without submitting real data
84
- - Record network requests (endpoints, methods, status codes)
85
- - Map navigation paths and document user flows
86
- - Take screenshots for reference
87
- - Produce structured JSON/markdown UI spec
88
- - Reference `references/data-collection-checklist.md` and `references/playwright-mcp-patterns.md`
89
-
90
- **Cannot do (requires confirmation):**
91
- - Navigate to URLs not explicitly provided
92
- - Submit forms with real user data (use placeholders/test data only)
93
- - Access authenticated areas without credentials provided by user
94
- - Modify app state beyond read-only exploration
95
-
96
- **Will not do (out of scope):**
97
- - **Modify any data in the application** — No form submissions with real data, no create/update/delete actions
98
- - Execute tests or assertions
99
- - Generate test code (hand off to qa-playwright-ts-writer or similar)
100
- - Bypass security or access restricted areas without permission
101
-
102
- ## Quality Checklist
103
-
104
- Before delivering a UI spec:
105
-
106
- - [ ] All target URLs explored per user scope
107
- - [ ] Page structure captured (headings, landmarks, key elements)
108
- - [ ] Forms documented with field types, required/optional, validation
109
- - [ ] API endpoints recorded with method, path, and status
110
- - [ ] Navigation paths mapped (links, menus, flows)
111
- - [ ] Error/validation messages captured where applicable
112
- - [ ] Screenshots taken for key pages
113
- - [ ] Output format valid (JSON or markdown)
114
- - [ ] No real user data submitted or stored
115
- - [ ] Scope boundaries respected (no unintended modifications)
116
-
117
- ## Troubleshooting
118
-
119
- | Symptom | Likely Cause | Fix |
120
- |---------|--------------|-----|
121
- | Snapshot empty or incomplete | Page not fully loaded, SPA hydration | Use wait patterns; retry snapshot after load |
122
- | Forms not detected | Dynamic forms, iframes | Check for iframes; wait for form visibility |
123
- | API calls not captured | Network interception not active | Ensure network recording started before navigation |
124
- | Login required | Protected area | Ask user for test credentials or skip authenticated routes |
125
- | Rate limiting / blocking | Bot detection | Reduce request frequency; use realistic delays |
126
- | CORS or mixed content | Cross-origin restrictions | Document observed behavior; note limitations |
127
- | Element refs stale | DOM changed between snapshot and action | Re-snapshot before interaction |
128
-
129
- ## References
130
-
131
- - `references/data-collection-checklist.md` — Checklist of data points to collect per page
132
- - `references/playwright-mcp-patterns.md` — Common Playwright MCP patterns for data collection
@@ -1,91 +0,0 @@
1
- # Data Collection Checklist
2
-
3
- Use this checklist when collecting data from each page during browser exploration. Tick items as they are captured.
4
-
5
- ## Page Metadata
6
-
7
- - [ ] **URL** — Full URL of the page
8
- - [ ] **Title** — Document title (`<title>`)
9
- - [ ] **Timestamp** — When the page was captured
10
-
11
- ## Page Structure
12
-
13
- - [ ] **Headings** — h1, h2, h3, h4, h5, h6 (text and hierarchy)
14
- - [ ] **Landmarks** — main, nav, aside, header, footer, section
15
- - [ ] **ARIA roles** — role attributes on key containers
16
- - [ ] **DOM depth** — Notable nesting for key interactive areas
17
-
18
- ## Forms
19
-
20
- - [ ] **Form ID/name** — Form identifier
21
- - [ ] **Action URL** — Form action (if present)
22
- - [ ] **Method** — GET or POST
23
- - [ ] **Fields:**
24
- - [ ] Name/label
25
- - [ ] Input type (text, email, password, number, checkbox, radio, select, textarea)
26
- - [ ] Required vs optional
27
- - [ ] Placeholder text
28
- - [ ] Validation attributes (min, max, pattern, maxlength)
29
- - [ ] Autocomplete hints
30
- - [ ] **Submit button** — Text and selector
31
- - [ ] **Validation messages** — Trigger validation and capture error text
32
-
33
- ## Links
34
-
35
- - [ ] **Internal links** — href, link text, destination
36
- - [ ] **External links** — href, link text (for documentation)
37
- - [ ] **Navigation menu items** — Structure and labels
38
- - [ ] **Breadcrumbs** — If present, full path
39
-
40
- ## Buttons
41
-
42
- - [ ] **Primary actions** — Text, type (button/submit), associated form
43
- - [ ] **Secondary actions** — Cancel, back, etc.
44
- - [ ] **Icon buttons** — aria-label or title for accessibility
45
-
46
- ## Images
47
-
48
- - [ ] **Decorative images** — Count and context
49
- - [ ] **Content images** — alt text, src (for traceability)
50
- - [ ] **Lazy-loaded images** — Note loading behavior
51
-
52
- ## Tables
53
-
54
- - [ ] **Table structure** — Headers, rows, columns
55
- - [ ] **Sortable columns** — If applicable
56
- - [ ] **Row actions** — Edit, delete, view links
57
- - [ ] **Pagination** — Controls and behavior
58
-
59
- ## Modals & Dialogs
60
-
61
- - [ ] **Modal triggers** — Buttons/links that open modals
62
- - [ ] **Modal content** — Title, body, form fields
63
- - [ ] **Close behavior** — Close button, overlay click, Escape
64
- - [ ] **Confirm/Cancel** — Button labels and actions
65
-
66
- ## Network Requests
67
-
68
- - [ ] **XHR/Fetch** — Endpoint, method, status code
69
- - [ ] **Request payload** — Structure (not sensitive values)
70
- - [ ] **Response structure** — Key fields for assertions
71
- - [ ] **WebSocket** — If applicable, connection URL and message types
72
-
73
- ## Console & Errors
74
-
75
- - [ ] **Console errors** — JavaScript errors on load
76
- - [ ] **Console warnings** — Notable warnings
77
- - [ ] **404 or error pages** — Structure of error fallbacks
78
-
79
- ## State & Transitions
80
-
81
- - [ ] **Authentication state** — Logged in vs logged out indicators
82
- - [ ] **Conditional visibility** — Elements that appear based on state
83
- - [ ] **Tab/accordion state** — Default open/closed
84
- - [ ] **Loading states** — Spinners, skeletons, disabled buttons
85
-
86
- ## Screenshots
87
-
88
- - [ ] **Full page** — For key pages
89
- - [ ] **Above-the-fold** — Initial viewport
90
- - [ ] **Modals** — When open (if applicable)
91
- - [ ] **Error states** — Validation or error page captures