synapse-hub 2.2.3 → 2.4.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 (317) hide show
  1. package/.agents/agents/failure-analyst.md +11 -0
  2. package/.agents/agents/live-explorer.md +28 -0
  3. package/.agents/agents/orchestrator.md +20 -4
  4. package/.agents/agents/pom-crafter.md +12 -0
  5. package/.agents/agents/quality-gatekeeper.md +19 -4
  6. package/.agents/agents/test-runner.md +11 -0
  7. package/.agents/rules/communication-style.md +40 -0
  8. package/.agents/rules/context-engineering.md +23 -0
  9. package/.agents/rules/git-push-protocol.md +11 -17
  10. package/.agents/rules/graphify.md +14 -14
  11. package/.agents/rules/lessons-learned.md +3 -3
  12. package/.agents/rules/mandatory-playwright-live.md +29 -29
  13. package/.agents/rules/mobile_appium_rules.md +132 -0
  14. package/.agents/rules/performance_testing_rules.md +74 -0
  15. package/.agents/rules/skill-precedence.md +1 -1
  16. package/.agents/rules/systematic-debugging.md +6 -6
  17. package/.agents/skills/agent-orchestration-multi-agent-optimize/SKILL.md +64 -215
  18. package/.agents/skills/agent-orchestration-multi-agent-optimize/examples/swarm_workload_config.json +12 -0
  19. package/.agents/skills/antigravity-test-sentinel/SKILL.md +3 -3
  20. package/.agents/skills/antigravity-test-sentinel/examples/dod_gate_policy.json +11 -0
  21. package/.agents/skills/api-network-mocking-interception/SKILL.md +1 -1
  22. package/.agents/skills/api-network-mocking-interception/examples/network_route_stub.json +9 -0
  23. package/.agents/skills/api-spec-to-e2e-matrix/SKILL.md +9 -9
  24. package/.agents/skills/api-spec-to-e2e-matrix/examples/sample_openapi.json +19 -0
  25. package/.agents/skills/architecture-decision-records/SKILL.md +35 -412
  26. package/.agents/skills/architecture-decision-records/examples/0001-record-architecture-decisions.md +12 -0
  27. package/.agents/skills/auth-session-and-cookie-manager/SKILL.md +4 -1
  28. package/.agents/skills/auth-session-and-cookie-manager/examples/storage_state_sample.json +11 -0
  29. package/.agents/skills/backend-load-and-stress-patterns/SKILL.md +80 -186
  30. package/.agents/skills/backend-load-and-stress-patterns/examples/k6_load_test_sample.js +13 -0
  31. package/.agents/skills/bats-testing-patterns/SKILL.md +1 -1
  32. package/.agents/skills/bats-testing-patterns/examples/cli_runner_test.bats +6 -0
  33. package/.agents/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -614
  34. package/.agents/skills/clean-pom-crafter/SKILL.md +21 -3
  35. package/.agents/skills/clean-pom-crafter/examples/standard_test_case.groovy +28 -28
  36. package/.agents/skills/clean-pom-crafter/references/pom_patterns.groovy +138 -138
  37. package/.agents/skills/code-refactoring-refactor-clean/SKILL.md +2 -2
  38. package/.agents/skills/code-refactoring-refactor-clean/examples/refactored_page_sample.groovy +9 -0
  39. package/.agents/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +9 -7
  40. package/.agents/skills/db-state-verifier-and-seeder/SKILL.md +5 -5
  41. package/.agents/skills/db-state-verifier-and-seeder/examples/db_fixture_seed.json +12 -0
  42. package/.agents/skills/e2e-testing-patterns/SKILL.md +1 -1
  43. package/.agents/skills/e2e-testing-patterns/examples/playwright_sharded_config.ts +12 -0
  44. package/.agents/skills/e2e-testing-patterns/resources/implementation-playbook.md +522 -522
  45. package/.agents/skills/failure-autopsy-and-healing/SKILL.md +17 -3
  46. package/.agents/skills/failure-autopsy-and-healing/examples/sample_junit_failure.xml +8 -0
  47. package/.agents/skills/failure-autopsy-and-healing/references/healing_matrix.md +64 -64
  48. package/.agents/skills/failure-autopsy-and-healing/references/qa_investigation_protocol.md +56 -56
  49. package/.agents/skills/failure-autopsy-and-healing/scripts/triage_failures.sh +98 -98
  50. package/.agents/skills/file-and-report-validator/SKILL.md +1 -1
  51. package/.agents/skills/file-and-report-validator/examples/sample_export_schema.json +14 -0
  52. package/.agents/skills/flaky-test-sentinel-and-quarantine/SKILL.md +3 -3
  53. package/.agents/skills/flaky-test-sentinel-and-quarantine/examples/quarantine_registry.json +11 -0
  54. package/.agents/skills/gherkin-to-suite/SKILL.md +103 -0
  55. package/.agents/skills/gherkin-to-suite/examples/checkout.feature +39 -0
  56. package/.agents/skills/gherkin-to-suite/examples/suite_report_sample.json +334 -0
  57. package/.agents/skills/github-actions-templates/SKILL.md +47 -304
  58. package/.agents/skills/github-actions-templates/examples/matrix_test_pipeline.yml +8 -0
  59. package/.agents/skills/graphify-impact-analyzer/SKILL.md +6 -6
  60. package/.agents/skills/graphify-impact-analyzer/examples/dependency_blast_radius.json +8 -0
  61. package/.agents/skills/katalon-cli-runner/SKILL.md +2 -2
  62. package/.agents/skills/katalon-cli-runner/examples/headless_kre_exec.sh +3 -0
  63. package/.agents/skills/katalon-cli-runner/references/groovy-patterns.md +209 -209
  64. package/.agents/skills/katalon-cli-runner/references/katalon-api.md +155 -155
  65. package/.agents/skills/katalon-cli-runner/references/runner_commands.md +67 -67
  66. package/.agents/skills/lam-script-generator/SKILL.md +42 -1
  67. package/.agents/skills/lam-script-generator/examples/user_story_sample.md +8 -0
  68. package/.agents/skills/lean-code-ladder/SKILL.md +83 -0
  69. package/.agents/skills/lean-code-ladder/examples/ladder_walkthrough.md +37 -0
  70. package/.agents/skills/meta-prompt-crafter/SKILL.md +107 -0
  71. package/.agents/skills/meta-prompt-crafter/examples/qa_prompt_template.md +35 -0
  72. package/.agents/skills/persistent-planning-files/SKILL.md +108 -0
  73. package/.agents/skills/persistent-planning-files/examples/task_plan_example.md +56 -0
  74. package/.agents/skills/playwright-live-interaction/SKILL.md +49 -1
  75. package/.agents/skills/playwright-live-interaction/examples/live_probe_script.js +5 -0
  76. package/.agents/skills/playwright-live-interaction/references/advanced_superpowers.md +160 -160
  77. package/.agents/skills/playwright-live-interaction/references/compact_accessibility_snapshots.md +75 -75
  78. package/.agents/skills/playwright-live-interaction/references/recipes.md +388 -388
  79. package/.agents/skills/playwright-live-interaction/references/swarm_orchestration.md +134 -134
  80. package/.agents/skills/playwright-webapp-testing/SKILL.md +93 -0
  81. package/.agents/skills/playwright-webapp-testing/examples/server_lifecycle_playwright.py +63 -0
  82. package/.agents/skills/rbt-manual-testing/SKILL.md +150 -0
  83. package/.agents/skills/rbt-manual-testing/examples/checkout_rbt_manual_suite.md +25 -0
  84. package/.agents/skills/security-dast-sentinel/SKILL.md +57 -135
  85. package/.agents/skills/security-dast-sentinel/examples/dast_scan_config.json +10 -0
  86. package/.agents/skills/self-healing-locator/SKILL.md +24 -10
  87. package/.agents/skills/self-healing-locator/examples/aom_diff_sample.json +16 -0
  88. package/.agents/skills/skillspector-security-guard/SKILL.md +32 -90
  89. package/.agents/skills/skillspector-security-guard/examples/safe_mcp_config.json +12 -0
  90. package/.agents/skills/surgical-coding-principles/SKILL.md +89 -0
  91. package/.agents/skills/surgical-coding-principles/examples/surgical_vs_scope_creep.md +46 -0
  92. package/.agents/skills/synthetic-test-data-generator/SKILL.md +3 -3
  93. package/.agents/skills/synthetic-test-data-generator/examples/idempotent_data_recipe.json +9 -0
  94. package/.agents/skills/systematic-debugging/SKILL.md +100 -0
  95. package/.agents/skills/systematic-debugging/examples/four_phase_case.md +44 -0
  96. package/.agents/skills/test-driven-development/SKILL.md +114 -0
  97. package/.agents/skills/test-driven-development/examples/red_green_refactor_qa.md +78 -0
  98. package/.agents/skills/token-and-context-optimizer/SKILL.md +1 -1
  99. package/.agents/skills/token-and-context-optimizer/examples/distilled_log_sample.txt +3 -0
  100. package/.agents/skills/verification-before-completion/SKILL.md +100 -0
  101. package/.agents/skills/verification-before-completion/examples/evidence_log_example.md +46 -0
  102. package/.agents/skills/visual-regression-sentinel/SKILL.md +21 -1
  103. package/.agents/skills/visual-regression-sentinel/examples/visual_mask_rules.json +9 -0
  104. package/.agents/skills/wcag-audit-patterns/SKILL.md +3 -3
  105. package/.agents/skills/wcag-audit-patterns/examples/wcag_compliance_checklist.json +10 -0
  106. package/.agents/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -541
  107. package/.agents/skills/web-vitals-and-performance-profiler/SKILL.md +1 -1
  108. package/.agents/skills/web-vitals-and-performance-profiler/examples/cwv_budget_policy.json +6 -0
  109. package/.agents/templates/completion_report.md +57 -57
  110. package/.agents/workflows/analyze_requirement_document.md +18 -0
  111. package/.agents/workflows/export_testcases_excel.md +32 -0
  112. package/.agents/workflows/generate_combinatorial_test_data.md +28 -0
  113. package/.agents/workflows/generate_cross_module_test_plan.md +37 -0
  114. package/.agents/workflows/generate_manual_testcases_rbt.md +56 -0
  115. package/.agents/workflows/generate_requirements_from_website.md +25 -0
  116. package/.agents/workflows/generate_testcases_from_requirements.md +21 -0
  117. package/.agents/workflows/graphify.md +10 -10
  118. package/.agents/workflows/verify.md +2 -2
  119. package/.cursor/rules/language.mdc +7 -7
  120. package/.cursor/rules/synapse-qa.mdc +23 -0
  121. package/.cursorrules +7 -0
  122. package/.pre-commit-hooks.yaml +14 -0
  123. package/.windsurfrules +7 -0
  124. package/AGENTS.md +54 -15
  125. package/CLAUDE.md +35 -12
  126. package/LICENSE +30 -0
  127. package/NOTICE +180 -0
  128. package/README.en.md +325 -0
  129. package/README.md +247 -512
  130. package/action.yml +51 -0
  131. package/benchmarks/qa_eval/README.md +71 -0
  132. package/benchmarks/qa_eval/build_dataset.py +677 -0
  133. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-06_api_contract_drift.json +22 -0
  134. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-07_api_contract_drift.json +22 -0
  135. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-08_api_contract_drift.json +22 -0
  136. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-09_api_contract_drift.json +22 -0
  137. package/benchmarks/qa_eval/dataset/api_contract_drift/qa-challenge-10_api_contract_drift.json +22 -0
  138. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-21_fake_pass_tautology.json +21 -0
  139. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-22_fake_pass_tautology.json +21 -0
  140. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-23_fake_pass_tautology.json +21 -0
  141. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-24_fake_pass_tautology.json +21 -0
  142. package/benchmarks/qa_eval/dataset/fake_pass_tautology/qa-challenge-25_fake_pass_tautology.json +21 -0
  143. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-01_locator_drift.json +23 -0
  144. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-02_locator_drift.json +23 -0
  145. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-03_locator_drift.json +23 -0
  146. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-04_locator_drift.json +23 -0
  147. package/benchmarks/qa_eval/dataset/locator_drift/qa-challenge-05_locator_drift.json +23 -0
  148. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-16_stale_and_mutation.json +22 -0
  149. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-17_stale_and_mutation.json +22 -0
  150. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-18_stale_and_mutation.json +22 -0
  151. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-19_stale_and_mutation.json +22 -0
  152. package/benchmarks/qa_eval/dataset/stale_and_mutation/qa-challenge-20_stale_and_mutation.json +23 -0
  153. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-11_timing_and_race.json +22 -0
  154. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-12_timing_and_race.json +22 -0
  155. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-13_timing_and_race.json +22 -0
  156. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-14_timing_and_race.json +22 -0
  157. package/benchmarks/qa_eval/dataset/timing_and_race/qa-challenge-15_timing_and_race.json +22 -0
  158. package/benchmarks/qa_eval/eval_runner.py +418 -0
  159. package/benchmarks/qa_eval/reports/AB_METHODOLOGY_REPORT.md +83 -0
  160. package/benchmarks/qa_eval/reports/BENCHMARK_REPORT.md +69 -0
  161. package/benchmarks/qa_eval/reports/eval_results.json +105 -0
  162. package/bin/agent-qa.js +10 -3
  163. package/docs/ARCHITECTURE.md +107 -0
  164. package/docs/CI_CD_INTEGRATION.md +94 -0
  165. package/docs/CLI_REFERENCE.md +157 -0
  166. package/docs/CONTRIBUTING.md +91 -0
  167. package/docs/PLUGIN_DEVELOPMENT_GUIDE.md +126 -0
  168. package/docs/TOKEN_QUOTA_PLAYBOOK.md +41 -0
  169. package/docs/adopted-ecosystem-tools.md +87 -0
  170. package/docs/schemas/synapse.config.schema.json +64 -0
  171. package/examples/cypress-ecommerce-suite/README.md +45 -0
  172. package/examples/cypress-ecommerce-suite/cypress/e2e/checkout.cy.js +17 -0
  173. package/examples/cypress-ecommerce-suite/cypress/pages/BasePage.js +29 -0
  174. package/examples/cypress-ecommerce-suite/cypress/pages/CartPage.js +51 -0
  175. package/examples/cypress-ecommerce-suite/cypress.config.js +13 -0
  176. package/examples/cypress-ecommerce-suite/package.json +13 -0
  177. package/examples/katalon-suite/Keywords/pages/BasePage.groovy +19 -0
  178. package/examples/katalon-suite/Keywords/pages/DashboardPage.groovy +29 -0
  179. package/examples/katalon-suite/Keywords/pages/LoginPage.groovy +45 -0
  180. package/examples/katalon-suite/Profiles/default.glbl +12 -0
  181. package/examples/katalon-suite/README.md +18 -0
  182. package/examples/katalon-suite/Scripts/Auth/TC_LoginSuccess/Script1234567890.groovy +12 -0
  183. package/examples/katalon-suite/Scripts/Dashboard/TC_ViewSummary/Script1234567891.groovy +15 -0
  184. package/examples/katalon-suite/katalon_suite.prj +21 -0
  185. package/examples/playwright-crm-suite/README.md +40 -0
  186. package/examples/playwright-crm-suite/package.json +14 -0
  187. package/examples/playwright-crm-suite/pages/BasePage.ts +37 -0
  188. package/examples/playwright-crm-suite/pages/CustomerPage.ts +57 -0
  189. package/examples/playwright-crm-suite/pages/LoginPage.ts +32 -0
  190. package/examples/playwright-crm-suite/playwright.config.ts +27 -0
  191. package/examples/playwright-crm-suite/tests/auth.spec.ts +22 -0
  192. package/examples/playwright-crm-suite/tests/customers.spec.ts +33 -0
  193. package/examples/plugins/sample-custom-plugin/README.md +14 -0
  194. package/examples/plugins/sample-custom-plugin/plugin.json +16 -0
  195. package/examples/plugins/sample-custom-plugin/skills/custom-security-headers-audit/SKILL.md +29 -0
  196. package/examples/plugins/sample-custom-plugin/skills/custom-security-headers-audit/examples/audit_fixture.json +8 -0
  197. package/examples/plugins/sample-custom-plugin/tools/custom_security_headers.py +125 -0
  198. package/examples/practices/README.md +22 -0
  199. package/examples/practices/requirements/crm/requirements_contracts.md +292 -0
  200. package/examples/practices/requirements/crm/requirements_customers.md +462 -0
  201. package/examples/practices/requirements/crm/requirements_login.md +202 -0
  202. package/examples/practices/requirements/crm/requirements_projects.md +396 -0
  203. package/examples/practices/requirements/crm/requirements_tasks.md +343 -0
  204. package/examples/practices/requirements/ecommerce/requirements_category_brand.txt +402 -0
  205. package/examples/practices/requirements/jira/KAN-5/KAN-1/2026-04-03_04-28-27.png +0 -0
  206. package/examples/practices/requirements/jira/KAN-5/KAN-1/KAN-1_requirement.md +52 -0
  207. package/examples/practices/requirements/jira/KAN-5/KAN-4/2026-04-03_04-28-19.png +0 -0
  208. package/examples/practices/requirements/jira/KAN-5/KAN-4/2026-04-03_04-28-57.png +0 -0
  209. package/examples/practices/requirements/jira/KAN-5/KAN-4/KAN-4_requirement.md +119 -0
  210. package/examples/practices/requirements/jira/KAN-5/KAN-5_overview.md +9 -0
  211. package/examples/practices/requirements/jira/KAN-5/KAN-6/2026-04-03_05-58-08.png +0 -0
  212. package/examples/practices/requirements/jira/KAN-5/KAN-6/2026-04-03_05-58-23.png +0 -0
  213. package/examples/practices/requirements/jira/KAN-5/KAN-6/KAN-6_requirement.md +32 -0
  214. package/examples/practices/testcases/api/book_management_api_test_cases.md +144 -0
  215. package/examples/practices/testcases/api/user_management_api_test_cases.md +139 -0
  216. package/examples/practices/testcases/crm/test_cases_crm_login.md +148 -0
  217. package/examples/practices/testcases/crm/test_cases_customers.md +156 -0
  218. package/examples/pytest-api-suite/README.md +45 -0
  219. package/examples/pytest-api-suite/conftest.py +31 -0
  220. package/examples/pytest-api-suite/pages/user_api_client.py +36 -0
  221. package/examples/pytest-api-suite/requirements.txt +2 -0
  222. package/examples/pytest-api-suite/tests/test_user_api.py +44 -0
  223. package/examples/selenium-suite/README.md +18 -0
  224. package/examples/selenium-suite/pages/base_page.py +27 -0
  225. package/examples/selenium-suite/pages/login_page.py +29 -0
  226. package/examples/selenium-suite/pages/order_page.py +25 -0
  227. package/examples/selenium-suite/pytest.ini +6 -0
  228. package/examples/selenium-suite/requirements.txt +2 -0
  229. package/examples/selenium-suite/tests/test_login.py +10 -0
  230. package/examples/selenium-suite/tests/test_order.py +10 -0
  231. package/package.json +22 -7
  232. package/scripts/generate_skill_examples.py +244 -0
  233. package/scripts/install.ps1 +112 -0
  234. package/scripts/install_global_plugin.ps1 +94 -0
  235. package/scripts/install_global_plugin.sh +49 -0
  236. package/scripts/lint_skills.ps1 +57 -0
  237. package/scripts/package_dist.py +323 -0
  238. package/scripts/setup.sh +59 -0
  239. package/scripts/update_hub.ps1 +19 -0
  240. package/scripts/update_hub.sh +15 -0
  241. package/skills_manifest.json +209 -6
  242. package/synapse.config.json +30 -0
  243. package/templates/PROJECT_AI_GUIDE_TEMPLATE.md +7 -7
  244. package/templates/PROJECT_STATE_TEMPLATE.md +1 -1
  245. package/templates/ai_bridges/CLAUDE.md +33 -16
  246. package/templates/ai_bridges/copilot-instructions.md +14 -21
  247. package/templates/ai_bridges/cursor_synapse_qa.mdc +17 -20
  248. package/templates/ai_bridges/windsurfrules +21 -21
  249. package/templates/ci/github-actions-synapse.yml +71 -4
  250. package/templates/welcome.html.tmpl +1674 -0
  251. package/tools/.infer_baseline.json +1102 -0
  252. package/tools/TOOLS_RUNBOOK.md +92 -130
  253. package/tools/__init__.py +26 -0
  254. package/tools/agent_canary.py +501 -501
  255. package/tools/analyze_project.py +31 -17
  256. package/tools/api_fuzzer.py +278 -6
  257. package/tools/author_integrity.py +6 -6
  258. package/tools/auto_heal.py +1 -1
  259. package/tools/browser_helpers.js +105 -7
  260. package/tools/bug_reporter.py +31 -1
  261. package/tools/bump_version.py +23 -3
  262. package/tools/cache_resolver.py +248 -14
  263. package/tools/check_env.py +55 -14
  264. package/tools/check_version_sync.py +153 -0
  265. package/tools/ci_healing_hook.py +1 -1
  266. package/tools/cli.py +263 -13
  267. package/tools/count_tokens.py +1257 -0
  268. package/tools/dashboard_generator.py +2638 -0
  269. package/tools/db_sandbox.py +198 -20
  270. package/tools/e2e_flow_prober.ps1 +12 -64
  271. package/tools/e2e_flow_prober.py +99 -0
  272. package/tools/e2e_flow_prober.sh +4 -0
  273. package/tools/export_postman_collection.py +29 -7
  274. package/tools/flaky_detector.py +4 -3
  275. package/tools/generate_allure_report.ps1 +12 -29
  276. package/tools/generate_allure_report.py +77 -0
  277. package/tools/generate_allure_report.sh +4 -0
  278. package/tools/generate_jmx_plan.py +299 -68
  279. package/tools/generate_test_reports.ps1 +12 -134
  280. package/tools/generate_test_reports.py +133 -0
  281. package/tools/generate_test_reports.sh +4 -0
  282. package/tools/gherkin_suite.py +758 -0
  283. package/tools/git_pre_commit_guard.py +12 -6
  284. package/tools/goldfish_review.py +366 -0
  285. package/tools/heal_pr_automator.py +1 -1
  286. package/tools/heuristic_locator_matcher.py +170 -21
  287. package/tools/infer_linter.py +612 -70
  288. package/tools/jtl_analyzer.py +1 -1
  289. package/tools/lint_ai_docs.py +64 -0
  290. package/tools/matrix_sharder.py +1 -1
  291. package/tools/mcp_excel_server.ps1 +12 -250
  292. package/tools/mcp_excel_server.py +249 -0
  293. package/tools/mcp_excel_server.sh +4 -0
  294. package/tools/mcp_server.py +368 -144
  295. package/tools/md_to_xlsx.py +307 -0
  296. package/tools/micro_mutator.py +300 -69
  297. package/tools/omni_transpiler.py +2 -2
  298. package/tools/output_formatter.py +128 -0
  299. package/tools/pinpoint_failure.py +88 -88
  300. package/tools/project_state.py +2 -2
  301. package/tools/repo_map.py +1 -1
  302. package/tools/safety_firewall.py +197 -33
  303. package/tools/setup_project.py +294 -30
  304. package/tools/skillspector.py +8 -8
  305. package/tools/spec_drift_sentinel.py +439 -0
  306. package/tools/sync_agent_rules.py +248 -0
  307. package/tools/telemetry_correlator.py +45 -0
  308. package/tools/test_impact.py +51 -12
  309. package/tools/tms_sync_bridge.py +21 -5
  310. package/tools/universal_ir.py +3 -0
  311. package/tools/update_sentinel.py +87 -15
  312. package/tools/verify_all.ps1 +13 -0
  313. package/tools/verify_all.py +463 -79
  314. package/tools/visual_diff_canvas.py +1 -0
  315. package/tools/visual_som_helper.py +1 -1
  316. package/tools/watch_mode.py +305 -0
  317. package/tools/welcome_page.py +291 -0
@@ -0,0 +1,1102 @@
1
+ {
2
+ "generated_at": "2026-11-01T21:48:16.951293",
3
+ "total_defects": 137,
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
+ {
86
+ "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",
96
+ "type": "HARD_DELAY_ANTI_PATTERN",
97
+ "severity": "WARNING",
98
+ "line": 197,
99
+ "message": "Static sleep with variable/expression 'delay' found ('time.sleep(delay)'). Replace with dynamic Smart Wait."
100
+ },
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
+ {
286
+ "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",
304
+ "type": "HARD_DELAY_ANTI_PATTERN",
305
+ "severity": "WARNING",
306
+ "line": 397,
307
+ "message": "Static sleep with variable/expression 'backoff' found ('time.sleep(backoff)'). Replace with dynamic Smart Wait."
308
+ },
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
+ {
1022
+ "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",
1040
+ "type": "HARD_DELAY_ANTI_PATTERN",
1041
+ "severity": "WARNING",
1042
+ "line": 228,
1043
+ "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
+ }
1101
+ ]
1102
+ }