synapse-hub 2.4.2 → 2.5.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.
Files changed (168) hide show
  1. package/.agents/agents/orchestrator.md +1 -0
  2. package/.agents/agents/pom-crafter.md +1 -0
  3. package/.agents/agents/quality-gatekeeper.md +6 -0
  4. package/.agents/rules/skill-precedence.md +38 -18
  5. package/.agents/rules/systematic-debugging.md +2 -0
  6. package/.agents/skills/lean-code-ladder/SKILL.md +12 -1
  7. package/.agents/skills/lean-impact-scoreboard/SKILL.md +48 -0
  8. package/.agents/skills/lean-impact-scoreboard/examples/sample_benchmark_gain.md +20 -0
  9. package/.agents/skills/lean-impact-scoreboard/examples/sample_scoreboard.md +15 -0
  10. package/.agents/skills/repo-quality-audit/SKILL.md +68 -0
  11. package/.agents/skills/repo-quality-audit/examples/sample_audit_walkthrough.md +15 -0
  12. package/.agents/skills/repo-quality-audit/examples/sample_repo_audit.md +33 -0
  13. package/.agents/skills/senior-code-review/SKILL.md +90 -0
  14. package/.agents/skills/senior-code-review/examples/sample_review_walkthrough.md +29 -0
  15. package/.agents/skills/technical-debt-harvester/SKILL.md +70 -0
  16. package/.agents/skills/technical-debt-harvester/examples/sample_debt_ledger.md +25 -0
  17. package/.agents/skills/technical-debt-harvester/examples/sample_ledger_output.md +20 -0
  18. package/.cursor/rules/synapse-qa.mdc +4 -3
  19. package/.cursorrules +1 -0
  20. package/.windsurfrules +1 -0
  21. package/AGENTS.md +51 -179
  22. package/CLAUDE.md +5 -0
  23. package/README.en.md +12 -8
  24. package/README.md +12 -8
  25. package/bin/agent-qa.js +3 -2
  26. package/docs/ARCHITECTURE.md +3 -3
  27. package/docs/CLI_REFERENCE.md +15 -1
  28. package/package.json +1 -3
  29. package/skills_manifest.json +38 -2
  30. package/synapse.config.json +1 -1
  31. package/templates/ai_bridges/CLAUDE.md +5 -0
  32. package/templates/ai_bridges/copilot-instructions.md +2 -0
  33. package/templates/ai_bridges/cursor_synapse_qa.mdc +4 -3
  34. package/templates/ai_bridges/windsurfrules +1 -0
  35. package/tools/.infer_baseline.json +7 -1079
  36. package/tools/TOOLS_RUNBOOK.md +53 -13
  37. package/tools/__init__.py +1 -1
  38. package/tools/agent_canary.py +4 -4
  39. package/tools/analyze_project.py +2 -2
  40. package/tools/api_fuzzer.py +4 -4
  41. package/tools/auto_heal.py +4 -2
  42. package/tools/browser_helpers.js +2 -2
  43. package/tools/bump_version.py +30 -2
  44. package/tools/cache_resolver.py +6 -6
  45. package/tools/check_env.py +82 -18
  46. package/tools/cli.py +265 -197
  47. package/tools/count_tokens.py +7 -7
  48. package/tools/dashboard_generator.py +14 -14
  49. package/tools/db_sandbox.py +5 -5
  50. package/tools/debt_harvester.py +236 -0
  51. package/tools/distill_log.py +2 -2
  52. package/tools/flaky_detector.py +5 -5
  53. package/tools/generate_tc_from_story.py +2 -2
  54. package/tools/generate_test_reports.py +4 -4
  55. package/tools/git_pre_commit_guard.py +6 -6
  56. package/tools/infer_linter.py +12 -7
  57. package/tools/lint_ai_docs.py +2 -2
  58. package/tools/matrix_sharder.py +4 -4
  59. package/tools/mcp_excel_server.py +1 -1
  60. package/tools/mcp_server.py +3 -3
  61. package/tools/micro_mutator.py +6 -6
  62. package/tools/omni_transpiler.py +2 -2
  63. package/tools/output_formatter.py +37 -2
  64. package/tools/pinpoint_failure.py +4 -1
  65. package/tools/repo_map.py +2 -2
  66. package/tools/safety_firewall.py +2 -2
  67. package/tools/senior_code_review.py +341 -0
  68. package/tools/setup_project.py +17 -9
  69. package/tools/skillspector.py +2 -2
  70. package/tools/sync_agent_rules.py +14 -3
  71. package/tools/test_impact.py +4 -4
  72. package/tools/tms_sync_bridge.py +2 -2
  73. package/tools/update_sentinel.py +24 -23
  74. package/tools/verify_all.py +12 -12
  75. package/tools/visual_som_helper.py +8 -8
  76. package/tools/watch_mode.py +6 -7
  77. package/tools/wcag_audit.py +5 -1
  78. package/tools/welcome_page.py +11 -11
  79. package/benchmarks/qa_eval/README.md +0 -71
  80. package/benchmarks/qa_eval/build_dataset.py +0 -677
  81. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-06_api_contract_drift.json +0 -22
  82. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-07_api_contract_drift.json +0 -22
  83. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-08_api_contract_drift.json +0 -22
  84. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-09_api_contract_drift.json +0 -22
  85. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-10_api_contract_drift.json +0 -22
  86. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-21_fake_pass_tautology.json +0 -21
  87. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-22_fake_pass_tautology.json +0 -21
  88. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-23_fake_pass_tautology.json +0 -21
  89. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-24_fake_pass_tautology.json +0 -21
  90. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-25_fake_pass_tautology.json +0 -21
  91. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-01_locator_drift.json +0 -23
  92. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-02_locator_drift.json +0 -23
  93. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-03_locator_drift.json +0 -23
  94. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-04_locator_drift.json +0 -23
  95. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-05_locator_drift.json +0 -23
  96. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-16_stale_and_mutation.json +0 -22
  97. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-17_stale_and_mutation.json +0 -22
  98. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-18_stale_and_mutation.json +0 -22
  99. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-19_stale_and_mutation.json +0 -22
  100. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-20_stale_and_mutation.json +0 -23
  101. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-11_timing_and_race.json +0 -22
  102. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-12_timing_and_race.json +0 -22
  103. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-13_timing_and_race.json +0 -22
  104. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-14_timing_and_race.json +0 -22
  105. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-15_timing_and_race.json +0 -22
  106. package/benchmarks/qa_eval/eval_runner.py +0 -418
  107. package/benchmarks/qa_eval/reports/BENCHMARK_REPORT.md +0 -94
  108. package/benchmarks/qa_eval/reports/eval_results.json +0 -461
  109. package/examples/cypress-ecommerce-suite/README.md +0 -45
  110. package/examples/cypress-ecommerce-suite/cypress/e2e/checkout.cy.js +0 -17
  111. package/examples/cypress-ecommerce-suite/cypress/pages/BasePage.js +0 -29
  112. package/examples/cypress-ecommerce-suite/cypress/pages/CartPage.js +0 -51
  113. package/examples/cypress-ecommerce-suite/cypress.config.js +0 -13
  114. package/examples/cypress-ecommerce-suite/package.json +0 -13
  115. package/examples/katalon-suite/Keywords/pages/BasePage.groovy +0 -19
  116. package/examples/katalon-suite/Keywords/pages/DashboardPage.groovy +0 -29
  117. package/examples/katalon-suite/Keywords/pages/LoginPage.groovy +0 -45
  118. package/examples/katalon-suite/Profiles/default.glbl +0 -12
  119. package/examples/katalon-suite/README.md +0 -18
  120. package/examples/katalon-suite/Scripts/Auth/TC_LoginSuccess/Script1234567890.groovy +0 -12
  121. package/examples/katalon-suite/Scripts/Dashboard/TC_ViewSummary/Script1234567891.groovy +0 -15
  122. package/examples/katalon-suite/katalon_suite.prj +0 -21
  123. package/examples/playwright-crm-suite/README.md +0 -40
  124. package/examples/playwright-crm-suite/package.json +0 -14
  125. package/examples/playwright-crm-suite/pages/BasePage.ts +0 -37
  126. package/examples/playwright-crm-suite/pages/CustomerPage.ts +0 -57
  127. package/examples/playwright-crm-suite/pages/LoginPage.ts +0 -32
  128. package/examples/playwright-crm-suite/playwright.config.ts +0 -27
  129. package/examples/playwright-crm-suite/tests/auth.spec.ts +0 -22
  130. package/examples/playwright-crm-suite/tests/customers.spec.ts +0 -33
  131. package/examples/plugins/sample-custom-plugin/README.md +0 -14
  132. package/examples/plugins/sample-custom-plugin/plugin.json +0 -16
  133. package/examples/plugins/sample-custom-plugin/skills/custom-security-headers-audit/SKILL.md +0 -29
  134. package/examples/plugins/sample-custom-plugin/skills/custom-security-headers-audit/examples/audit_fixture.json +0 -8
  135. package/examples/plugins/sample-custom-plugin/tools/custom_security_headers.py +0 -125
  136. package/examples/practices/README.md +0 -22
  137. package/examples/practices/requirements/crm/requirements_contracts.md +0 -292
  138. package/examples/practices/requirements/crm/requirements_customers.md +0 -462
  139. package/examples/practices/requirements/crm/requirements_login.md +0 -202
  140. package/examples/practices/requirements/crm/requirements_projects.md +0 -396
  141. package/examples/practices/requirements/crm/requirements_tasks.md +0 -343
  142. package/examples/practices/requirements/ecommerce/requirements_category_brand.txt +0 -402
  143. package/examples/practices/requirements/jira/KAN-5/KAN-1/2026-04-03_04-28-27.png +0 -0
  144. package/examples/practices/requirements/jira/KAN-5/KAN-1/KAN-1_requirement.md +0 -52
  145. package/examples/practices/requirements/jira/KAN-5/KAN-4/2026-04-03_04-28-19.png +0 -0
  146. package/examples/practices/requirements/jira/KAN-5/KAN-4/2026-04-03_04-28-57.png +0 -0
  147. package/examples/practices/requirements/jira/KAN-5/KAN-4/KAN-4_requirement.md +0 -119
  148. package/examples/practices/requirements/jira/KAN-5/KAN-5_overview.md +0 -9
  149. package/examples/practices/requirements/jira/KAN-5/KAN-6/2026-04-03_05-58-08.png +0 -0
  150. package/examples/practices/requirements/jira/KAN-5/KAN-6/2026-04-03_05-58-23.png +0 -0
  151. package/examples/practices/requirements/jira/KAN-5/KAN-6/KAN-6_requirement.md +0 -32
  152. package/examples/practices/testcases/api/book_management_api_test_cases.md +0 -144
  153. package/examples/practices/testcases/api/user_management_api_test_cases.md +0 -139
  154. package/examples/practices/testcases/crm/test_cases_crm_login.md +0 -148
  155. package/examples/practices/testcases/crm/test_cases_customers.md +0 -156
  156. package/examples/pytest-api-suite/README.md +0 -45
  157. package/examples/pytest-api-suite/conftest.py +0 -31
  158. package/examples/pytest-api-suite/pages/user_api_client.py +0 -36
  159. package/examples/pytest-api-suite/requirements.txt +0 -2
  160. package/examples/pytest-api-suite/tests/test_user_api.py +0 -44
  161. package/examples/selenium-suite/README.md +0 -18
  162. package/examples/selenium-suite/pages/base_page.py +0 -27
  163. package/examples/selenium-suite/pages/login_page.py +0 -29
  164. package/examples/selenium-suite/pages/order_page.py +0 -25
  165. package/examples/selenium-suite/pytest.ini +0 -6
  166. package/examples/selenium-suite/requirements.txt +0 -2
  167. package/examples/selenium-suite/tests/test_login.py +0 -10
  168. package/examples/selenium-suite/tests/test_order.py +0 -10
@@ -1,1102 +1,30 @@
1
1
  {
2
- "generated_at": "2026-11-01T21:48:16.951293",
3
- "total_defects": 137,
2
+ "generated_at": "2026-11-03T20:14:09.196036",
3
+ "total_defects": 3,
4
4
  "defects": [
5
- {
6
- "file": "tools/agent_canary.py",
7
- "role": "TEST_SCRIPT",
8
- "type": "SWALLOWED_EXCEPTION",
9
- "severity": "CRITICAL",
10
- "line": 43,
11
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
12
- },
13
- {
14
- "file": "tools/agent_canary.py",
15
- "role": "TEST_SCRIPT",
16
- "type": "SWALLOWED_EXCEPTION",
17
- "severity": "CRITICAL",
18
- "line": 210,
19
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
20
- },
21
- {
22
- "file": "tools/analyze_project.py",
23
- "role": "TEST_SCRIPT",
24
- "type": "SWALLOWED_EXCEPTION",
25
- "severity": "CRITICAL",
26
- "line": 220,
27
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
28
- },
29
- {
30
- "file": "tools/api_drift_sentinel.py",
31
- "role": "TEST_SCRIPT",
32
- "type": "FAKE_PASS_NO_ASSERTION",
33
- "severity": "WARNING",
34
- "line": 1,
35
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
36
- },
37
- {
38
- "file": "tools/api_fuzzer.py",
39
- "role": "TEST_SCRIPT",
40
- "type": "SWALLOWED_EXCEPTION",
41
- "severity": "CRITICAL",
42
- "line": 165,
43
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
44
- },
45
- {
46
- "file": "tools/auto_heal.py",
47
- "role": "TEST_SCRIPT",
48
- "type": "FAKE_PASS_NO_ASSERTION",
49
- "severity": "WARNING",
50
- "line": 1,
51
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
52
- },
53
- {
54
- "file": "tools/browser_helpers.js",
55
- "role": "TEST_SCRIPT",
56
- "type": "FAKE_PASS_NO_ASSERTION",
57
- "severity": "WARNING",
58
- "line": 1,
59
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
60
- },
61
- {
62
- "file": "tools/bug_reporter.py",
63
- "role": "TEST_SCRIPT",
64
- "type": "FAKE_PASS_NO_ASSERTION",
65
- "severity": "WARNING",
66
- "line": 1,
67
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
68
- },
69
- {
70
- "file": "tools/cache_resolver.py",
71
- "role": "TEST_SCRIPT",
72
- "type": "SWALLOWED_EXCEPTION",
73
- "severity": "CRITICAL",
74
- "line": 228,
75
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
76
- },
77
- {
78
- "file": "tools/cache_resolver.py",
79
- "role": "TEST_SCRIPT",
80
- "type": "SWALLOWED_EXCEPTION",
81
- "severity": "CRITICAL",
82
- "line": 255,
83
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
84
- },
85
5
  {
86
6
  "file": "tools/cache_resolver.py",
87
- "role": "TEST_SCRIPT",
88
- "type": "SWALLOWED_EXCEPTION",
89
- "severity": "CRITICAL",
90
- "line": 315,
91
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
92
- },
93
- {
94
- "file": "tools/cache_resolver.py",
95
- "role": "TEST_SCRIPT",
7
+ "role": "HELPER",
96
8
  "type": "HARD_DELAY_ANTI_PATTERN",
97
9
  "severity": "WARNING",
98
- "line": 197,
10
+ "line": 257,
99
11
  "message": "Static sleep with variable/expression 'delay' found ('time.sleep(delay)'). Replace with dynamic Smart Wait."
100
12
  },
101
- {
102
- "file": "tools/cache_resolver.py",
103
- "role": "TEST_SCRIPT",
104
- "type": "FAKE_PASS_NO_ASSERTION",
105
- "severity": "WARNING",
106
- "line": 1,
107
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
108
- },
109
- {
110
- "file": "tools/check_env.py",
111
- "role": "TEST_SCRIPT",
112
- "type": "SWALLOWED_EXCEPTION",
113
- "severity": "CRITICAL",
114
- "line": 251,
115
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
116
- },
117
- {
118
- "file": "tools/ci_healing_hook.py",
119
- "role": "TEST_SCRIPT",
120
- "type": "FAKE_PASS_NO_ASSERTION",
121
- "severity": "WARNING",
122
- "line": 1,
123
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
124
- },
125
- {
126
- "file": "tools/cli.py",
127
- "role": "TEST_SCRIPT",
128
- "type": "SWALLOWED_EXCEPTION",
129
- "severity": "CRITICAL",
130
- "line": 40,
131
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
132
- },
133
- {
134
- "file": "tools/cli.py",
135
- "role": "TEST_SCRIPT",
136
- "type": "SWALLOWED_EXCEPTION",
137
- "severity": "CRITICAL",
138
- "line": 49,
139
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
140
- },
141
- {
142
- "file": "tools/cli.py",
143
- "role": "TEST_SCRIPT",
144
- "type": "SWALLOWED_EXCEPTION",
145
- "severity": "CRITICAL",
146
- "line": 116,
147
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
148
- },
149
- {
150
- "file": "tools/cli.py",
151
- "role": "TEST_SCRIPT",
152
- "type": "SWALLOWED_EXCEPTION",
153
- "severity": "CRITICAL",
154
- "line": 439,
155
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
156
- },
157
- {
158
- "file": "tools/cli.py",
159
- "role": "TEST_SCRIPT",
160
- "type": "SWALLOWED_EXCEPTION",
161
- "severity": "CRITICAL",
162
- "line": 751,
163
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
164
- },
165
- {
166
- "file": "tools/config_decoupler.py",
167
- "role": "TEST_SCRIPT",
168
- "type": "FAKE_PASS_NO_ASSERTION",
169
- "severity": "WARNING",
170
- "line": 1,
171
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
172
- },
173
- {
174
- "file": "tools/count_tokens.py",
175
- "role": "TEST_SCRIPT",
176
- "type": "SWALLOWED_EXCEPTION",
177
- "severity": "CRITICAL",
178
- "line": 141,
179
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
180
- },
181
- {
182
- "file": "tools/count_tokens.py",
183
- "role": "TEST_SCRIPT",
184
- "type": "SWALLOWED_EXCEPTION",
185
- "severity": "CRITICAL",
186
- "line": 209,
187
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
188
- },
189
- {
190
- "file": "tools/count_tokens.py",
191
- "role": "TEST_SCRIPT",
192
- "type": "SWALLOWED_EXCEPTION",
193
- "severity": "CRITICAL",
194
- "line": 389,
195
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
196
- },
197
- {
198
- "file": "tools/count_tokens.py",
199
- "role": "TEST_SCRIPT",
200
- "type": "SWALLOWED_EXCEPTION",
201
- "severity": "CRITICAL",
202
- "line": 666,
203
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
204
- },
205
- {
206
- "file": "tools/count_tokens.py",
207
- "role": "TEST_SCRIPT",
208
- "type": "FAKE_PASS_NO_ASSERTION",
209
- "severity": "WARNING",
210
- "line": 1,
211
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
212
- },
213
- {
214
- "file": "tools/dashboard_generator.py",
215
- "role": "TEST_SCRIPT",
216
- "type": "SWALLOWED_EXCEPTION",
217
- "severity": "CRITICAL",
218
- "line": 185,
219
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
220
- },
221
- {
222
- "file": "tools/dashboard_generator.py",
223
- "role": "TEST_SCRIPT",
224
- "type": "SWALLOWED_EXCEPTION",
225
- "severity": "CRITICAL",
226
- "line": 211,
227
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
228
- },
229
- {
230
- "file": "tools/dashboard_generator.py",
231
- "role": "TEST_SCRIPT",
232
- "type": "SWALLOWED_EXCEPTION",
233
- "severity": "CRITICAL",
234
- "line": 244,
235
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
236
- },
237
- {
238
- "file": "tools/dashboard_generator.py",
239
- "role": "TEST_SCRIPT",
240
- "type": "SWALLOWED_EXCEPTION",
241
- "severity": "CRITICAL",
242
- "line": 310,
243
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
244
- },
245
- {
246
- "file": "tools/dashboard_generator.py",
247
- "role": "TEST_SCRIPT",
248
- "type": "SWALLOWED_EXCEPTION",
249
- "severity": "CRITICAL",
250
- "line": 343,
251
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
252
- },
253
- {
254
- "file": "tools/dashboard_generator.py",
255
- "role": "TEST_SCRIPT",
256
- "type": "SWALLOWED_EXCEPTION",
257
- "severity": "CRITICAL",
258
- "line": 403,
259
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
260
- },
261
- {
262
- "file": "tools/dashboard_generator.py",
263
- "role": "TEST_SCRIPT",
264
- "type": "SWALLOWED_EXCEPTION",
265
- "severity": "CRITICAL",
266
- "line": 453,
267
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
268
- },
269
- {
270
- "file": "tools/dashboard_generator.py",
271
- "role": "TEST_SCRIPT",
272
- "type": "SWALLOWED_EXCEPTION",
273
- "severity": "CRITICAL",
274
- "line": 490,
275
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
276
- },
277
- {
278
- "file": "tools/dashboard_generator.py",
279
- "role": "TEST_SCRIPT",
280
- "type": "FAKE_PASS_NO_ASSERTION",
281
- "severity": "WARNING",
282
- "line": 1,
283
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
284
- },
285
13
  {
286
14
  "file": "tools/db_sandbox.py",
287
- "role": "TEST_SCRIPT",
288
- "type": "SWALLOWED_EXCEPTION",
289
- "severity": "CRITICAL",
290
- "line": 146,
291
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
292
- },
293
- {
294
- "file": "tools/db_sandbox.py",
295
- "role": "TEST_SCRIPT",
296
- "type": "SWALLOWED_EXCEPTION",
297
- "severity": "CRITICAL",
298
- "line": 215,
299
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
300
- },
301
- {
302
- "file": "tools/db_sandbox.py",
303
- "role": "TEST_SCRIPT",
15
+ "role": "HELPER",
304
16
  "type": "HARD_DELAY_ANTI_PATTERN",
305
17
  "severity": "WARNING",
306
18
  "line": 397,
307
19
  "message": "Static sleep with variable/expression 'backoff' found ('time.sleep(backoff)'). Replace with dynamic Smart Wait."
308
20
  },
309
- {
310
- "file": "tools/db_sandbox.py",
311
- "role": "TEST_SCRIPT",
312
- "type": "FAKE_PASS_NO_ASSERTION",
313
- "severity": "WARNING",
314
- "line": 1,
315
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
316
- },
317
- {
318
- "file": "tools/distill_log.py",
319
- "role": "TEST_SCRIPT",
320
- "type": "SWALLOWED_EXCEPTION",
321
- "severity": "CRITICAL",
322
- "line": 152,
323
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
324
- },
325
- {
326
- "file": "tools/distill_log.py",
327
- "role": "TEST_SCRIPT",
328
- "type": "FAKE_PASS_NO_ASSERTION",
329
- "severity": "WARNING",
330
- "line": 1,
331
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
332
- },
333
- {
334
- "file": "tools/e2e_flow_prober.py",
335
- "role": "TEST_SCRIPT",
336
- "type": "FAKE_PASS_NO_ASSERTION",
337
- "severity": "WARNING",
338
- "line": 1,
339
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
340
- },
341
- {
342
- "file": "tools/export_postman_collection.py",
343
- "role": "TEST_SCRIPT",
344
- "type": "FAKE_PASS_NO_ASSERTION",
345
- "severity": "WARNING",
346
- "line": 1,
347
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
348
- },
349
- {
350
- "file": "tools/flaky_detector.py",
351
- "role": "TEST_SCRIPT",
352
- "type": "SWALLOWED_EXCEPTION",
353
- "severity": "CRITICAL",
354
- "line": 190,
355
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
356
- },
357
- {
358
- "file": "tools/flaky_detector.py",
359
- "role": "TEST_SCRIPT",
360
- "type": "SWALLOWED_EXCEPTION",
361
- "severity": "CRITICAL",
362
- "line": 365,
363
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
364
- },
365
- {
366
- "file": "tools/flaky_detector.py",
367
- "role": "TEST_SCRIPT",
368
- "type": "FAKE_PASS_NO_ASSERTION",
369
- "severity": "WARNING",
370
- "line": 1,
371
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
372
- },
373
- {
374
- "file": "tools/fuzz_payloads.py",
375
- "role": "TEST_SCRIPT",
376
- "type": "FAKE_PASS_NO_ASSERTION",
377
- "severity": "WARNING",
378
- "line": 1,
379
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
380
- },
381
- {
382
- "file": "tools/generate_allure_report.py",
383
- "role": "TEST_SCRIPT",
384
- "type": "FAKE_PASS_NO_ASSERTION",
385
- "severity": "WARNING",
386
- "line": 1,
387
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
388
- },
389
- {
390
- "file": "tools/generate_api_matrix.py",
391
- "role": "TEST_SCRIPT",
392
- "type": "FAKE_PASS_NO_ASSERTION",
393
- "severity": "WARNING",
394
- "line": 1,
395
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
396
- },
397
- {
398
- "file": "tools/generate_jmx_plan.py",
399
- "role": "TEST_SCRIPT",
400
- "type": "FAKE_PASS_NO_ASSERTION",
401
- "severity": "WARNING",
402
- "line": 1,
403
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
404
- },
405
- {
406
- "file": "tools/generate_tc_from_story.py",
407
- "role": "TEST_SCRIPT",
408
- "type": "SWALLOWED_EXCEPTION",
409
- "severity": "CRITICAL",
410
- "line": 46,
411
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
412
- },
413
- {
414
- "file": "tools/generate_tc_from_story.py",
415
- "role": "TEST_SCRIPT",
416
- "type": "FAKE_PASS_NO_ASSERTION",
417
- "severity": "WARNING",
418
- "line": 1,
419
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
420
- },
421
- {
422
- "file": "tools/generate_test_reports.py",
423
- "role": "TEST_SCRIPT",
424
- "type": "SWALLOWED_EXCEPTION",
425
- "severity": "CRITICAL",
426
- "line": 30,
427
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
428
- },
429
- {
430
- "file": "tools/generate_test_reports.py",
431
- "role": "TEST_SCRIPT",
432
- "type": "SWALLOWED_EXCEPTION",
433
- "severity": "CRITICAL",
434
- "line": 99,
435
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
436
- },
437
- {
438
- "file": "tools/generate_test_reports.py",
439
- "role": "TEST_SCRIPT",
440
- "type": "FAKE_PASS_NO_ASSERTION",
441
- "severity": "WARNING",
442
- "line": 1,
443
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
444
- },
445
- {
446
- "file": "tools/git_pre_commit_guard.py",
447
- "role": "TEST_SCRIPT",
448
- "type": "SWALLOWED_EXCEPTION",
449
- "severity": "CRITICAL",
450
- "line": 44,
451
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
452
- },
453
- {
454
- "file": "tools/git_pre_commit_guard.py",
455
- "role": "TEST_SCRIPT",
456
- "type": "SWALLOWED_EXCEPTION",
457
- "severity": "CRITICAL",
458
- "line": 65,
459
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
460
- },
461
- {
462
- "file": "tools/git_pre_commit_guard.py",
463
- "role": "TEST_SCRIPT",
464
- "type": "SWALLOWED_EXCEPTION",
465
- "severity": "CRITICAL",
466
- "line": 86,
467
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
468
- },
469
- {
470
- "file": "tools/git_pre_commit_guard.py",
471
- "role": "TEST_SCRIPT",
472
- "type": "FAKE_PASS_NO_ASSERTION",
473
- "severity": "WARNING",
474
- "line": 1,
475
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
476
- },
477
- {
478
- "file": "tools/heuristic_locator_matcher.py",
479
- "role": "TEST_SCRIPT",
480
- "type": "FAKE_PASS_NO_ASSERTION",
481
- "severity": "WARNING",
482
- "line": 1,
483
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
484
- },
485
- {
486
- "file": "tools/infer_linter.py",
487
- "role": "TEST_SCRIPT",
488
- "type": "SWALLOWED_EXCEPTION",
489
- "severity": "CRITICAL",
490
- "line": 187,
491
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
492
- },
493
- {
494
- "file": "tools/infer_linter.py",
495
- "role": "TEST_SCRIPT",
496
- "type": "SWALLOWED_EXCEPTION",
497
- "severity": "CRITICAL",
498
- "line": 200,
499
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
500
- },
501
- {
502
- "file": "tools/infer_linter.py",
503
- "role": "TEST_SCRIPT",
504
- "type": "SWALLOWED_EXCEPTION",
505
- "severity": "CRITICAL",
506
- "line": 771,
507
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
508
- },
509
- {
510
- "file": "tools/jtl_analyzer.py",
511
- "role": "TEST_SCRIPT",
512
- "type": "FAKE_PASS_NO_ASSERTION",
513
- "severity": "WARNING",
514
- "line": 1,
515
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
516
- },
517
- {
518
- "file": "tools/lint_ai_docs.py",
519
- "role": "TEST_SCRIPT",
520
- "type": "SWALLOWED_EXCEPTION",
521
- "severity": "CRITICAL",
522
- "line": 58,
523
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
524
- },
525
- {
526
- "file": "tools/lint_ai_docs.py",
527
- "role": "TEST_SCRIPT",
528
- "type": "FAKE_PASS_NO_ASSERTION",
529
- "severity": "WARNING",
530
- "line": 1,
531
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
532
- },
533
- {
534
- "file": "tools/lookup_tc.py",
535
- "role": "TEST_SCRIPT",
536
- "type": "FAKE_PASS_NO_ASSERTION",
537
- "severity": "WARNING",
538
- "line": 1,
539
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
540
- },
541
- {
542
- "file": "tools/lookup_xpath.py",
543
- "role": "TEST_SCRIPT",
544
- "type": "FAKE_PASS_NO_ASSERTION",
545
- "severity": "WARNING",
546
- "line": 1,
547
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
548
- },
549
- {
550
- "file": "tools/matrix_sharder.py",
551
- "role": "TEST_SCRIPT",
552
- "type": "SWALLOWED_EXCEPTION",
553
- "severity": "CRITICAL",
554
- "line": 62,
555
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
556
- },
557
- {
558
- "file": "tools/matrix_sharder.py",
559
- "role": "TEST_SCRIPT",
560
- "type": "SWALLOWED_EXCEPTION",
561
- "severity": "CRITICAL",
562
- "line": 71,
563
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
564
- },
565
- {
566
- "file": "tools/matrix_sharder.py",
567
- "role": "TEST_SCRIPT",
568
- "type": "FAKE_PASS_NO_ASSERTION",
569
- "severity": "WARNING",
570
- "line": 1,
571
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
572
- },
573
- {
574
- "file": "tools/mcp_excel_server.py",
575
- "role": "TEST_SCRIPT",
576
- "type": "FAKE_PASS_NO_ASSERTION",
577
- "severity": "WARNING",
578
- "line": 1,
579
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
580
- },
581
- {
582
- "file": "tools/mcp_server.py",
583
- "role": "TEST_SCRIPT",
584
- "type": "SWALLOWED_EXCEPTION",
585
- "severity": "CRITICAL",
586
- "line": 326,
587
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
588
- },
589
- {
590
- "file": "tools/md_to_xlsx.py",
591
- "role": "TEST_SCRIPT",
592
- "type": "FAKE_PASS_NO_ASSERTION",
593
- "severity": "WARNING",
594
- "line": 1,
595
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
596
- },
597
- {
598
- "file": "tools/micro_mutator.py",
599
- "role": "TEST_SCRIPT",
600
- "type": "SWALLOWED_EXCEPTION",
601
- "severity": "CRITICAL",
602
- "line": 437,
603
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
604
- },
605
- {
606
- "file": "tools/micro_mutator.py",
607
- "role": "TEST_SCRIPT",
608
- "type": "SWALLOWED_EXCEPTION",
609
- "severity": "CRITICAL",
610
- "line": 463,
611
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
612
- },
613
- {
614
- "file": "tools/micro_mutator.py",
615
- "role": "TEST_SCRIPT",
616
- "type": "SWALLOWED_EXCEPTION",
617
- "severity": "CRITICAL",
618
- "line": 508,
619
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
620
- },
621
- {
622
- "file": "tools/network_mock_shield.py",
623
- "role": "TEST_SCRIPT",
624
- "type": "FAKE_PASS_NO_ASSERTION",
625
- "severity": "WARNING",
626
- "line": 1,
627
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
628
- },
629
- {
630
- "file": "tools/omni_emitter.py",
631
- "role": "TEST_SCRIPT",
632
- "type": "FAKE_PASS_NO_ASSERTION",
633
- "severity": "WARNING",
634
- "line": 1,
635
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
636
- },
637
- {
638
- "file": "tools/omni_transpiler.py",
639
- "role": "TEST_SCRIPT",
640
- "type": "SWALLOWED_EXCEPTION",
641
- "severity": "CRITICAL",
642
- "line": 114,
643
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
644
- },
645
- {
646
- "file": "tools/omni_transpiler.py",
647
- "role": "TEST_SCRIPT",
648
- "type": "FAKE_PASS_NO_ASSERTION",
649
- "severity": "WARNING",
650
- "line": 1,
651
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
652
- },
653
- {
654
- "file": "tools/output_formatter.py",
655
- "role": "TEST_SCRIPT",
656
- "type": "FAKE_PASS_NO_ASSERTION",
657
- "severity": "WARNING",
658
- "line": 1,
659
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
660
- },
661
- {
662
- "file": "tools/pinpoint_failure.py",
663
- "role": "TEST_SCRIPT",
664
- "type": "FAKE_PASS_NO_ASSERTION",
665
- "severity": "WARNING",
666
- "line": 1,
667
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
668
- },
669
- {
670
- "file": "tools/project_state.py",
671
- "role": "TEST_SCRIPT",
672
- "type": "FAKE_PASS_NO_ASSERTION",
673
- "severity": "WARNING",
674
- "line": 1,
675
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
676
- },
677
- {
678
- "file": "tools/repo_map.py",
679
- "role": "TEST_SCRIPT",
680
- "type": "SWALLOWED_EXCEPTION",
681
- "severity": "CRITICAL",
682
- "line": 267,
683
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
684
- },
685
- {
686
- "file": "tools/repo_map.py",
687
- "role": "TEST_SCRIPT",
688
- "type": "FAKE_PASS_NO_ASSERTION",
689
- "severity": "WARNING",
690
- "line": 1,
691
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
692
- },
693
- {
694
- "file": "tools/safety_firewall.py",
695
- "role": "TEST_SCRIPT",
696
- "type": "SWALLOWED_EXCEPTION",
697
- "severity": "CRITICAL",
698
- "line": 277,
699
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
700
- },
701
- {
702
- "file": "tools/safety_firewall.py",
703
- "role": "TEST_SCRIPT",
704
- "type": "FAKE_PASS_NO_ASSERTION",
705
- "severity": "WARNING",
706
- "line": 1,
707
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
708
- },
709
- {
710
- "file": "tools/setup_project.py",
711
- "role": "TEST_SCRIPT",
712
- "type": "SWALLOWED_EXCEPTION",
713
- "severity": "CRITICAL",
714
- "line": 221,
715
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
716
- },
717
- {
718
- "file": "tools/setup_project.py",
719
- "role": "TEST_SCRIPT",
720
- "type": "SWALLOWED_EXCEPTION",
721
- "severity": "CRITICAL",
722
- "line": 314,
723
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
724
- },
725
- {
726
- "file": "tools/setup_project.py",
727
- "role": "TEST_SCRIPT",
728
- "type": "SWALLOWED_EXCEPTION",
729
- "severity": "CRITICAL",
730
- "line": 406,
731
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
732
- },
733
- {
734
- "file": "tools/setup_project.py",
735
- "role": "TEST_SCRIPT",
736
- "type": "SWALLOWED_EXCEPTION",
737
- "severity": "CRITICAL",
738
- "line": 414,
739
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
740
- },
741
- {
742
- "file": "tools/setup_project.py",
743
- "role": "TEST_SCRIPT",
744
- "type": "SWALLOWED_EXCEPTION",
745
- "severity": "CRITICAL",
746
- "line": 673,
747
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
748
- },
749
- {
750
- "file": "tools/skillspector.py",
751
- "role": "TEST_SCRIPT",
752
- "type": "SWALLOWED_EXCEPTION",
753
- "severity": "CRITICAL",
754
- "line": 923,
755
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
756
- },
757
- {
758
- "file": "tools/smart_visual_masker.py",
759
- "role": "TEST_SCRIPT",
760
- "type": "FAKE_PASS_NO_ASSERTION",
761
- "severity": "WARNING",
762
- "line": 1,
763
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
764
- },
765
- {
766
- "file": "tools/sync_agent_rules.py",
767
- "role": "TEST_SCRIPT",
768
- "type": "FAKE_PASS_NO_ASSERTION",
769
- "severity": "WARNING",
770
- "line": 1,
771
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
772
- },
773
- {
774
- "file": "tools/telemetry_correlator.py",
775
- "role": "TEST_SCRIPT",
776
- "type": "FAKE_PASS_NO_ASSERTION",
777
- "severity": "WARNING",
778
- "line": 1,
779
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
780
- },
781
- {
782
- "file": "tools/test_impact.py",
783
- "role": "TEST_SCRIPT",
784
- "type": "SWALLOWED_EXCEPTION",
785
- "severity": "CRITICAL",
786
- "line": 90,
787
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
788
- },
789
- {
790
- "file": "tools/test_impact.py",
791
- "role": "TEST_SCRIPT",
792
- "type": "SWALLOWED_EXCEPTION",
793
- "severity": "CRITICAL",
794
- "line": 120,
795
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
796
- },
797
- {
798
- "file": "tools/test_impact.py",
799
- "role": "TEST_SCRIPT",
800
- "type": "FAKE_PASS_NO_ASSERTION",
801
- "severity": "WARNING",
802
- "line": 1,
803
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
804
- },
805
- {
806
- "file": "tools/tms_sync_bridge.py",
807
- "role": "TEST_SCRIPT",
808
- "type": "FAKE_PASS_NO_ASSERTION",
809
- "severity": "WARNING",
810
- "line": 1,
811
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
812
- },
813
- {
814
- "file": "tools/trace_data_flow.py",
815
- "role": "TEST_SCRIPT",
816
- "type": "FAKE_PASS_NO_ASSERTION",
817
- "severity": "WARNING",
818
- "line": 1,
819
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
820
- },
821
- {
822
- "file": "tools/traffic_session_converter.py",
823
- "role": "TEST_SCRIPT",
824
- "type": "FAKE_PASS_NO_ASSERTION",
825
- "severity": "WARNING",
826
- "line": 1,
827
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
828
- },
829
- {
830
- "file": "tools/update_sentinel.py",
831
- "role": "TEST_SCRIPT",
832
- "type": "SWALLOWED_EXCEPTION",
833
- "severity": "CRITICAL",
834
- "line": 69,
835
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
836
- },
837
- {
838
- "file": "tools/update_sentinel.py",
839
- "role": "TEST_SCRIPT",
840
- "type": "SWALLOWED_EXCEPTION",
841
- "severity": "CRITICAL",
842
- "line": 78,
843
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
844
- },
845
- {
846
- "file": "tools/update_sentinel.py",
847
- "role": "TEST_SCRIPT",
848
- "type": "SWALLOWED_EXCEPTION",
849
- "severity": "CRITICAL",
850
- "line": 95,
851
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
852
- },
853
- {
854
- "file": "tools/update_sentinel.py",
855
- "role": "TEST_SCRIPT",
856
- "type": "SWALLOWED_EXCEPTION",
857
- "severity": "CRITICAL",
858
- "line": 106,
859
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
860
- },
861
- {
862
- "file": "tools/update_sentinel.py",
863
- "role": "TEST_SCRIPT",
864
- "type": "SWALLOWED_EXCEPTION",
865
- "severity": "CRITICAL",
866
- "line": 117,
867
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
868
- },
869
- {
870
- "file": "tools/update_sentinel.py",
871
- "role": "TEST_SCRIPT",
872
- "type": "SWALLOWED_EXCEPTION",
873
- "severity": "CRITICAL",
874
- "line": 127,
875
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
876
- },
877
- {
878
- "file": "tools/update_sentinel.py",
879
- "role": "TEST_SCRIPT",
880
- "type": "SWALLOWED_EXCEPTION",
881
- "severity": "CRITICAL",
882
- "line": 203,
883
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
884
- },
885
- {
886
- "file": "tools/update_sentinel.py",
887
- "role": "TEST_SCRIPT",
888
- "type": "SWALLOWED_EXCEPTION",
889
- "severity": "CRITICAL",
890
- "line": 291,
891
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
892
- },
893
- {
894
- "file": "tools/update_sentinel.py",
895
- "role": "TEST_SCRIPT",
896
- "type": "SWALLOWED_EXCEPTION",
897
- "severity": "CRITICAL",
898
- "line": 310,
899
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
900
- },
901
- {
902
- "file": "tools/update_sentinel.py",
903
- "role": "TEST_SCRIPT",
904
- "type": "SWALLOWED_EXCEPTION",
905
- "severity": "CRITICAL",
906
- "line": 321,
907
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
908
- },
909
- {
910
- "file": "tools/update_sentinel.py",
911
- "role": "TEST_SCRIPT",
912
- "type": "SWALLOWED_EXCEPTION",
913
- "severity": "CRITICAL",
914
- "line": 332,
915
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
916
- },
917
- {
918
- "file": "tools/validate_groovy_scripts.py",
919
- "role": "TEST_SCRIPT",
920
- "type": "FAKE_PASS_NO_ASSERTION",
921
- "severity": "WARNING",
922
- "line": 1,
923
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
924
- },
925
- {
926
- "file": "tools/verify_all.py",
927
- "role": "TEST_SCRIPT",
928
- "type": "SWALLOWED_EXCEPTION",
929
- "severity": "CRITICAL",
930
- "line": 220,
931
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
932
- },
933
- {
934
- "file": "tools/verify_all.py",
935
- "role": "TEST_SCRIPT",
936
- "type": "SWALLOWED_EXCEPTION",
937
- "severity": "CRITICAL",
938
- "line": 275,
939
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
940
- },
941
- {
942
- "file": "tools/verify_all.py",
943
- "role": "TEST_SCRIPT",
944
- "type": "SWALLOWED_EXCEPTION",
945
- "severity": "CRITICAL",
946
- "line": 335,
947
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
948
- },
949
- {
950
- "file": "tools/verify_all.py",
951
- "role": "TEST_SCRIPT",
952
- "type": "SWALLOWED_EXCEPTION",
953
- "severity": "CRITICAL",
954
- "line": 463,
955
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
956
- },
957
- {
958
- "file": "tools/verify_all.py",
959
- "role": "TEST_SCRIPT",
960
- "type": "SWALLOWED_EXCEPTION",
961
- "severity": "CRITICAL",
962
- "line": 689,
963
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
964
- },
965
- {
966
- "file": "tools/verify_all.py",
967
- "role": "TEST_SCRIPT",
968
- "type": "SWALLOWED_EXCEPTION",
969
- "severity": "CRITICAL",
970
- "line": 794,
971
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
972
- },
973
- {
974
- "file": "tools/verify_all.py",
975
- "role": "TEST_SCRIPT",
976
- "type": "SWALLOWED_EXCEPTION",
977
- "severity": "CRITICAL",
978
- "line": 802,
979
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
980
- },
981
- {
982
- "file": "tools/visual_diff_canvas.py",
983
- "role": "TEST_SCRIPT",
984
- "type": "FAKE_PASS_NO_ASSERTION",
985
- "severity": "WARNING",
986
- "line": 1,
987
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
988
- },
989
- {
990
- "file": "tools/visual_som_helper.py",
991
- "role": "HELPER",
992
- "type": "SWALLOWED_EXCEPTION",
993
- "severity": "CRITICAL",
994
- "line": 132,
995
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
996
- },
997
- {
998
- "file": "tools/visual_som_helper.py",
999
- "role": "HELPER",
1000
- "type": "SWALLOWED_EXCEPTION",
1001
- "severity": "CRITICAL",
1002
- "line": 193,
1003
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1004
- },
1005
- {
1006
- "file": "tools/visual_som_helper.py",
1007
- "role": "HELPER",
1008
- "type": "SWALLOWED_EXCEPTION",
1009
- "severity": "CRITICAL",
1010
- "line": 228,
1011
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1012
- },
1013
- {
1014
- "file": "tools/visual_som_helper.py",
1015
- "role": "HELPER",
1016
- "type": "SWALLOWED_EXCEPTION",
1017
- "severity": "CRITICAL",
1018
- "line": 487,
1019
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1020
- },
1021
21
  {
1022
22
  "file": "tools/watch_mode.py",
1023
- "role": "TEST_SCRIPT",
1024
- "type": "SWALLOWED_EXCEPTION",
1025
- "severity": "CRITICAL",
1026
- "line": 98,
1027
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1028
- },
1029
- {
1030
- "file": "tools/watch_mode.py",
1031
- "role": "TEST_SCRIPT",
1032
- "type": "SWALLOWED_EXCEPTION",
1033
- "severity": "CRITICAL",
1034
- "line": 198,
1035
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1036
- },
1037
- {
1038
- "file": "tools/watch_mode.py",
1039
- "role": "TEST_SCRIPT",
23
+ "role": "HELPER",
1040
24
  "type": "HARD_DELAY_ANTI_PATTERN",
1041
25
  "severity": "WARNING",
1042
- "line": 228,
26
+ "line": 263,
1043
27
  "message": "Static sleep with variable/expression 'debounce' found ('time.sleep(debounce)'). Replace with dynamic Smart Wait."
1044
- },
1045
- {
1046
- "file": "tools/watch_mode.py",
1047
- "role": "TEST_SCRIPT",
1048
- "type": "FAKE_PASS_NO_ASSERTION",
1049
- "severity": "WARNING",
1050
- "line": 1,
1051
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
1052
- },
1053
- {
1054
- "file": "tools/wcag_audit.py",
1055
- "role": "TEST_SCRIPT",
1056
- "type": "FAKE_PASS_NO_ASSERTION",
1057
- "severity": "WARNING",
1058
- "line": 1,
1059
- "message": "Test script performs AUT mutations/interactions but contains zero verification/assertion statements."
1060
- },
1061
- {
1062
- "file": "tools/welcome_page.py",
1063
- "role": "PAGE_OBJECT",
1064
- "type": "SWALLOWED_EXCEPTION",
1065
- "severity": "CRITICAL",
1066
- "line": 62,
1067
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1068
- },
1069
- {
1070
- "file": "tools/welcome_page.py",
1071
- "role": "PAGE_OBJECT",
1072
- "type": "SWALLOWED_EXCEPTION",
1073
- "severity": "CRITICAL",
1074
- "line": 110,
1075
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1076
- },
1077
- {
1078
- "file": "tools/welcome_page.py",
1079
- "role": "PAGE_OBJECT",
1080
- "type": "SWALLOWED_EXCEPTION",
1081
- "severity": "CRITICAL",
1082
- "line": 177,
1083
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1084
- },
1085
- {
1086
- "file": "tools/welcome_page.py",
1087
- "role": "PAGE_OBJECT",
1088
- "type": "SWALLOWED_EXCEPTION",
1089
- "severity": "CRITICAL",
1090
- "line": 195,
1091
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1092
- },
1093
- {
1094
- "file": "tools/welcome_page.py",
1095
- "role": "PAGE_OBJECT",
1096
- "type": "SWALLOWED_EXCEPTION",
1097
- "severity": "CRITICAL",
1098
- "line": 213,
1099
- "message": "Empty catch block detected. Swallowed exceptions cause false-pass test runs."
1100
28
  }
1101
29
  ]
1102
30
  }