qa-flowkit 0.4.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.qa-ai/adapters/aider/.aider/README.md +25 -0
- package/.qa-ai/adapters/aider/.aider.conf.yml +6 -0
- package/.qa-ai/adapters/claude/agents/qa-workflow-orchestrator.md +18 -0
- package/.qa-ai/adapters/claude/commands/qa-add-tests.md +42 -0
- package/.qa-ai/adapters/claude/commands/qa-automation-plan.md +43 -0
- package/.qa-ai/adapters/claude/commands/qa-clean.md +42 -0
- package/.qa-ai/adapters/claude/commands/qa-config.md +51 -0
- package/.qa-ai/adapters/claude/commands/qa-coverage.md +46 -0
- package/.qa-ai/adapters/claude/commands/qa-doctor.md +11 -0
- package/.qa-ai/adapters/claude/commands/qa-full-flow.md +59 -0
- package/.qa-ai/adapters/claude/commands/qa-gate.md +36 -0
- package/.qa-ai/adapters/claude/commands/qa-help.md +30 -0
- package/.qa-ai/adapters/claude/commands/qa-init.md +70 -0
- package/.qa-ai/adapters/claude/commands/qa-status.md +56 -0
- package/.qa-ai/adapters/claude/commands/qa-update-tests.md +47 -0
- package/.qa-ai/adapters/claude/commands/qa-validate-features.md +36 -0
- package/.qa-ai/adapters/cline/.cline/README.md +25 -0
- package/.qa-ai/adapters/cline/.clinerules +9 -0
- package/.qa-ai/adapters/codex/README.md +44 -0
- package/.qa-ai/adapters/codex/prompts/implement-project.md +15 -0
- package/.qa-ai/adapters/continue/README.md +26 -0
- package/.qa-ai/adapters/continue/checks/qa-feature-conventions.md +15 -0
- package/.qa-ai/adapters/gemini/GEMINI.md +40 -0
- package/.qa-ai/adapters/generic/AGENTS.md +100 -0
- package/.qa-ai/adapters/goose/recipes/qa-flowkit.yaml +20 -0
- package/.qa-ai/adapters/opencode/README.md +57 -0
- package/.qa-ai/adapters/opencode/agents/qa-workflow.md +18 -0
- package/.qa-ai/adapters/opencode/commands/qa-add-tests.md +42 -0
- package/.qa-ai/adapters/opencode/commands/qa-automation-plan.md +43 -0
- package/.qa-ai/adapters/opencode/commands/qa-clean.md +42 -0
- package/.qa-ai/adapters/opencode/commands/qa-config.md +51 -0
- package/.qa-ai/adapters/opencode/commands/qa-coverage.md +46 -0
- package/.qa-ai/adapters/opencode/commands/qa-doctor.md +13 -0
- package/.qa-ai/adapters/opencode/commands/qa-full-flow.md +59 -0
- package/.qa-ai/adapters/opencode/commands/qa-gate.md +36 -0
- package/.qa-ai/adapters/opencode/commands/qa-help.md +30 -0
- package/.qa-ai/adapters/opencode/commands/qa-init.md +70 -0
- package/.qa-ai/adapters/opencode/commands/qa-status.md +56 -0
- package/.qa-ai/adapters/opencode/commands/qa-update-tests.md +47 -0
- package/.qa-ai/adapters/opencode/commands/qa-validate-features.md +36 -0
- package/.qa-ai/agents/README.md +39 -0
- package/.qa-ai/agents/api-testing-agent.md +73 -0
- package/.qa-ai/agents/automation-feasibility-agent.md +128 -0
- package/.qa-ai/agents/gherkin-test-design-agent.md +110 -0
- package/.qa-ai/agents/jira-task-agent.md +92 -0
- package/.qa-ai/agents/pr-agent.md +101 -0
- package/.qa-ai/agents/qa-context-intake-agent.md +75 -0
- package/.qa-ai/agents/qa-workflow-orchestrator.md +113 -0
- package/.qa-ai/agents/release-gate-agent.md +50 -0
- package/.qa-ai/agents/requirements-intake-agent.md +79 -0
- package/.qa-ai/agents/requirements-normalization-agent.md +80 -0
- package/.qa-ai/agents/specialists/available/appium.md +59 -0
- package/.qa-ai/agents/specialists/available/cypress.md +68 -0
- package/.qa-ai/agents/specialists/available/generic-test-design.md +117 -0
- package/.qa-ai/agents/specialists/available/jira.md +108 -0
- package/.qa-ai/agents/specialists/available/karate.md +97 -0
- package/.qa-ai/agents/specialists/available/playwright-api.md +87 -0
- package/.qa-ai/agents/specialists/available/playwright-ui.md +87 -0
- package/.qa-ai/agents/specialists/available/postman.md +108 -0
- package/.qa-ai/agents/specialists/available/rest-assured.md +103 -0
- package/.qa-ai/agents/specialists/available/selenium.md +91 -0
- package/.qa-ai/agents/specialists/available/testrail.md +85 -0
- package/.qa-ai/agents/specialists/available/webdriverio.md +81 -0
- package/.qa-ai/agents/test-design-system-agent.md +33 -0
- package/.qa-ai/agents/testrail-coverage-agent.md +84 -0
- package/.qa-ai/agents/testrail-sync-agent.md +96 -0
- package/.qa-ai/agents/webdriverio-implementation-agent.md +84 -0
- package/.qa-ai/presets/manual-only.yaml +65 -0
- package/.qa-ai/presets/selenium-jest-browserstack.yaml +72 -0
- package/.qa-ai/presets/webdriverio-playwright-api.yaml +85 -0
- package/.qa-ai/rules/api-testing.rules.md +7 -0
- package/.qa-ai/rules/approval.rules.md +8 -0
- package/.qa-ai/rules/automation.rules.md +7 -0
- package/.qa-ai/rules/gherkin.rules.md +12 -0
- package/.qa-ai/rules/testrail.rules.md +10 -0
- package/.qa-ai/rules/webdriverio.rules.md +9 -0
- package/.qa-ai/scripts/bootstrap-agent-adapters.mjs +127 -0
- package/.qa-ai/scripts/clean.mjs +243 -0
- package/.qa-ai/scripts/config.mjs +202 -0
- package/.qa-ai/scripts/doctor.mjs +383 -0
- package/.qa-ai/scripts/init.mjs +447 -0
- package/.qa-ai/scripts/lib/markdown-table.mjs +76 -0
- package/.qa-ai/scripts/lib/project-config.mjs +184 -0
- package/.qa-ai/scripts/lib/qa-next-steps.mjs +578 -0
- package/.qa-ai/scripts/lib/release-gate.mjs +66 -0
- package/.qa-ai/scripts/lib/test-design.mjs +92 -0
- package/.qa-ai/scripts/lib/test-management-mapping.mjs +73 -0
- package/.qa-ai/scripts/lib/utils.mjs +331 -0
- package/.qa-ai/scripts/qa-help.mjs +44 -0
- package/.qa-ai/scripts/smoke-npm-pack.mjs +187 -0
- package/.qa-ai/scripts/smoke-test.mjs +465 -0
- package/.qa-ai/scripts/sync-agent-adapters.mjs +121 -0
- package/.qa-ai/scripts/test-validators.mjs +334 -0
- package/.qa-ai/scripts/validate-active-specialists.mjs +106 -0
- package/.qa-ai/scripts/validate-features.mjs +277 -0
- package/.qa-ai/scripts/validate-release-gate.mjs +105 -0
- package/.qa-ai/scripts/validate-sync-plan.mjs +186 -0
- package/.qa-ai/scripts/validate-target.mjs +104 -0
- package/.qa-ai/scripts/validate-test-design.mjs +117 -0
- package/.qa-ai/scripts/validate-traceability.mjs +183 -0
- package/.qa-ai/templates/automation-feasibility-report.template.md +21 -0
- package/.qa-ai/templates/automation-implementation-plan.template.md +23 -0
- package/.qa-ai/templates/feature.template +13 -0
- package/.qa-ai/templates/jira-automation-task.template.md +25 -0
- package/.qa-ai/templates/pr-template.md +60 -0
- package/.qa-ai/templates/release-gate.template.yaml +16 -0
- package/.qa-ai/templates/requirement-analysis.template.md +17 -0
- package/.qa-ai/templates/test-design-proposal.template.md +26 -0
- package/.qa-ai/templates/test-design-system.template.md +15 -0
- package/.qa-ai/templates/test-management-mapping.template.json +18 -0
- package/.qa-ai/templates/testrail-coverage-analysis.template.md +17 -0
- package/.qa-ai/templates/testrail-sync-plan.template.md +22 -0
- package/.qa-ai/templates/traceability-matrix.template.md +4 -0
- package/.qa-ai/workflows/automation-analysis.md +23 -0
- package/.qa-ai/workflows/cleanup.md +52 -0
- package/.qa-ai/workflows/context-intake.md +66 -0
- package/.qa-ai/workflows/full-flow.md +55 -0
- package/.qa-ai/workflows/implementation.md +24 -0
- package/.qa-ai/workflows/intake.md +3 -0
- package/.qa-ai/workflows/pr.md +3 -0
- package/.qa-ai/workflows/release-gate.md +22 -0
- package/.qa-ai/workflows/test-design-system.md +33 -0
- package/.qa-ai/workflows/test-design.md +23 -0
- package/.qa-ai/workflows/testrail-sync.md +23 -0
- package/CHANGELOG.md +108 -0
- package/CODE_OF_CONDUCT.md +11 -0
- package/CONTRIBUTING.md +39 -0
- package/LICENSE +21 -0
- package/README.es.md +602 -0
- package/README.md +633 -0
- package/ROADMAP.md +107 -0
- package/SECURITY.md +18 -0
- package/bin/qa-flowkit.mjs +214 -0
- package/docs/qa-ai/agent-compatibility.md +100 -0
- package/docs/qa-ai/architecture.md +130 -0
- package/docs/qa-ai/backlog.md +393 -0
- package/docs/qa-ai/cleanup.md +104 -0
- package/docs/qa-ai/customizing-agents.md +148 -0
- package/docs/qa-ai/getting-started.md +385 -0
- package/docs/qa-ai/implementation-guide-for-codex.md +210 -0
- package/docs/qa-ai/npm-migration-plan.md +50 -0
- package/docs/qa-ai/open-source-release-checklist.md +17 -0
- package/docs/qa-ai/qa-help.md +76 -0
- package/docs/qa-ai/release-gate.md +60 -0
- package/docs/qa-ai/terminal-transcripts.md +316 -0
- package/docs/qa-ai/test-design-dual-mode.md +75 -0
- package/docs/qa-ai/troubleshooting.md +740 -0
- package/docs/qa-ai/workflow.md +147 -0
- package/package.json +72 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
You are working on a QA AI Starter repository.
|
|
2
|
+
|
|
3
|
+
Read AGENTS.md first.
|
|
4
|
+
Read qa-ai.config.yaml when present.
|
|
5
|
+
Follow .qa-ai/rules/approval.rules.md before modifying files.
|
|
6
|
+
Do not overwrite existing files unless explicitly approved.
|
|
7
|
+
Keep all generated QA tests in English.
|
|
8
|
+
Manual tests must also have .feature files.
|
|
9
|
+
Unit tests are out of scope.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Codex Adapter
|
|
2
|
+
|
|
3
|
+
This adapter gives Codex a compact onboarding path for QA FlowKit repositories.
|
|
4
|
+
|
|
5
|
+
Related docs: [main README](../../../README.md) | [agent compatibility](../../../docs/qa-ai/agent-compatibility.md)
|
|
6
|
+
|
|
7
|
+
## Primary Instructions
|
|
8
|
+
|
|
9
|
+
| File | Purpose |
|
|
10
|
+
|---|---|
|
|
11
|
+
| `AGENTS.md` | Cross-agent rules and safety policy |
|
|
12
|
+
| `qa-ai.config.yaml` | Target repository configuration |
|
|
13
|
+
| `qa-ai-output/qa-knowledge-summary.md` | Team QA practice summary when `knowledge.enabled` is true |
|
|
14
|
+
| `qa-ai-output/qa-init-decisions.md` | Approved context-based init decisions when `knowledge.enabled` is true |
|
|
15
|
+
| `.qa-ai/rules/` | Mandatory QA workflow rules |
|
|
16
|
+
| `.qa-ai/workflows/` | Phase playbooks |
|
|
17
|
+
| `.qa-ai/agents/README.md` | Agent loading protocol |
|
|
18
|
+
|
|
19
|
+
## Recommended Opening Prompt
|
|
20
|
+
|
|
21
|
+
```text
|
|
22
|
+
Read AGENTS.md, qa-ai.config.yaml, docs/qa-ai/implementation-guide-for-codex.md and .qa-ai/rules/. Then implement the next pending task from docs/qa-ai/backlog.md. Present a plan before editing files.
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Useful Commands
|
|
26
|
+
|
|
27
|
+
| Command | Purpose |
|
|
28
|
+
|---|---|
|
|
29
|
+
| `node .qa-ai/scripts/config.mjs --help` | Import/export reusable QA AI config profiles |
|
|
30
|
+
| `node .qa-ai/scripts/init.mjs --qa-context qa-ai-knowledge` | Enable a QA context folder for agent-assisted defaults |
|
|
31
|
+
| `node .qa-ai/scripts/doctor.mjs` | Check setup health |
|
|
32
|
+
| `node .qa-ai/scripts/doctor.mjs --strict` | CI-style checks for initialized target repositories |
|
|
33
|
+
| `node .qa-ai/scripts/validate-target.mjs` | Run the full target repository validation pipeline |
|
|
34
|
+
| `node .qa-ai/scripts/validate-features.mjs` | Validate `.feature` files |
|
|
35
|
+
| `node .qa-ai/scripts/validate-traceability.mjs` | Validate traceability matrix coverage and shape |
|
|
36
|
+
| `node .qa-ai/scripts/validate-sync-plan.mjs` | Validate proposal-first sync plans and mapping shape |
|
|
37
|
+
| `node .qa-ai/scripts/validate-active-specialists.mjs` | Validate active specialist index |
|
|
38
|
+
| `npm run validate:oss-extraction` | Run source-repo maintainer validation |
|
|
39
|
+
| `node .qa-ai/scripts/smoke-test.mjs` | Run core maintainer smoke checks |
|
|
40
|
+
| `node .qa-ai/scripts/clean.mjs` | Preview cleanup before deleting generated files |
|
|
41
|
+
|
|
42
|
+
Claude Code and OpenCode support project slash commands through generated adapters. Use `/qa-init` for agent-first initialization instead of the native `/init` command, and `/qa-config` to import or export reusable configuration profiles.
|
|
43
|
+
|
|
44
|
+
Gemini CLI uses the generated root `GEMINI.md` context file when the `gemini` adapter is selected.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
Read `AGENTS.md`, `README.md`, `ROADMAP.md`, `docs/qa-ai/implementation-guide-for-codex.md`, `docs/qa-ai/backlog.md` and all files under `.qa-ai/rules/`.
|
|
2
|
+
|
|
3
|
+
Then implement the QA FlowKit MVP from beginning to end.
|
|
4
|
+
|
|
5
|
+
Before changing files, provide a concise plan. Do not remove or overwrite existing files unless necessary and clearly justified.
|
|
6
|
+
|
|
7
|
+
Run the local validation scripts after changes:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
node .qa-ai/scripts/doctor.mjs
|
|
11
|
+
npm run validate:oss-extraction
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
For initialized target repositories after real QA artifacts exist, also use `node .qa-ai/scripts/doctor.mjs --strict` and run the feature, traceability, sync-plan and active-specialist validators without source-repo allowances.
|
|
15
|
+
Shortcut: `node .qa-ai/scripts/validate-target.mjs`.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Continue Adapter
|
|
2
|
+
|
|
3
|
+
Continue is best used for review and checks in the folder-copy MVP.
|
|
4
|
+
|
|
5
|
+
Related docs: [main README](../../../README.md) | [agent compatibility](../../../docs/qa-ai/agent-compatibility.md)
|
|
6
|
+
|
|
7
|
+
When `knowledge.enabled` is true in `qa-ai.config.yaml`, review `knowledge.summaryPath` and `knowledge.decisionsPath` before applying QA checks or review guidance.
|
|
8
|
+
|
|
9
|
+
## Read First
|
|
10
|
+
|
|
11
|
+
| File | Purpose |
|
|
12
|
+
|---|---|
|
|
13
|
+
| `AGENTS.md` | Generic behavior and safety rules |
|
|
14
|
+
| `.qa-ai/rules/` | Mandatory QA workflow rules |
|
|
15
|
+
| `.qa-ai/adapters/continue/checks/qa-feature-conventions.md` | Feature-file review checklist |
|
|
16
|
+
|
|
17
|
+
## Recommended Checks
|
|
18
|
+
|
|
19
|
+
| Command | Purpose |
|
|
20
|
+
|---|---|
|
|
21
|
+
| `node .qa-ai/scripts/config.mjs --help` | Import/export reusable QA AI config profiles |
|
|
22
|
+
| `node .qa-ai/scripts/doctor.mjs` | Check setup health |
|
|
23
|
+
| `node .qa-ai/scripts/validate-features.mjs` | Validate `.feature` files |
|
|
24
|
+
| `node .qa-ai/scripts/clean.mjs` | Dry-run cleanup before removal suggestions |
|
|
25
|
+
|
|
26
|
+
Do not suggest external writes in the MVP. Keep TestRail, Jira, Confluence and GitHub write actions proposal-first.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# QA Feature Conventions Check
|
|
2
|
+
|
|
3
|
+
Check that `.feature` files contain:
|
|
4
|
+
|
|
5
|
+
- One configured scenario keyword per file.
|
|
6
|
+
- Acceptance Criteria.
|
|
7
|
+
- Required tags with values.
|
|
8
|
+
- RF ID in file, Feature and Scenario titles.
|
|
9
|
+
- `# language: es` when Spanish Gherkin is configured.
|
|
10
|
+
|
|
11
|
+
Preferred command:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
node .qa-ai/scripts/validate-features.mjs
|
|
15
|
+
```
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# QA FlowKit - Gemini CLI Context
|
|
2
|
+
|
|
3
|
+
This repository uses QA FlowKit for repo-first QA workflows. Treat this file as the Gemini CLI entry point, then load the shared framework instructions before doing QA work.
|
|
4
|
+
|
|
5
|
+
## Required Reading
|
|
6
|
+
|
|
7
|
+
Before making changes:
|
|
8
|
+
|
|
9
|
+
- Read `AGENTS.md` when present.
|
|
10
|
+
- Read `qa-ai.config.yaml` when present.
|
|
11
|
+
- When `knowledge.enabled` is true, read `knowledge.summaryPath` and `knowledge.decisionsPath` when present.
|
|
12
|
+
- Read `.qa-ai/rules/` before changing workflow behavior.
|
|
13
|
+
- Read `.qa-ai/agents/README.md` before QA workflow work.
|
|
14
|
+
- Load the matching phase agent from `.qa-ai/agents/`.
|
|
15
|
+
- Load `.qa-ai/agents/specialists/active.md` and the specialist files it lists when present.
|
|
16
|
+
|
|
17
|
+
## Working Rules
|
|
18
|
+
|
|
19
|
+
- Present a plan before modifying files.
|
|
20
|
+
- Do not overwrite existing files unless the user explicitly approves it or asks for `--force` behavior.
|
|
21
|
+
- Do not write to configured external tools in the MVP.
|
|
22
|
+
- Never store secrets in repository files.
|
|
23
|
+
- Keep all generated QA outputs open-source ready.
|
|
24
|
+
|
|
25
|
+
## Useful Commands
|
|
26
|
+
|
|
27
|
+
| Command | Purpose |
|
|
28
|
+
|---|---|
|
|
29
|
+
| `node .qa-ai/scripts/init.mjs` | Generate config, folders and selected adapters |
|
|
30
|
+
| `node .qa-ai/scripts/init.mjs --qa-context qa-ai-knowledge` | Enable a QA context folder for agent-assisted defaults |
|
|
31
|
+
| `node .qa-ai/scripts/config.mjs --help` | Import/export reusable QA AI config profiles |
|
|
32
|
+
| `node .qa-ai/scripts/doctor.mjs` | Check setup health |
|
|
33
|
+
| `node .qa-ai/scripts/validate-features.mjs` | Validate `.feature` files |
|
|
34
|
+
| `node .qa-ai/scripts/clean.mjs` | Preview cleanup before deleting generated files |
|
|
35
|
+
|
|
36
|
+
## QA Workflow Entry Prompt
|
|
37
|
+
|
|
38
|
+
```text
|
|
39
|
+
Read AGENTS.md, qa-ai.config.yaml, .qa-ai/rules/, .qa-ai/agents/README.md and .qa-ai/workflows/full-flow.md. If knowledge.enabled is true, read the configured QA knowledge artifacts first. Then follow the configured QA workflow, starting with a plan before editing files.
|
|
40
|
+
```
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# AGENTS.md - QA FlowKit
|
|
2
|
+
|
|
3
|
+
This file is the generic instruction layer for all AI coding agents working in this repository.
|
|
4
|
+
|
|
5
|
+
## Project purpose
|
|
6
|
+
|
|
7
|
+
Build an open-source, portable QA AI workflow starter. The first version is a folder-copy framework: users copy `.qa-ai` into a target QA/automation repository and run local Node scripts to initialize AI-assisted QA workflows. Claude Code and OpenCode can also start through `/qa-init` after running the bootstrap script from `.qa-ai`.
|
|
8
|
+
|
|
9
|
+
## Primary goal
|
|
10
|
+
|
|
11
|
+
Implement and maintain a reusable repo-first workflow that helps QA teams move from requirements to Gherkin tests, test-management planning, automation feasibility, configured-framework implementation plans and PR-ready outputs.
|
|
12
|
+
|
|
13
|
+
## Mandatory behavior
|
|
14
|
+
|
|
15
|
+
- Read this file before making changes.
|
|
16
|
+
- Read `qa-ai.config.yaml` when present.
|
|
17
|
+
- When `knowledge.enabled` is true, read the configured QA knowledge summary and init decisions artifacts before QA workflow work.
|
|
18
|
+
- Read `.qa-ai/rules/` before changing workflow behavior.
|
|
19
|
+
- Read `.qa-ai/agents/README.md` before QA workflow work; then load the matching phase agent and active specialists listed in `.qa-ai/agents/specialists/active.md`.
|
|
20
|
+
- Present a plan before modifying files.
|
|
21
|
+
- Do not overwrite existing files unless explicitly approved or `--force` behavior is requested by the user.
|
|
22
|
+
- Do not create external writes to configured external tools in the MVP.
|
|
23
|
+
- Never store secrets in repository files.
|
|
24
|
+
- Keep the project open-source ready.
|
|
25
|
+
|
|
26
|
+
## QA rules
|
|
27
|
+
|
|
28
|
+
- Tests are written in the configured Gherkin language from `qa-ai.config.yaml` (`gherkin.language`): English (`en`) or Spanish (`es`).
|
|
29
|
+
- Spanish `.feature` files must include `# language: es`.
|
|
30
|
+
- One `.feature` file per test case.
|
|
31
|
+
- Manual tests also have `.feature` files.
|
|
32
|
+
- Every `.feature` must include the configured acceptance criteria label: `Acceptance Criteria:` for English or `Criterios de aceptación:` for Spanish.
|
|
33
|
+
- Required tags: `@priority:`, `@type:`, `@manual:`.
|
|
34
|
+
- Unit tests are out of scope for generated QA test cases.
|
|
35
|
+
- The official RF ID is required before final test generation.
|
|
36
|
+
|
|
37
|
+
## Preferred implementation stack
|
|
38
|
+
|
|
39
|
+
- Node.js 20+.
|
|
40
|
+
- Native Node APIs where possible.
|
|
41
|
+
- No unnecessary dependencies in the folder-copy MVP.
|
|
42
|
+
- YAML config can be generated as plain text in MVP.
|
|
43
|
+
- Future npm CLI may introduce dependencies such as Commander, Inquirer and YAML.
|
|
44
|
+
|
|
45
|
+
## Project structure
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
.qa-ai/ portable framework folder
|
|
49
|
+
AGENTS.md generic agent instructions
|
|
50
|
+
README.md public project documentation
|
|
51
|
+
docs/qa-ai/ implementation and architecture docs
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Target repository structure generated by default init
|
|
55
|
+
|
|
56
|
+
```text
|
|
57
|
+
qa-ai.config.yaml
|
|
58
|
+
.opencode/
|
|
59
|
+
.opencode/commands/qa-init.md
|
|
60
|
+
qa-ai-output/
|
|
61
|
+
qa-ai-output/qa-knowledge-summary.md
|
|
62
|
+
qa-ai-output/qa-init-decisions.md
|
|
63
|
+
features/
|
|
64
|
+
tests/
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Optional adapter outputs are generated only when requested with `--adapters` or bootstrap scripts:
|
|
68
|
+
|
|
69
|
+
```text
|
|
70
|
+
AGENTS.md
|
|
71
|
+
.claude/
|
|
72
|
+
.codex/
|
|
73
|
+
.cline/
|
|
74
|
+
.continue/
|
|
75
|
+
.aider.conf.yml
|
|
76
|
+
.goose/
|
|
77
|
+
GEMINI.md
|
|
78
|
+
.claude/commands/qa-init.md
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Completion criteria
|
|
82
|
+
|
|
83
|
+
A target user must be able to:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
cp -R qa-flowkit/.qa-ai ./target-repo/.qa-ai
|
|
87
|
+
cd ./target-repo
|
|
88
|
+
node .qa-ai/scripts/init.mjs
|
|
89
|
+
node .qa-ai/scripts/doctor.mjs
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
After real QA artifacts exist in a target repository, validate with:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
node .qa-ai/scripts/validate-target.mjs
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
The generated repository must be ready for use with Codex Desktop, Claude Code and other AI coding tools.
|
|
99
|
+
Claude Code and OpenCode users may initialize through `/qa-init` after running the bootstrap script.
|
|
100
|
+
The preferred agent-first setup is: copy `.qa-ai`, run `node .qa-ai/scripts/bootstrap-agent-adapters.mjs`, open Claude Code or OpenCode, then run `/qa-init`.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
name: qa-flowkit
|
|
3
|
+
description: Run the QA AI workflow for requirements-to-tests-to-automation.
|
|
4
|
+
instructions: |
|
|
5
|
+
Read AGENTS.md, qa-ai.config.yaml and .qa-ai/rules/ before acting.
|
|
6
|
+
Produce a plan before modifying files.
|
|
7
|
+
Do not overwrite or externally write without approval.
|
|
8
|
+
steps:
|
|
9
|
+
- name: health-check
|
|
10
|
+
prompt: Run node .qa-ai/scripts/doctor.mjs and summarize required failures or warnings.
|
|
11
|
+
- name: intake
|
|
12
|
+
prompt: Read the requirement source and produce qa-ai-output/requirement-analysis.md.
|
|
13
|
+
- name: design
|
|
14
|
+
prompt: Produce a test design proposal and generate approved Gherkin feature files. Run node .qa-ai/scripts/validate-features.mjs after feature changes.
|
|
15
|
+
- name: automation
|
|
16
|
+
prompt: Analyze automation feasibility and produce an implementation plan.
|
|
17
|
+
- name: pr
|
|
18
|
+
prompt: Prepare a PR summary with traceability and execution status.
|
|
19
|
+
- name: cleanup-preview
|
|
20
|
+
prompt: Run node .qa-ai/scripts/clean.mjs only as a dry-run when generated artifact cleanup is requested.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# OpenCode Adapter
|
|
2
|
+
|
|
3
|
+
Use this folder as an instruction bridge for OpenCode or other terminal coding agents.
|
|
4
|
+
|
|
5
|
+
Related docs: [main README](../../../README.md) | [agent compatibility](../../../docs/qa-ai/agent-compatibility.md)
|
|
6
|
+
|
|
7
|
+
## Primary Files
|
|
8
|
+
|
|
9
|
+
| File | Purpose |
|
|
10
|
+
|---|---|
|
|
11
|
+
| `AGENTS.md` | Generic behavior and safety rules |
|
|
12
|
+
| `qa-ai.config.yaml` | Project configuration |
|
|
13
|
+
| `qa-ai-output/qa-knowledge-summary.md` | Team QA practice summary when `knowledge.enabled` is true |
|
|
14
|
+
| `qa-ai-output/qa-init-decisions.md` | Approved context-based init decisions when `knowledge.enabled` is true |
|
|
15
|
+
| `.qa-ai/rules/` | Mandatory workflow rules |
|
|
16
|
+
| `.qa-ai/agents/README.md` | Agent loading protocol |
|
|
17
|
+
| `.qa-ai/workflows/` | Task playbooks |
|
|
18
|
+
|
|
19
|
+
Agent files in `.qa-ai/agents/` are required role instructions for QA workflow phases. If OpenCode does not expose them as callable subagents, read the relevant Markdown files and follow them directly. Always load `.qa-ai/agents/specialists/active.md` when present, plus the specialist files it lists.
|
|
20
|
+
|
|
21
|
+
## Slash Commands
|
|
22
|
+
|
|
23
|
+
| Command | Purpose |
|
|
24
|
+
|---|---|
|
|
25
|
+
| `/qa-init` | Guided initialization |
|
|
26
|
+
| `/qa-config` | Import or export reusable QA AI config profiles |
|
|
27
|
+
| `/qa-full-flow` | End-to-end requirements-to-PR QA flow |
|
|
28
|
+
| `/qa-add-tests` | Add tests for a new RF without disturbing existing tests |
|
|
29
|
+
| `/qa-update-tests` | Review existing tests after RF changes and apply approved updates |
|
|
30
|
+
| `/qa-automation-plan` | Classify existing `.feature` files and plan automation |
|
|
31
|
+
| `/qa-coverage` | Analyze functional coverage across RFs, manual tests and automated tests |
|
|
32
|
+
| `/qa-help` | Context-aware guidance for the next QA workflow step |
|
|
33
|
+
| `/qa-gate` | Record enterprise release gate decision |
|
|
34
|
+
| `/qa-status` | Summarize config, artifacts, feature health and recommended next steps |
|
|
35
|
+
| `/qa-doctor` | Setup health checks |
|
|
36
|
+
| `/qa-clean` | Manifest-based cleanup preview/execution |
|
|
37
|
+
| `/qa-validate-features` | Gherkin convention validation |
|
|
38
|
+
|
|
39
|
+
## Local Checks
|
|
40
|
+
|
|
41
|
+
| Command | Purpose |
|
|
42
|
+
|---|---|
|
|
43
|
+
| `node .qa-ai/scripts/config.mjs --help` | Import/export reusable QA AI config profiles |
|
|
44
|
+
| `node .qa-ai/scripts/doctor.mjs` | Check setup health |
|
|
45
|
+
| `node .qa-ai/scripts/doctor.mjs --strict` | CI-style checks for initialized target repositories |
|
|
46
|
+
| `node .qa-ai/scripts/qa-help.mjs` | Recommend the next QA phase based on artifacts and track |
|
|
47
|
+
| `node .qa-ai/scripts/validate-target.mjs` | Run the full target repository validation pipeline |
|
|
48
|
+
| `node .qa-ai/scripts/validate-features.mjs` | Validate `.feature` files |
|
|
49
|
+
| `node .qa-ai/scripts/validate-traceability.mjs` | Validate traceability matrix coverage and shape |
|
|
50
|
+
| `node .qa-ai/scripts/validate-sync-plan.mjs` | Validate proposal-first sync plans and mapping shape |
|
|
51
|
+
| `node .qa-ai/scripts/validate-active-specialists.mjs` | Validate active specialist index |
|
|
52
|
+
| `npm run validate:oss-extraction` | Run source-repo maintainer validation |
|
|
53
|
+
| `node .qa-ai/scripts/clean.mjs` | Preview cleanup before deleting generated files |
|
|
54
|
+
|
|
55
|
+
Use `.qa-ai/workflows/full-flow.md` for end-to-end QA delivery and keep all external writes proposal-first.
|
|
56
|
+
|
|
57
|
+
When initializing with a QA context folder, use `/qa-init --qa-context <path>` so OpenCode reads `.qa-ai/workflows/context-intake.md` before choosing defaults.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# QA Workflow Orchestrator
|
|
2
|
+
|
|
3
|
+
You coordinate the complete AI-assisted QA workflow.
|
|
4
|
+
|
|
5
|
+
## Responsibilities
|
|
6
|
+
|
|
7
|
+
- Read `AGENTS.md`, `qa-ai.config.yaml`, `.qa-ai/rules/` and `.qa-ai/agents/README.md` before acting.
|
|
8
|
+
- Read `.qa-ai/agents/specialists/active.md` when present and load only the listed specialist instructions from `.qa-ai/agents/specialists/available/`.
|
|
9
|
+
- Use the configured interface language from `qa-ai.config.yaml` (`project.interfaceLanguage` / `project.defaultLanguage`) for questions and descriptions. Use `gherkin.language` only for generated `.feature` files.
|
|
10
|
+
- Delegate to specialized agents conceptually.
|
|
11
|
+
- Maintain traceability from configured requirement sources/RF/CA to features, test management and automation.
|
|
12
|
+
- Present a plan before every change.
|
|
13
|
+
- Ask for approval before writes or modifications.
|
|
14
|
+
- Stop and ask when official RF ID is missing.
|
|
15
|
+
|
|
16
|
+
## Output expectation
|
|
17
|
+
|
|
18
|
+
Every workflow must produce or update the expected docs under `qa-ai-output/`.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Add QA tests for a new RF / Anadir pruebas QA para un RF nuevo
|
|
3
|
+
argument-hint: [requirement source or RF ID]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Add new QA tests to a repository that may already contain `.feature` files and automation tests.
|
|
7
|
+
|
|
8
|
+
Read these files first:
|
|
9
|
+
|
|
10
|
+
- `AGENTS.md`
|
|
11
|
+
- `qa-ai.config.yaml` when present
|
|
12
|
+
- `.qa-ai/rules/`
|
|
13
|
+
- `.qa-ai/agents/README.md`
|
|
14
|
+
- `.qa-ai/agents/qa-workflow-orchestrator.md`
|
|
15
|
+
- `.qa-ai/agents/gherkin-test-design-agent.md`
|
|
16
|
+
- `.qa-ai/agents/testrail-coverage-agent.md`
|
|
17
|
+
- `.qa-ai/agents/specialists/active.md` when present
|
|
18
|
+
- `.qa-ai/workflows/test-design.md`
|
|
19
|
+
|
|
20
|
+
Use `project.interfaceLanguage` / `project.defaultLanguage` from `qa-ai.config.yaml` for user-facing questions and summaries. Use `gherkin.language` only for generated `.feature` files.
|
|
21
|
+
|
|
22
|
+
If `$ARGUMENTS` is empty or ambiguous, ask the user:
|
|
23
|
+
|
|
24
|
+
1. Where is the new requirement/RF source?
|
|
25
|
+
2. What is the official RF ID?
|
|
26
|
+
3. Should the first pass produce only proposal artifacts, or create new `.feature` files after approval?
|
|
27
|
+
|
|
28
|
+
Stop before final `.feature` generation if the official RF ID is missing.
|
|
29
|
+
|
|
30
|
+
Then present a concise plan before modifying files.
|
|
31
|
+
|
|
32
|
+
Workflow:
|
|
33
|
+
|
|
34
|
+
1. Inspect existing `.feature` files and configured automation paths to avoid duplicates.
|
|
35
|
+
2. Analyze the new RF and acceptance criteria.
|
|
36
|
+
3. Produce or update `qa-ai-output/requirement-analysis.md`.
|
|
37
|
+
4. Produce or update `qa-ai-output/test-design-proposal.md` with only new tests to add and existing tests to reuse.
|
|
38
|
+
5. After approval, create one `.feature` file per new test case under the configured `gherkin.featurePath`.
|
|
39
|
+
6. Update `qa-ai-output/traceability-matrix.md` when useful.
|
|
40
|
+
7. Run `node .qa-ai/scripts/validate-features.mjs`, `node .qa-ai/scripts/validate-traceability.mjs` and `node .qa-ai/scripts/validate-sync-plan.mjs` after feature/artifact changes.
|
|
41
|
+
|
|
42
|
+
Do not modify existing tests unless the user explicitly approves that scope. Do not write to configured external tools.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Plan automation from existing QA tests / Planificar automatizacion desde pruebas existentes
|
|
3
|
+
argument-hint: [feature path, RF ID, or test filter]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Create an automation feasibility and implementation plan from existing `.feature` tests.
|
|
7
|
+
|
|
8
|
+
Read these files first:
|
|
9
|
+
|
|
10
|
+
- `AGENTS.md`
|
|
11
|
+
- `qa-ai.config.yaml` when present
|
|
12
|
+
- `.qa-ai/rules/`
|
|
13
|
+
- `.qa-ai/agents/README.md`
|
|
14
|
+
- `.qa-ai/agents/qa-workflow-orchestrator.md`
|
|
15
|
+
- `.qa-ai/agents/automation-feasibility-agent.md`
|
|
16
|
+
- `.qa-ai/agents/webdriverio-implementation-agent.md` when UI automation is configured
|
|
17
|
+
- `.qa-ai/agents/api-testing-agent.md` when API automation is configured
|
|
18
|
+
- `.qa-ai/agents/specialists/active.md` when present
|
|
19
|
+
- `.qa-ai/workflows/automation-analysis.md`
|
|
20
|
+
- `.qa-ai/workflows/implementation.md`
|
|
21
|
+
|
|
22
|
+
Use `project.interfaceLanguage` / `project.defaultLanguage` from `qa-ai.config.yaml` for user-facing questions and summaries.
|
|
23
|
+
|
|
24
|
+
If `$ARGUMENTS` is empty or ambiguous, ask the user:
|
|
25
|
+
|
|
26
|
+
1. Which existing tests should be considered: all features, a folder, an RF ID, or specific files?
|
|
27
|
+
2. Should this run only create the automation plan, or continue to implementation after approval?
|
|
28
|
+
- Recommend plan only first.
|
|
29
|
+
3. Are there known environment, data, selector or credential constraints?
|
|
30
|
+
|
|
31
|
+
Then present a concise plan before modifying files.
|
|
32
|
+
|
|
33
|
+
Workflow:
|
|
34
|
+
|
|
35
|
+
1. Inspect existing `.feature` files and configured automation paths.
|
|
36
|
+
2. Inspect existing UI/API automation patterns before proposing code.
|
|
37
|
+
3. Classify tests as automated, automatable, partial, manual, blocked or not automatable.
|
|
38
|
+
4. Produce or update `qa-ai-output/automation-feasibility-report.md`.
|
|
39
|
+
5. Produce or update `qa-ai-output/automation-implementation-plan.md`.
|
|
40
|
+
6. If the user explicitly approves implementation, add automation code using the configured frameworks and local patterns.
|
|
41
|
+
7. Run relevant project tests or explain why they cannot be run.
|
|
42
|
+
|
|
43
|
+
Do not add dependencies, change global framework config or write to external tools without approval.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Guided manifest-based QA AI cleanup / Limpieza guiada de QA FlowKit
|
|
3
|
+
argument-hint: [optional clean flags]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Preview or execute cleanup for generated QA FlowKit artifacts.
|
|
7
|
+
|
|
8
|
+
Read `qa-ai.config.yaml` when present and use its configured interface language (`project.interfaceLanguage` / `project.defaultLanguage`, `en` or `es`) for questions, descriptions and summaries.
|
|
9
|
+
|
|
10
|
+
If `$ARGUMENTS` is empty, run the safe dry-run first:
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
node .qa-ai/scripts/clean.mjs
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Summarize the cleanup plan, then ask the user:
|
|
17
|
+
|
|
18
|
+
1. Which scope should be cleaned?
|
|
19
|
+
- `generated`: generated config, QA output artifacts and empty generated folders.
|
|
20
|
+
- `adapters`: generated agent adapter files.
|
|
21
|
+
- `empty-dirs`: tracked empty directories.
|
|
22
|
+
- `all`: all tracked entries.
|
|
23
|
+
2. Should cleanup be executed with `--force`?
|
|
24
|
+
- Recommend `no` until the dry-run is reviewed.
|
|
25
|
+
3. Should modified tracked files be deleted?
|
|
26
|
+
- Recommend `no`; only use `--include-modified` if the user explicitly wants to discard edits.
|
|
27
|
+
|
|
28
|
+
If the user approves execution, build and run:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
node .qa-ai/scripts/clean.mjs --<scope> --force
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Only add `--include-modified` when explicitly approved.
|
|
35
|
+
|
|
36
|
+
If `$ARGUMENTS` is not empty, treat it as advanced mode and run:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
node .qa-ai/scripts/clean.mjs $ARGUMENTS
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Do not delete anything outside the manifest-based clean script.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Import or export QA FlowKit configuration / Importar o exportar configuracion de QA FlowKit
|
|
3
|
+
argument-hint: [--export path | --import path]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Import or export a reusable QA FlowKit configuration profile.
|
|
7
|
+
|
|
8
|
+
Read these files first:
|
|
9
|
+
|
|
10
|
+
- `AGENTS.md`
|
|
11
|
+
- `qa-ai.config.yaml` when present
|
|
12
|
+
- `.qa-ai/rules/`
|
|
13
|
+
- `.qa-ai/agents/README.md`
|
|
14
|
+
|
|
15
|
+
Use `project.interfaceLanguage` / `project.defaultLanguage` from `qa-ai.config.yaml` when present for user-facing questions and summaries.
|
|
16
|
+
|
|
17
|
+
If `$ARGUMENTS` is empty, ask the user:
|
|
18
|
+
|
|
19
|
+
1. Do you want to export the current config or import an existing profile?
|
|
20
|
+
2. What repo-local profile path should be used?
|
|
21
|
+
- Recommended export path: `.qa-ai/config-profiles/team.yaml`.
|
|
22
|
+
3. If importing and `qa-ai.config.yaml` already exists, should it be overwritten?
|
|
23
|
+
- Recommend `no`; only use `--force` if the user explicitly approves.
|
|
24
|
+
|
|
25
|
+
For export, run:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
node .qa-ai/scripts/config.mjs --export <profile-path>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
For import, run:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
node .qa-ai/scripts/config.mjs --import <profile-path>
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Only add `--force` when the user explicitly approves overwriting. Add `--no-structure` only when the user wants to import the YAML without creating configured folders or refreshing `.qa-ai/agents/specialists/active.md`.
|
|
38
|
+
|
|
39
|
+
If `$ARGUMENTS` is not empty, treat it as advanced mode and run:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
node .qa-ai/scripts/config.mjs $ARGUMENTS
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
After import, run or suggest:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
node .qa-ai/scripts/doctor.mjs
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Do not write to external tools.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Analyze QA functional coverage / Analizar cobertura funcional QA
|
|
3
|
+
argument-hint: [RF ID, requirement source, or scope]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Analyze functional QA coverage across requirements, `.feature` files, manual tests and automated tests.
|
|
7
|
+
|
|
8
|
+
Read these files first:
|
|
9
|
+
|
|
10
|
+
- `AGENTS.md`
|
|
11
|
+
- `qa-ai.config.yaml` when present
|
|
12
|
+
- `.qa-ai/rules/`
|
|
13
|
+
- `.qa-ai/agents/README.md`
|
|
14
|
+
- `.qa-ai/agents/qa-workflow-orchestrator.md`
|
|
15
|
+
- `.qa-ai/agents/testrail-coverage-agent.md`
|
|
16
|
+
- `.qa-ai/agents/automation-feasibility-agent.md`
|
|
17
|
+
- `.qa-ai/agents/specialists/active.md` when present
|
|
18
|
+
- `.qa-ai/workflows/automation-analysis.md`
|
|
19
|
+
- `.qa-ai/workflows/testrail-sync.md`
|
|
20
|
+
|
|
21
|
+
Use `project.interfaceLanguage` / `project.defaultLanguage` from `qa-ai.config.yaml` for user-facing questions and summaries.
|
|
22
|
+
|
|
23
|
+
If `$ARGUMENTS` is empty or ambiguous, ask the user:
|
|
24
|
+
|
|
25
|
+
1. What scope should be analyzed: one RF, a requirement source, a feature folder, or the whole repo?
|
|
26
|
+
2. Where are the requirements or acceptance criteria for that scope?
|
|
27
|
+
3. Should configured test management data be considered from local exports/mapping files?
|
|
28
|
+
|
|
29
|
+
Then present a concise plan before modifying files.
|
|
30
|
+
|
|
31
|
+
Coverage dimensions:
|
|
32
|
+
|
|
33
|
+
- Requirement/RF coverage.
|
|
34
|
+
- Acceptance criteria coverage.
|
|
35
|
+
- Manual test coverage.
|
|
36
|
+
- Automated test coverage.
|
|
37
|
+
- Gaps, duplicates, overlaps and stale tests.
|
|
38
|
+
- Automation candidates and blockers.
|
|
39
|
+
|
|
40
|
+
Expected local artifacts:
|
|
41
|
+
|
|
42
|
+
- `qa-ai-output/qa-coverage-report.md`
|
|
43
|
+
- `qa-ai-output/testrail-coverage-analysis.md` when test management is configured or local mapping data exists
|
|
44
|
+
- `qa-ai-output/traceability-matrix.md` when useful
|
|
45
|
+
|
|
46
|
+
Do not modify tests or write to external tools unless the user explicitly asks and approves a follow-up change.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Run QA FlowKit setup health checks / Ejecutar comprobaciones de QA FlowKit
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Run the QA FlowKit doctor script and explain the results.
|
|
6
|
+
|
|
7
|
+
Read `qa-ai.config.yaml` when present and explain results in its configured interface language (`project.interfaceLanguage` / `project.defaultLanguage`, `en` or `es`).
|
|
8
|
+
|
|
9
|
+
For target-repository CI or post-flow hardening, tell the user they can run `node .qa-ai/scripts/validate-target.mjs`, which includes `doctor --strict`, feature validation, traceability validation, sync-plan validation and active-specialist validation.
|
|
10
|
+
|
|
11
|
+
Command output:
|
|
12
|
+
|
|
13
|
+
!`node .qa-ai/scripts/doctor.mjs`
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Guided full QA FlowKit workflow / Workflow completo guiado de QA FlowKit
|
|
3
|
+
argument-hint: [optional requirement source]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Run the complete QA AI workflow for the configured requirement source, Markdown PRD/RF or pasted requirement.
|
|
7
|
+
|
|
8
|
+
Read these files first:
|
|
9
|
+
|
|
10
|
+
- `AGENTS.md`
|
|
11
|
+
- `qa-ai.config.yaml`
|
|
12
|
+
- `.qa-ai/rules/`
|
|
13
|
+
- `.qa-ai/agents/README.md`
|
|
14
|
+
- `.qa-ai/agents/qa-workflow-orchestrator.md`
|
|
15
|
+
- `.qa-ai/agents/specialists/active.md` when present
|
|
16
|
+
- `.qa-ai/workflows/full-flow.md`
|
|
17
|
+
|
|
18
|
+
For each phase, load the matching phase agent from `.qa-ai/agents/README.md` and any active specialists before producing or changing artifacts. If the current tool cannot call subagents, treat those Markdown files as required role instructions.
|
|
19
|
+
|
|
20
|
+
Use `project.interfaceLanguage` / `project.defaultLanguage` from `qa-ai.config.yaml` for user-facing questions and descriptions. Use `gherkin.language` only for generated `.feature` files. Supported values are `en` and `es`; default to `en` if the config is missing.
|
|
21
|
+
|
|
22
|
+
If `$ARGUMENTS` is empty or the requirement source is ambiguous, ask the user:
|
|
23
|
+
|
|
24
|
+
1. Where is the requirement source?
|
|
25
|
+
- Example: `docs/prd.md`, `docs/PRD/checkout.md`, pasted text, configured issue ID or documentation page reference.
|
|
26
|
+
2. What is the official RF ID?
|
|
27
|
+
- If missing, say final `.feature` generation will pause until it is provided.
|
|
28
|
+
3. What test management project/suite should be used for coverage/sync planning?
|
|
29
|
+
- If unknown, produce local placeholder analysis and mark the decision as pending.
|
|
30
|
+
4. Should this run produce only proposal artifacts first, or continue to `.feature` generation after approval?
|
|
31
|
+
- Recommend proposal artifacts first.
|
|
32
|
+
|
|
33
|
+
Then present a concise plan before modifying files.
|
|
34
|
+
|
|
35
|
+
Expected local artifacts:
|
|
36
|
+
|
|
37
|
+
- `qa-ai-output/requirement-analysis.md`
|
|
38
|
+
- `qa-ai-output/testrail-coverage-analysis.md`
|
|
39
|
+
- `qa-ai-output/test-design-proposal.md`
|
|
40
|
+
- `.feature` files under the configured feature path after approval
|
|
41
|
+
- `qa-ai-output/testrail-sync-plan.md`
|
|
42
|
+
- `qa-ai-output/traceability-matrix.md`
|
|
43
|
+
- `qa-ai-output/automation-feasibility-report.md`
|
|
44
|
+
- `qa-ai-output/automation-implementation-plan.md`
|
|
45
|
+
- `qa-ai-output/pr-summary.md`
|
|
46
|
+
|
|
47
|
+
After feature and QA artifact changes, run the aggregated target-repository validator:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
node .qa-ai/scripts/validate-target.mjs
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
For early/incomplete repositories, use `node .qa-ai/scripts/validate-target.mjs --allow-empty --allow-missing --no-strict-doctor`.
|
|
54
|
+
|
|
55
|
+
Do not write to configured external tools. Ask for the official RF ID before final feature generation if it is missing.
|
|
56
|
+
|
|
57
|
+
Respect `project.qaTrack` from `qa-ai.config.yaml` (see `.qa-ai/workflows/full-flow.md`).
|
|
58
|
+
|
|
59
|
+
When this workflow step completes, run `/qa-help` or `node .qa-ai/scripts/qa-help.mjs` and share the recommended next phase.
|