--- name: qcsd-ideation-swarm description: "QCSD Ideation phase swarm for Quality Criteria sessions using HTSM v6.3, Risk Storming, and Testability analysis before development begins. Uses 5-tier browser cascade: Vibium → agent-browser → Playwright+Stealth → WebFetch → WebSearch-fallback." category: qcsd-phases priority: critical version: 7.5.1 tokenEstimate: 3500 # DDD Domain Mapping (from QCSD-AGENTIC-QE-MAPPING-FRAMEWORK.md) domains: primary: - domain: requirements-validation agents: [qe-quality-criteria-recommender, qe-requirements-validator] - domain: coverage-analysis agents: [qe-risk-assessor] conditional: - domain: security-compliance agents: [qe-security-auditor] - domain: visual-accessibility agents: [qe-accessibility-auditor] - domain: cross-domain agents: [qe-qx-partner] - domain: enterprise-integration agents: [qe-middleware-validator, qe-sap-rfc-tester, qe-sod-analyzer] # Agent Inventory agents: core: [qe-quality-criteria-recommender, qe-risk-assessor, qe-requirements-validator] conditional: [qe-accessibility-auditor, qe-security-auditor, qe-qx-partner, qe-middleware-validator, qe-sap-rfc-tester, qe-sod-analyzer] total: 9 sub_agents: 0 skills: [testability-scoring, risk-based-testing, context-driven-testing, holistic-testing-pact] # Execution Models (Task Tool is PRIMARY) execution: primary: task-tool alternatives: [mcp-tools, cli] swarm_pattern: true parallel_batches: 2 last_updated: 2026-01-28 # v7.5.1 Changelog: Added prominent follow-up recommendation box at end of swarm execution (Phase URL-9) # v7.5.0 Changelog: Added HAS_VIDEO flag detection with /a11y-ally follow-up recommendation for video caption generation # v7.4.0 Changelog: Automated browser cascade via scripts/fetch-content.js with 30s per-tier timeouts # v7.2.0 Changelog: Added 5-tier browser cascade (Vibium → agent-browser → Playwright+Stealth → WebFetch → WebSearch) html_output: true enforcement_level: strict tags: [qcsd, ideation, htsm, quality-criteria, risk-storming, testability, swarm, parallel, ddd] trust_tier: 3 validation: schema_path: schemas/output.json validator_path: scripts/validate-config.json eval_path: evals/qcsd-ideation-swarm.yaml --- # QCSD Ideation Swarm v7.0 Shift-left quality engineering swarm for PI Planning and Sprint Planning. --- ## URL-Based Analysis Mode (v7.1) When analyzing a live website URL, use this specialized execution pattern. ### Parameters - `URL`: Website to analyze (required) - `OUTPUT_FOLDER`: Where to save reports (default: `${PROJECT_ROOT}/Agentic QCSD/{domain}/` or `./Agentic QCSD/{domain}/`) --- ## ⛔ URL MODE: COMPLETE EXECUTION FLOW **You MUST follow ALL phases in order. Skipping phases is a FAILURE.** ### PHASE URL-1: Setup and Content Fetch (AUTOMATED CASCADE) **The browser cascade is now FULLY AUTOMATED via `scripts/fetch-content.js`.** **Single command - automatic tier fallback with 30s timeout per tier:** ```bash # SINGLE COMMAND - handles all tiers automatically: # Use npx for installed package, or node with relative path for local development npx aqe fetch-content "${URL}" "${OUTPUT_FOLDER}" --timeout 30000 # OR if running from project root: node ./scripts/fetch-content.js "${URL}" "${OUTPUT_FOLDER}" --timeout 30000 ``` **What the script does automatically:** 1. Creates output folder 2. Tries Playwright+Stealth (30s timeout) 3. Falls back to HTTP Fetch (30s timeout) 4. Falls back to WebSearch placeholder (30s timeout) 5. Saves `content.html`, `screenshot.png`, and `fetch-result.json` **Execution:** ```javascript // 1. Run the automated fetch cascade (use relative path from project root) const fetchResult = Bash({ command: `node ./scripts/fetch-content.js "${URL}" "${OUTPUT_FOLDER}" --timeout 30000`, timeout: 120000 // 2 min total max }) // 2. Parse the JSON result from stdout const result = JSON.parse(fetchResult.stdout) // 3. Read the content const content = Read({ file_path: `${OUTPUT_FOLDER}/content.html` }) const fetchMethod = result.tier const contentSize = result.contentSize ``` **If script is not available, fall back to inline Playwright:** ```javascript // FALLBACK: Only if scripts/fetch-content.js doesn't exist Bash({ command: `mkdir -p "${OUTPUT_FOLDER}"` }) // Quick Playwright fetch (single tier, no cascade) Bash({ command: `cd /tmp && rm -rf qcsd-fetch && mkdir qcsd-fetch && cd qcsd-fetch && npm init -y && npm install playwright-extra puppeteer-extra-plugin-stealth playwright 2>/dev/null`, timeout: 60000 }) // ... minimal inline script as last resort ``` **MANDATORY: Output fetch method used:** ``` ┌─────────────────────────────────────────────────────────────┐ │ CONTENT FETCH RESULT │ ├─────────────────────────────────────────────────────────────┤ │ Method Used: [vibium/agent-browser/playwright/webfetch/ │ │ websearch-fallback] │ │ Content Size: [X KB] │ │ Status: [SUCCESS/DEGRADED] │ │ │ │ If DEGRADED (websearch-fallback), analysis is based on │ │ public information, not live page inspection. │ └─────────────────────────────────────────────────────────────┘ ``` ### PHASE URL-2: Programmatic Flag Detection (MANDATORY) **You MUST detect flags from the fetched content. Do NOT skip this phase.** ```javascript // Detect HAS_UI const HAS_UI = ( /<(form|button|input|select|textarea|img|video|canvas|nav|header|footer|aside)/i.test(content) || /carousel|slider|modal|dialog|dropdown|menu|tab|accordion/i.test(content) || /class=["'][^"']*btn|button|card|grid|flex/i.test(content) ); // Detect HAS_SECURITY const HAS_SECURITY = ( /login|password|auth|token|session|credential|oauth|jwt|sso/i.test(content) || /newsletter|subscribe|signup|email.*input|register/i.test(content) || // PII collection /payment|checkout|credit.*card|billing/i.test(content) || /cookie|consent|gdpr|privacy/i.test(content) ); // Detect HAS_UX const HAS_UX = ( /user|customer|visitor|journey|experience|engagement/i.test(content) || /