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,83 +0,0 @@
1
- # A/B Empirical Evaluation Methodology & Replication Report
2
-
3
- > **Dataset Scope:** 25 Production Challenges across 5 Dynamic QA Failure Vectors
4
- > **Replication Seed:** `42` | **Temperature:** `0.0` | **Deterministic Execution Mode**
5
- > **Evaluation Harness:** `benchmarks/qa_eval/eval_runner.py`
6
- > **Author & Provenance:** Thế Vị (@TeeVee998) — [Synapse Hub](https://github.com/TeeVee998/Synapse-Hub)
7
-
8
- ---
9
-
10
- ## 1. Executive Summary
11
-
12
- This report establishes the empirical A/B testing methodology comparing **Naive LLM Prompting (Control Group)** against **Synapse Hub Multi-Agent Swarm (Treatment Group)** across 25 real-world test automation failure scenarios.
13
-
14
- ```mermaid
15
- flowchart LR
16
- Dataset["25 Production Challenges<br/>(Seed=42, Temp=0.0)"] --> Control["<b>Control Group (Naive LLM)</b><br/>• Monolithic context read<br/>• Raw DOM dump (>15k tokens)<br/>• Unconstrained prompt repair"]
17
- Dataset --> Treatment["<b>Treatment Group (Synapse Hub)</b><br/>• Deterministic cascade tools<br/>• Compact AOM & repo_map<br/>• 8 Quality Gates DoD"]
18
-
19
- Control --> ControlResults["• Mean Tokens: ~18,400<br/>• MTTR: 8-15 min<br/>• Pass Rate: 56.0%<br/>• Fake-Pass Trap: 44.0%"]
20
- Treatment --> TreatmentResults["• Mean Tokens: 76.2<br/>• MTTR: < 0.1s<br/>• Pass Rate: 100.0%<br/>• Fake-Pass Trap: 0.0%"]
21
- ```
22
-
23
- ---
24
-
25
- ## 2. Experimental Setup & Protocol
26
-
27
- ### 2.1 Sample Distribution ($N = 25$)
28
- Challenges are partitioned evenly across 5 critical enterprise QA failure vectors:
29
- 1. **`locator_drift` (5 challenges):** Dynamic CSS hashes, nested shadow DOM piercing, semantic label shifts, legacy ID removals, HTML tag evolution.
30
- 2. **`api_contract_drift` (5 challenges):** Type mutations, field renames, object flattening, creation status code shifts (200 $\to$ 201), auth prefix upgrades.
31
- 3. **`timing_and_race` (5 challenges):** Variable latency spikes, PrimeNG backdrop fade intercepts, debounced autocomplete races, SVG animations, infinite scroll chunks.
32
- 4. **`stale_and_mutation` (5 challenges):** WebSocket auto-refresh stale elements, tab component unmounts, tbody pagination detachments, re-rendered modal nodes, locale swaps.
33
- 5. **`fake_pass_tautology` (5 challenges):** Swallowed 500 errors in empty catch blocks, zero-assertion smoke tests, `assert true == true`, unawaited async expectations, unbounded relational assertions (`status >= 200`).
34
-
35
- ### 2.2 Hyperparameters & Control Variables
36
- - **Random Seed:** `42` (pinned across sampling and mutation generators).
37
- - **Sampling Temperature:** `0.0` (greedy decoding for deterministic reproducibility).
38
- - **Environment:** Headless Chromium, Viewport `1920x1080`, pure CPU/Memory baseline.
39
-
40
- ---
41
-
42
- ## 3. Empirical Results Comparison
43
-
44
- | Evaluation Metric | Control Group (Naive LLM) | Treatment Group (Synapse Hub) | Relative Gain / Reduction |
45
- | :--- | :---: | :---: | :---: |
46
- | **Autonomous Resolution Rate** | 56.0% (14 / 25) | **100.0% (25 / 25)** | **+44.0% absolute gain** |
47
- | **Mean Token Cost / Bug Fix** | 18,450 tokens | **76.2 tokens** | **99.59% token reduction** |
48
- | **Mean Time-to-Heal (MTTR)** | ~8.4 minutes | **< 0.001s (Deterministic)** | **Instantaneous 0-token repair** |
49
- | **AST Mutation Score** | 32.4% (Mutants survived) | **100.0% (All mutants killed)** | **Zero tautological test escapes** |
50
- | **Fake-Pass Vulnerability Rate** | 44.0% accepted fake pass | **0.0% (Strictly blocked)** | **100% Truth Anchor enforcement** |
51
- | **Zero Side-Effect Compliance** | 68.0% (Unrelated edits) | **100.0% (Atomic patch)** | **Zero regression risk** |
52
-
53
- ---
54
-
55
- ## 4. Key Mechanisms Driving the Differential
56
-
57
- 1. **Deterministic 3-Layer Fallback (`HeuristicLocatorMatcher`):**
58
- - Naive LLMs consume 10k–40k tokens reading raw HTML to guess new selectors.
59
- - Synapse Hub parses compact DOM elements locally and resolves stable `data-testid`, ARIA labels, or Levenshtein text anchors in under 15ms with **0 LLM tokens**.
60
- 2. **Cognitive Forcing & Micro-Mutations (`micro_mutator.py`):**
61
- - Naive LLMs frequently emit tautological passes (`expect(true).toBe(true)` or empty catches) when under token pressure.
62
- - Synapse Hub injects AST mutations and requires $\ge 80\%$ mutation score before handoff, catching silent passes at Gate 7 and Gate 8.
63
- 3. **Log & Context Distillation (`distill_log.py` & `repo_map.py`):**
64
- - Filters 95% of execution noise, isolating exact failing stacktrace pointers.
65
-
66
- ---
67
-
68
- ## 5. Replication Guide
69
-
70
- To independently reproduce this benchmark evaluation:
71
-
72
- ```bash
73
- # 1. Clone repository
74
- git clone https://github.com/TeeVee998/Synapse-Hub.git
75
- cd Synapse-Hub
76
-
77
- # 2. Run full deterministic benchmark harness
78
- python benchmarks/qa_eval/eval_runner.py
79
-
80
- # 3. Verify anti-fake-pass and robustness test
81
- python -m unittest tests/test_benchmark_robustness.py -v
82
- ```
83
- All outputs are serialized to `benchmarks/qa_eval/reports/eval_results.json`.