synapse-hub 2.4.0 β†’ 2.4.2

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 (88) hide show
  1. package/.agents/agents/orchestrator.md +3 -0
  2. package/.agents/agents/pom-crafter.md +3 -0
  3. package/.agents/agents/quality-gatekeeper.md +1 -0
  4. package/.agents/agents/test-runner.md +1 -0
  5. package/.agents/rules/graphify.md +14 -14
  6. package/.agents/rules/mandatory-playwright-live.md +29 -29
  7. package/.agents/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -614
  8. package/.agents/skills/clean-pom-crafter/examples/standard_test_case.groovy +28 -28
  9. package/.agents/skills/clean-pom-crafter/references/pom_patterns.groovy +138 -138
  10. package/.agents/skills/e2e-testing-patterns/resources/implementation-playbook.md +522 -522
  11. package/.agents/skills/failure-autopsy-and-healing/references/healing_matrix.md +64 -64
  12. package/.agents/skills/failure-autopsy-and-healing/references/qa_investigation_protocol.md +56 -56
  13. package/.agents/skills/failure-autopsy-and-healing/scripts/triage_failures.sh +98 -98
  14. package/.agents/skills/katalon-cli-runner/references/groovy-patterns.md +209 -209
  15. package/.agents/skills/katalon-cli-runner/references/katalon-api.md +155 -155
  16. package/.agents/skills/katalon-cli-runner/references/runner_commands.md +67 -67
  17. package/.agents/skills/playwright-live-interaction/references/advanced_superpowers.md +160 -160
  18. package/.agents/skills/playwright-live-interaction/references/compact_accessibility_snapshots.md +75 -75
  19. package/.agents/skills/playwright-live-interaction/references/recipes.md +388 -388
  20. package/.agents/skills/playwright-live-interaction/references/swarm_orchestration.md +134 -134
  21. package/.agents/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -541
  22. package/.agents/templates/completion_report.md +57 -57
  23. package/.agents/workflows/graphify.md +10 -10
  24. package/.cursor/rules/language.mdc +7 -7
  25. package/README.en.md +9 -3
  26. package/README.md +9 -3
  27. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-06_api_contract_drift.json +21 -21
  28. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-07_api_contract_drift.json +21 -21
  29. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-08_api_contract_drift.json +21 -21
  30. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-09_api_contract_drift.json +21 -21
  31. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-10_api_contract_drift.json +21 -21
  32. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-21_fake_pass_tautology.json +20 -20
  33. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-22_fake_pass_tautology.json +20 -20
  34. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-23_fake_pass_tautology.json +20 -20
  35. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-24_fake_pass_tautology.json +20 -20
  36. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-25_fake_pass_tautology.json +20 -20
  37. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-01_locator_drift.json +22 -22
  38. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-02_locator_drift.json +22 -22
  39. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-03_locator_drift.json +22 -22
  40. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-04_locator_drift.json +22 -22
  41. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-05_locator_drift.json +22 -22
  42. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-16_stale_and_mutation.json +21 -21
  43. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-17_stale_and_mutation.json +21 -21
  44. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-18_stale_and_mutation.json +21 -21
  45. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-19_stale_and_mutation.json +21 -21
  46. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-20_stale_and_mutation.json +22 -22
  47. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-11_timing_and_race.json +21 -21
  48. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-12_timing_and_race.json +21 -21
  49. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-13_timing_and_race.json +21 -21
  50. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-14_timing_and_race.json +21 -21
  51. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-15_timing_and_race.json +21 -21
  52. package/benchmarks/qa_eval/reports/BENCHMARK_REPORT.md +94 -69
  53. package/benchmarks/qa_eval/reports/eval_results.json +460 -104
  54. package/bin/agent-qa.js +6 -1
  55. package/docs/ARCHITECTURE.md +13 -2
  56. package/package.json +6 -6
  57. package/scripts/install.ps1 +112 -112
  58. package/scripts/install_global_plugin.ps1 +1 -1
  59. package/scripts/install_global_plugin.sh +1 -1
  60. package/scripts/lint_skills.ps1 +57 -57
  61. package/skills_manifest.json +1 -1
  62. package/synapse.config.json +1 -1
  63. package/tools/TOOLS_RUNBOOK.md +6 -1
  64. package/tools/__init__.py +1 -1
  65. package/tools/agent_canary.py +501 -501
  66. package/tools/api_fuzzer.py +11 -2
  67. package/tools/browser_helpers.js +2 -2
  68. package/tools/bump_version.py +8 -0
  69. package/tools/check_version_sync.py +18 -0
  70. package/tools/cli.py +210 -48
  71. package/tools/count_tokens.py +4 -4
  72. package/tools/dashboard_generator.py +10 -10
  73. package/tools/e2e_flow_prober.sh +0 -0
  74. package/tools/generate_allure_report.sh +0 -0
  75. package/tools/generate_test_reports.sh +0 -0
  76. package/tools/mcp_excel_server.py +3 -1
  77. package/tools/mcp_excel_server.sh +0 -0
  78. package/tools/mcp_server.py +1 -1
  79. package/tools/micro_mutator.py +4 -2
  80. package/tools/pinpoint_failure.py +88 -88
  81. package/tools/setup_project.py +1 -1
  82. package/tools/skillspector.py +31 -0
  83. package/tools/update_sentinel.py +3 -3
  84. package/tools/verify_all.py +16 -6
  85. package/tools/verify_all.sh +0 -0
  86. package/tools/visual_som_helper.py +14 -3
  87. package/tools/welcome_page.py +1 -1
  88. package/benchmarks/qa_eval/reports/AB_METHODOLOGY_REPORT.md +0 -83
@@ -1,134 +1,134 @@
1
- # Enterprise Multi-Agent Swarm Orchestration Guide (Enterprise Automation)
2
-
3
- Standard operating procedure, role taxonomy, and collaboration protocol for the **Enterprise Test Engineering Swarm** covering all 259 Test Cases.
4
-
5
- ---
6
-
7
- ## 1. Organizational Hierarchy & Role Taxonomy
8
-
9
- ```mermaid
10
- flowchart TD
11
- Boss["πŸ‘‘ PROJECT LEAD (Test Manager / QA Director)<br/>(Strategic direction & final sign-off)"] --> Head["πŸ‘” LEAD QA ORCHESTRATOR<br/>(Overall coordination & quality governance)"]
12
-
13
- subgraph SpecializedSwarm["SPECIALIZED AUTOMATION SWARM"]
14
- Scout["πŸ” LIVE INTERACTION EXPLORER<br/>(DOM/AOM live probing via Playwright MCP)"]
15
- Crafter["βš’οΈ AUTOMATION CODE CRAFTER<br/>(Page Classes & Clean POM Groovy scripts)"]
16
- Runner["⚑ TEST EXECUTION RUNNER<br/>(Headless Katalon CLI execution)"]
17
- Judge["πŸ›‘οΈ QUALITY GATEKEEPER & ANALYST<br/>(100% UTF-8 No BOM, anti-bypass & RCA)"]
18
- Scribe["πŸ“– TECHNICAL DOCUMENTATION SPECIALIST<br/>(Business workflows & visual charting)"]
19
- end
20
-
21
- Head --> Scout & Crafter & Runner & Judge & Scribe
22
- ```
23
-
24
- ---
25
-
26
- ## 2. Enterprise Collaboration Protocol
27
-
28
- 1. **User Communication (Project Lead):**
29
- * Demeanor: Results-oriented, data-driven, concise, transparent.
30
- * Language with user: Vietnamese (clear engineering terms).
31
- 2. **Internal Agent-to-Agent Protocol:**
32
- * **Lead QA Orchestrator:** Decomposes Acceptance Criteria, manages timeline, monitors SLAs.
33
- * **Live Interaction Explorer:** Delivers validated JSON Data Contracts based on live DOM inspection.
34
- * **Automation Code Crafter:** Implements Page Object Model code under test scrutiny from Runner and gatekeeping from Gatekeeper.
35
- * **Quality Gatekeeper & Analyst:** Enforces quality standards independently; rejects fake passes; provides RCA evidence.
36
- * **Technical Documentation Specialist:** Systematizes documentation, translates code into visual Mermaid workflows.
37
-
38
- ---
39
-
40
- ## 3. Specialized Role Responsibilities
41
-
42
- ### πŸ‘‘ 1. Lead QA Orchestrator
43
- * Receives objectives from Project Lead (e.g. *"Complete Industrial Clusters TC-66 to TC-80"*).
44
- * Queries `tools/lookup_tc.py` to break down tasks into subagent batches.
45
- * Invokes specialized subagents and synthesizes completion reports.
46
-
47
- ### πŸ” 2. Live Interaction Explorer
48
- * **Tools:** Playwright MCP (`browser_run_code_unsafe`, `browser_navigate`).
49
- * **Tasks:**
50
- - Loads `.agents/session.json` (Zero-Second Auth).
51
- - Inspects live routes: URL, Title, interactive buttons, inputs, dropdown overlays.
52
- - Verifies 100% selector hit rate on live browser.
53
- - Returns compact JSON Data Contract to Code Crafter.
54
-
55
- ### βš’οΈ 3. Automation Code Crafter
56
- * **Tools:** File editing tools.
57
- * **Tasks:**
58
- - Consumes Data Contract from Explorer.
59
- - Implements `public static` methods in `Keywords/pages/<PageClass>.groovy` inheriting `BasePage`.
60
- - Generates corresponding test scripts (`Scripts/TC-xxx .../Script*.groovy`).
61
- - Strict compliance with Flat Architecture and Clean POM (zero raw XPaths in test scripts).
62
-
63
- ### ⚑ 4. Test Execution Runner
64
- * **Tools:** Run command tools (`katalonc`, shell/PowerShell runners).
65
- * **Tasks:**
66
- - Executes targeted suites or batches in pure Headless Mode.
67
- - Captures `Screenshots/FAILED_*.png` on failure; compiles Allure reports.
68
- - Hands over results to Quality Gatekeeper.
69
-
70
- ### πŸ›‘οΈ 5. Quality Gatekeeper & Failure Analyst
71
- * **Tools:** Static checkers, test assertion validators.
72
- * **Tasks:**
73
- - Enforces 100% UTF-8 No BOM (`0xEF, 0xBB, 0xBF`).
74
- - Rejects fake passes (verifies real toast notifications and table data).
75
- - Conducts visual RCA via `triage_failures.sh` and `Screenshots/FAILED_*.png`.
76
-
77
- ### πŸ“– 6. Technical Documentation Specialist
78
- * **Tasks:**
79
- - Translates `.groovy` scripts into plain business requirements.
80
- - Generates Mermaid sequence and flowchart diagrams.
81
- - Documents technical rationale (why specific coordinates or synthetic events are required).
82
-
83
- ---
84
-
85
- ## 4. Launching Swarm in Antigravity
86
-
87
- - **Method 1 (UI Slash Command):** Type `/teamwork-preview` to visualize parallel subagents.
88
- - **Method 2 (Autonomous Prompt):** Prompt: *"Act as Lead QA Orchestrator, dispatch Swarm to complete TC-123 through TC-127."*
89
- * Orchestrator invokes `Live Explorer` for DOM probing.
90
- * Next invokes `Code Crafter` to write Groovy code.
91
- * Finally invokes `Quality Gatekeeper` for verification.
92
-
93
- ---
94
-
95
- ## 5. Multi-Agent Adversarial Debate
96
-
97
- ```mermaid
98
- sequenceDiagram
99
- participant Crafter as βš’οΈ Automation Code Crafter
100
- participant Explorer as πŸ” Live Interaction Explorer
101
- participant Gatekeeper as πŸ›‘οΈ Quality Gatekeeper
102
- participant Judge as πŸ‘‘ Lead QA Orchestrator
103
-
104
- Crafter->>Explorer: "Created Supermarket method drawing Polygon at (-180, -80)."
105
- Explorer-->>Crafter: "CHALLENGE: Live DOM shows Supermarket is POINT, not POLYGON! Will fail like TC-135."
106
- Crafter->>Crafter: Refactors to clickPointOnCanvas().
107
- Crafter->>Gatekeeper: "Submitted updated Point implementation."
108
- Gatekeeper-->>Crafter: "CHALLENGE: Only delay(3) without verifying real success Toast. Fake pass detected!"
109
- Crafter->>Crafter: Adds verifyMiningSuccess('thΓ nh cΓ΄ng').
110
- Crafter->>Gatekeeper: "Added real Toast assertion + verified UTF-8 No BOM."
111
- Gatekeeper->>Judge: "REPORT: Code 100% compliant."
112
- Judge->>Judge: Consensus reached -> Commit code!
113
- ```
114
-
115
- ---
116
-
117
- ## 6. Model Routing Strategy (Quota Optimization)
118
-
119
- | Subagent Role | Recommended Model | Rationale & Tasks |
120
- |---|:---:|---|
121
- | **Quality Gatekeeper & Failure Analyst** | `flash` / `flash_lite` | Parses long KRE console logs, checks JUnit XML & BOM, ultra-fast (<0.5s), saves 70% quota. |
122
- | **Test Execution Runner** | `flash` | Executes CLI runners, checks exit codes. |
123
- | **Live Interaction Explorer** | `pro` / `inherit` | Complex DOM inspection, OpenLayers GIS navigation, AOM snapshots. |
124
- | **Automation Code Crafter** | `pro` / `inherit` | Clean POM Groovy refactoring, Angular synthetic event handling. |
125
- | **Lead QA Orchestrator** | `pro` / `inherit` | Acceptance Criteria decomposition and architectural decision-making. |
126
-
127
- ---
128
-
129
- ## 7. Auto Cleanup Blacklist
130
-
131
- All Subagents **MUST** clean up temporary files before returning control to Orchestrator:
132
- - Dumps: `*_debug.txt`, `debug_output.txt`, `dom_dump.txt`, `html_dump.html`, `network_requests.txt`, `console_log.txt`
133
- - Snapshots: `page_snapshot.md`, `snapshot_*.md`, `.agents/screenshots/gis_canvas_live.png`
134
- - Scratch files: `scratch_*.*`, `*.tmp`, `*.temp`
1
+ # Enterprise Multi-Agent Swarm Orchestration Guide (Enterprise Automation)
2
+
3
+ Standard operating procedure, role taxonomy, and collaboration protocol for the **Enterprise Test Engineering Swarm** covering all 259 Test Cases.
4
+
5
+ ---
6
+
7
+ ## 1. Organizational Hierarchy & Role Taxonomy
8
+
9
+ ```mermaid
10
+ flowchart TD
11
+ Boss["πŸ‘‘ PROJECT LEAD (Test Manager / QA Director)<br/>(Strategic direction & final sign-off)"] --> Head["πŸ‘” LEAD QA ORCHESTRATOR<br/>(Overall coordination & quality governance)"]
12
+
13
+ subgraph SpecializedSwarm["SPECIALIZED AUTOMATION SWARM"]
14
+ Scout["πŸ” LIVE INTERACTION EXPLORER<br/>(DOM/AOM live probing via Playwright MCP)"]
15
+ Crafter["βš’οΈ AUTOMATION CODE CRAFTER<br/>(Page Classes & Clean POM Groovy scripts)"]
16
+ Runner["⚑ TEST EXECUTION RUNNER<br/>(Headless Katalon CLI execution)"]
17
+ Judge["πŸ›‘οΈ QUALITY GATEKEEPER & ANALYST<br/>(100% UTF-8 No BOM, anti-bypass & RCA)"]
18
+ Scribe["πŸ“– TECHNICAL DOCUMENTATION SPECIALIST<br/>(Business workflows & visual charting)"]
19
+ end
20
+
21
+ Head --> Scout & Crafter & Runner & Judge & Scribe
22
+ ```
23
+
24
+ ---
25
+
26
+ ## 2. Enterprise Collaboration Protocol
27
+
28
+ 1. **User Communication (Project Lead):**
29
+ * Demeanor: Results-oriented, data-driven, concise, transparent.
30
+ * Language with user: Vietnamese (clear engineering terms).
31
+ 2. **Internal Agent-to-Agent Protocol:**
32
+ * **Lead QA Orchestrator:** Decomposes Acceptance Criteria, manages timeline, monitors SLAs.
33
+ * **Live Interaction Explorer:** Delivers validated JSON Data Contracts based on live DOM inspection.
34
+ * **Automation Code Crafter:** Implements Page Object Model code under test scrutiny from Runner and gatekeeping from Gatekeeper.
35
+ * **Quality Gatekeeper & Analyst:** Enforces quality standards independently; rejects fake passes; provides RCA evidence.
36
+ * **Technical Documentation Specialist:** Systematizes documentation, translates code into visual Mermaid workflows.
37
+
38
+ ---
39
+
40
+ ## 3. Specialized Role Responsibilities
41
+
42
+ ### πŸ‘‘ 1. Lead QA Orchestrator
43
+ * Receives objectives from Project Lead (e.g. *"Complete Industrial Clusters TC-66 to TC-80"*).
44
+ * Queries `tools/lookup_tc.py` to break down tasks into subagent batches.
45
+ * Invokes specialized subagents and synthesizes completion reports.
46
+
47
+ ### πŸ” 2. Live Interaction Explorer
48
+ * **Tools:** Playwright MCP (`browser_run_code_unsafe`, `browser_navigate`).
49
+ * **Tasks:**
50
+ - Loads `.agents/session.json` (Zero-Second Auth).
51
+ - Inspects live routes: URL, Title, interactive buttons, inputs, dropdown overlays.
52
+ - Verifies 100% selector hit rate on live browser.
53
+ - Returns compact JSON Data Contract to Code Crafter.
54
+
55
+ ### βš’οΈ 3. Automation Code Crafter
56
+ * **Tools:** File editing tools.
57
+ * **Tasks:**
58
+ - Consumes Data Contract from Explorer.
59
+ - Implements `public static` methods in `Keywords/pages/<PageClass>.groovy` inheriting `BasePage`.
60
+ - Generates corresponding test scripts (`Scripts/TC-xxx .../Script*.groovy`).
61
+ - Strict compliance with Flat Architecture and Clean POM (zero raw XPaths in test scripts).
62
+
63
+ ### ⚑ 4. Test Execution Runner
64
+ * **Tools:** Run command tools (`katalonc`, shell/PowerShell runners).
65
+ * **Tasks:**
66
+ - Executes targeted suites or batches in pure Headless Mode.
67
+ - Captures `Screenshots/FAILED_*.png` on failure; compiles Allure reports.
68
+ - Hands over results to Quality Gatekeeper.
69
+
70
+ ### πŸ›‘οΈ 5. Quality Gatekeeper & Failure Analyst
71
+ * **Tools:** Static checkers, test assertion validators.
72
+ * **Tasks:**
73
+ - Enforces 100% UTF-8 No BOM (`0xEF, 0xBB, 0xBF`).
74
+ - Rejects fake passes (verifies real toast notifications and table data).
75
+ - Conducts visual RCA via `triage_failures.sh` and `Screenshots/FAILED_*.png`.
76
+
77
+ ### πŸ“– 6. Technical Documentation Specialist
78
+ * **Tasks:**
79
+ - Translates `.groovy` scripts into plain business requirements.
80
+ - Generates Mermaid sequence and flowchart diagrams.
81
+ - Documents technical rationale (why specific coordinates or synthetic events are required).
82
+
83
+ ---
84
+
85
+ ## 4. Launching Swarm in Antigravity
86
+
87
+ - **Method 1 (UI Slash Command):** Type `/teamwork-preview` to visualize parallel subagents.
88
+ - **Method 2 (Autonomous Prompt):** Prompt: *"Act as Lead QA Orchestrator, dispatch Swarm to complete TC-123 through TC-127."*
89
+ * Orchestrator invokes `Live Explorer` for DOM probing.
90
+ * Next invokes `Code Crafter` to write Groovy code.
91
+ * Finally invokes `Quality Gatekeeper` for verification.
92
+
93
+ ---
94
+
95
+ ## 5. Multi-Agent Adversarial Debate
96
+
97
+ ```mermaid
98
+ sequenceDiagram
99
+ participant Crafter as βš’οΈ Automation Code Crafter
100
+ participant Explorer as πŸ” Live Interaction Explorer
101
+ participant Gatekeeper as πŸ›‘οΈ Quality Gatekeeper
102
+ participant Judge as πŸ‘‘ Lead QA Orchestrator
103
+
104
+ Crafter->>Explorer: "Created Supermarket method drawing Polygon at (-180, -80)."
105
+ Explorer-->>Crafter: "CHALLENGE: Live DOM shows Supermarket is POINT, not POLYGON! Will fail like TC-135."
106
+ Crafter->>Crafter: Refactors to clickPointOnCanvas().
107
+ Crafter->>Gatekeeper: "Submitted updated Point implementation."
108
+ Gatekeeper-->>Crafter: "CHALLENGE: Only delay(3) without verifying real success Toast. Fake pass detected!"
109
+ Crafter->>Crafter: Adds verifyMiningSuccess('thΓ nh cΓ΄ng').
110
+ Crafter->>Gatekeeper: "Added real Toast assertion + verified UTF-8 No BOM."
111
+ Gatekeeper->>Judge: "REPORT: Code 100% compliant."
112
+ Judge->>Judge: Consensus reached -> Commit code!
113
+ ```
114
+
115
+ ---
116
+
117
+ ## 6. Model Routing Strategy (Quota Optimization)
118
+
119
+ | Subagent Role | Recommended Model | Rationale & Tasks |
120
+ |---|:---:|---|
121
+ | **Quality Gatekeeper & Failure Analyst** | `flash` / `flash_lite` | Parses long KRE console logs, checks JUnit XML & BOM, ultra-fast (<0.5s), saves 70% quota. |
122
+ | **Test Execution Runner** | `flash` | Executes CLI runners, checks exit codes. |
123
+ | **Live Interaction Explorer** | `pro` / `inherit` | Complex DOM inspection, OpenLayers GIS navigation, AOM snapshots. |
124
+ | **Automation Code Crafter** | `pro` / `inherit` | Clean POM Groovy refactoring, Angular synthetic event handling. |
125
+ | **Lead QA Orchestrator** | `pro` / `inherit` | Acceptance Criteria decomposition and architectural decision-making. |
126
+
127
+ ---
128
+
129
+ ## 7. Auto Cleanup Blacklist
130
+
131
+ All Subagents **MUST** clean up temporary files before returning control to Orchestrator:
132
+ - Dumps: `*_debug.txt`, `debug_output.txt`, `dom_dump.txt`, `html_dump.html`, `network_requests.txt`, `console_log.txt`
133
+ - Snapshots: `page_snapshot.md`, `snapshot_*.md`, `.agents/screenshots/gis_canvas_live.png`
134
+ - Scratch files: `scratch_*.*`, `*.tmp`, `*.temp`