testeiya 0.2.0 → 0.3.9

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 (412) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +37 -175
  3. package/dist/prompt/context.js +79 -0
  4. package/dist/prompt/context.js.map +1 -0
  5. package/dist/prompt/index.js +56 -0
  6. package/dist/prompt/index.js.map +1 -0
  7. package/dist/prompt/print.js +22 -0
  8. package/dist/prompt/print.js.map +1 -0
  9. package/dist/prompt/project-info.js +2 -0
  10. package/dist/prompt/project-info.js.map +1 -0
  11. package/{src/prompt/system-prompt.ts → dist/prompt/system-prompt.js} +24 -21
  12. package/dist/prompt/system-prompt.js.map +1 -0
  13. package/dist/prompt/testomatio.js +264 -0
  14. package/dist/prompt/testomatio.js.map +1 -0
  15. package/dist/prompt/tools.js +49 -0
  16. package/dist/prompt/tools.js.map +1 -0
  17. package/dist/prompt/vocab.js +8 -0
  18. package/dist/prompt/vocab.js.map +1 -0
  19. package/dist/src/args.js +72 -0
  20. package/dist/src/args.js.map +1 -0
  21. package/dist/src/cli.js +61 -0
  22. package/dist/src/cli.js.map +1 -0
  23. package/dist/src/env.js +69 -0
  24. package/dist/src/env.js.map +1 -0
  25. package/dist/src/mcp-extension.js +9 -0
  26. package/dist/src/mcp-extension.js.map +1 -0
  27. package/dist/src/mcp.js +139 -0
  28. package/dist/src/mcp.js.map +1 -0
  29. package/dist/src/model.js +66 -0
  30. package/dist/src/model.js.map +1 -0
  31. package/dist/src/result.js +41 -0
  32. package/dist/src/result.js.map +1 -0
  33. package/dist/src/run.js +199 -0
  34. package/dist/src/run.js.map +1 -0
  35. package/dist/src/session.js +77 -0
  36. package/dist/src/session.js.map +1 -0
  37. package/dist/vendor/mcp.js +14801 -0
  38. package/mcp-tools.json +2967 -0
  39. package/package.json +29 -41
  40. package/prompt/context.ts +101 -0
  41. package/prompt/index.ts +93 -0
  42. package/prompt/print.ts +23 -0
  43. package/prompt/project-info.ts +30 -0
  44. package/prompt/system-prompt.ts +173 -0
  45. package/{src/prompt → prompt}/testomatio.ts +119 -8
  46. package/{src/prompt → prompt}/tools.ts +30 -8
  47. package/prompt/vocab.ts +7 -0
  48. package/{skills.lock.json → skills/skills.lock.json} +11 -7
  49. package/skills/skills.yaml +34 -0
  50. package/models.catalog.json +0 -6963
  51. package/skills/codeceptjs/ci-fix-tests/SKILL.md +0 -120
  52. package/skills/codeceptjs/codeceptjs-auth/SKILL.md +0 -158
  53. package/skills/codeceptjs/codeceptjs-exploration/SKILL.md +0 -91
  54. package/skills/codeceptjs/codeceptjs-fundamentals/SKILL.md +0 -158
  55. package/skills/codeceptjs/codeceptjs-run-analysis/SKILL.md +0 -90
  56. package/skills/codeceptjs/debugging-codeceptjs-tests/SKILL.md +0 -234
  57. package/skills/codeceptjs/migrate-codeceptjs-4/SKILL.md +0 -110
  58. package/skills/codeceptjs/migrate-cypress-to-codeceptjs/SKILL.md +0 -306
  59. package/skills/codeceptjs/migrate-protractor-to-codeceptjs/SKILL.md +0 -352
  60. package/skills/codeceptjs/migrate-selenium-java-to-codeceptjs/SKILL.md +0 -472
  61. package/skills/codeceptjs/migrate-testcafe-to-codeceptjs/SKILL.md +0 -350
  62. package/skills/codeceptjs/refactoring-codeceptjs-tests/SKILL.md +0 -81
  63. package/skills/codeceptjs/writing-codeceptjs-tests/SKILL.md +0 -206
  64. package/skills/playwright-best-practices-skill/LICENSE.md +0 -7
  65. package/skills/playwright-best-practices-skill/README.md +0 -147
  66. package/skills/playwright-best-practices-skill/SKILL.md +0 -303
  67. package/skills/playwright-best-practices-skill/advanced/authentication-flows.md +0 -360
  68. package/skills/playwright-best-practices-skill/advanced/authentication.md +0 -871
  69. package/skills/playwright-best-practices-skill/advanced/clock-mocking.md +0 -364
  70. package/skills/playwright-best-practices-skill/advanced/mobile-testing.md +0 -409
  71. package/skills/playwright-best-practices-skill/advanced/multi-context.md +0 -288
  72. package/skills/playwright-best-practices-skill/advanced/multi-user.md +0 -393
  73. package/skills/playwright-best-practices-skill/advanced/network-advanced.md +0 -452
  74. package/skills/playwright-best-practices-skill/advanced/third-party.md +0 -464
  75. package/skills/playwright-best-practices-skill/architecture/pom-vs-fixtures.md +0 -363
  76. package/skills/playwright-best-practices-skill/architecture/test-architecture.md +0 -369
  77. package/skills/playwright-best-practices-skill/architecture/when-to-mock.md +0 -383
  78. package/skills/playwright-best-practices-skill/browser-apis/browser-apis.md +0 -391
  79. package/skills/playwright-best-practices-skill/browser-apis/iframes.md +0 -403
  80. package/skills/playwright-best-practices-skill/browser-apis/service-workers.md +0 -504
  81. package/skills/playwright-best-practices-skill/browser-apis/websockets.md +0 -403
  82. package/skills/playwright-best-practices-skill/core/annotations.md +0 -424
  83. package/skills/playwright-best-practices-skill/core/assertions-waiting.md +0 -361
  84. package/skills/playwright-best-practices-skill/core/configuration.md +0 -452
  85. package/skills/playwright-best-practices-skill/core/fixtures-hooks.md +0 -417
  86. package/skills/playwright-best-practices-skill/core/global-setup.md +0 -434
  87. package/skills/playwright-best-practices-skill/core/locators.md +0 -242
  88. package/skills/playwright-best-practices-skill/core/page-object-model.md +0 -315
  89. package/skills/playwright-best-practices-skill/core/projects-dependencies.md +0 -453
  90. package/skills/playwright-best-practices-skill/core/test-data.md +0 -492
  91. package/skills/playwright-best-practices-skill/core/test-suite-structure.md +0 -361
  92. package/skills/playwright-best-practices-skill/core/test-tags.md +0 -298
  93. package/skills/playwright-best-practices-skill/debugging/console-errors.md +0 -420
  94. package/skills/playwright-best-practices-skill/debugging/debugging.md +0 -504
  95. package/skills/playwright-best-practices-skill/debugging/error-testing.md +0 -360
  96. package/skills/playwright-best-practices-skill/debugging/flaky-tests.md +0 -496
  97. package/skills/playwright-best-practices-skill/frameworks/angular.md +0 -530
  98. package/skills/playwright-best-practices-skill/frameworks/nextjs.md +0 -469
  99. package/skills/playwright-best-practices-skill/frameworks/react.md +0 -531
  100. package/skills/playwright-best-practices-skill/frameworks/vue.md +0 -574
  101. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/ci-cd.md +0 -468
  102. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/docker.md +0 -283
  103. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/github-actions.md +0 -546
  104. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/gitlab.md +0 -397
  105. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/other-providers.md +0 -521
  106. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/parallel-sharding.md +0 -371
  107. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/performance.md +0 -453
  108. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/reporting.md +0 -424
  109. package/skills/playwright-best-practices-skill/infrastructure-ci-cd/test-coverage.md +0 -497
  110. package/skills/playwright-best-practices-skill/testing-patterns/accessibility.md +0 -359
  111. package/skills/playwright-best-practices-skill/testing-patterns/api-testing.md +0 -719
  112. package/skills/playwright-best-practices-skill/testing-patterns/browser-extensions.md +0 -506
  113. package/skills/playwright-best-practices-skill/testing-patterns/canvas-webgl.md +0 -493
  114. package/skills/playwright-best-practices-skill/testing-patterns/component-testing.md +0 -500
  115. package/skills/playwright-best-practices-skill/testing-patterns/drag-drop.md +0 -576
  116. package/skills/playwright-best-practices-skill/testing-patterns/electron.md +0 -509
  117. package/skills/playwright-best-practices-skill/testing-patterns/file-operations.md +0 -377
  118. package/skills/playwright-best-practices-skill/testing-patterns/file-upload-download.md +0 -562
  119. package/skills/playwright-best-practices-skill/testing-patterns/forms-validation.md +0 -561
  120. package/skills/playwright-best-practices-skill/testing-patterns/graphql-testing.md +0 -331
  121. package/skills/playwright-best-practices-skill/testing-patterns/i18n.md +0 -508
  122. package/skills/playwright-best-practices-skill/testing-patterns/performance-testing.md +0 -476
  123. package/skills/playwright-best-practices-skill/testing-patterns/security-testing.md +0 -430
  124. package/skills/playwright-best-practices-skill/testing-patterns/visual-regression.md +0 -634
  125. package/skills/playwright-cli/SKILL.md +0 -420
  126. package/skills/playwright-cli/references/element-attributes.md +0 -23
  127. package/skills/playwright-cli/references/playwright-tests.md +0 -39
  128. package/skills/playwright-cli/references/request-mocking.md +0 -87
  129. package/skills/playwright-cli/references/running-code.md +0 -241
  130. package/skills/playwright-cli/references/session-management.md +0 -225
  131. package/skills/playwright-cli/references/storage-state.md +0 -275
  132. package/skills/playwright-cli/references/test-generation.md +0 -433
  133. package/skills/playwright-cli/references/tracing.md +0 -139
  134. package/skills/playwright-cli/references/video-recording.md +0 -143
  135. package/skills/testeiya/README.md +0 -29
  136. package/skills/testeiya/answer-formatting/SKILL.md +0 -30
  137. package/skills/testeiya/check-cucumber/SKILL.md +0 -200
  138. package/skills/testeiya/check-tests/SKILL.md +0 -260
  139. package/skills/testeiya/manual-run-assistant/SKILL.md +0 -61
  140. package/skills/testeiya/testomatio-docs/INDEX.md +0 -175
  141. package/skills/testeiya/testomatio-docs/SKILL.md +0 -102
  142. package/skills/testeiya/testomatio-docs/docs/advanced/ai-powered-features/ai-agents.md +0 -144
  143. package/skills/testeiya/testomatio-docs/docs/advanced/ai-powered-features/ai-powered-features.md +0 -531
  144. package/skills/testeiya/testomatio-docs/docs/advanced/ai-powered-features/ai-requirements.md +0 -437
  145. package/skills/testeiya/testomatio-docs/docs/advanced/api-access/index.md +0 -191
  146. package/skills/testeiya/testomatio-docs/docs/advanced/branches-folder/index.md +0 -277
  147. package/skills/testeiya/testomatio-docs/docs/advanced/bulk-edit-folder/bulk-edit-demos.mdx +0 -39
  148. package/skills/testeiya/testomatio-docs/docs/advanced/bulk-edit-folder/bulk-edit-on-suite-and-test-level.md +0 -122
  149. package/skills/testeiya/testomatio-docs/docs/advanced/bulk-edit-folder/what-is-bulk-edit.md +0 -170
  150. package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/branches.md +0 -53
  151. package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/index.mdx +0 -98
  152. package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/jira-issue.md +0 -151
  153. package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/runs-and-reports.md +0 -377
  154. package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/work-in-jira.md +0 -267
  155. package/skills/testeiya/testomatio-docs/docs/advanced/living-doc/index.md +0 -138
  156. package/skills/testeiya/testomatio-docs/docs/advanced/milestones/index.md +0 -220
  157. package/skills/testeiya/testomatio-docs/docs/advanced/shortcuts/index.md +0 -48
  158. package/skills/testeiya/testomatio-docs/docs/advanced/tags-labels/labels-and-custom-fields.md +0 -201
  159. package/skills/testeiya/testomatio-docs/docs/advanced/tags-labels/tags-or-labels.md +0 -94
  160. package/skills/testeiya/testomatio-docs/docs/advanced/tags-labels/tags.md +0 -243
  161. package/skills/testeiya/testomatio-docs/docs/advanced/test-artifacts/index.md +0 -135
  162. package/skills/testeiya/testomatio-docs/docs/advanced/tql/index.md +0 -394
  163. package/skills/testeiya/testomatio-docs/docs/getting-started/index.md +0 -290
  164. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/azure.md +0 -96
  165. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/bamboo.md +0 -94
  166. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/bitbucket.md +0 -106
  167. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/circle.md +0 -115
  168. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/github.md +0 -120
  169. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/gitlab.md +0 -88
  170. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/index.mdx +0 -151
  171. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/jenkins.md +0 -121
  172. package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/teamcity.md +0 -96
  173. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/azure.md +0 -31
  174. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/clickup.md +0 -54
  175. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/confluence.md +0 -34
  176. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/github.md +0 -31
  177. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/gitlab.md +0 -93
  178. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/index.md +0 -131
  179. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/jira.md +0 -164
  180. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/linear.md +0 -29
  181. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/shortcut.md +0 -67
  182. package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/youtrack.md +0 -94
  183. package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/azure-devops.md +0 -53
  184. package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/email.md +0 -71
  185. package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/jira.md +0 -52
  186. package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/ms-teams.md +0 -60
  187. package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/rules.md +0 -267
  188. package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/slack.md +0 -82
  189. package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/telegram.md +0 -73
  190. package/skills/testeiya/testomatio-docs/docs/integrations/scim-provisioning/index.mdx +0 -207
  191. package/skills/testeiya/testomatio-docs/docs/integrations/scim-provisioning/okta.md +0 -204
  192. package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/azure.md +0 -95
  193. package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/google.md +0 -75
  194. package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/index.mdx +0 -33
  195. package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/okta.md +0 -108
  196. package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/saml.md +0 -66
  197. package/skills/testeiya/testomatio-docs/docs/legal/compliance/gdpr.md +0 -95
  198. package/skills/testeiya/testomatio-docs/docs/legal/compliance/index.mdx +0 -94
  199. package/skills/testeiya/testomatio-docs/docs/legal/compliance/privacy.md +0 -26
  200. package/skills/testeiya/testomatio-docs/docs/legal/compliance/terms.md +0 -32
  201. package/skills/testeiya/testomatio-docs/docs/legal/security/index.mdx +0 -242
  202. package/skills/testeiya/testomatio-docs/docs/legal/security/jira.md +0 -140
  203. package/skills/testeiya/testomatio-docs/docs/legal/security/subprocessors.md +0 -76
  204. package/skills/testeiya/testomatio-docs/docs/management/company/administration.md +0 -363
  205. package/skills/testeiya/testomatio-docs/docs/management/company/audit-log.md +0 -41
  206. package/skills/testeiya/testomatio-docs/docs/management/company/plan-features-comparison.md +0 -240
  207. package/skills/testeiya/testomatio-docs/docs/management/company/subscriptions.md +0 -326
  208. package/skills/testeiya/testomatio-docs/docs/management/company/trials.md +0 -75
  209. package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/accountant.md +0 -49
  210. package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/index.mdx +0 -285
  211. package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/read-only-user.md +0 -67
  212. package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/teams.md +0 -138
  213. package/skills/testeiya/testomatio-docs/docs/management/project/settings.md +0 -87
  214. package/skills/testeiya/testomatio-docs/docs/management/project/templates.md +0 -546
  215. package/skills/testeiya/testomatio-docs/docs/project/analytics/index.md +0 -326
  216. package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/classical-tests-markdown-format.md +0 -386
  217. package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/download-manual-tests-as-files.md +0 -378
  218. package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/export-to-obsidian.md +0 -112
  219. package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/export-to-spreadsheet.md +0 -127
  220. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/auto-import.md +0 -63
  221. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-Allure-TestOps.md +0 -49
  222. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-QTest.md +0 -41
  223. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-Qase.md +0 -39
  224. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-Zephyr.md +0 -37
  225. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-csv-xlsx.md +0 -117
  226. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-cucumber.md +0 -93
  227. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-qmetry.md +0 -44
  228. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-source-code.md +0 -117
  229. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-testcaselabs.md +0 -44
  230. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-testmo.md +0 -47
  231. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-testrail.md +0 -82
  232. package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-xray.md +0 -55
  233. package/skills/testeiya/testomatio-docs/docs/project/plans/index.md +0 -334
  234. package/skills/testeiya/testomatio-docs/docs/project/pulse/index.md +0 -104
  235. package/skills/testeiya/testomatio-docs/docs/project/runs/archive-runs-and-groups.md +0 -176
  236. package/skills/testeiya/testomatio-docs/docs/project/runs/custom-statuses.md +0 -195
  237. package/skills/testeiya/testomatio-docs/docs/project/runs/environments.md +0 -203
  238. package/skills/testeiya/testomatio-docs/docs/project/runs/managing-runs.md +0 -455
  239. package/skills/testeiya/testomatio-docs/docs/project/runs/merge-strategies.md +0 -137
  240. package/skills/testeiya/testomatio-docs/docs/project/runs/reports.md +0 -329
  241. package/skills/testeiya/testomatio-docs/docs/project/runs/rungroups.md +0 -342
  242. package/skills/testeiya/testomatio-docs/docs/project/runs/running-automated-tests.md +0 -256
  243. package/skills/testeiya/testomatio-docs/docs/project/runs/running-manual-and-automated-tests.md +0 -331
  244. package/skills/testeiya/testomatio-docs/docs/project/runs/running-tests-manually.md +0 -633
  245. package/skills/testeiya/testomatio-docs/docs/project/runs/temporary-tests-notes.md +0 -223
  246. package/skills/testeiya/testomatio-docs/docs/project/steps-snippets/snippets.md +0 -68
  247. package/skills/testeiya/testomatio-docs/docs/project/steps-snippets/steps.md +0 -181
  248. package/skills/testeiya/testomatio-docs/docs/project/tests/bdd-test-case-editor.md +0 -98
  249. package/skills/testeiya/testomatio-docs/docs/project/tests/classical-test-case-editor.md +0 -354
  250. package/skills/testeiya/testomatio-docs/docs/project/tests/classical-vs-bdd.md +0 -169
  251. package/skills/testeiya/testomatio-docs/docs/project/tests/copy-and-move-your-tests.md +0 -156
  252. package/skills/testeiya/testomatio-docs/docs/project/tests/other-features-for-test-case-design.md +0 -412
  253. package/skills/testeiya/testomatio-docs/docs/project/tests/test-case-creation-and-editing.md +0 -527
  254. package/skills/testeiya/testomatio-docs/docs/support/index.md +0 -75
  255. package/skills/testeiya/testomatio-docs/docs/test-reporting/artifacts.md +0 -388
  256. package/skills/testeiya/testomatio-docs/docs/test-reporting/cli.md +0 -215
  257. package/skills/testeiya/testomatio-docs/docs/test-reporting/configuration.md +0 -247
  258. package/skills/testeiya/testomatio-docs/docs/test-reporting/frameworks.md +0 -490
  259. package/skills/testeiya/testomatio-docs/docs/test-reporting/functions.md +0 -144
  260. package/skills/testeiya/testomatio-docs/docs/test-reporting/index.mdx +0 -48
  261. package/skills/testeiya/testomatio-docs/docs/test-reporting/junit.md +0 -248
  262. package/skills/testeiya/testomatio-docs/docs/test-reporting/logger.md +0 -138
  263. package/skills/testeiya/testomatio-docs/docs/test-reporting/php.md +0 -77
  264. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/bitbucket.md +0 -72
  265. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/csv.md +0 -23
  266. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/debug.md +0 -18
  267. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/github.md +0 -63
  268. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/gitlab.md +0 -29
  269. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/html.md +0 -80
  270. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/index.mdx +0 -57
  271. package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/testomatio.md +0 -331
  272. package/skills/testeiya/testomatio-docs/docs/test-reporting/python.md +0 -229
  273. package/skills/testeiya/testomatio-docs/docs/test-reporting/workflows.md +0 -325
  274. package/skills/testeiya/testomatio-docs/docs/tutorials/Interacting-via-API.md +0 -159
  275. package/skills/testeiya/testomatio-docs/docs/tutorials/Manual-Testing-Classic.md +0 -164
  276. package/skills/testeiya/testomatio-docs/docs/tutorials/Set-Up-Read-Only-Access.md +0 -85
  277. package/skills/testeiya/testomatio-docs/docs/tutorials/Using-AI-in-Testing.md +0 -163
  278. package/skills/testeiya/testomatio-docs/docs/tutorials/Working-with-Jira.md +0 -125
  279. package/skills/testeiya/testomatio-docs/docs/tutorials/java.md +0 -478
  280. package/skills/testeiya/testomatio-docs/docs/tutorials/playwright.md +0 -207
  281. package/skills/testeiya/testomatio-docs/docs/tutorials/webdriver.md +0 -218
  282. package/skills/testeiya/testomatio-docs/docs.lock.json +0 -6
  283. package/skills/testeiya/testomatio-reporter/SKILL.md +0 -307
  284. package/skills/testomatio/explorbot/explorbot-fundamentals/SKILL.md +0 -88
  285. package/skills/testomatio/explorbot/explorbot-plan/SKILL.md +0 -95
  286. package/skills/testomatio/explorbot/explorbot-setup/SKILL.md +0 -334
  287. package/skills/testomatio/test-automation/automate-manual-test-cases/CLAUDE.md +0 -56
  288. package/skills/testomatio/test-automation/automate-manual-test-cases/SKILL.md +0 -242
  289. package/skills/testomatio/test-automation/automate-manual-test-cases/references/CODECEPTJS_BEST_PRACTICES.md +0 -182
  290. package/skills/testomatio/test-automation/automate-manual-test-cases/references/FINAL_SUMMARY_TEMPLATE.md +0 -22
  291. package/skills/testomatio/test-automation/automate-manual-test-cases/references/PLAYWRIGHT_BEST_PRACTICES.md +0 -90
  292. package/skills/testomatio/test-automation/automate-manual-test-cases/references/POM_BEST_PRACTICES.md +0 -53
  293. package/skills/testomatio/test-automation/automate-manual-test-cases/references/TEST_DATA_MANAGEMENT.md +0 -52
  294. package/skills/testomatio/test-automation/debug-fix-failed-flaky-autotests/SKILL.md +0 -107
  295. package/skills/testomatio/test-automation/debug-fix-failed-flaky-autotests/references/DEBUGGING_QUICK_REFERENCE.md +0 -113
  296. package/skills/testomatio/test-automation/qa-automation-test-consolidation/SKILL.md +0 -29
  297. package/skills/testomatio/test-automation/run-tests-with-testomatio-reporter/SKILL.md +0 -151
  298. package/skills/testomatio/test-automation/setup-pr-testing/SKILL.md +0 -199
  299. package/skills/testomatio/test-automation/testomat-allure-adapter/SKILL.md +0 -289
  300. package/skills/testomatio/test-management/detect-duplicate-test-cases/SKILL.md +0 -86
  301. package/skills/testomatio/test-management/detect-duplicate-test-cases/references/DUPLICATE_INSTRUCTIONS.md +0 -54
  302. package/skills/testomatio/test-management/improve-test-cases/SKILL.md +0 -114
  303. package/skills/testomatio/test-management/improve-test-cases/references/TESTOMAT_MARKDOWN_EXAMPLE.md +0 -66
  304. package/skills/testomatio/test-management/pull-request-diff-analyzer/SKILL.md +0 -141
  305. package/skills/testomatio/test-management/qa-e2e-tests-reporting/SKILL.md +0 -354
  306. package/skills/testomatio/test-management/qa-e2e-tests-reporting/references/TESTOMATIO_ARTIFACTS.md +0 -82
  307. package/skills/testomatio/test-management/qa-e2e-tests-reporting/references/TESTOMATIO_HTML_REPORT.md +0 -37
  308. package/skills/testomatio/test-management/qa-e2e-tests-reporting/references/TESTOMATIO_REPORTERS_CONFIG.md +0 -118
  309. package/skills/testomatio/test-management/qa-pr-requirements-analyzer/SKILL.md +0 -149
  310. package/skills/testomatio/test-management/qa-pr-requirements-analyzer/references/summary-example.md +0 -54
  311. package/skills/testomatio/test-management/qa-requirement-reviewer/SKILL.md +0 -126
  312. package/skills/testomatio/test-management/qa-requirement-reviewer/references/requirements_reviewer_examples.md +0 -128
  313. package/skills/testomatio/test-management/qa-test-code-coverage/SKILL.md +0 -174
  314. package/skills/testomatio/test-management/qa-test-code-coverage/references/COVERAGE_FILE_FORMAT.md +0 -138
  315. package/skills/testomatio/test-management/qa-test-code-coverage/references/E2E_FRAMEWORKS.md +0 -65
  316. package/skills/testomatio/test-management/qa-test-code-coverage/scripts/check-coverage.mjs +0 -40
  317. package/skills/testomatio/test-management/qa-thinking/SKILL.md +0 -36
  318. package/skills/testomatio/test-management/qa-write-test-cases/SKILL.md +0 -267
  319. package/skills/testomatio/test-management/qa-write-test-cases/references/test-case-format.md +0 -387
  320. package/skills/testomatio/test-management/qa-write-test-cases/references/testomat-tms-guide.md +0 -72
  321. package/skills/testomatio/test-management/qa-write-test-cases/references/writing-rule.md +0 -159
  322. package/skills/testomatio/test-management/scan-automation-project/SKILL.md +0 -152
  323. package/skills/testomatio/test-management/sync-test-cases-with-tms/SKILL.md +0 -107
  324. package/skills/testomatio/test-management/sync-test-cases-with-tms/references/TESTOMATIO_CLI.md +0 -140
  325. package/skills/testomatio/test-management/testomatio-mcp/SKILL.md +0 -182
  326. package/skills/testomatio/test-management/testomatio-mcp/references/MCP_SETUP.md +0 -169
  327. package/skills.yaml +0 -21
  328. package/src/ai-debug.ts +0 -188
  329. package/src/api/agent-get.ts +0 -22
  330. package/src/api/agent-start.ts +0 -384
  331. package/src/api/client-log.ts +0 -29
  332. package/src/api/context.ts +0 -332
  333. package/src/api/debug-layout.ts +0 -47
  334. package/src/api/debug-report.ts +0 -29
  335. package/src/api/debug-snapshot.ts +0 -30
  336. package/src/api/debug-stream.ts +0 -52
  337. package/src/api/files-delete.ts +0 -184
  338. package/src/api/files-read.ts +0 -41
  339. package/src/api/files-rename.ts +0 -99
  340. package/src/api/files-tree.ts +0 -292
  341. package/src/api/files-write.ts +0 -41
  342. package/src/api/mcp.ts +0 -603
  343. package/src/api/memory.ts +0 -69
  344. package/src/api/open-external.ts +0 -39
  345. package/src/api/playwright-cli.ts +0 -606
  346. package/src/api/providers.ts +0 -457
  347. package/src/api/read-env-token.ts +0 -33
  348. package/src/api/sessions.ts +0 -79
  349. package/src/api/settings.ts +0 -120
  350. package/src/api/skills.ts +0 -58
  351. package/src/api/testomatio-attachment.ts +0 -89
  352. package/src/api/testomatio-auth.ts +0 -284
  353. package/src/api/testomatio-proxy.ts +0 -197
  354. package/src/api/testomatio-run-stats.ts +0 -81
  355. package/src/api/testomatio-target.ts +0 -225
  356. package/src/api/testomatio-transcription.ts +0 -82
  357. package/src/api/workspace-search.ts +0 -96
  358. package/src/api/workspace-sync.ts +0 -151
  359. package/src/api/workspace.ts +0 -165
  360. package/src/app-server.ts +0 -556
  361. package/src/bridge.ts +0 -251
  362. package/src/check-tests.ts +0 -156
  363. package/src/cli.ts +0 -17
  364. package/src/commands.ts +0 -244
  365. package/src/config.ts +0 -183
  366. package/src/connection.ts +0 -658
  367. package/src/context-store.ts +0 -265
  368. package/src/debug-bus.ts +0 -405
  369. package/src/extensions/tool-gate.ts +0 -220
  370. package/src/extensions/webui/ask-channel.ts +0 -52
  371. package/src/extensions/webui/index.ts +0 -184
  372. package/src/extensions/webui/tools/ask-question.ts +0 -88
  373. package/src/extensions/webui/tools/query-result.ts +0 -79
  374. package/src/extensions/webui/tools/render-chart.ts +0 -53
  375. package/src/extensions/webui/tools/render-item.ts +0 -61
  376. package/src/extensions/webui/tools/render-list.ts +0 -170
  377. package/src/extensions/webui/tools/render-result.ts +0 -85
  378. package/src/extensions/webui/tools/render-tree.ts +0 -71
  379. package/src/extensions/webui/tools/ui-widget.ts +0 -54
  380. package/src/extensions/webui/tools/widget-result.ts +0 -13
  381. package/src/extensions/webui/widget-channel.ts +0 -50
  382. package/src/file-log.ts +0 -196
  383. package/src/git-tracked.ts +0 -68
  384. package/src/gitignore.ts +0 -53
  385. package/src/json-store.ts +0 -43
  386. package/src/load-env.ts +0 -70
  387. package/src/loader-style.ts +0 -96
  388. package/src/main.ts +0 -140
  389. package/src/mcp-catalog.ts +0 -96
  390. package/src/models-catalog.ts +0 -72
  391. package/src/permissions.ts +0 -120
  392. package/src/project-dir.ts +0 -189
  393. package/src/project-info.ts +0 -108
  394. package/src/prompt/app-ui.ts +0 -59
  395. package/src/prompt/browser.ts +0 -27
  396. package/src/prompt/index.ts +0 -62
  397. package/src/server-info.ts +0 -62
  398. package/src/session-factory.ts +0 -442
  399. package/src/session-store.ts +0 -115
  400. package/src/shell-env.ts +0 -45
  401. package/src/skills.ts +0 -163
  402. package/src/sync-snapshot.ts +0 -140
  403. package/src/telemetry.ts +0 -239
  404. package/src/testomatio-auth.ts +0 -299
  405. package/src/testomatio.ts +0 -98
  406. package/src/theme.ts +0 -30
  407. package/src/user-env.ts +0 -94
  408. package/src/welcome.ts +0 -127
  409. package/src/workspace/safe-path.ts +0 -85
  410. package/src/workspace/test-md.ts +0 -70
  411. package/src/workspace-model.ts +0 -440
  412. package/testeiya.config.json +0 -14
@@ -1,118 +0,0 @@
1
- # Testomat.io Reporters Configuration
2
-
3
- ## Installation
4
-
5
- ```bash
6
- npm install @testomatio/reporter --save-dev
7
- # or pnpm install @testomatio/reporter --save-dev
8
- # or yarn add @testomatio/reporter --dev
9
- ```
10
-
11
- ## Environment Variables
12
-
13
- | Variable | Description | Required |
14
- |----------|-------------|----------|
15
- | `TESTOMATIO` | API key (format: `tstmt_xxxxx`) | Yes (for sync) |
16
- | `TESTOMATIO_WORKDIR` | Working directory for relative paths | No |
17
-
18
- ## Configuration File (Recommended)
19
-
20
- Create `.env` file in project root to store credentials securely:
21
-
22
- ```env
23
- TESTOMATIO=tstmt_xxx
24
- ...
25
- ```
26
-
27
- > **Best Practice:** Use `.env` file instead of passing `TESTOMATIO` token as command variable. Keep `.env` in `.gitignore`.
28
-
29
- ## Framework Configuration
30
-
31
- ### Playwright
32
-
33
- **Config:**
34
- ```js
35
- reporter: [
36
- ['@testomatio/reporter/playwright'],
37
- ],
38
- ```
39
-
40
- **Run:**
41
- - `npx playwright test` (if token configured in .env).
42
- - `TESTOMATIO={API_KEY} npx playwright test` (if no token configured in .env).
43
-
44
- ### CodeceptJS
45
-
46
- **Config:**
47
- ```js
48
- plugins: {
49
- testomatio: {
50
- enabled: true,
51
- require: '@testomatio/reporter/codecept',
52
- }
53
- }
54
- ```
55
-
56
- **Run:**
57
- - `npx codeceptjs run` (if token configured in .env).
58
- - `TESTOMATIO={API_KEY} npx codeceptjs run` (if no token configured in .env).
59
-
60
- ### Mocha
61
-
62
- **Run:**
63
- ```bash
64
- mocha --reporter @testomatio/reporter/mocha --reporter-options apiKey=tstmt_xxx
65
- ```
66
-
67
- ### WebdriverIO
68
-
69
- **Config (wdio.conf.js):**
70
- ```js
71
- const testomatio = require('@testomatio/reporter/webdriver');
72
- // or
73
- // const testomatio = require('@testomatio/reporter/wdio');
74
-
75
- exports.config = {
76
- // ...
77
- reporters: [
78
- [
79
- testomatio,
80
- {
81
- apiKey: process.env.TESTOMATIO,
82
- },
83
- ],
84
- ],
85
- };
86
- ```
87
-
88
- **Run:** `npx @testomatio/reporter run 'npx wdio wdio.conf.js'`
89
-
90
- ### Jest
91
-
92
- **Config (jest.config.js):**
93
- ```js
94
- reporters: ['default', ['@testomatio/reporter/jest', { apiKey: process.env.TESTOMATIO }]],
95
- ```
96
-
97
- **Run:** `npx jest`
98
-
99
- ## Import Tests to TMS
100
-
101
- ```bash
102
- npx check-tests <framework> "<glob-pattern>"
103
- ```
104
-
105
- Examples:
106
- ```bash
107
- npx check-tests playwright "tests/**/*.spec.js"
108
- npx check-tests playwright "tests/**/*.spec.ts" --typescript --update-ids
109
- npx check-tests jest "tests/**/*.test.js" --require-ids
110
- npx check-tests mocha "test/**/*_test.js"
111
- npx check-tests codeceptjs "tests/**_test.js"
112
- ```
113
-
114
- Example using the `TESTOMATIO` token in the exec command:
115
- ```bash
116
- # Not recommended, but can be used for testing
117
- TESTOMATIO=tstmt_xxx npx check-tests playwright "tests/**/*.spec.js"
118
- ```
@@ -1,149 +0,0 @@
1
- ---
2
- name: qa-pr-requirements-analyzer
3
- description: Analyze a pull request's context - title, description, comments, linked issues, attached schemas/images — to understand the original intent, verify scope against the linked ticket, surface ambiguities and edge cases, and produce a structured requirements summary with testable acceptance criteria. Use this skill when the user wants to understand WHAT a PR is supposed to do (not just what code changed), check whether the PR matches its linked ticket/task or generate acceptance criteria from PR/ticket context rather than from code.
4
- license: MIT
5
- metadata:
6
- author: Testomat.io
7
- version: 1.1.0
8
- ---
9
-
10
- # QA PR Requirements Analyzer
11
-
12
- Reviews a pull request's human-written context — title, description, comments, linked tickets, attached images — to extract the original requirements, verify scope, and produce a requirements summary that downstream skills (`qa-write-test-cases`) can consume.
13
-
14
- Complement of `pull-request-diff-analyzer`:
15
-
16
- | Skill | Input | Output | Focus |
17
- |-------|-------|--------|-------|
18
- | `pull-request-diff-analyzer` | git diff, changed files | AC from code changes | "what the code does" |
19
- | `qa-pr-requirements-analyzer` | PR title, description, comments, linked issue | summary of requirements with scope verification, AC | "what the PR is supposed to do" |
20
-
21
- - Use them together for a full picture.
22
- - If the user only wants to know what code changed, use `pull-request-diff-analyzer` instead.
23
-
24
- ## Step 1: Detect PR Context
25
-
26
- Accept, in priority order:
27
- 1. A PR number or URL from the user prompt (e.g. `https://github.com/org/repo/pull/1234`).
28
- 2. The open PR for the current branch: `gh pr view --json number,title,baseRefName,headRefName,url`.
29
- 3. A ticket key only (Jira `PRJ-123`, Linear, etc) — analyze the ticket, then check for any open PR referencing it.
30
-
31
- - If none are detectable, ask the user for a PR number/URL, branch name, or ticket key.
32
- - If the branch exists only locally, ask the user to push it or provide the PR details directly.
33
-
34
- ## Step 2: Read PR Context
35
-
36
- Collect what the developer and team wrote — not the code. Detect available MCP/CLI tools and pull:
37
- - PR metadata (title, description, comments, labels, milestone, assignees) — via Jira/Linear/GitHub MCP if enabled, else `gh` CLI.
38
- - Embedded images/diagrams in the body — read them (vision-capable agent or `fetch` + describe); they often capture UI changes, error states, or flows that text misses.
39
- - Linked tickets — parse the PR body and branch name for ticket references.
40
-
41
- **Do not fabricate ticket content or add incorrect information.**
42
-
43
- ## Step 3: Resolve Linked Tickets
44
-
45
- The PR description is often a thin summary; the ticket has the real requirements. Use the first available tool:
46
-
47
- 1. Jira/Linear MCP if enabled — fetch issue summary, description, AC, comments, linked issues, attachments.
48
- 2. GitHub MCP if enabled — fetch the linked issue.
49
- 3. `gh` CLI fallback — `gh issue view {N} --json title,body,comments,labels`. For Jira/Linear without an MCP, ask the user to paste the issue content.
50
- 4. No access — note the gap explicitly in the output and continue with what you have.
51
-
52
- ## Step 4: Verify Scope and Detect Ambiguities
53
-
54
- Compare what the PR does against what the ticket asked for. These are questions to raise, not assertions that the code is wrong.
55
-
56
- Scope verification — build three lists:
57
- - In scope — ticket requirements addressed by the PR (description or code, see Step 5).
58
- - Out of scope — ticket requirements with no corresponding PR change. These are the most valuable output of this skill.
59
- - Extra (not in ticket) — PR changes not mentioned in the ticket. Flag for review (intentional or accidental?).
60
-
61
- Ambiguities, edge cases, open questions — surface only issues supported by the available context. **Do not invent new requirements** or assume the product should handle a scenario unless the ticket, PR description, comments, or surrounding context suggest it is relevant. Look for:
62
- - Underspecified behavior — the ticket describes a capability but omits important details (e.g. export is required, but format, naming, permissions, or empty-state behavior are not defined).
63
- - Unanswered comments — questions in PR or ticket comments with no visible resolution.
64
- - Conflicting requirements — different parts of the ticket, comments, or PR description disagree.
65
- - Potentially relevant edge cases — scenarios related to the stated requirements whose expected behavior is not specified. Present these as questions, not requirements.
66
- - **Never report an edge case solely because it is a common software concern.**
67
- - Only raise an edge case when the ticket, PR description, affected domain, or discussion suggests it may be relevant.
68
-
69
- ## Step 5: Identify Affected Files
70
-
71
- Do not do a deep code review — that is `pull-request-diff-analyzer`. Prefer files mentioned in the PR description or ticket; cross-check with `git diff {base}...HEAD --name-only` only if the description doesn't enumerate them.
72
-
73
- **Short-circuit (no source behavior):** if every changed file is non-source (`*.md`, `docs/**`, `tests/**`, configs, CI, deps, lock files):
74
- - Do not invent AC. Do not invoke `pull-request-diff-analyzer`.
75
- - Produce a short summary: PR title, type (`docs`/`chore`/`ci`/`deps`), one-sentence `Changes`, full file list.
76
- - Add the note `> No source code behavior changed. Acceptance criteria generation is not applicable for this PR.`
77
- - Stop here.
78
-
79
- **Empty PR description:** if there is no body and the branch name doesn't encode intent:
80
- - Pull `git log {base}..HEAD --pretty=format:"%s%n%b"`.
81
- - Combine with changed files and branch name into a tentative one-sentence `Changes`.
82
- - Mark `> PR description was empty. Summary derived from branch name, commits, and changed files only.`
83
- - If a linked ticket exists, prefer the ticket as source of truth and note the empty body under "Ambiguities".
84
-
85
- ## Step 6: Generate the Requirements Summary
86
-
87
- **Save to a `.md` file only if the original prompt explicitly requests saving.** Write it to the user-specified folder.
88
-
89
- Filename: slugify the PR title (lowercase, dashes, no special chars, max 40 chars), append the PR number. Example: `Add user export to CSV` → `add-user-export-to-csv-pr-1234.md`.
90
-
91
- Output template (filled example: [summary-example.md](./references/summary-example.md)):
92
-
93
- ```md
94
- ## PR Requirements Summary
95
-
96
- **PR:** {title}
97
- **Branch:** {headRefName} → {baseRefName}
98
- **Type:** {feature | bugfix | refactor | deps}
99
- **Linked Tickets:** ... (only if any exist)
100
-
101
- **Source of Truth:**
102
- - PR description: {present | empty — derived from commits/branch}
103
- - Jira/GitHub ticket: {resolved | not resolved — no MCP available}
104
- - Most reliable source: {PR description | ticket | commits}
105
-
106
- **Changes Overview:** ... (1-2 sentences — intent, not implementation)
107
-
108
- **Impacted Areas:**
109
- - Payment processing (6 source files)
110
- - Billing configuration (2 config files)
111
- - ... (bullet list, only meaningful business/technical impact; omit if empty)
112
-
113
- **High Level Key files (up to 5):**
114
- - `path/to/file.ts` — source
115
- - ... (categorized: source | config | test | docs | migration | deps)
116
-
117
- **Scope Verification:**
118
- - ✅ In scope: {ticket requirement → where in PR it is addressed}
119
- - ⚠️ Out of scope: {ticket requirement not addressed in PR}
120
- - ➕ Extra (not in ticket): {change present in PR but not in ticket}
121
-
122
- **Ambiguities, Edge Cases & Open Questions:**
123
- - ... (underspecified behavior / unanswered comment / conflicting requirement / missing edge case)
124
- - ... (empty input / permissions / error path / performance / backward compatibility / ...)
125
- - ...
126
-
127
- **Acceptance Criteria:**
128
- - {action to perform} → {expected result}
129
- - ...
130
- ```
131
-
132
- Summary rules:
133
- - Concise, high-level, requirements-not-implementation — this is a requirements document, not a code review.
134
- - `Changes Overview` is 1-2 sentences.
135
- - `Impacted Areas` — meaningful bullets; omit the section if empty.
136
- - `Source of Truth` is required — tells downstream skills what to trust when sources disagree.
137
- - `Acceptance Criteria` — testable, user-oriented, written as "action → expected result". If no source-code behavior changed, replace this section with the explicit "not applicable" note from Step 5.
138
- - Omit empty sections instead of writing `None`/`N/A` — except the "no source code changed" note, which must be explicit.
139
- - Avoid generic statements like "code cleanup", "minor fixes", "various improvements" — name what changed or omit it.
140
-
141
- ## References
142
-
143
- | Description | File |
144
- |-------------|------|
145
- | Filled example of the output summary | [summary-example.md](./references/summary-example.md) |
146
- | `.testeiya/` directory convention | `../scan-automation-project/SKILL.md` |
147
- | Code-focused PR analysis (companion skill) | `../pull-request-diff-analyzer/SKILL.md` |
148
- | Downstream: generate test cases from requirements | `../qa-write-test-cases/SKILL.md` |
149
- | Downstream: sync generated cases to Testomat.io | `../sync-test-cases-with-tms/SKILL.md` |
@@ -1,54 +0,0 @@
1
- # PR Requirements Summary — Example
2
-
3
- A filled-in example of the artifact produced by the `qa-pr-requirements-analyzer` skill.
4
-
5
- ---
6
-
7
- ## PR Requirements Summary
8
-
9
- **PR:** Add user export to CSV
10
- **Branch:** feature/PRJ-789-user-export → main
11
- **Type:** feature
12
- **Linked Tickets:** PRJ-789
13
-
14
- **Source of Truth:**
15
- - PR description: present (detailed, includes AC checklist and screenshot of the export modal)
16
- - Jira/GitHub ticket: resolved (PRJ-789)
17
- - Most reliable source: PR description + ticket (consistent, no conflicts)
18
-
19
- **Changes Overview:** Adds a CSV export action on the user list page that streams all currently filtered users to a downloadable file, with an email notification when exports exceed 10k rows.
20
-
21
- **Impacted Areas:**
22
- - User list page UI (new "Export" action).
23
- - User data export pipeline (CSV generation, streaming, email delivery).
24
- - Permission checks for export (admin-only).
25
-
26
- **High Level Key files (up to 5):**
27
- - `src/pages/UserList.tsx` — source
28
- - `src/services/ExportService.ts` — source
29
- - `src/api/export.ts` — source
30
- - `src/components/ExportModal.tsx` — source
31
- - `i18n/en.json` — config
32
-
33
- **Scope Verification:**
34
- - ✅ In scope: PRJ-789 AC1 (export button on the user list) — addressed in `src/pages/UserList.tsx` and `src/components/ExportModal.tsx`
35
- - ✅ In scope: PRJ-789 AC2 (admin-only) — addressed in `ExportService.ts` permission check
36
- - ⚠️ Out of scope: PRJ-789 AC3 (email notification for >10k exports) — no implementation found
37
- - ➕ Extra (not in ticket): i18n strings for German locale (`i18n/de.json`) — ticket only mentioned English
38
-
39
- **Ambiguities, Edge Cases & Open Questions:**
40
- - CSV column order not specified — needs product confirmation.
41
- - Concurrent exports by the same admin — no rate limiting or deduplication specified.
42
- - 50k+ user export (memory/timeout) — no performance budget in the ticket.
43
- - CSV date/time localization (UTC vs. user locale) — not specified.
44
- - Backward compatibility with existing scheduled exports (if any) — not addressed.
45
-
46
- **Acceptance Criteria:**
47
- - Admin opens user list with filters and clicks "Export" → modal appears with row count estimate
48
- - Admin starts export with <10k matching users → CSV downloads with columns `id, name, email, created_at` in that order
49
- - Non-admin opens user list → "Export" action is hidden (or returns 403 via API)
50
- - Admin triggers >10k user export → export is queued, email sent when ready *(NOT IMPLEMENTED — see Scope Verification)*
51
- - User without email is included → email field is empty string in CSV
52
- - Empty filtered list → button disabled OR empty CSV with header only
53
- - 50k+ user export completes without server timeout or OOM
54
- - German admin sees the export modal translated
@@ -1,126 +0,0 @@
1
- ---
2
- name: qa-requirement-reviewer
3
- description: Review requirements before development. Identify ambiguity, missing information, contradictions, unclear acceptance criteria, logical gaps, edge cases, and testability issues. Determine whether the requirements are sufficiently clear for development and QA. Use this skill when a user provides requirements (BRD, user story, use case, feature ticket, specification, or prose) and asks for feedback, validation, review, or readiness assessment before implementation.
4
- license: MIT
5
- metadata:
6
- author: Testomat.io
7
- version: 1.0.0
8
- ---
9
-
10
- # QA Requirement Reviewer
11
-
12
- Review requirements as written. Report issues, gaps, risks, and open questions so stakeholders can decide whether the requirements are ready for development and testing.
13
-
14
- Rules:
15
- - **Work with the input as-is — do not rewrite it.**
16
- - **Do not make assumptions or silently fill in missing information.**
17
- - Suggest improved wording or acceptance criteria where useful.
18
- - **Suggested improvements must not hide missing information or assumptions.**
19
- - Accept any format: BRD, user story, use case, feature ticket, specification, acceptance criteria, email, or free-form text.
20
-
21
- ## Review Criteria
22
-
23
- Evaluate each requirement against:
24
-
25
- | Criterion | What it means | Failure signals |
26
- | -------------- | ------------------------- | --------------- |
27
- | **Atomic** | Describes a single behavior, rule, or capability | Multiple behaviors combined in one requirement; difficult to verify independently |
28
- | **Clear** | Meaning is understandable and specific | Vague language, undefined terms, subjective wording, multiple possible interpretations |
29
- | **Complete** | Contains enough information for implementation and testing | Missing business rules, acceptance criteria, inputs, outputs, error handling, or edge cases |
30
- | **Consistent** | Does not conflict with related requirements | Contradictory behavior, terminology, workflows, rules, or constraints |
31
- | **Testable** | Can be objectively verified | No measurable outcome, unclear success criteria, impossible to determine pass or fail |
32
-
33
- ## Workflow
34
-
35
- ### Step 1: Gather Requirements
36
-
37
- Accept requirements as:
38
- - A document or file.
39
- - A directory, repository, or collection of documents and files.
40
- - Raw text provided in the conversation.
41
-
42
- If the requirements are incomplete, inaccessible, or unclear, ask the user for clarification.
43
-
44
- ### Step 2: Identify Requirements
45
-
46
- - Identify individual requirements, rules, behaviors, and acceptance criteria.
47
- - Assign identifiers where helpful (`R1`, `R2`, ...), or reuse existing IDs.
48
- - Separate requirements from background, rationale, implementation details, and design discussion.
49
-
50
- ### Step 3: Review Each Requirement
51
-
52
- Evaluate each requirement against the review criteria. For each issue found:
53
- 1. Identify the affected requirement.
54
- 2. Explain the issue and its consequence.
55
- 3. Classify it (clarity, completeness, consistency, testability, etc.).
56
- 4. Ask the clarification question needed to resolve it.
57
- 5. Optionally suggest improved wording.
58
-
59
- ### Step 4: Review the Requirement Set
60
-
61
- Evaluate the requirements as a whole for:
62
- - Missing requirements, scenarios, or business rules.
63
- - Missing acceptance criteria or expected outcomes.
64
- - Missing actors, roles, states, dependencies, or constraints.
65
- - Missing edge cases, alternative flows, or error conditions.
66
- - Contradictions, overlaps, or inconsistencies between requirements.
67
-
68
- ### Step 5: Produce the Review Report
69
-
70
- Use this exact structure:
71
-
72
- ```markdown
73
- ## Requirements Review
74
-
75
- ### Readiness Assessment
76
-
77
- **Decision:** ✅ Ready for Development | ⚠️ Needs Clarification | ❌ Not Ready
78
-
79
- **Summary:** ... (Brief assessment of overall requirement quality and readiness. 1-3 sentence verdict)
80
-
81
- ### Key Findings
82
-
83
- | Requirement | Issue Type | Finding | Question / Recommendation |
84
- | ----------- | ------------ | ------- | ------------------------- |
85
- | R1 | Completeness | ... | ... |
86
- | R2 | Clarity | ... | ... |
87
-
88
- (**Consolidation "Key Findings" table rule:** When multiple findings share the same "Issue Type" for one requirement, use numbered lists within Finding and Question/Recommendation columns to match issues by number (e.g., `1. Finding 1 2. Finding 2 | 1. Question 1 2. Question 2`). This avoids duplicate rows and keeps the table compact while preserving 1:1 correspondence)
89
-
90
- ### Ambiguities & Open Questions
91
-
92
- * ...
93
- * ...
94
-
95
- (Bullet list of Questions that should be answered before approval, implementation, or testing)
96
-
97
- ### Gaps & Issues
98
-
99
- * ...
100
- * ...
101
-
102
- (Missing information, scenarios, business rules, constraints, dependencies, edge cases, or error conditions)
103
-
104
- ### Acceptance Criteria Review (optional)
105
-
106
- * Assess whether acceptance criteria are clear, complete, and testable.
107
- * Identify missing acceptance criteria where needed.
108
-
109
- (Include **only if acceptance criteria exist** or are expected)
110
-
111
- ### Risks & Impact
112
-
113
- * ...
114
- * ...
115
-
116
- (Potential consequences of proceeding without clarification).
117
-
118
- ### Recommendation
119
-
120
- ... (Recommended next action before approval or implementation)
121
-
122
- ```
123
-
124
- ## Examples
125
-
126
- See `references/requirements_reviewer_examples.md` for two worked examples: a flawed draft BRD and a set of user stories, each with input and review output.
@@ -1,128 +0,0 @@
1
- # Requirements Review — Examples
2
-
3
- A small, deliberately flawed draft — the kind of thing that lands in review — turned into a requirements review. The input has loose structure and mixed quality; the review works with it as-is and does not rewrite it.
4
-
5
- ## Example 1: Draft BRD
6
-
7
- ### Input (draft BRD excerpt)
8
-
9
- ```
10
- Search Feature — Business Requirements (draft)
11
-
12
- 1. The search must be fast and return relevant results.
13
- 2. Users can search by keyword and filter by date, and results should be exportable.
14
- 3. The system should handle a large number of users.
15
- 4. Search results are stored for reporting.
16
- ```
17
-
18
- ### Output
19
-
20
- ```markdown
21
- ## Requirements Review
22
-
23
- ### Readiness Assessment
24
-
25
- **Decision:** ❌ Not Ready
26
-
27
- **Summary:** None of the four requirements is testable as written. R1 lacks a measurable threshold, R2 bundles three separate behaviors, and the set has no error-path coverage or acceptance criteria.
28
-
29
- ### Key Findings
30
-
31
- | Requirement | Issue Type | Finding | Question / Recommendation |
32
- | ----------- | ------------ | ------- | ------------------------- |
33
- | R1 | Testability | "fast" has no measurable threshold | What is the maximum acceptable response time, and at what data volume? |
34
- | R2 | Atomicity | Three behaviors combined (search, filter, export) | Split into separate requirements for keyword search, date filter, and export |
35
- | R3 | Clarity | "large number of users" is undefined | What concurrent-user count must search support? |
36
- | R4 | Completeness | Storage scope and retention not defined | What exactly is stored, for how long, and who can see it? |
37
-
38
- ### Ambiguities & Open Questions
39
-
40
- * R1: What is the maximum acceptable response time, and at what data volume?
41
- * R2: Should this be three separate requirements (keyword search, date filter, export)?
42
- * R3: What concurrent-user count must search support?
43
- * R4: What exactly is stored, for how long, and who can see it?
44
-
45
- ### Gaps & Issues
46
-
47
- * R1: No measurable threshold for "fast"
48
- * R2: Compound requirement — three behaviors cannot pass/fail independently
49
- * R3: "Large number of users" has no target
50
- * R4: Storage scope and retention not defined
51
- * No error-state or empty-state behavior defined across all requirements
52
-
53
- ### Acceptance Criteria Review
54
-
55
- No acceptance criteria found. Suggest:
56
- - Response time: Search should return results within 1 second for queries under 50 characters
57
- - Recall: Top results match expected set for known queries
58
- - Empty state: Display "No results found" message when search returns zero matches
59
- - Error state: Handle special characters and empty queries gracefully
60
-
61
- ### Risks & Impact
62
-
63
- * Implementation risk: Medium — ambiguous performance targets may lead to rework
64
- * Testing risk: High — no measurable acceptance criteria blocks test case design
65
- * Business impact risk: Low — core functionality is defined but not verifiable
66
-
67
- ### Recommendation
68
-
69
- Resolve all open questions before approval. Add measurable acceptance criteria to each requirement. Split compound requirement R2 into atomic requirements.
70
- ```
71
-
72
- ## Example 2: User Stories
73
-
74
- ### Input (user stories)
75
-
76
- ```
77
- As a user, I want to search for products by name so I can find what I'm looking for.
78
- As a user, I want to filter search results by category so I can narrow down choices.
79
- As a user, I want to export search results to PDF so I can share them with others.
80
- ```
81
-
82
- ### Output
83
-
84
- ```markdown
85
- ## Requirements Review
86
-
87
- ### Readiness Assessment
88
-
89
- **Decision:** ⚠️ Needs Clarification
90
-
91
- **Summary:** Stories are well-structured and pass most criteria. Minor clarification needed on export scope and empty-state behavior before approval.
92
-
93
- ### Key Findings
94
-
95
- | Requirement | Issue Type | Finding | Question / Recommendation |
96
- | ----------- | ------------ | ------- | ------------------------- |
97
- | US1 | Completeness | 1. No empty-state behavior defined | 1. What should the user see when search returns zero results? |
98
- | US2 | Completeness | 1. No error-state behavior defined | 1. How are invalid filter values handled? |
99
- | US3 | Clarity | 1. Export scope and format not fully specified | 1. Should export include current page or full result set? |
100
-
101
- ### Ambiguities & Open Questions
102
-
103
- * Export: Which format(s) — PDF only? What content — current page or full result set?
104
- * Empty search results: What should the user see?
105
- * Invalid input (special characters, empty query): How is this handled?
106
-
107
- ### Gaps & Issues
108
-
109
- * No error-state or empty-state behavior defined across all stories
110
- * Export: scope (page vs all results) and format not specified
111
-
112
- ### Acceptance Criteria Review
113
-
114
- No formal acceptance criteria present. Suggest:
115
- - Search returns results within 500ms for queries under 50 characters
116
- - Filter reduces result set to only matching category
117
- - Export produces valid PDF containing full result set (or specify page vs all)
118
-
119
- ### Risks & Impact
120
-
121
- * Implementation risk: Low — stories are independent and estimable
122
- * Testing risk: Medium — export scope ambiguity may cause rework
123
- * Business impact risk: Low — core search value is clear
124
-
125
- ### Recommendation
126
-
127
- Clarify export scope and add empty-state acceptance criteria. Otherwise ready for sprint planning.
128
- ```