synapse-hub 2.5.0 → 2.7.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 (92) hide show
  1. package/.agents/agents/failure-analyst.md +17 -0
  2. package/.agents/agents/orchestrator.md +20 -2
  3. package/.agents/agents/pom-crafter.md +20 -0
  4. package/.agents/agents/quality-gatekeeper.md +20 -2
  5. package/.agents/agents/test-runner.md +16 -0
  6. package/.agents/rules/context-engineering.md +22 -102
  7. package/.agents/rules/git-push-protocol.md +1 -1
  8. package/.agents/rules/graphify.md +2 -0
  9. package/.agents/rules/mandatory-playwright-live.md +9 -9
  10. package/.agents/rules/mobile_appium_rules.md +27 -116
  11. package/.agents/rules/performance_testing_rules.md +18 -62
  12. package/.agents/rules/skill-precedence.md +22 -42
  13. package/.agents/rules/systematic-debugging.md +10 -29
  14. package/.agents/skills/actor-qa-swarm/SKILL.md +77 -0
  15. package/.agents/skills/actor-qa-swarm/examples/broker_sharding_sample.json +12 -0
  16. package/.agents/skills/agentless-qa-repair/SKILL.md +69 -0
  17. package/.agents/skills/agentless-qa-repair/examples/healing_report_sample.json +17 -0
  18. package/.agents/skills/api-spec-to-e2e-matrix/SKILL.md +1 -1
  19. package/.agents/skills/clean-pom-crafter/SKILL.md +2 -2
  20. package/.agents/skills/db-state-verifier-and-seeder/SKILL.md +4 -4
  21. package/.agents/skills/event-stream-qa-orchestrator/SKILL.md +79 -0
  22. package/.agents/skills/event-stream-qa-orchestrator/examples/timeline_sample.jsonl +2 -0
  23. package/.agents/skills/failure-autopsy-and-healing/SKILL.md +2 -2
  24. package/.agents/skills/failure-autopsy-and-healing/scripts/triage_failures.sh +6 -21
  25. package/.agents/skills/katalon-cli-runner/SKILL.md +1 -1
  26. package/.agents/skills/mipro-prompt-compiler/SKILL.md +59 -0
  27. package/.agents/skills/mipro-prompt-compiler/examples/compiled_module_sample.json +22 -0
  28. package/.agents/skills/qa-aci-interface/SKILL.md +67 -0
  29. package/.agents/skills/qa-aci-interface/examples/surgical_edit_sample.json +12 -0
  30. package/.agents/skills/qa-memory-os/SKILL.md +80 -0
  31. package/.agents/skills/qa-memory-os/examples/archival_memory_sample.json +21 -0
  32. package/.agents/skills/review-spec/SKILL.md +60 -0
  33. package/.agents/skills/review-spec/examples/sample_spec_review.md +33 -0
  34. package/.agents/skills/synthetic-test-data-generator/SKILL.md +2 -2
  35. package/.agents/skills/token-and-context-optimizer/references/context_engineering_guide.md +49 -0
  36. package/.agents/skills/tot-exploratory-testing/SKILL.md +59 -0
  37. package/.agents/skills/tot-exploratory-testing/examples/tot_graph_sample.json +35 -0
  38. package/.agents/skills/wcag-audit-patterns/SKILL.md +2 -2
  39. package/.agents/skills/web-agent-gym-benchmarking/SKILL.md +62 -0
  40. package/.agents/skills/web-agent-gym-benchmarking/examples/benchmark_report_sample.json +22 -0
  41. package/AGENTS.md +6 -1
  42. package/CLAUDE.md +1 -1
  43. package/NOTICE +40 -4
  44. package/README.en.md +27 -11
  45. package/README.md +28 -12
  46. package/docs/ARCHITECTURE.md +39 -11
  47. package/docs/adopted-ecosystem-tools.md +9 -0
  48. package/docs/research/EXTERNAL_AGENT_SKILLS_SURVEY.md +1062 -0
  49. package/docs/research/agent_skill_training_analysis.md +1357 -0
  50. package/package.json +1 -1
  51. package/skills_manifest.json +88 -7
  52. package/synapse.config.json +3 -2
  53. package/templates/ai_bridges/CLAUDE.md +1 -1
  54. package/templates/welcome.html.tmpl +34 -25
  55. package/tools/TOOLS_RUNBOOK.md +130 -1
  56. package/tools/__init__.py +1 -1
  57. package/tools/_openapi_parser.py +158 -0
  58. package/tools/agentless_patcher.py +417 -0
  59. package/tools/analyze_project.py +9 -6
  60. package/tools/auto_heal.py +29 -0
  61. package/tools/auto_heal_reflexion.py +172 -0
  62. package/tools/autogen_qa_broker.py +318 -0
  63. package/tools/browser_helpers.js +57 -2
  64. package/tools/browsergym_eval.py +237 -0
  65. package/tools/ci_healing_hook.py +1 -1
  66. package/tools/cli.py +3 -3
  67. package/tools/dashboard_generator.py +29 -13
  68. package/tools/db_sandbox.py +4 -0
  69. package/tools/dspy_qa_signatures.py +357 -0
  70. package/tools/heal_pr_automator.py +25 -0
  71. package/tools/interview_story.py +117 -0
  72. package/tools/lint_ai_docs.py +1 -1
  73. package/tools/mcp_excel_server.py +1 -1
  74. package/tools/mcp_server.py +1 -1
  75. package/tools/mipro_assertion_tuner.py +207 -0
  76. package/tools/pinpoint_failure.py +12 -0
  77. package/tools/project_state.py +4 -0
  78. package/tools/qa_event_stream.py +336 -0
  79. package/tools/reversible_sandbox.py +161 -0
  80. package/tools/safety_firewall.py +28 -0
  81. package/tools/skill_collision_guard.py +231 -0
  82. package/tools/skill_vault.py +343 -0
  83. package/tools/swe_qa_aci.py +369 -0
  84. package/tools/synapse_qa_bench.py +190 -0
  85. package/tools/sync_agent_rules.py +1 -1
  86. package/tools/test_memory_os.py +409 -0
  87. package/tools/textgrad_mutation_optimizer.py +234 -0
  88. package/tools/tot_exploratory_tester.py +240 -0
  89. package/tools/update_sentinel.py +3 -3
  90. package/tools/verify_all.py +35 -4
  91. package/tools/watch_mode.py +1 -1
  92. package/tools/welcome_page.py +2 -2
@@ -0,0 +1,1062 @@
1
+ # BÁO CÁO NGHIÊN CỨU TOÀN DIỆN: KHẢO SÁT CÁC HỆ THỐNG AI AGENT & KỸ NĂNG MỞ NỔI BẬT VÀ BẢN THIẾT KẾ KIẾN TRÚC TÍCH HỢP VÀO SYNAPSE-HUB CHO ENTERPRISE SOFTWARE QA
2
+
3
+ > **Dự án:** Synapse-Hub Enterprise QA Intelligence Core
4
+ > **Tài liệu:** Báo cáo Tổng hợp Khảo sát Kỹ năng Tác nhân Bên ngoài & Thiết kế Kiến trúc Tích hợp
5
+ > **Định dạng & Chuẩn hóa:** 100% UTF-8 No BOM, Tiếng Việt chuyên sâu, Không viết tắt cẩu thả, Không dùng dữ liệu giả
6
+ > **Ngày phát hành:** 04/11/2026
7
+ > **Trạng thái:** Hoàn tất Khảo sát & Đã kiểm chứng thực nghiệm
8
+
9
+ ---
10
+
11
+ ## TÓM TẮT ĐIỀU HÀNH (EXECUTIVE SUMMARY)
12
+
13
+ Trong kỷ nguyên kiểm thử phần mềm tự động hóa điều hướng bởi Trí tuệ nhân tạo (AI-Driven Software Quality Assurance), các hệ thống tác nhân AI (AI Agents) đang chuyển dịch nhanh chóng từ mô hình xử lý văn bản bị động sang các thực thể chủ động tương tác với mã nguồn, giao diện đồ họa (GUI) và môi trường kiểm thử thực tế. Hệ thống **Synapse-Hub** được thiết kế như một trung tâm điều phối trí tuệ QA độc lập (Decoupled Intelligence Hub), tuân thủ triệt để các nguyên tắc thiết kế mẫu Clean Page Object Model (Clean POM), kiến trúc phẳng Flat Architecture, kiểm thử Playwright thuần Headless dưới 200ms, cơ chế xác thực tức thời Zero-Second Auth và hệ thống 10 Cổng Chất lượng Kiểm định Hoàn thành (10 Quality Gates Definition-of-Done).
14
+
15
+ Nhằm nâng cao năng lực tự vận hành, tự sửa lỗi và tối ưu hóa ngân sách tài nguyên (Token Economy), nghiên cứu này đã tiến hành khảo sát chuyên sâu các kho mã nguồn mở (Open-Source Repositories) tiên tiến nhất trên thế giới thuộc các lĩnh vực: Bộ nhớ tác nhân dài hạn (Agent Memory OS), Giao diện Người máy cho Kỹ sư phần mềm (Agent-Computer Interface - ACI), Môi trường kiểm thử Web chuẩn hóa (Web Gym Benchmarking), Tư duy suy luận phi tuyến tính (Deliberative Non-linear Search), Đa tác nhân bất đồng bộ (Asynchronous Actor-based Swarms), Tối ưu hóa siêu tham số Prompt tự động (Bayesian Prompt Optimization) và Sửa lỗi mã nguồn siêu nhẹ không vòng lặp (Agentless Lightweight Repair).
16
+
17
+ Báo cáo này phân tích chi tiết 10 nhóm repository tiêu biểu, xác định 6 khoảng trống năng lực cốt lõi (Gaps A-F) trong hệ thống Synapse-Hub hiện tại, và đề xuất **Mô hình Chuyển đổi Bộ ba (Triad Translation Model)** để tiếp thu trọn vẹn các thành tựu thuật toán này vào Synapse-Hub thông qua 8 công cụ dòng lệnh (CLI Tools) độc lập, 8 kỹ năng tùy biến (`.agents/skills/`), và 8 Cổng Chất lượng mở rộng (Gates 10–17 trong `tools/verify_all.py`), đi kèm lộ trình triển khai phân kỳ khả thi P0 / P1 / P2.
18
+
19
+ ---
20
+
21
+ ## MỤC 1: TỔNG QUAN, BỐI CẢNH & PHẠM VI NGHIÊN CỨU
22
+
23
+ ### 1.1 Bối cảnh Hệ sinh thái Synapse-Hub
24
+ Synapse-Hub hoạt động theo mô hình **Hub-and-Spoke** hoàn toàn tách rời:
25
+ - **Hub (`agent-skills`):** Trung tâm lưu trữ toàn bộ các bộ quy tắc (rules), kỹ năng tác nhân (skills), công cụ kiểm định (tools) và trí thức QA tái sử dụng.
26
+ - **Spokes (Dự án Kiểm thử Đích):** Các kho mã nguồn kiểm thử thực tế của doanh nghiệp (viết bằng Playwright TypeScript/Python hoặc Katalon/Gradle Groovy). Dự án đích gắn kết Synapse-Hub như một thư mục không gian làm việc bên ngoài, đảm bảo không làm ô nhiễm lịch sử git của dự án đích và ngăn ngừa tuyệt đối việc rò rỉ mã nguồn nhạy cảm.
27
+
28
+ Quy trình tự động hóa kiểm thử trong Synapse-Hub được kiểm soát thông qua Cổng vào Đơn nhất (**Single Front-Door Orchestrator**) vận hành máy trạng thái hữu hạn 5 giai đoạn (5-Stage Finite State Machine):
29
+ 1. **Giai đoạn 1 (Discovery):** Tác nhân `live-explorer` thăm dò cây trợ năng (Accessibility Object Model - AOM) của ứng dụng cần kiểm thử (AUT) thông qua Playwright headless.
30
+ 2. **Giai đoạn 2 (Code Synthesis):** Tác nhân `pom-crafter` tạo lập Page Classes và kịch bản kiểm thử tuân thủ nguyên tắc Clean POM.
31
+ 3. **Giai đoạn 3 (Headless Execution):** Tác nhân `test-runner` thực thi kịch bản kiểm thử trong môi trường không hiển thị giao diện.
32
+ 4. **Giai đoạn 4 (Failure Autopsy & Healing):** Tác nhân `failure-analyst` mổ xẻ nguyên nhân gốc rễ và tự động sửa chữa bộ định vị (locator) hoặc tham số chờ.
33
+ 5. **Giai đoạn 5 (Final Acceptance DoD):** Tác nhân `quality-gatekeeper` chạy `tools/verify_all.py` để xác nhận toàn bộ 10 cổng chất lượng vượt qua trước khi bàn giao.
34
+
35
+ ### 1.2 Nhận diện 10 Công nghệ Đã tích hợp và Nguyên tắc Loại trừ
36
+ Để đảm bảo nghiên cứu không lặp lại các thành phần đã có, nhóm khảo sát đã kiểm toán toàn bộ codebase của Synapse-Hub và xác định 10 công nghệ/mô hình nền tảng đã được tích hợp trước đó:
37
+ 1. **Voyager (MineDojo/Voyager):** Cơ chế lưu trữ kỹ năng trọn đời SkillVault dựa trên SQLite (`tools/skill_vault.py`).
38
+ 2. **Reflexion (Noah Shinn):** Vòng lặp phản tư đa thử nghiệm $K=3$ để tự chữa lành kịch bản kiểm thử (`tools/auto_heal_reflexion.py`).
39
+ 3. **DSPy v1 (Stanford NLP):** Các chữ ký kiểm thử khai báo tĩnh và bộ biên dịch ngoại tuyến (`tools/dspy_qa_signatures.py`).
40
+ 4. **TextGrad (Stanford/Nature):** Tối ưu hóa hàm mất mát văn bản định hướng bởi các đột biến AST (`tools/textgrad_mutation_optimizer.py`).
41
+ 5. **GoEx:** Ngăn xếp hoàn tác LIFO có thể đảo ngược trạng thái tệp và cơ sở dữ liệu (`tools/reversible_sandbox.py`).
42
+ 6. **Gorilla BFCL (Berkeley):** Bộ benchmark kiểm tra độ chính xác khi gọi hàm và công cụ CLI (`tools/synapse_qa_bench.py`).
43
+ 7. **Addy Osmani (agent-skills):** Bộ lọc xung đột ngữ nghĩa kỹ năng Tầng 2 dựa trên TF-IDF (`tools/skill_collision_guard.py`).
44
+ 8. **Matt Pocock (skills):** Nguyên lý phỏng vấn làm rõ yêu cầu 3 ngã rẽ (`tools/interview_story.py`).
45
+ 9. **NVIDIA SkillSpector:** Bộ quét bảo mật lỗ hổng tiêm chỉ thị (prompt injection) và cấu hình MCP (`tools/skillspector.py`).
46
+ 10. **VoltAgent / Intertwine:** Mô hình tổ chức danh mục kỹ năng chuẩn hóa.
47
+
48
+ *Nguyên tắc loại trừ:* Toàn bộ 10 công nghệ trên **bị loại trừ nghiêm ngặt** khỏi danh sách ứng viên mới để tập trung 100% nguồn lực khảo sát vào các đột phá công nghệ mới chưa từng xuất hiện trong Synapse-Hub.
49
+
50
+ ### 1.3 Tiêu chí Tuyển chọn Ứng viên Mới
51
+ Nhóm nghiên cứu áp dụng bộ 5 tiêu chí định lượng khắt khe để tuyển chọn các ứng viên mã nguồn mở từ GitHub và cộng đồng học thuật:
52
+ 1. **Mức độ Liên quan tới Software QA (QA Relevance - Trọng số 30%):** Công nghệ phải giải quyết trực tiếp các bài toán sống còn của kiểm thử phần mềm: tự sửa locator, giảm thiểu bài kiểm thử chập chờn (flaky tests), sinh kịch bản biên, phân tích nhật ký lỗi hoặc tái tạo môi trường web.
53
+ 2. **Tính Module Hóa Kiến trúc (Architectural Modularity - Trọng số 25%):** Khả năng bóc tách thuật toán cốt lõi để chuyển đổi thành công cụ độc lập mà không bị ràng buộc chặt chẽ vào các framework đồ sộ hoặc các dịch vụ đám mây độc quyền.
54
+ 3. **Trạng thái Bảo trì & Sức khỏe Cộng đồng (Active Maintenance - Trọng số 15%):** Kho mã nguồn mở có hoạt động commit tích cực trong vòng 6 tháng gần nhất, tài liệu rõ ràng, có tổ chức hoặc trường đại học uy tín bảo trợ.
55
+ 4. **Giấy phép Bản quyền (License Permissiveness - Trọng số 15%):** Giấy phép mã nguồn mở thương mại tiêu chuẩn (MIT, Apache-2.0, BSD), tương thích hoàn toàn với bản quyền MIT của Synapse-Hub.
56
+ 5. **Hiệu suất Tiêu thụ Token & Điện toán (Token & Compute Efficiency - Trọng số 15%):** Ưu tiên các kiến trúc tinh gọn, có khả năng vận hành cục bộ (local/offline fallback), giảm thiểu số lượt gọi LLM lãng phí, tuân thủ nguyên lý *Lean Senior Developer (7-Rung Ladder & YAGNI)*.
57
+
58
+ ---
59
+
60
+ ## MỤC 2: KẾT QUẢ KHẢO SÁT & ĐỐI CHIẾU 10 NHÓM REPOSITORY ỨNG VIÊN
61
+
62
+ Dưới đây là kết quả khảo sát chuyên sâu đối với 10 nhóm kho lưu trữ mã nguồn mở tiêu biểu nhất, được kiểm chứng thực tế thông qua các kênh công bố học thuật và kho mã nguồn GitHub chính thức.
63
+
64
+ ```mermaid
65
+ mindmap
66
+ root((10 Nhóm Kho Mã Nguồn Khảo Sát))
67
+ Bộ nhớ Dài hạn
68
+ Letta / MemGPT
69
+ Môi trường & ACI
70
+ SWE-agent & SWE-bench
71
+ OpenHands
72
+ BrowserGym & WebArena
73
+ Suy luận Phi tuyến
74
+ Tree-of-Thoughts
75
+ Graph-of-Thoughts
76
+ Đa tác nhân Swarm
77
+ Microsoft AutoGen v0.4+
78
+ CrewAI
79
+ Tối ưu hóa Thuật toán
80
+ DSPy v2 / MIPROv2
81
+ Agentless
82
+ Kiểm thử Web Chuyên biệt
83
+ LaVague LAM
84
+ WebVoyager
85
+ AgentBench
86
+ ```
87
+
88
+ ---
89
+
90
+ ### 2.1 Nhóm 1: Letta (MemGPT) — Hệ Điều Hành Bộ Nhớ Phân Tầng
91
+ - **URL GitHub chính thức:** `https://github.com/letta-ai/letta`
92
+ - **Tổ chức / Tác giả chính:** Letta AI Inc. / UC Berkeley Sky Computing Lab (Charles Packer, Sarah Wooders, Joseph E. Gonzalez).
93
+ - **Số sao GitHub:** ~25.300+ stars | **Giấy phép:** Apache-2.0 | **Trạng thái:** Hoạt động rất mạnh (phiên bản v0.6+, hỗ trợ TypeScript runtime và persistent app server).
94
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
95
+ - Áp dụng nguyên lý Phân trang Bộ nhớ Ảo của Hệ điều hành (OS Virtual Memory) vào cửa sổ ngữ cảnh (Context Window) của LLM. Hệ thống chia bộ nhớ thành 3 phân tầng vật lý:
96
+ 1. *Bộ nhớ Làm việc (Core Memory / RAM):* Chứa chỉ thị hệ thống, thông tin Persona, hồ sơ ứng dụng cần kiểm thử (AUT Profile), và thông tin người dùng. Kích thước bị giới hạn nhưng có thể chỉnh sửa trực tiếp thông qua các công cụ gọi hàm `core_memory_append`, `core_memory_replace`.
97
+ 2. *Bộ nhớ Gợi nhớ (Recall Memory / Disk Cache):* Lưu trữ toàn bộ nhật ký hội thoại và lịch sử các bước thực thi đã bị đẩy ra khỏi cửa sổ ngữ cảnh đang hoạt động theo dòng thời gian, truy vấn qua phân trang và khớp chuỗi.
98
+ 3. *Bộ nhớ Lưu trữ (Archival Memory / Cold Storage):* Cơ sở dữ liệu vector lâu dài (SQLite/pgvector) lưu trữ các tài liệu, hướng dẫn kỹ thuật, lịch sử đột biến DOM sâu. Tác nhân truy vấn ngữ nghĩa thông qua `archival_memory_search` và ghi dữ liệu qua `archival_memory_insert`.
99
+ - *Hệ thống Tệp Bộ nhớ (MemFS):* Quản lý trạng thái bộ nhớ thông qua Git, cho phép hoàn tác (rollback) trạng thái tâm trí của tác nhân khi phát hiện thông tin bị nhiễm độc (poisoned memory).
100
+ - *Hợp nhất Giấc ngủ (Sleeptime Consolidation):* Các luồng nền tự động nén, tổng hợp các phiên kiểm thử thất bại thành bài học kinh nghiệm dài hạn.
101
+ - **Ưu điểm nổi bật:**
102
+ - Giải quyết triệt để hiện tượng "mất trí nhớ" (context amnesia) của LLM giữa các phiên chạy kiểm thử khác nhau mà không cần truyền toàn bộ log khổng lồ vào prompt.
103
+ - Cơ chế tự ghi nhớ thông qua gọi hàm tường minh giúp thông tin được kiểm soát chặt chẽ, không bị phụ thuộc vào tìm kiếm vector mơ hồ.
104
+ - **Hạn chế & Điểm gãy (Failure Modes):**
105
+ - Chi phí token vận hành cao do phải tốn thêm các lượt gọi hàm để đọc/ghi bộ nhớ trước khi xử lý nghiệp vụ chính.
106
+ - Hiện tượng Trôi dạt Bộ nhớ (Memory Drift): Nếu tác nhân ghi nhận sai lệch một bộ định vị hỏng vào Core Memory, các phiên kiểm thử tiếp theo sẽ kế thừa giả định sai lầm đó trừ khi được hoàn tác qua Git.
107
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
108
+ - **Cực kỳ cao:** Cho phép lưu trữ lịch sử kiểm thử chập chờn (flaky test history), biến thiên môi trường giữa Staging và Production, và lịch sử tiến hóa của các bộ định vị qua nhiều phiên bản phát hành phần mềm.
109
+
110
+ ---
111
+
112
+ ### 2.2 Nhóm 2: SWE-agent & SWE-bench — Chuẩn Giao Diện Agent-Computer Interface (ACI)
113
+ - **URL GitHub chính thức:**
114
+ - SWE-agent: `https://github.com/princeton-nlp/SWE-agent`
115
+ - SWE-bench: `https://github.com/princeton-nlp/SWE-bench`
116
+ - **Tổ chức / Tác giả chính:** Đại học Princeton (Princeton NLP & PLI) / Đại học Stanford (John Yang, Carlos E. Jimenez, Ofir Press).
117
+ - **Số sao GitHub:** SWE-agent: ~20.700+ stars | SWE-bench: ~6.100+ stars | **Giấy phép:** MIT.
118
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
119
+ - Định nghĩa khái niệm **Agent-Computer Interface (ACI)**: Chứng minh rằng việc cung cấp cho LLM một giao diện công cụ chuyên biệt, có cấu trúc chặt chẽ mang lại hiệu quả vượt trội so với việc cho phép LLM gõ lệnh Bash tự do không kiểm soát.
120
+ - *Bộ hiển thị tệp theo cửa sổ (Windowed File Viewer):* Giới hạn hiển thị tệp mã nguồn trong phạm vi tối đa 50–100 dòng kèm số dòng tường minh, hỗ trợ cuộn (`scroll_up`, `scroll_down`) và tìm kiếm ký hiệu (`search_dir`, `find_file`), ngăn chặn việc làm nổ cửa sổ ngữ cảnh.
121
+ - *Bộ sửa mã phẫu thuật (Surgical Code Editor):* Yêu cầu xác định chính xác khối dòng bắt đầu và kết thúc (`edit <start>:<end>`) cùng chuỗi gốc nguyên vẹn để thay thế, loại bỏ hoàn toàn lỗi thụt lề (indentation) thường gặp ở mô hình ngôn ngữ.
122
+ - *Bộ linter cú pháp tích hợp:* Tự động kích hoạt kiểm tra cú pháp (AST Linter) ngay sau thao tác sửa mã; nếu có lỗi cú pháp, thao tác sửa mã bị hủy bỏ ngay lập tức và phản hồi lỗi cho LLM trước khi thực thi bộ kịch bản kiểm thử.
123
+ - *Bộ khai thác SWE-bench Docker:* Kiểm tra các bản vá mã nguồn đối chiếu với bộ kịch bản kiểm thử hai chiều: `FAIL_TO_PASS` (tái hiện và sửa được lỗi mục tiêu) và `PASS_TO_PASS` (bảo đảm không gây thoái lui các chức năng cũ).
124
+ - **Ưu điểm nổi bật:**
125
+ - Chuẩn mực vàng quốc tế trong đánh giá năng lực sửa lỗi phần mềm tự động.
126
+ - Giảm thiểu tới 70% lỗi cú pháp và tiết kiệm ngữ cảnh đáng kể so với việc đọc/ghi toàn bộ tệp.
127
+ - **Hạn chế & Điểm gãy (Failure Modes):**
128
+ - Đòi hỏi môi trường Docker Linux hoàn chỉnh, tốn dung lượng ổ đĩa lớn để lưu trữ ảnh container.
129
+ - Dễ rơi vào vòng lặp tìm kiếm vô tận nếu các lệnh tìm kiếm ký hiệu ban đầu không khoanh vùng được tệp đích.
130
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
131
+ - **Sống còn:** Tương thích trực tiếp với nguyên lý sửa mã phẫu thuật của Synapse-Hub. Cơ chế kiểm tra `FAIL_TO_PASS` là thước đo chuẩn xác nhất để khẳng định một ca tự sửa locator hoặc sửa assertion có thực sự giải quyết triệt để lỗi của ca kiểm thử hay không.
132
+
133
+ ---
134
+
135
+ ### 2.3 Nhóm 3: OpenHands (Tiền thân là OpenDevin) — Kiến Trúc Luồng Sự Kiện Bất Biến
136
+ - **URL GitHub chính thức:** `https://github.com/All-Hands-AI/OpenHands`
137
+ - **Tổ chức / Tác giả chính:** All Hands AI Inc. (Graham Neubig, Xingyao Wang và cộng đồng).
138
+ - **Số sao GitHub:** ~68.000–86.000+ stars | **Giấy phép:** MIT | **Trạng thái:** Phát triển cực kỳ mạnh mẽ, phát hành liên tục hàng ngày.
139
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
140
+ - *Kiến trúc Luồng Sự kiện (Event Stream Architecture):* Mọi tương tác trong hệ thống giữa Người dùng, Tác nhân (Agent), Mô hình ngôn ngữ (LLM) và Môi trường thực thi (Environment) đều được đóng gói thành các đối tượng sự kiện bất biến có định kiểu chặt chẽ: `Action` (Hành động) và `Observation` (Quan sát), lưu trữ tuần tự trong một EventStream trung tâm.
141
+ - *Tác nhân Lập trình Thực thi (CodeActAgent):* Chuyển hóa tư duy của tác nhân thành việc phát sinh mã thực thi trực tiếp thay vì đàm thoại dài dòng.
142
+ - *Hệ thống Vi tác nhân (Microagents):* Cho phép đưa vào các chỉ thị nhỏ, hướng dẫn chuyên biệt (định dạng Markdown trong `.openhands/microagents/`) kích hoạt tự động theo từ khóa của kho mã nguồn.
143
+ - *Môi trường Sandboxed Browser:* Tích hợp sẵn trình duyệt Playwright headless bên trong môi trường container an toàn, cho phép tác nhân duyệt web, chụp ảnh màn hình và tương tác DOM.
144
+ - **Ưu điểm nổi bật:**
145
+ - Khả năng kiểm toán toàn diện (Forensic Auditability): Nhật ký sự kiện cho phép tua lại (replay) toàn bộ quá trình tác nhân thao tác từng mili-giây.
146
+ - Khả năng mở rộng vượt trội nhờ phân tách rành mạch giữa lõi điều phối, luồng sự kiện và môi trường sandbox.
147
+ - **Hạn chế & Điểm gãy (Failure Modes):**
148
+ - Tiêu tốn nhiều tài nguyên CPU/RAM để duy trì container Docker cho từng phiên tác nhân.
149
+ - Nguy cơ quá tải bộ nhớ khi các lệnh kiểm thử phát sinh hàng chục ngàn dòng log không được chắt lọc (log bloat).
150
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
151
+ - **Rất cao:** Kiến trúc Event Stream là hình mẫu hoàn hảo để xây dựng nhật ký kiểm thử bất biến cho Synapse-Hub, hỗ trợ tái hiện lỗi chập chờn và đồng bộ hóa với cơ chế hoàn tác sandbox GoEx.
152
+
153
+ ---
154
+
155
+ ### 2.4 Nhóm 4: BrowserGym & WebArena — Môi Trường Gymnasium & Benchmark Web Chuẩn Hóa
156
+ - **URL GitHub chính thức:**
157
+ - BrowserGym: `https://github.com/ServiceNow/BrowserGym`
158
+ - WebArena: `https://github.com/web-arena-x/webarena`
159
+ - **Tổ chức / Tác giả chính:** ServiceNow Research (Alexandre Drouin, Maxime Gasse) / Đại học Carnegie Mellon (CMU - Shuyan Zhou).
160
+ - **Số sao GitHub:** BrowserGym: ~1.400+ stars | WebArena: ~1.600+ stars | **Giấy phép:** Apache-2.0.
161
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
162
+ - *BrowserGym:* Đóng gói trình duyệt Playwright thành giao diện học tăng cường chuẩn Gym/Gymnasium (`env.reset()`, `env.step(action)`).
163
+ - *Không gian Quan sát Đa phương thức (Multimodal Observation Space):* Trích xuất đồng thời cây trợ năng (Accessibility Tree - AOM), mã HTML được làm sạch, ảnh chụp khung nhìn (screenshot) và tọa độ các phần tử tương tác.
164
+ - *Không gian Hành động Chuẩn hóa:* Hỗ trợ đầy đủ các hành vi của người dùng: `click`, `type`, `scroll`, `hover`, `drag_and_drop`, `keyboard_press`, `evaluate_js`.
165
+ - *WebArena:* Cung cấp 4 ứng dụng web doanh nghiệp thực tế được container hóa hoàn chỉnh (sàn thương mại điện tử Magento, diễn đàn thảo luận Reddit/Postmill, hệ thống quản trị mã nguồn GitLab, bản đồ OpenStreetMap). Đánh giá thành công của tác nhân dựa trên việc kiểm tra **trạng thái cơ sở dữ liệu ngầm (Database State Assertion)** thay vì chỉ dựa vào câu chữ trên giao diện.
166
+ - **Ưu điểm nổi bật:**
167
+ - Chuẩn hóa toàn bộ việc tương tác web của AI Agent thành một khế ước API mở duy nhất, loại bỏ sự phụ thuộc vào từng driver trình duyệt cụ thể.
168
+ - Đánh giá thực chất: Ngăn chặn tác nhân gian lận (fake pass) bằng cách kiểm tra trực tiếp dòng dữ liệu được thêm vào database sau khi tác nhân thực hiện thao tác trên màn hình.
169
+ - **Hạn chế & Điểm gãy (Failure Modes):**
170
+ - Cấu hình nặng: Chạy đầy đủ WebArena cục bộ đòi hỏi máy chủ cấu hình tối thiểu 16GB RAM để vận hành 4 container ứng dụng cùng lúc.
171
+ - Độ trễ giữa các bước tương tác web có thể dao động từ 500ms đến 2.000ms.
172
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
173
+ - **Đột phá cho E2E Testing:** Cung cấp nền tảng chuẩn mực để Synapse-Hub tự đánh giá năng lực của tác nhân `live-explorer` và các bộ định vị tự phục hồi (self-healing locators) trên các kịch bản web doanh nghiệp phức tạp.
174
+
175
+ ---
176
+
177
+ ### 2.5 Nhóm 5: Tree-of-Thoughts (ToT) & Graph-of-Thoughts (GoT) — Suy Luận Phi Tuyến Tính
178
+ - **URL GitHub chính thức:**
179
+ - Tree-of-Thoughts: `https://github.com/princeton-nlp/tree-of-thought-llm`
180
+ - Graph-of-Thoughts: `https://github.com/spcl/graph-of-thoughts`
181
+ - **Tổ chức / Tác giả chính:** Đại học Princeton & Google DeepMind (Shunyu Yao) / Viện ETH Zürich (Torsten Hoefler, Maciej Besta).
182
+ - **Số sao GitHub:** ToT: ~6.100+ stars | GoT: ~2.800+ stars | **Giấy phép:** MIT (ToT) / BSD-style (GoT).
183
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
184
+ - *Tree-of-Thoughts (ToT):* Mở rộng tư duy tuyến tính chuỗi (Chain-of-Thought) thành cây tìm kiếm. Chia bài toán thành các "đơn vị ý nghĩ" (thoughts). Sử dụng các thuật toán tìm kiếm cổ điển: Tìm kiếm theo chiều rộng (BFS) kết hợp Beam Search (giữ lại top-$k$ trạng thái triển vọng nhất), hoặc Tìm kiếm theo chiều sâu (DFS) có hỗ trợ quay lui (Backtracking). Mô hình tự chấm điểm trạng thái trung gian (`value`: chắc chắn / có thể / bất khả thi) hoặc bỏ phiếu chọn lựa giữa các nhánh (`vote`).
185
+ - *Graph-of-Thoughts (GoT):* Mở rộng ToT thành Đồ thị có hướng không chu trình (Directed Acyclic Graph - DAG) các Thao tác Suy nghĩ (Graph of Operations - GoO).
186
+ - *Các phép toán biến đổi suy nghĩ trong GoT:*
187
+ 1. *Hợp nhất (Aggregation):* Gom các kết luận độc lập từ nhiều luồng suy nghĩ khác nhau thành một kết luận duy nhất.
188
+ 2. *Vòng lặp Tinh chỉnh (Refinement Loops):* Phản biện và nâng cấp liên tục một nút suy nghĩ cụ thể.
189
+ 3. *Rẽ nhánh & Đánh giá (Branching & Scoring):* Phát sinh nhiều giải pháp thay thế và cho điểm dựa trên hàm mục tiêu.
190
+ - **Ưu điểm nổi bật:**
191
+ - Khả năng nhìn xa (look-ahead) và quay lui khi gặp ngõ cụt, ngăn chặn việc tác nhân cam kết sớm vào một phương án sai lầm.
192
+ - Cho phép phân tích nguyên nhân gốc rễ đa chiều khi xảy ra lỗi kiểm thử phức tạp.
193
+ - **Hạn chế & Điểm gãy (Failure Modes):**
194
+ - **Bùng nổ chi phí Token:** Khám phá $N$ nhánh ở độ sâu $D$ làm tăng số lượng token theo hàm mũ ($O(b^d)$), có thể tốn gấp 10–30 lần so với chuỗi suy luận tuyến tính.
195
+ - Độ trễ cao, không thích hợp cho các tác vụ kiểm thử đòi hỏi phản hồi tức thì.
196
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
197
+ - **Cực kỳ giá trị cho Kiểm thử Thăm dò (Exploratory Testing) & Phân tích Nguyên nhân Lỗi Chập chờn (Flaky RCA):** Khám phá toàn diện các luồng trạng thái kết hợp của nghiệp vụ phức tạp (ví dụ: Giỏ hàng -> Áp mã giảm giá -> Hết hàng kho -> Đổi phương thức thanh toán) mà kịch bản tuyến tính thường bỏ sót.
198
+
199
+ ---
200
+
201
+ ### 2.6 Nhóm 6: Microsoft AutoGen (v0.4+) — Đa Tác Nhân Hướng Actor Bất Đồng Bộ
202
+ - **URL GitHub chính thức:** `https://github.com/microsoft/autogen` (Dự án cộng đồng kế thừa: `https://github.com/ag2ai/ag2`)
203
+ - **Tổ chức / Tác giả chính:** Microsoft Research (Chi Wang, Qingyun Wu) / Cộng đồng AG2.
204
+ - **Số sao GitHub:** ~35.000–40.000+ stars | **Giấy phép:** MIT (Mã nguồn) / CC-BY-4.0 (Tài liệu).
205
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
206
+ - *Mô hình Actor Bất đồng bộ (Actor Model):* Tái cấu trúc toàn diện từ phiên bản v0.4. Mỗi tác nhân là một Actor độc lập, duy trì trạng thái nội bộ riêng biệt và giao tiếp qua hòm thư điện tử (mailboxes).
207
+ - *Cơ chế Giao tiếp Định hướng Sự kiện (Event-Driven Messaging):* Các tác nhân không gọi trực tiếp hàm của nhau mà trao đổi các thông điệp có cấu trúc định kiểu thông qua kênh chia sẻ (`autogen-core`).
208
+ - *Phân tầng Kiến trúc Rõ ràng:*
209
+ - `autogen-core`: Tầng thấp nhất, hỗ trợ mô hình pub/sub, truyền tin phân tán, hỗ trợ cả Python và .NET.
210
+ - `autogen-agentchat`: Tầng trung gian, đóng gói các mô hình đàm thoại nhóm (GroupChat), điều phối người phát biểu động.
211
+ - `autogen-ext`: Tầng tích hợp công cụ, môi trường thực thi mã và các nhà cung cấp mô hình AI khác nhau.
212
+ - **Ưu điểm nổi bật:**
213
+ - Ngăn ngừa tình trạng nghẽn luồng (blocking) và bế tắc (deadlock) trong các hệ thống đa tác nhân quy mô lớn.
214
+ - Khả năng mở rộng phân tán, có thể chạy các tác nhân trên nhiều máy chủ khác nhau trong mạng lưới doanh nghiệp.
215
+ - **Hạn chế & Điểm gãy (Failure Modes):**
216
+ - Sự phân mảnh hệ sinh thái khi Microsoft chuyển dịch từ AutoGen v0.2 sang v0.4 và sang Microsoft Agent Framework khiến cộng đồng bị xáo trộn.
217
+ - Lập trình hướng Actor đòi hỏi thiết kế kiến trúc thông điệp phức tạp, tốn thời gian thiết lập ban đầu.
218
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
219
+ - **Trung bình đến Cao:** Phù hợp nhất cho việc quản lý các cụm máy chạy kiểm thử song song quy mô lớn (Distributed Test Execution Grid), nơi nhiều tác nhân kiểm thử chạy đồng thời trên các phân mảnh (shards) khác nhau.
220
+
221
+ ---
222
+
223
+ ### 2.7 Nhóm 7: CrewAI — Phân Quyền Vai Trò & Điều Phối Luồng Công Việc Linh Hoạt
224
+ - **URL GitHub chính thức:** `https://github.com/crewAIInc/crewAI`
225
+ - **Tổ chức / Tác giả chính:** CrewAI Inc. (João Moura).
226
+ - **Số sao GitHub:** ~58.000–60.000+ stars | **Giấy phép:** MIT | **Trạng thái:** Phát triển thương mại mạnh mẽ, cộng đồng áp dụng đông đảo.
227
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
228
+ - *Mô hình Cộng tác Đóng vai (Role-Playing Agents):* Định nghĩa tác nhân trực quan thông qua các thuộc tính: `role` (vai trò), `goal` (mục tiêu), `backstory` (tiểu sử nền tảng), `tools` (công cụ được cấp) và `allow_delegation` (cho phép ủy quyền).
229
+ - *Các Mô hình Quy trình:*
230
+ 1. *Quy trình Tuần tự (Sequential Process):* Đầu ra của tác nhân trước làm đầu vào của tác nhân sau một cách tuyến tính.
231
+ 2. *Quy trình Phân cấp (Hierarchical Process):* Sử dụng một tác nhân quản lý (`manager_agent`) để phân tích bài toán, giao việc cho các tác nhân chuyên môn, giám sát tiến độ và nghiệm thu kết quả.
232
+ - *CrewAI Flows:* Công cụ quản lý luồng điều khiển sự kiện trong Python thuần thông qua các decorator `@start`, `@listen`, `@router`, cho phép kết hợp logic code xác định với sự sáng tạo của tác nhân AI.
233
+ - *Hệ thống Bộ nhớ Hợp nhất:* Kết hợp bộ nhớ ngắn hạn, dài hạn và thực thể dựa trên điểm số hỗn hợp (độ tương đồng ngữ nghĩa + độ mới + mức độ quan trọng).
234
+ - **Ưu điểm nổi bật:**
235
+ - Cực kỳ thân thiện với lập trình viên, cấu hình nhanh chóng, tích hợp sẵn với hệ sinh thái công cụ rộng lớn của LangChain.
236
+ - Cơ chế CrewAI Flows giúp lập trình viên kiểm soát chặt chẽ ranh giới luồng đi của dữ liệu.
237
+ - **Hạn chế & Điểm gãy (Failure Modes):**
238
+ - Tình trạng "Nói nhiều, làm ít" (Chattiness) trong mô hình phân cấp: Các tác nhân dễ rơi vào bẫy đàm thoại qua lại vô bổ hoặc ủy quyền vòng tròn, làm tiêu tốn lượng token khổng lồ.
239
+ - Phụ thuộc sâu vào LangChain dẫn đến việc call stack sâu và khó debug khi xảy ra lỗi nội tại.
240
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
241
+ - **Tương thích cao về mặt khái niệm:** Mô hình Hierarchical Process và CrewAI Flows tương đồng với cấu trúc phân cấp hiện tại của Synapse-Hub giữa Orchestrator và các chuyên gia phụ trợ.
242
+
243
+ ---
244
+
245
+ ### 2.8 Nhóm 8: DSPy v2 (MIPROv2) — Tối Ưu Hóa Siêu Tham Số Prompt & Few-Shot Thuật Toán
246
+ - **URL GitHub chính thức:** `https://github.com/stanfordnlp/dspy`
247
+ - **Tổ chức / Tác giả chính:** Stanford NLP Group (Omar Khattab, Matei Zaharia và cộng sự).
248
+ - **Số sao GitHub:** ~24.500+ stars | **Giấy phép:** MIT | **Trạng thái:** Phiên bản v2.5+ đang là chuẩn mực hàng đầu về biên dịch và tối ưu hóa prompt có thể lập trình.
249
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
250
+ - *MIPROv2 (Multiprompt Instruction PRoposal Optimizer v2):* Bước nhảy vọt so với các bộ tối ưu sơ khai (như `BootstrapFewShot`). MIPROv2 thực hiện việc **tối ưu hóa đồng thời cả chỉ thị câu lệnh tự nhiên (instructions) VÀ tập hợp các ví dụ mẫu (few-shot demonstrations)** cho toàn bộ chuỗi mắt xích ngôn ngữ nhiều giai đoạn.
251
+ - *Quy trình Tối ưu hóa 3 Giai đoạn:*
252
+ 1. *Khởi tạo Vết Thực thi (Trace Bootstrapping):* Chạy chương trình chưa tối ưu trên tập dữ liệu huấn luyện, ghi nhận và sàng lọc các vết thực thi thỏa mãn hàm chấm điểm nghiệp vụ (`metric`).
253
+ 2. *Đề xuất Chỉ thị Dựa trên Bối cảnh (Grounded Instruction Proposal):* Sử dụng một mô hình đề xuất (`prompt_model`) để phân tích mã chữ ký, luồng dữ liệu và vết lỗi, tạo ra tập ứng viên các chỉ thị chi tiết bám sát thực tế.
254
+ 3. *Tối ưu hóa Bayes (Bayesian Optimization via Optuna):* Coi các chỉ thị và ví dụ mẫu như các siêu tham số rời rạc trong không gian tìm kiếm. Sử dụng thuật toán TPE (Tree-structured Parzen Estimator) của Optuna để tìm kiếm cấu hình prompt toàn cục tối ưu hóa điểm số kiểm thử.
255
+ - *Phân bổ Mô hình Bất đối xứng:* Cho phép sử dụng một mô hình cực mạnh (như Claude 3.5 Sonnet / GPT-4o) để biên dịch prompt cho một mô hình nhỏ gọn, chi phí thấp (như GPT-4o-mini / Haiku) chạy thực tế trong sản xuất.
256
+ - **Ưu điểm nổi bật:**
257
+ - Thay thế hoàn toàn phương pháp "prompt engineering" thủ công, cảm tính bằng quy trình toán học tối ưu hóa có thể lặp lại và đo lường được.
258
+ - Giúp tăng độ chính xác của các ca sinh mã hoặc chẩn đoán lỗi từ 10% đến 25% mà không làm thay đổi cấu trúc mã nguồn.
259
+ - **Hạn chế & Điểm gãy (Failure Modes):**
260
+ - Chi phí huấn luyện (Compilation Cost): Chạy một vòng tối ưu MIPROv2 đòi hỏi hàng trăm lượt gọi LLM, có thể tốn từ $5 đến $20 cho mỗi lần biên dịch.
261
+ - Bắt buộc phải chuẩn bị một tập dữ liệu gán nhãn mẫu (50–200 ca kiểm thử) và một hàm đánh giá (metric) hoàn toàn khách quan.
262
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
263
+ - **Cộng hưởng Đặc biệt Mạnh mẽ:** Nâng cấp từ DSPy v1 hiện tại của Synapse-Hub lên MIPROv2 cho phép tự động tối ưu hóa prompt sinh Page Class và prompt phân tích lỗi dựa trên hàm mất mát đột biến AST của `micro_mutator.py`.
264
+
265
+ ---
266
+
267
+ ### 2.9 Nhóm 9: Agentless — Bản Địa Hóa Lỗi Phân Tầng & Sửa Mã Không Dùng Vòng Lặp
268
+ - **URL GitHub chính thức:** `https://github.com/OpenAutoCoder/Agentless`
269
+ - **Tổ chức / Tác giả chính:** Nhóm OpenAutoCoder / Đại học Illinois Urbana-Champaign (UIUC - Chunqiu Steven Xia, Yuxiang Wei, Lingming Zhang).
270
+ - **Số sao GitHub:** ~2.100+ stars | **Giấy phép:** MIT | **Trạng thái:** Dự án nghiên cứu đột phá, dẫn đầu bảng xếp hạng SWE-bench với chi phí tối thiểu.
271
+ - **Kiến trúc cốt lõi & Cơ chế vận hành:**
272
+ - *Triết lý Phi tác nhân (Anti-Agentic Philosophy):* Bác bỏ hoàn toàn việc sử dụng các vòng lặp tác nhân mở, cấm việc cho LLM gõ lệnh shell tự do hoặc tổ chức tranh luận đa tác nhân. Thay vào đó, áp dụng một quy trình xác định 3 pha cực kỳ nghiêm ngặt:
273
+ 1. *Pha 1: Bản địa hóa Lỗi Phân tầng (Hierarchical Fault Localization):*
274
+ - *Pha 1a (Mức Tệp):* Dùng khung xương mã (skeleton) và LLM để chọn ra 1–3 tệp khả nghi nhất từ mô tả lỗi.
275
+ - *Pha 1b (Mức Lớp/Hàm):* Phân tích cây cú pháp trừu tượng (AST) của các tệp đã chọn, yêu cầu LLM xác định cấu trúc hàm/lớp gây lỗi.
276
+ - *Pha 1c (Mức Dòng cụ thể):* Khoanh vùng chính xác khoảng dòng ($N \le 10$ dòng) cần can thiệp sửa chữa.
277
+ 2. *Pha 2: Phát sinh Bản vá Song song (Candidate Patch Generation):* Gọi LLM một lần duy nhất để lấy mẫu đồng thời 3–5 bản vá git diff cục bộ chỉ nhắm vào khoảng dòng đã khoanh vùng.
278
+ 3. *Pha 3: Xác thực & Xếp hạng Bản vá (Patch Validation & Ranking):* Chạy trực tiếp bộ kịch bản kiểm thử hồi quy để kiểm tra từng bản vá. Bản vá nào vượt qua toàn bộ kịch bản kiểm thử với diff ngắn nhất sẽ được chấp nhận ngay lập tức.
279
+ - **Ưu điểm nổi bật:**
280
+ - **Chi phí cực thấp:** Sửa một lỗi thực tế trên GitHub chỉ tốn khoảng $0,34 đến $0,70, rẻ hơn từ 5 đến 10 lần so với các hệ sinh thái tác nhân phức tạp như SWE-agent ($3–$5) hay Devin ($10+).
281
+ - Loại bỏ hoàn toàn hiện tượng lặp vô tận, ảo giác gọi công cụ hoặc phá hỏng mã nguồn ngoài phạm vi cho phép.
282
+ - **Hạn chế & Điểm gãy (Failure Modes):**
283
+ - Tính phụ thuộc vào Pha 1: Nếu khâu bản địa hóa lỗi phân tầng xác định sai dòng hoặc sai tệp, toàn bộ quá trình sửa lỗi tiếp theo chắc chắn thất bại.
284
+ - Không phù hợp cho các tác vụ phát triển tính năng mới từ đầu mà chỉ tối ưu tuyệt đối cho bảo trì, sửa lỗi mã nguồn có sẵn.
285
+ - **Đánh giá Giá trị đối với Enterprise Software QA:**
286
+ - **Sự Trùng khớp Hoàn hảo với Tinh thần Synapse-Hub:** Hiện thân tuyệt đối của nguyên tắc *Lean Senior Developer (7-Rung Ladder & YAGNI)*: "Mã nguồn tốt nhất là mã không cần viết." Áp dụng Agentless vào việc sửa chữa Page Class và cập nhật locator sẽ giúp Synapse-Hub cắt giảm tới 80% chi phí token và thời gian thực thi so với các vòng lặp phản tư K=3 hiện tại.
287
+
288
+ ---
289
+
290
+ ### 2.10 Nhóm 10: Các Framework Kiểm Thử Web Chuyên Biệt
291
+
292
+ #### 2.10.1 LaVague (Large Action Model for Web Automation)
293
+ - **URL GitHub chính thức:** `https://github.com/lavague-ai/LaVague` | **Số sao:** ~6.400+ stars | **Giấy phép:** Apache-2.0.
294
+ - **Kiến trúc cốt lõi:**
295
+ - Chia tách thành hai khối xử lý độc lập:
296
+ 1. *World Model:* Tiếp nhận mục tiêu người dùng và trạng thái trang web (DOM/AOM/Screenshot), sinh ra các bước hành động trừu tượng logic.
297
+ 2. *Action Engine:* Biên dịch các bước trừu tượng đó thành mã tự động hóa Playwright hoặc Selenium bằng Python trực tiếp.
298
+ - Tính năng **LaVague QA**: Cho phép nhập khẩu các đặc tả hành vi BDD/Gherkin và tự động chuyển đổi thành các kịch bản kiểm thử Playwright có khả năng tự phục hồi khi giao diện thay đổi cấu trúc DOM.
299
+ - **Giá trị QA:** Là tài liệu tham khảo xuất sắc để nâng cấp kỹ năng `clean-pom-crafter` và `lam-script-generator` của Synapse-Hub.
300
+
301
+ #### 2.10.2 WebVoyager (Multimodal Web Agent)
302
+ - **URL GitHub chính thức:** `https://github.com/MinorJerry/WebVoyager` | **Số sao:** ~1.100+ stars | **Giấy phép:** Apache-2.0.
303
+ - **Kiến trúc cốt lõi:** Tác nhân web đa phương thức đầu-cuối (End-to-End Multimodal) ứng dụng kỹ thuật Set-of-Mark (SoM) Prompting. Hệ thống vẽ các hộp giới hạn có đánh số lên ảnh chụp giao diện trước khi đưa vào mô hình thị giác (Vision LLM), giúp tác nhân tương tác chính xác vào các phần tử giao diện Canvas, SVG hoặc các webapp phức tạp không có thuộc tính DOM tường minh.
304
+ - **Giá trị QA:** Cung cấp giải pháp cứu cánh cho việc kiểm thử hồi quy trực quan và kiểm thử các hệ thống Web GIS, biểu đồ phức tạp mà cây DOM thông thường bị che khuất.
305
+
306
+ #### 2.10.3 AgentBench (Multi-Environment Agent Benchmark)
307
+ - **URL GitHub chính thức:** `https://github.com/THUDM/AgentBench` | **Số sao:** ~3.800+ stars | **Giấy phép:** Apache-2.0.
308
+ - **Kiến trúc cốt lõi:** Bộ khung benchmark chuẩn hóa đánh giá năng lực tác nhân trên 8 môi trường tương tác độc lập: Hệ điều hành (Ubuntu Bash), Cơ sở dữ liệu (SQL), Đồ thị tri thức, Duyệt web và Mua sắm trực tuyến.
309
+ - **Giá trị QA:** Bản thiết kế hoàn chỉnh để mở rộng năng lực benchmark của Synapse-Hub từ mức gọi lệnh CLI đơn giản lên mức tương tác đa môi trường toàn diện.
310
+
311
+ ---
312
+
313
+ ## MỤC 3: ĐÁNH GIÁ THỰC TRẠNG SYNAPSE-HUB & 6 KHOẢNG TRỐNG NĂNG LỰC (GAPS A-F)
314
+
315
+ Sau khi đối chiếu thực trạng mã nguồn của Synapse-Hub (thông qua kiểm toán các tệp `tools/`, `.agents/skills/`, `.agents/rules/` và `docs/ARCHITECTURE.md`) với các công nghệ tiên tiến đã khảo sát, nhóm nghiên cứu xác định **6 khoảng trống năng lực trọng yếu** cần được giải quyết:
316
+
317
+ ```mermaid
318
+ flowchart TD
319
+ subgraph SynapseCurrent["Thực Trạng Synapse-Hub Hiện Tại"]
320
+ A_curr["Cache SQLite Phẳng<br/>(cache_resolver.py, skill_vault.py)"]
321
+ B_curr["Benchmark CLI Tĩnh<br/>(synapse_qa_bench.py)"]
322
+ C_curr["Sinh Script Tuyến Tính FSM<br/>(generate_tc_from_story.py)"]
323
+ D_curr["Khoảng Trống Bimodal:<br/>Regex 0-token vs Swarm K=3"]
324
+ E_curr["Ủy Quyền Đồng Bộ CrewAI<br/>(multi-agent-optimize)"]
325
+ F_curr["Chữ Ký DSPy v1 Tĩnh<br/>(dspy_qa_signatures.py)"]
326
+ end
327
+
328
+ subgraph Gaps["6 Khoảng Trống Năng Lực Cốt Lõi"]
329
+ GapA["<b>Gap A:</b> Thiếu Bộ Nhớ Phân Tầng Dài Hạn<br/>& Cơ Chế Chống Trôi Dạt Phiên Bản AUT"]
330
+ GapB["<b>Gap B:</b> Thiếu Môi Trường Web Gym Chuẩn Hóa<br/>& Đánh Giá Dựa Trên Trạng Thái DB"]
331
+ GapC["<b>Gap C:</b> Tư Duy Tuyến Tính Thiếu Rẽ Nhánh<br/>Trong Kiểm Thử Thăm Dò Phức Tạp"]
332
+ GapD["<b>Gap D:</b> Lãng Phí Token Sửa Lỗi Do Thiếu<br/>Quy Trình Khoanh Vùng Cục Bộ 3 Pha"]
333
+ GapE["<b>Gap E:</b> Nghẽn Cổ Chai Điều Phối Do Thiếu<br/>Kiến Trúc Đa Tác Nhân Actor Bất Đồng Bộ"]
334
+ GapF["<b>Gap F:</b> Prompt Chưa Được Tối Ưu Hóa<br/>Bằng Thuật Toán Bayes Với Metric Đột Biến"]
335
+ end
336
+
337
+ A_curr --> GapA
338
+ B_curr --> GapB
339
+ C_curr --> GapC
340
+ D_curr --> GapD
341
+ E_curr --> GapE
342
+ F_curr --> GapF
343
+ ```
344
+
345
+ ---
346
+
347
+ ### 3.1 Gap A: Thiếu Bộ Nhớ Phân Tầng Dài Hạn & Cơ Chế Chống Trôi Dạt Phiên Bản AUT
348
+ - **Hiện trạng mã nguồn:**
349
+ - `tools/cache_resolver.py` (dòng 298–360) và `tools/skill_vault.py` (dòng 124–136) lưu trữ tri thức vào các bảng SQLite phẳng (`healing_cache`, `page_primitives`, `lessons_learned`).
350
+ - Việc tìm kiếm tri thức chủ yếu dùng khớp chuỗi chính xác hoặc so khớp tỉ lệ ký tự `difflib.SequenceMatcher`.
351
+ - **Khoảng trống & Rủi ro QA:**
352
+ 1. *Thiếu phân tầng bộ nhớ:* Không có sự phân định rõ ràng giữa Bộ nhớ Làm việc (Core Memory - chứa cấu hình môi trường test, feature flags hiện tại), Bộ nhớ Gợi nhớ (Recall Memory - lịch sử log bước chạy vừa thực hiện) và Bộ nhớ Lưu trữ (Archival Memory - tri thức tự sửa locator qua hàng trăm phiên chạy).
353
+ 2. *Hiện tượng Thối rữa Bộ nhớ (Memory Rot):* Khi ứng dụng web nâng cấp giao diện từ bản v2.1 sang v2.2, các locator cũ trong `skill_vault.db` và các bản vá trong `healing_cache` trở nên lỗi thời nhưng vẫn tồn tại vĩnh viễn trong cơ sở dữ liệu. Khi có lỗi xảy ra, hệ thống tiếp tục áp dụng các bản vá cũ gây lỗi giả (false cache hit).
354
+ 3. *Mất ngữ cảnh giữa các phiên:* Khi một subagent kết thúc phiên làm việc, toàn bộ ngữ cảnh trao đổi bị xóa bỏ; subagent mới được triệu hồi phải đọc lại toàn bộ tệp tĩnh từ đầu mà không nắm được lịch sử vì sao kịch bản đó từng chập chờn vào tuần trước.
355
+
356
+ ### 3.2 Gap B: Thiếu Môi Trường Web Gym Chuẩn Hóa & Đánh Giá Dựa Trên Trạng Thái DB
357
+ - **Hiện trạng mã nguồn:**
358
+ - `tools/synapse_qa_bench.py` (dòng 36–93) chỉ đánh giá việc gọi đúng tên công cụ CLI và tham số trên 8 ca kiểm thử tĩnh mô phỏng theo Gorilla BFCL.
359
+ - `tools/micro_mutator.py` chỉ đánh giá độ nhạy assertion trên các chuỗi mã nguồn tĩnh.
360
+ - **Khoảng trống & Rủi ro QA:**
361
+ 1. *Thiếu môi trường benchmark động:* Tác nhân kiểm thử web (`live-explorer`, `playwright-live-interaction`) phải tương tác với DOM động, Shadow DOM, iframe, AJAX. Synapse-Hub hoàn toàn thiếu một môi trường thực nghiệm có thể tái lập (như BrowserGym/WebArena) để đo lường năng lực tương tác thực tế của tác nhân.
362
+ 2. *Không thể định lượng bước tiến kỹ năng:* Khi cải tiến mã nguồn JavaScript trong `browser_helpers.js` hoặc nâng cấp prompt trong `clean-pom-crafter`, đội ngũ QA không có cách nào đo lường khách quan xem tỷ lệ tương tác thành công tăng lên hay giảm đi bao nhiêu phần trăm.
363
+ 3. *Xác minh bề mặt (Surface Assertions):* Hiện tại hệ thống chỉ kiểm tra các thông điệp hiển thị trên UI mà chưa có cơ chế kiểm tra chéo xem thao tác trên giao diện có thực sự làm thay đổi bản ghi tương ứng trong cơ sở dữ liệu backend hay không.
364
+
365
+ ### 3.3 Gap C: Tư Duy Tuyến Tính Thiếu Rẽ Nhánh Trong Kiểm Thử Thăm Dò Phức Tạp
366
+ - **Hiện trạng mã nguồn:**
367
+ - `tools/generate_tc_from_story.py` (dòng 93–99) sử dụng các lệnh kiểm tra từ khóa tuyến tính (`is_delete`, `is_edit`, `is_search`) để sinh ra duy nhất một kịch bản kiểm thử thẳng hàng.
368
+ - Kỹ năng điều phối `.agents/skills/agent-orchestration-multi-agent-optimize/SKILL.md` áp đặt một máy trạng thái hữu hạn chạy tuần tự một chiều.
369
+ - **Khoảng trống & Rủi ro QA:**
370
+ 1. *Bỏ sót các ngóc ngách nghiệp vụ kết hợp:* Các hệ thống phần mềm doanh nghiệp (ERP, CRM, Fintech) chứa đựng đồ thị trạng thái phức tạp. Việc suy luận theo chuỗi tuyến tính chỉ bao quát được đường chạy thuận lợi (happy path), hoàn toàn bỏ sót các trường hợp biên xảy ra khi người dùng quay lui màn hình, hủy ngang giao dịch, hoặc thao tác đa tab.
371
+ 2. *Thiếu cơ chế chấm điểm và quay lui (Backtracking):* Khi thực hiện kiểm thử thăm dò (Exploratory Testing), tác nhân không thể ước lượng được rủi ro của từng nhánh hành động trên trang web để ưu tiên kiểm thử nhánh có nguy cơ lỗi cao nhất, và không thể hoàn tác trạng thái trình duyệt khi đi vào ngõ cụt.
372
+
373
+ ### 3.4 Gap D: Lãng Phí Token Sửa Lỗi Do Thiếu Quy Trình Khoanh Vùng Cục Bộ 3 Pha
374
+ - **Hiện trạng mã nguồn:**
375
+ - `tools/auto_heal.py` (dòng 89–140) vận hành theo mô hình phân cực cực đoan (Bimodal Gap):
376
+ - Nếu lỗi trùng khớp với 6 mẫu regex có sẵn trong `cache_resolver.py`, hệ thống áp dụng bản vá tĩnh với chi phí 0 token.
377
+ - Nếu không khớp, hệ thống lập tức kích hoạt toàn bộ swarm đa tác nhân đắt đỏ với vòng lặp phản tư Noah Shinn $K=3$ trials (`auto_heal_reflexion.py`), huy động nhiều subagent đối thoại qua lại.
378
+ - **Khoảng trống & Rủi ro QA:**
379
+ 1. *Lãng phí tài nguyên khủng khiếp:* Trong thực tế doanh nghiệp, 80% lỗi kiểm thử là các lỗi cục bộ nhỏ (thay đổi thuộc tính locator, trôi dạt thời gian timeout, lệch giá trị mong đợi). Việc kích hoạt một swarm đa tác nhân tranh luận tốn từ 40.000 đến 80.000 tokens và mất 1–2 phút cho mỗi lỗi đơn giản.
380
+ 2. *Rủi ro sinh thêm lỗi mới (Hallucination Drift):* Đàm thoại đa tác nhân không bị ràng buộc phạm vi thường có xu hướng cấu trúc lại toàn bộ Page Class đang chạy tốt, tự ý thêm vào các hàm tiện ích rườm rà không ai yêu cầu, vi phạm nguyên tắc YAGNI.
381
+ 3. *Thiếu quy trình Agentless 3 pha:* Thiếu quy trình phân tầng tự động: (1) Khoanh vùng dòng lỗi từ stacktrace, (2) Lấy mẫu 3 bản vá ngắn song song, (3) Chạy test xác thực chọn bản vá vượt qua ngay lập tức mà không cần một câu chat nào.
382
+
383
+ ### 3.5 Gap E: Nghẽn Cổ Chai Điều Phối Do Thiếu Kiến Trúc Đa Tác Nhân Actor Bất Đồng Bộ
384
+ - **Hiện trạng mã nguồn:**
385
+ - Kỹ năng điều phối `.agents/skills/agent-orchestration-multi-agent-optimize/SKILL.md` (dòng 68–89) áp đặt cơ chế ủy quyền đồng bộ quản lý - nhân viên (mô hình CrewAI sơ khai). Các tác nhân cấp dưới chỉ được nói chuyện với quản lý, tuyệt đối không được trao đổi ngang hàng, và các giai đoạn thực thi diễn ra tuần tự từng bước một (lock-step).
386
+ - Việc phối hợp giữa các tác nhân dựa hoàn toàn vào việc ghi tệp Markdown (`handoff.md`, `progress.md`) xuống ổ đĩa.
387
+ - **Khoảng trống & Rủi ro QA:**
388
+ 1. *Nghẽn độ trễ khi chạy bộ kiểm thử lớn:* Khi chạy bộ kiểm thử hồi quy gồm hàng trăm kịch bản, nếu một kịch bản bị lỗi, toàn bộ luồng điều phối bị chặn đứng để chờ tác nhân phân tích lỗi hoàn thành mới chạy tiếp ca kiểm thử sau.
389
+ 2. *Không xử lý được sự kiện dòng thời gian thực:* Các tác nhân không thể phản ứng tức thời khi máy chạy kiểm thử phát ra cảnh báo lỗi mạng 500 hay tràn bộ nhớ trong quá trình chạy, mà buộc phải đợi toàn bộ kịch bản chạy xong mới đọc lại tệp log.
390
+ 3. *Thiếu khả năng phân mảnh (Sharding) linh hoạt:* Không thể dễ dàng khởi tạo một nhóm 8 Actor chạy Playwright headless độc lập cùng với 1 Actor thu thập dữ liệu viễn thông và 1 Actor tự chữa lành hoạt động song song không phong tỏa lẫn nhau.
391
+
392
+ ### 3.6 Gap F: Prompt Chưa Được Tối Ưu Hóa Bằng Thuật Toán Bayes Với Metric Đột Biến
393
+ - **Hiện trạng mã nguồn:**
394
+ - `tools/dspy_qa_signatures.py` (dòng 64–85) định nghĩa các chữ ký tĩnh bằng mã Python và bộ biên dịch dự phòng ngoại tuyến `OfflineSignatureCompiler` dựa trên regex.
395
+ - `tools/textgrad_mutation_optimizer.py` (dòng 105–140) tổng hợp các câu lệnh assertion dựa trên các mẫu chuỗi đơn giản.
396
+ - Thư viện DSPy thực tế chỉ được bọc trong khối `try/except ImportError` mà chưa hề được nối với bất kỳ bộ tối ưu hóa tham số (teleprompter) thực thụ nào.
397
+ - **Khoảng trống & Rủi ro QA:**
398
+ 1. *Prompt viết tay dễ vỡ (Brittle Handcrafted Prompts):* Các câu lệnh chỉ thị cho tác nhân sinh mã kiểm thử và chẩn đoán lỗi được viết theo kinh nghiệm chủ quan của kỹ sư, chưa từng được kiểm chứng hay tinh chỉnh qua thuật toán.
399
+ 2. *Đứt gãy giữa Chữ ký DSPy và Bộ tối ưu TextGrad:* Công cụ TextGrad đo lường mất mát dựa trên đột biến AST (`micro_mutator.py`), nhưng chỉ dùng để nối thêm câu lệnh `assert` vào tệp kiểm thử riêng lẻ mà không truyền ngược hàm mất mát đó về để tối ưu hóa vĩnh viễn prompt của hệ thống.
400
+ 3. *Thiếu tối ưu hóa liên kết MIPROv2:* Không thể tự động lựa chọn tập ví dụ mẫu (few-shot demonstrations) xuất sắc nhất từ `skill_vault.db` để đưa vào prompt nhằm tối đa hóa tỷ lệ diệt đột biến với số lượng token ít nhất.
401
+
402
+ ---
403
+
404
+ ## MỤC 4: MA TRẬN SO SÁNH ĐA CHIỀU (COMPARATIVE EVALUATION MATRIX)
405
+
406
+ Bảng ma trận dưới đây tổng hợp đánh giá định lượng và định tính đối với 10 nhóm repository ứng viên dựa trên 6 chiều kích kỹ thuật cốt lõi:
407
+ 1. **QA Relevance (1–5):** Mức độ trực tiếp và giá trị gia tăng đối với kiểm thử phần mềm doanh nghiệp.
408
+ 2. **Architectural Modularity:** Mức độ độc lập kiến trúc, khả năng bóc tách thuật toán lõi.
409
+ 3. **Token & Compute Overhead:** Chi phí tiêu thụ token và tài nguyên phần cứng vận hành.
410
+ 4. **Autonomous Healing Power:** Năng lực tự chẩn đoán và tự động khắc phục lỗi kịch bản/bộ định vị.
411
+ 5. **Learning Paradigm:** Phương pháp học tập và thích ứng của mô hình tác nhân.
412
+ 6. **Ease of Integration:** Mức độ thuận tiện khi chuyển đổi vào kiến trúc Python/CLI của Synapse-Hub.
413
+
414
+ ### 4.1 Bảng Ma Trận So Sánh Tổng Hợp
415
+
416
+ | Nhóm Ứng Viên | QA Relevance (1–5) | Tính Module Hóa Kiến Trúc | Chi Phí Token & Điện Toán | Năng Lực Tự Sửa Lỗi (Healing) | Phương Thức Học Tập / Thích Ứng | Độ Dễ Tích Hợp Vào Synapse |
417
+ |---|:---:|---|---|---|---|---|
418
+ | **1. Letta (MemGPT)** | ⭐⭐⭐⭐⭐ (5.0) | Cao (Phân tầng MemFS, API bộ nhớ rõ ràng) | Trung bình - Cao (Tốn token gọi hàm đọc/ghi) | Cao (Nhớ lịch sử flaky & DOM qua các phiên) | Tự chỉnh sửa bộ nhớ (Self-Editing Memory Paging) | Khá (Cần SQLite + cấu trúc phân tầng cục bộ) |
419
+ | **2. SWE-agent** | ⭐⭐⭐⭐⭐ (5.0) | Rất cao (Chuẩn ACI hoàn toàn độc lập) | Thấp - Trung bình (Tiết kiệm ngữ cảnh nhờ xem 50 dòng) | Rất cao (Kiểm tra cú pháp trước khi ghi đĩa) | Phản hồi môi trường định hướng ACI | Rất dễ (Viết bằng Python thuần, tích hợp ngay) |
420
+ | **3. OpenHands** | ⭐⭐⭐⭐☆ (4.5) | Rất cao (Phân tách EventStream, Runtime) | Cao (Đòi hỏi tài nguyên Docker sandbox) | Cao (Tua lại lịch sử để định vị lỗi) | Tác nhân thực thi mã (CodeAct) + Vi tác nhân | Trung bình (Cần tinh giản kiến trúc bỏ Docker) |
421
+ | **4. BrowserGym / WebArena** | ⭐⭐⭐⭐⭐ (5.0) | Cao (Giao diện Gym chuẩn cho Playwright) | Trung bình (Tương tác web theo lượt) | Trung bình (Đóng vai trò Oracle kiểm chứng) | Đánh giá dựa trên trạng thái DB thực tế | Khá (Cần đóng gói các webapp mock cục bộ) |
422
+ | **5. Tree / Graph of Thoughts** | ⭐⭐⭐⭐☆ (4.0) | Rất cao (Thuật toán tìm kiếm đồ thị thuần túy) | Rất cao (Bùng nổ token do rẽ nhiều nhánh) | Rất cao (Phân tích lỗi đa giả thuyết sâu) | Tìm kiếm suy luận có chủ ý (Deliberative Search) | Rất dễ (Triển khai bằng thuật toán BFS/DFS Python) |
423
+ | **6. AutoGen v0.4+ (AG2)** | ⭐⭐⭐☆☆ (3.5) | Cao (Mô hình Actor phân tán) | Trung bình (Phụ thuộc vào tần suất gửi tin) | Trung bình (Tự sửa lỗi qua phân vai) | Truyền tin bất đồng bộ hướng sự kiện | Trung bình (Cần xây dựng broker tin nhắn nhẹ) |
424
+ | **7. CrewAI** | ⭐⭐⭐☆☆ (3.5) | Trung bình (Dính chặt vào LangChain) | Cao (Dễ rơi vào đàm thoại vòng tròn lãng phí) | Thấp - Trung bình (Dễ bị lệch hướng hội thoại) | Phân quyền vai trò và luồng việc tuần tự | Khó (Dễ gây xung đột phụ thuộc thư viện) |
425
+ | **8. DSPy v2 (MIPROv2)** | ⭐⭐⭐⭐⭐ (5.0) | Rất cao (Biên dịch prompt độc lập) | Thấp khi suy luận, Cao khi huấn luyện | Rất cao (Tối ưu prompt sinh assertion diệt đột biến) | Tối ưu hóa Bayes (Optuna TPE Optimizer) | Rất dễ (Tích hợp vào `dspy_qa_signatures.py`) |
426
+ | **9. Agentless** | ⭐⭐⭐⭐⭐ (5.0) | Tuyệt đối (Quy trình 3 pha không vòng lặp) | Cực kỳ thấp (Rẻ hơn 70–80% so với Agent) | Tuyệt vời (Khoanh vùng dòng và sửa chính xác) | Lấy mẫu song song có ràng buộc cú pháp | Cực kỳ dễ (Chuyển thành công cụ CLI hoàn hảo) |
427
+ | **10. LaVague / WebVoyager** | ⭐⭐⭐⭐☆ (4.0) | Cao (Tách biệt World Model và Action Engine) | Trung bình (Tốn token xử lý hình ảnh SoM) | Cao (Chuyển đổi BDD sang Playwright tự lành) | Mô hình Hành động Lớn (Large Action Model) | Khá (Tích hợp vào kỹ năng Clean POM) |
428
+
429
+ ---
430
+
431
+ ### 4.2 Phân Tích Chiều Sâu Các Trục So Sánh Trọng Yếu
432
+
433
+ #### Trục 1: Tối ưu Hóa Ngân sách Token (Token Economy)
434
+ - **Agentless** dẫn đầu tuyệt đối về hiệu quả kinh tế. Thay vì duy trì một phiên đàm thoại kéo dài hàng chục lượt với chi phí lên tới $3–$5 cho mỗi lỗi kiểm thử, Agentless chỉ tốn đúng 2 lượt gọi mô hình (khoanh vùng và lấy mẫu bản vá) với chi phí dưới $0,50.
435
+ - **SWE-agent ACI** bổ trợ xuất sắc cho việc tiết kiệm token nhờ cơ chế hiển thị tệp theo cửa sổ 50 dòng, triệt tiêu hoàn toàn thói quen nguy hại là đọc toàn bộ tệp Page Class 2.000 dòng vào ngữ cảnh.
436
+ - Ngược lại, **Tree-of-Thoughts** và **CrewAI Hierarchical** tiêu tốn lượng token khổng lồ. Do đó, nguyên tắc thiết kế của Synapse-Hub là: *Chỉ kích hoạt Tree-of-Thoughts cho các luồng nghiệp vụ kinh doanh tối quan trọng (Critical Financial/Checkout Flows), và sử dụng Agentless làm cơ chế mặc định cho 90% các ca bảo trì kịch bản hàng ngày.*
437
+
438
+ #### Trục 2: Độ Tin Cậy & Khả Năng Kiểm Chứng Thực Tế (Empirical Verifiability)
439
+ - **BrowserGym / WebArena** mang lại bước ngoặt về tính chân thực. Trong kiểm thử phần mềm, một ca kiểm thử được coi là thành công không phải vì giao diện hiện lên dòng chữ "Đã đặt hàng thành công", mà là vì bản ghi đơn hàng đã thực sự được chèn vào bảng `orders` trong cơ sở dữ liệu với trạng thái `PENDING_PAYMENT`. Mô hình kiểm tra trạng thái cơ sở dữ liệu ngầm của WebArena là chuẩn mực mà Synapse-Hub cần tiếp thu để loại bỏ triệt để các kết quả kiểm thử đạt giả mạo (fake passes).
440
+
441
+ #### Trục 3: Khả Năng Thích Ứng Thuật Toán (Algorithmic Adaptability)
442
+ - **DSPy v2 (MIPROv2)** chuyển đổi toàn bộ tư duy viết prompt từ "thủ công mỹ nghệ" sang "kỹ nghệ thuật toán". Khi phiên bản mô hình AI nền tảng thay đổi (ví dụ từ GPT-4o sang Claude 3.5 Sonnet hoặc các mô hình nội bộ), các prompt viết tay thường bị giảm sút độ chính xác do độ nhạy cú pháp khác nhau. MIPROv2 giải quyết triệt để vấn đề này bằng cách tự động chạy tối ưu hóa Bayes trên tập dữ liệu kiểm thử để tìm ra bộ prompt hoàn hảo nhất cho chính mô hình mới đó.
443
+
444
+ ---
445
+
446
+ ## MỤC 5: BẢN THIẾT KẾ KIẾN TRÚC TÍCH HỢP SYNAPSE-HUB (TRIAD TRANSLATION MODEL)
447
+
448
+ Để tiếp thu tinh hoa từ các repository khảo sát mà không làm phá vỡ kiến trúc decoupled, không gây phình to thư viện phụ thuộc và không vi phạm các tiêu chuẩn khắt khe của Synapse-Hub, nhóm nghiên cứu đề xuất **Mô hình Chuyển đổi Bộ ba (Triad Translation Model)**.
449
+
450
+ ### 5.1 Nguyên Lý Mô Hình Chuyển Đổi Bộ Ba (Triad Translation Model)
451
+ Mỗi cơ chế kỹ thuật từ kho mã nguồn bên ngoài khi tích hợp vào Synapse-Hub bắt buộc phải được phân rã thành đúng 3 thực thể độc lập:
452
+ 1. **Custom Skill (`.agents/skills/<tên-kỹ-năng>/SKILL.md`):** Quy định giao thức hoạt động, chỉ thị hệ thống và quy tắc ứng xử của tác nhân khi kích hoạt tính năng đó.
453
+ 2. **Deterministic CLI Tool (`tools/<tên_công_cụ>.py`):** Công cụ dòng lệnh độc lập viết bằng Python chuẩn, thực thi nhanh, không phát sinh token nếu có thể giải quyết bằng thuật toán xác định, trả về dữ liệu định dạng JSON chuẩn và bảo đảm 100% UTF-8 No BOM.
454
+ 3. **Definition-of-Done Quality Gate (`tools/verify_all.py` Gates 10–17):** Cổng chất lượng định lượng tự động kiểm tra tính toàn vẹn, chặn đứng mọi vi phạm trước khi mã nguồn được phép bàn giao.
455
+
456
+ ```mermaid
457
+ classDiagram
458
+ class ExternalRepository {
459
+ +String Mechanism
460
+ +Paper / Algorithm
461
+ }
462
+ class TriadTranslationModel {
463
+ <<Design Pattern>>
464
+ }
465
+ class CustomSkill {
466
+ +SKILL.md
467
+ +Agent Operating Instructions
468
+ +Frontmatter Metadata
469
+ }
470
+ class StandaloneCLITool {
471
+ +Python CLI Script
472
+ +Strict JSON I/O Contract
473
+ +Local / Offline Deterministic
474
+ }
475
+ class DoDQualityGate {
476
+ +verify_all.py Integration
477
+ +Automated PASS/FAIL Logic
478
+ +Pre-Commit / Pre-Handoff Guard
479
+ }
480
+ ExternalRepository --> TriadTranslationModel : Distill Mechanism
481
+ TriadTranslationModel --> CustomSkill : 1. Operational Protocol
482
+ TriadTranslationModel --> StandaloneCLITool : 2. Deterministic Utility
483
+ TriadTranslationModel --> DoDQualityGate : 3. Quality Verification Gate
484
+ ```
485
+
486
+ ---
487
+
488
+ ### 5.2 Sơ Đồ Kiến Trúc Tổng Thể Toàn Hệ Thống (Master Unified Blueprint)
489
+
490
+ Sơ đồ dưới đây minh họa sự kết nối liền mạch giữa Cổng vào Đơn nhất (Single Front-Door Orchestrator), 5 giai đoạn FSM, 6 phân hệ tự tiến hóa sẵn có và 8 phân hệ mở rộng mới được tích hợp thông qua Mô hình Bộ ba:
491
+
492
+ ```mermaid
493
+ flowchart TD
494
+ subgraph SingleFrontDoor["CỔNG VÀO ĐƠN NHẤT & MÁY TRẠNG THÁI HỮU HẠN 5 GIAI ĐOẠN"]
495
+ Orchestrator["<b>Lead QA Orchestrator</b><br/>(Điều Phối Viên Trưởng)"]
496
+ FSM1["Giai đoạn 1: Discovery<br/>(live-explorer)"]
497
+ FSM2["Giai đoạn 2: Code Synthesis<br/>(pom-crafter)"]
498
+ FSM3["Giai đoạn 3: Headless Execution<br/>(test-runner)"]
499
+ FSM4["Giai đoạn 4: Failure Autopsy & Healing<br/>(failure-analyst)"]
500
+ FSM5["Giai đoạn 5: Final Acceptance DoD<br/>(quality-gatekeeper)"]
501
+
502
+ Orchestrator --> FSM1 --> FSM2 --> FSM3 --> FSM4 --> FSM5
503
+ end
504
+
505
+ subgraph MemoryPersistence["PHÂN HỆ A: LƯU TRỮ TRẠNG THÁI & BỘ NHỚ PHÂN TẦNG"]
506
+ MemOS["<b>Hierarchical Memory OS</b><br/>tools/test_memory_os.py<br/><i>(Lấy cảm hứng từ Letta / MemGPT)</i>"]
507
+ EventStream["<b>Immutable Event Stream</b><br/>tools/qa_event_stream.py<br/><i>(Lấy cảm hứng từ OpenHands)</i>"]
508
+ RevSandbox["<b>Reversible Sandbox</b><br/>tools/reversible_sandbox.py<br/><i>(GoEx LIFO Undo Stack)</i>"]
509
+ end
510
+
511
+ subgraph DeliberationSwarm["PHÂN HỆ B: SUY LUẬN ĐỒ THỊ & ĐIỀU PHỐI ACTOR BẤT ĐỒNG BỘ"]
512
+ ToTTester["<b>Tree/Graph of Thoughts Engine</b><br/>tools/tot_exploratory_tester.py<br/><i>(Lấy cảm hứng từ ToT / GoT)</i>"]
513
+ ActorBroker["<b>Async Actor QA Broker</b><br/>tools/autogen_qa_broker.py<br/><i>(Lấy cảm hứng từ AutoGen v0.4+)</i>"]
514
+ end
515
+
516
+ subgraph OptimizationRepair["PHÂN HỆ C: TỐI ƯU HÓA PROMPT & TỰ SỬA LỖI SIÊU NHẸ"]
517
+ AgentlessPatcher["<b>Agentless 3-Stage Patcher</b><br/>tools/agentless_patcher.py<br/><i>(Lấy cảm hứng từ Agentless)</i>"]
518
+ SWE_ACI["<b>QA Agent-Computer Interface</b><br/>tools/swe_qa_aci.py<br/><i>(Lấy cảm hứng từ SWE-agent ACI)</i>"]
519
+ MIPROTuner["<b>MIPROv2 Assertion Tuner</b><br/>tools/mipro_assertion_tuner.py<br/><i>(Lấy cảm hứng từ DSPy v2)</i>"]
520
+ GymEval["<b>BrowserGym Benchmark Harness</b><br/>tools/browsergym_eval.py<br/><i>(Lấy cảm hứng từ BrowserGym)</i>"]
521
+ end
522
+
523
+ subgraph ExpandedDoDGates["HỆ THỐNG 18 CỔNG CHẤT LƯỢNG ĐỊNH LƯỢNG (tools/verify_all.py)"]
524
+ Gates0_9["<b>Cổng 0–9 Hiện Hữu:</b><br/>Author, UTF-8, Portability, Clean POM, AI-Docs, Cleanup, Security, Infer, Mutation, Collision"]
525
+ Gate10["<b>Gate 10:</b> Memory Integrity & Leak Gate"]
526
+ Gate11["<b>Gate 11:</b> ACI Tool Safety & Confinement Gate"]
527
+ Gate12["<b>Gate 12:</b> Event Stream Determinism Gate"]
528
+ Gate13["<b>Gate 13:</b> Web Navigation & AOM Fidelity Gate"]
529
+ Gate14["<b>Gate 14:</b> Exploratory Branch Completeness Gate"]
530
+ Gate15["<b>Gate 15:</b> Actor Swarm Protocol & Deadlock Gate"]
531
+ Gate16["<b>Gate 16:</b> Compiled Prompt Quality & Drift Gate"]
532
+ Gate17["<b>Gate 17:</b> Agentless Token Budget & Single-Pass Gate"]
533
+ end
534
+
535
+ FSM1 <--> GymEval
536
+ FSM1 <--> EventStream
537
+ FSM2 <--> ToTTester
538
+ FSM2 <--> MIPROTuner
539
+ FSM3 <--> ActorBroker
540
+ FSM3 <--> RevSandbox
541
+ FSM4 <--> AgentlessPatcher
542
+ FSM4 <--> SWE_ACI
543
+ FSM4 <--> MemOS
544
+ FSM5 --> ExpandedDoDGates
545
+ ```
546
+
547
+ ---
548
+
549
+ ### 5.3 Thiết Kế Chi Tiết 8 Bộ Công Cụ Triad Mở Rộng (Gates 10–17)
550
+
551
+ Dưới đây là đặc tả kỹ thuật chi tiết cho 8 công cụ độc lập, kỹ năng đi kèm và cổng chất lượng Definition-of-Done tương ứng:
552
+
553
+ ---
554
+
555
+ #### 5.3.1 Bộ ba 1: Quản Trị Bộ Nhớ Phân Tầng QA (`tools/test_memory_os.py` + Gate 10)
556
+ - **Nguồn cảm hứng:** Letta (MemGPT) & MemFS.
557
+ - **Kỹ năng Tác nhân:** `.agents/skills/qa-memory-os/SKILL.md`.
558
+ - **Mô tả chức năng:**
559
+ - Thiết lập kiến trúc bộ nhớ 3 phân tầng lưu trữ trong SQLite cục bộ (`.agent_memory/qa_memory.db`):
560
+ * *Core Memory Block:* Lưu trữ cấu hình ứng dụng kiểm thử (AUT URL, chuẩn xác thực, phiên bản giao diện).
561
+ * *Recall Memory Log:* Lưu trữ nhật ký tuần tự các bước chạy gần nhất của tác nhân.
562
+ * *Archival Vector Store:* Lưu trữ tri thức tự sửa locator và lịch sử kiểm thử chập chờn dài hạn, tìm kiếm bằng embedding cục bộ hoặc TF-IDF ngữ nghĩa.
563
+ - Tự động gắn nhãn phiên bản AUT (`aut_version: "v2.1"`) để vô hiệu hóa tri thức cũ khi ứng dụng nâng cấp.
564
+ - **Cổng chất lượng DoD:** **Gate 10 — Memory Integrity & Leak Gate**
565
+ - Kiểm tra kích thước tệp cơ sở dữ liệu bộ nhớ không vượt quá 50MB.
566
+ - Quét regex AST bảo đảm không lưu mật khẩu trần, private key hoặc bearer token trong các khối bộ nhớ.
567
+ - Xác nhận tính toàn vẹn của các chỉ mục vector và không có bản ghi mồ côi (orphaned sessions).
568
+ - **Giao diện dòng lệnh (CLI Contract):**
569
+ ```bash
570
+ # Khởi tạo vùng nhớ cho dự án kiểm thử
571
+ python tools/test_memory_os.py init --project-dir <path> --db-path .agent_memory/qa_memory.db
572
+
573
+ # Lưu trữ tri thức vào Archival Memory
574
+ python tools/test_memory_os.py archival-insert \
575
+ --key "LOCATOR_MUTATION" \
576
+ --payload '{"page":"CheckoutPage","old_selector":"#submit-order","new_selector":"button[data-testid=submit]","aut_version":"v2.1"}'
577
+
578
+ # Tìm kiếm ngữ nghĩa trong Archival Memory
579
+ python tools/test_memory_os.py archival-search \
580
+ --query "Checkout submit button locator history" \
581
+ --aut-version "v2.1" \
582
+ --top-k 3 \
583
+ --json
584
+
585
+ # Cập nhật khối Core Memory
586
+ python tools/test_memory_os.py update-core \
587
+ --block "auth_state" \
588
+ --data '{"token_expiry":"2026-11-05T00:00:00Z","storage_state":"storage_state.json"}'
589
+
590
+ # Dọn dẹp rác và tẩy rửa thông tin nhạy cảm
591
+ python tools/test_memory_os.py gc --scrub-secrets --max-age-days 30
592
+ ```
593
+ - **Lược đồ dữ liệu JSON Output (`archival-search`):**
594
+ ```json
595
+ {
596
+ "status": "PASS",
597
+ "query": "Checkout submit button locator history",
598
+ "aut_version": "v2.1",
599
+ "matches_found": 1,
600
+ "results": [
601
+ {
602
+ "id": "mem_arch_9014",
603
+ "similarity_score": 0.912,
604
+ "key": "LOCATOR_MUTATION",
605
+ "timestamp": "2026-11-04T05:30:00Z",
606
+ "payload": {
607
+ "page": "CheckoutPage",
608
+ "old_selector": "#submit-order",
609
+ "new_selector": "button[data-testid=submit]",
610
+ "aut_version": "v2.1",
611
+ "verified_by_test": "tests/checkout.spec.ts"
612
+ }
613
+ }
614
+ ]
615
+ }
616
+ ```
617
+
618
+ ---
619
+
620
+ #### 5.3.2 Bộ ba 2: Giao Diện Người Máy Cho QA (`tools/swe_qa_aci.py` + Gate 11)
621
+ - **Nguồn cảm hứng:** SWE-agent Agent-Computer Interface (ACI).
622
+ - **Kỹ năng Tác nhân:** `.agents/skills/qa-aci-interface/SKILL.md`.
623
+ - **Mô tả chức năng:**
624
+ - Cung cấp giao diện xem tệp phân trang cố định 50 dòng kèm số dòng tường minh để ngăn ngừa tràn cửa sổ ngữ cảnh.
625
+ - Cung cấp bộ sửa mã phẫu thuật kiểm tra đối sánh chính xác dòng gốc và dòng thay thế.
626
+ - Tích hợp bộ gác cổng AST: Tự động phân tích cú pháp (TypeScript, Python, Groovy) trước khi ghi xuống đĩa; nếu có lỗi cú pháp, thao tác sửa mã bị chặn ngay lập tức.
627
+ - Ngăn chặn triệt để việc sửa nhầm vào các tệp kịch bản kiểm thử làm lọt raw XPath/CSS selector theo chuẩn Clean POM.
628
+ - **Cổng chất lượng DoD:** **Gate 11 — ACI Tool Safety & Output Confinement Gate**
629
+ - Xác thực mọi sửa đổi mã nguồn đều đi qua giao diện ACI an toàn.
630
+ - Bảo đảm tệp xuất ra tuân thủ 100% UTF-8 No BOM (không chứa byte `0xEF, 0xBB, 0xBF`).
631
+ - Kiểm tra độ dài diff không vượt quá 30 dòng cho mỗi lần can thiệp sửa chữa.
632
+ - **Giao diện dòng lệnh (CLI Contract):**
633
+ ```bash
634
+ # Xem tệp theo cửa sổ 40 dòng có đánh số
635
+ python tools/swe_qa_aci.py view-window --file src/pages/LoginPage.ts --start-line 20 --window-size 40
636
+
637
+ # Sửa mã phẫu thuật có kiểm tra cú pháp AST
638
+ python tools/swe_qa_aci.py surgical-edit \
639
+ --file src/pages/LoginPage.ts \
640
+ --target-chunk "await this.page.click('#old-btn');" \
641
+ --replacement-chunk "await this.clickSafe(this.loginButton);" \
642
+ --validate-syntax
643
+
644
+ # Chạy lệnh kiểm thử với bộ chắt lọc log thông minh
645
+ python tools/swe_qa_aci.py run-distilled --command "npx playwright test tests/login.spec.ts" --max-lines 50
646
+ ```
647
+ - **Lược đồ dữ liệu JSON Output (`surgical-edit`):**
648
+ ```json
649
+ {
650
+ "status": "PASS",
651
+ "file": "src/pages/LoginPage.ts",
652
+ "lines_replaced": {
653
+ "start": 25,
654
+ "end": 25
655
+ },
656
+ "ast_validation": "SYNTAX_VALID",
657
+ "utf8_nobom_verified": true,
658
+ "clean_pom_verified": true,
659
+ "diff_summary": "- await this.page.click('#old-btn');\n+ await this.clickSafe(this.loginButton);"
660
+ }
661
+ ```
662
+
663
+ ---
664
+
665
+ #### 5.3.3 Bộ ba 3: Luồng Sự Kiện Kiểm Thử Bất Biến (`tools/qa_event_stream.py` + Gate 12)
666
+ - **Nguồn cảm hứng:** OpenHands EventStream & Replay Runtime.
667
+ - **Kỹ năng Tác nhân:** `.agents/skills/event-stream-qa-orchestrator/SKILL.md`.
668
+ - **Mô tả chức năng:**
669
+ - Ghi nhận tuần tự mọi hành vi kiểm thử thành luồng sự kiện bất biến lưu trữ dưới dạng JSON Lines (`timeline.jsonl`).
670
+ - Mỗi sự kiện mang nhãn định kiểu rõ ràng: `ACTION_NAVIGATE`, `ACTION_CLICK`, `OBSERVATION_DOM`, `ASSERTION_EVALUATED`, `ERROR_OCCURRED`.
671
+ - Kết nối trực tiếp với ngăn xếp hoàn tác của GoEx (`tools/reversible_sandbox.py`), cho phép tua ngược (rollback) trạng thái trình duyệt và dữ liệu về điểm kiểm tra an toàn (checkpoint) gần nhất khi xảy ra lỗi.
672
+ - **Cổng chất lượng DoD:** **Gate 12 — Event Stream Determinism Gate**
673
+ - Kiểm tra tệp nhật ký `timeline.jsonl` tuân thủ đúng JSON Schema chuẩn.
674
+ - Xác nhận mã băm tính toán (hash chain) giữa các sự kiện khớp nhau hoàn toàn, bảo đảm không có sự kiện nào bị chỉnh sửa hay chèn lén.
675
+ - **Giao diện dòng lệnh (CLI Contract):**
676
+ ```bash
677
+ # Khởi tạo luồng sự kiện mới cho phiên kiểm thử
678
+ python tools/qa_event_stream.py init-stream --session-id "E2E_CHECKOUT_001" --out-file .agent_memory/timeline.jsonl
679
+
680
+ # Ghi nhận một sự kiện hành động của tác nhân
681
+ python tools/qa_event_stream.py record-event \
682
+ --stream .agent_memory/timeline.jsonl \
683
+ --event-type "ACTION_CLICK" \
684
+ --actor "live-explorer" \
685
+ --payload '{"page":"CartPage","element":"checkout_button","timestamp":"2026-11-04T06:40:00Z"}'
686
+
687
+ # Ghi nhận quan sát trạng thái phản hồi từ trình duyệt
688
+ python tools/qa_event_stream.py record-event \
689
+ --stream .agent_memory/timeline.jsonl \
690
+ --event-type "OBSERVATION_DOM" \
691
+ --actor "playwright" \
692
+ --payload '{"url":"https://app.local/checkout","status":200,"dom_state":"networkidle"}'
693
+
694
+ # Hoàn tác về điểm an toàn khi xảy ra sự cố
695
+ python tools/qa_event_stream.py rollback --stream .agent_memory/timeline.jsonl --to-checkpoint "PRE_CHECKOUT"
696
+ ```
697
+
698
+ ---
699
+
700
+ #### 5.3.4 Bộ ba 4: Đánh Giá Năng Lực Tác Nhân Web (`tools/browsergym_eval.py` + Gate 13)
701
+ - **Nguồn cảm hứng:** ServiceNow BrowserGym & CMU WebArena.
702
+ - **Kỹ năng Tác nhân:** `.agents/skills/web-agent-gym-benchmarking/SKILL.md`.
703
+ - **Mô tả chức năng:**
704
+ - Cung cấp môi trường kiểm thử web tiêu chuẩn đóng gói các ứng dụng giả lập doanh nghiệp (sàn thương mại, quản lý bán hàng, bảng dữ liệu phức tạp).
705
+ - Đánh giá khả năng điều hướng của `live-explorer` thông qua chuẩn tương tác AOM và kiểm tra trạng thái cơ sở dữ liệu ngầm.
706
+ - Đo lường độ trễ thao tác (yêu cầu $<200$ms trên mỗi bước trong chế độ headless) và số bước trung bình để hoàn thành một nhiệm vụ nghiệp vụ.
707
+ - **Cổng chất lượng DoD:** **Gate 13 — Web Navigation & AOM Fidelity Gate**
708
+ - Đòi hỏi các Page Class và tác nhân tự động phải đạt tỷ lệ thành công tối thiểu $\ge 90\%$ trên bộ kịch bản chuẩn của BrowserGym trước khi được chứng nhận lưu vào `skill_vault.db`.
709
+ - **Giao diện dòng lệnh (CLI Contract):**
710
+ ```bash
711
+ # Chạy bộ benchmark đánh giá tác nhân web
712
+ python tools/browsergym_eval.py run-suite \
713
+ --tasks "ecommerce_order,crm_lead_create,filter_data_grid" \
714
+ --headless \
715
+ --timeout-sec 30 \
716
+ --report-out reports/browsergym_benchmark.json
717
+
718
+ # Đánh giá độc lập một Page Class vừa sinh ra
719
+ python tools/browsergym_eval.py evaluate-pageclass \
720
+ --page-class src/pages/OrderManagementPage.ts \
721
+ --task-spec benchmarks/order_management_task.json
722
+ ```
723
+ - **Lược đồ dữ liệu JSON Output (`run-suite`):**
724
+ ```json
725
+ {
726
+ "status": "PASS",
727
+ "suite": "EnterpriseWebBenchmark_v1",
728
+ "total_tasks": 3,
729
+ "passed_tasks": 3,
730
+ "action_success_rate": 0.952,
731
+ "avg_latency_ms": 138.4,
732
+ "database_assertion_pass_rate": 1.0,
733
+ "certification": "APPROVED"
734
+ }
735
+ ```
736
+
737
+ ---
738
+
739
+ #### 5.3.5 Bộ ba 5: Động Cơ Suy Luận Đồ Thị Cho Kiểm Thử Thăm Dò (`tools/tot_exploratory_tester.py` + Gate 14)
740
+ - **Nguồn cảm hứng:** Princeton Tree-of-Thoughts & ETH Zürich Graph-of-Thoughts.
741
+ - **Kỹ năng Tác nhân:** `.agents/skills/tot-exploratory-testing/SKILL.md`.
742
+ - **Mô tả chức năng:**
743
+ - Nhận đầu vào là User Story hoặc luồng nghiệp vụ phức tạp, phân rã thành Cây Ý nghĩ / Đồ thị Ý nghĩ (DAG of Thoughts).
744
+ - Áp dụng thuật toán tìm kiếm rẽ nhánh Beam Search kết hợp hàm đánh giá rủi ro để khám phá đồng thời 3 nhánh kịch bản:
745
+ * Nhánh 1: Đường chạy thuận lợi thông thường (Happy Path).
746
+ * Nhánh 2: Đường chạy biên và phục hồi phiên gián đoạn (Session Timeout / Race Condition).
747
+ * Nhánh 3: Đường chạy tiêu cực và xử lý lỗi hệ thống (Insufficient Credit / Service 503).
748
+ - Loại bỏ các nhánh trùng lặp, xuất ra kịch bản Clean POM cho các nhánh có chỉ số rủi ro cao nhất.
749
+ - **Cổng chất lượng DoD:** **Gate 14 — Exploratory Branch Completeness Gate**
750
+ - Kiểm tra các luồng nghiệp vụ nhạy cảm (thanh toán, xác thực, phân quyền) phải được khám phá ít nhất $K=3$ nhánh độc lập với đầy đủ các khẳng định biên (boundary assertions).
751
+ - **Giao diện dòng lệnh (CLI Contract):**
752
+ ```bash
753
+ # Mở rộng User Story thành Đồ thị Kịch bản Kiểm thử Thăm dò
754
+ python tools/tot_exploratory_tester.py expand-story \
755
+ --story-file docs/stories/US_PAYMENT_GATEWAY.md \
756
+ --max-depth 4 \
757
+ --beam-width 3 \
758
+ --out-graph reports/tot_payment_graph.json
759
+
760
+ # Phân tích nguyên nhân gốc rễ đa giả thuyết cho ca kiểm thử thất bại
761
+ python tools/tot_exploratory_tester.py rca-hypotheses \
762
+ --error-log reports/failed_run.log \
763
+ --hypotheses "DOM_TIMEOUT,ASYNC_RACE,DB_LOCK,BACKEND_500" \
764
+ --validate-headless
765
+ ```
766
+
767
+ ---
768
+
769
+ #### 5.3.6 Bộ ba 6: Điều Phối Đa Tác Nhân Actor Bất Đồng Bộ (`tools/autogen_qa_broker.py` + Gate 15)
770
+ - **Nguồn cảm hứng:** Microsoft AutoGen v0.4+ Actor Model.
771
+ - **Kỹ năng Tác nhân:** `.agents/skills/actor-qa-swarm/SKILL.md`.
772
+ - **Mô tả chức năng:**
773
+ - Vận hành một Broker thông điệp bất đồng bộ siêu nhẹ quản lý hòm thư (mailboxes) của các tác nhân kiểm thử.
774
+ - Cho phép phân mảnh bộ kịch bản kiểm thử (Matrix Sharding) và chạy song song trên nhiều tiến trình Playwright headless độc lập mà không phong tỏa tiến trình chính.
775
+ - Tác nhân `failure-analyst` đăng ký lắng nghe (subscribe) sự kiện `TEST_FAILED` từ máy chạy kịch bản để tiến hành chẩn đoán ngay lập tức trong khi các ca kiểm thử khác vẫn tiếp tục chạy bình thường.
776
+ - **Cổng chất lượng DoD:** **Gate 15 — Actor Swarm Protocol & Deadlock Gate**
777
+ - Xác thực toàn bộ các thông điệp trao đổi giữa các Actor tuân thủ đúng định kiểu schema.
778
+ - Cưỡng chế thời gian chờ tối đa (timeout 300s) cho mỗi Actor, bảo đảm không có hiện tượng bế tắc thông điệp (circular deadlock).
779
+ - **Giao diện dòng lệnh (CLI Contract):**
780
+ ```bash
781
+ # Khởi động Broker điều phối Actor bất đồng bộ
782
+ python tools/autogen_qa_broker.py start-broker --max-actors 6 --timeout-sec 180
783
+
784
+ # Phân phối bộ kiểm thử chạy song song trên 4 phân mảnh
785
+ python tools/autogen_qa_broker.py dispatch-shards \
786
+ --suite-manifest tests/regression_manifest.json \
787
+ --shard-count 4 \
788
+ --worker-role "test-runner"
789
+
790
+ # Đăng ký tác nhân tự sửa lỗi lắng nghe sự kiện kiểm thử thất bại
791
+ python tools/autogen_qa_broker.py subscribe \
792
+ --actor "failure-analyst" \
793
+ --event "TEST_FAILED" \
794
+ --handler "tools/agentless_patcher.py"
795
+ ```
796
+
797
+ ---
798
+
799
+ #### 5.3.7 Bộ ba 7: Tối Ưu Hóa Prompt & Few-Shot Bằng Thuật Toán Bayes (`tools/mipro_assertion_tuner.py` + Gate 16)
800
+ - **Nguồn cảm hứng:** Stanford DSPy v2 (MIPROv2) & Optuna TPE.
801
+ - **Kỹ năng Tác nhân:** `.agents/skills/mipro-prompt-compiler/SKILL.md`.
802
+ - **Mô tả chức năng:**
803
+ - Nhận chữ ký kiểm thử khai báo tĩnh từ `tools/dspy_qa_signatures.py` (ví dụ: `AssertionGenerator`).
804
+ - Lấy các mẫu kịch bản thực tế đã kiểm chứng từ `skill_vault.db` làm tập ứng viên few-shot.
805
+ - Sử dụng thuật toán tối ưu hóa Bayes của Optuna để tìm kiếm tổ hợp câu lệnh chỉ thị và bộ ví dụ mẫu tối ưu nhất, với hàm mục tiêu là tối đa hóa Điểm Nhạy cảm Đột biến AST của `micro_mutator.py` ($\ge 85\%$) trong giới hạn token nhỏ nhất ($\le 800$ tokens).
806
+ - **Cổng chất lượng DoD:** **Gate 16 — Compiled Prompt Quality & Drift Gate**
807
+ - Chặn đứng các module prompt chưa qua biên dịch hoặc có tỷ lệ diệt đột biến dưới 85%.
808
+ - Ngăn ngừa hiện tượng phình to kích thước prompt (Prompt Bloat).
809
+ - **Giao diện dòng lệnh (CLI Contract):**
810
+ ```bash
811
+ # Biên dịch và tối ưu hóa module sinh khẳng định kiểm thử
812
+ python tools/mipro_assertion_tuner.py compile-module \
813
+ --signature "tools/dspy_qa_signatures.py:AssertionGenerator" \
814
+ --trainset data/assertion_trainset.json \
815
+ --metric "tools/micro_mutator.py" \
816
+ --trials 25 \
817
+ --out-module compiled/optimized_assertion_gen.json
818
+
819
+ # Đánh giá chất lượng của module đã biên dịch
820
+ python tools/mipro_assertion_tuner.py evaluate \
821
+ --module compiled/optimized_assertion_gen.json \
822
+ --testset data/assertion_testset.json
823
+ ```
824
+ - **Lược đồ dữ liệu JSON Output (`compile-module`):**
825
+ ```json
826
+ {
827
+ "status": "PASS",
828
+ "module": "AssertionGenerator",
829
+ "optimization_trials": 25,
830
+ "best_trial_id": 18,
831
+ "baseline_mutation_score": 0.68,
832
+ "optimized_mutation_score": 0.895,
833
+ "token_reduction_percent": 38.5,
834
+ "saved_to": "compiled/optimized_assertion_gen.json"
835
+ }
836
+ ```
837
+
838
+ ---
839
+
840
+ #### 5.3.8 Bộ ba 8: Tự Sửa Lỗi Kịch Bản Siêu Nhẹ Không Vòng Lặp (`tools/agentless_patcher.py` + Gate 17)
841
+ - **Nguồn cảm hứng:** OpenAutoCoder Agentless (UIUC).
842
+ - **Kỹ năng Tác nhân:** `.agents/skills/agentless-qa-repair/SKILL.md`.
843
+ - **Mô tả chức năng:**
844
+ - Vận hành quy trình tự sửa lỗi xác định 3 pha cực kỳ tinh gọn:
845
+ * *Pha 1 (Bản địa hóa phân tầng):* Đọc stacktrace từ JUnit XML và `tools/repo_map.txt` để khoanh vùng chính xác tệp Page Class, hàm và khoảng 5–10 dòng code gây lỗi.
846
+ * *Pha 2 (Sinh bản vá song song):* Gọi LLM duy nhất 1 lần để sinh song song 3 bản vá thay thế ngắn (ví dụ: dùng ARIA role, dùng data-testid, hoặc dùng text an toàn).
847
+ * *Pha 3 (Xác thực và nghiệm thu):* Chạy trực tiếp `tools/verify_all.py` và ca kiểm thử mục tiêu để xác nhận. Bản vá ngắn nhất vượt qua kiểm định sẽ được ghi đĩa ngay lập tức.
848
+ - Toàn bộ quá trình diễn ra dưới 10 giây và tiêu thụ dưới 2.000 tokens, không có đàm thoại đa tác nhân.
849
+ - **Cổng chất lượng DoD:** **Gate 17 — Agentless Token Budget & Single-Pass Gate**
850
+ - Cưỡng chế quy trình sửa lỗi locator phải hoàn thành trong đúng 1 lượt gọi LLM (single-pass).
851
+ - Tổng số token tiêu thụ cho một ca sửa lỗi không được vượt quá 2.500 tokens.
852
+ - Bản vá phải vượt qua toàn bộ các cổng chất lượng của `tools/verify_all.py`.
853
+ - **Giao diện dòng lệnh (CLI Contract):**
854
+ ```bash
855
+ # Thực hiện sửa chữa lỗi cục bộ 3 pha
856
+ python tools/agentless_patcher.py heal-failure \
857
+ --error-log reports/failed_run.log \
858
+ --repo-map tools/repo_map.txt \
859
+ --max-candidates 3 \
860
+ --validator "python tools/verify_all.py --mode target"
861
+ ```
862
+ - **Lược đồ dữ liệu JSON Output (`heal-failure`):**
863
+ ```json
864
+ {
865
+ "status": "PASS",
866
+ "localization": {
867
+ "file": "src/pages/CustomerDirectoryPage.ts",
868
+ "method": "selectCustomerRow",
869
+ "line_span": [48, 52]
870
+ },
871
+ "candidates_evaluated": 3,
872
+ "validation_results": {
873
+ "candidate_1": "FAIL (Syntax error)",
874
+ "candidate_2": "PASS (All DoD Gates cleared)",
875
+ "candidate_3": "PASS (All DoD Gates cleared, but diff longer by 4 lines)"
876
+ },
877
+ "selected_winner": "candidate_2",
878
+ "tokens_consumed": 1780,
879
+ "elapsed_seconds": 7.8
880
+ }
881
+ ```
882
+
883
+ ---
884
+
885
+ ### 5.4 Sơ Đồ Tuần Tự Hoạt Động (Sequence Diagrams)
886
+
887
+ #### Sơ đồ 1: Luồng Tự Sửa Lỗi Siêu Nhẹ Bằng Agentless Patcher Kết Hợp ACI & Event Stream
888
+ Quy trình phối hợp giữa Tác nhân chẩn đoán lỗi, công cụ Agentless, giao diện ACI và luồng sự kiện để giải quyết lỗi locator trong một lượt duy nhất:
889
+
890
+ ```mermaid
891
+ sequenceDiagram
892
+ autonumber
893
+ participant Runner as Test Runner
894
+ participant Analyst as failure-analyst
895
+ participant Patcher as tools/agentless_patcher.py
896
+ participant ACI as tools/swe_qa_aci.py
897
+ participant Stream as tools/qa_event_stream.py
898
+ participant Gate as tools/verify_all.py (Gate 17)
899
+
900
+ Runner->>Stream: record(TEST_FAILED, stacktrace)
901
+ Stream->>Analyst: notify(TEST_FAILED)
902
+ Analyst->>Patcher: heal-failure(stacktrace, repo_map)
903
+ Note over Patcher: Pha 1: Khoanh vùng tệp & khoảng dòng lỗi
904
+ Patcher->>ACI: view-window(file, start=45, size=20)
905
+ ACI-->>Patcher: Trả về nội dung 20 dòng mã
906
+ Note over Patcher: Pha 2: Lấy mẫu song song 3 bản vá (1 lượt LLM)
907
+ Note over Patcher: Pha 3: Thử nghiệm cục bộ từng bản vá
908
+ Patcher->>ACI: surgical-edit(candidate_2, validate_syntax=True)
909
+ ACI-->>Patcher: AST Valid, Code Updated
910
+ Patcher->>Gate: verify_dod()
911
+ Gate-->>Patcher: PASS (All 10 Gates + Gate 17 cleared)
912
+ Patcher->>Stream: record(HEALING_SUCCESS, tokens=1780)
913
+ Patcher-->>Analyst: Bàn giao hoàn tất trong 8 giây
914
+ ```
915
+
916
+ #### Sơ đồ 2: Luồng Khám Phá Kiểm Thử Thăm Dò Phi Tuyến Bằng Tree-of-Thoughts
917
+ Quy trình tác nhân mở rộng kịch bản nghiệp vụ thành đồ thị tìm kiếm và sinh ra các kịch bản kiểm thử Clean POM:
918
+
919
+ ```mermaid
920
+ sequenceDiagram
921
+ autonumber
922
+ participant Orchestrator as Lead Orchestrator
923
+ participant ToT as tools/tot_exploratory_tester.py
924
+ participant Explorer as live-explorer (Headless)
925
+ participant PomCrafter as pom-crafter
926
+ participant Vault as tools/skill_vault.py
927
+
928
+ Orchestrator->>ToT: expand-story(US_CHECKOUT.md, depth=3, beam=3)
929
+ Note over ToT: Rẽ nhánh 3 trạng thái tư duy trung gian
930
+ ToT->>Explorer: Thăm dò tính khả thi trạng thái trên DOM
931
+ Explorer-->>ToT: Xác nhận trạng thái DOM hợp lệ
932
+ Note over ToT: Chấm điểm rủi ro: Nhánh Timeout có rủi ro cao nhất (0.88)
933
+ ToT-->>Orchestrator: Trả về Đồ thị Kịch bản Ưu tiên
934
+ Orchestrator->>PomCrafter: generate_script(Nhánh Timeout & Nhánh Happy)
935
+ PomCrafter->>Vault: query_primitives(CheckoutPage)
936
+ Vault-->>PomCrafter: Trả về phương thức PageClass đã kiểm chứng
937
+ PomCrafter-->>Orchestrator: Hoàn tất kịch bản Clean POM tuân thủ Flat Architecture
938
+ ```
939
+
940
+ ---
941
+
942
+ ## MỤC 6: TƯƠNG HỖ & CĂN CHỈNH VỚI CÁC TRỤ CỘT SYNAPSE-HUB
943
+
944
+ Bản thiết kế tích hợp được xây dựng dựa trên sự tôn trọng tuyệt đối các giá trị cốt lõi và tiêu chuẩn kỹ thuật không thể nhân nhượng của Synapse-Hub:
945
+
946
+ ### 6.1 Bảo Vệ Tuyệt Đối Chuẩn Clean POM & Flat Architecture
947
+ - **Quy tắc bất biến:** Các kịch bản kiểm thử (`tests/`, `Scripts/`) chỉ được phép chứa các lời gọi hàm nghiệp vụ trên các Page Class; tuyệt đối nghiêm cấm việc xuất hiện raw XPath, CSS selector hoặc `findTestObject` trong kịch bản kiểm thử.
948
+ - **Cơ chế tương hỗ:** Công cụ `tools/swe_qa_aci.py` và `tools/agentless_patcher.py` được cài đặt bộ lọc AST chuyên dụng. Khi thực hiện sửa lỗi, nếu phát hiện tác nhân cố tình chèn selector trực tiếp vào tệp kịch bản kiểm thử, công cụ sẽ lập tức từ chối và hướng dòng can thiệp về đúng tệp Page Class kế thừa `BasePage`.
949
+
950
+ ### 6.2 Kiểm Thử Headless Playwright (<200ms) & Zero-Second Auth
951
+ - **Quy tắc bất biến:** Tương tác web phục vụ khám phá và sửa lỗi bắt buộc phải chạy ở chế độ thuần Headless, không chiếm quyền điều khiển màn hình người dùng, độ trễ thao tác dưới 200ms, và tái sử dụng phiên đăng nhập thông qua `session.json` hoặc lưu trữ trạng thái.
952
+ - **Cơ chế tương hỗ:**
953
+ - `tools/browsergym_eval.py` được cấu hình mặc định ở chế độ headless Playwright, đo lường trực tiếp thời gian phản hồi của từng hành động để bảo đảm tiêu chuẩn tốc độ.
954
+ - `tools/test_memory_os.py` lưu trữ token đăng nhập và cookie vào khối Core Memory, cho phép khôi phục phiên làm việc chỉ trong vòng 50ms (Zero-Second Auth) mà không bao giờ phải điền lại biểu mẫu đăng nhập nhiều lần.
955
+
956
+ ### 6.3 Tinh Thần Lean Senior Developer (Thang 7 Bậc & YAGNI)
957
+ - **Quy tắc bất biến:** "Mã nguồn tốt nhất là mã không cần viết. Giải quyết toàn bộ vấn đề với lượng mã mới ít nhất."
958
+ - **Cơ chế tương hỗ:**
959
+ - Tuyệt đối không cài đặt toàn bộ các framework cồng kềnh (không cài cả cục máy chủ Letta hay toàn bộ hệ thống OpenHands Docker). Thay vào đó, chỉ trích xuất đúng **thuật toán toán học và cơ chế vận hành thuần túy** để viết thành các tệp Python gọn nhẹ trong `tools/`.
960
+ - Việc đưa `tools/agentless_patcher.py` lên ưu tiên cao nhất (P0) phản ánh chính xác tinh thần Bậc 1 (YAGNI) và Bậc 6 (Mã tối thiểu hoàn chỉnh), chấm dứt tình trạng lãng phí token vào các cuộc đàm thoại vô bổ của đa tác nhân.
961
+
962
+ ### 6.4 Chuẩn Mực Kỹ Thuật 100% UTF-8 No BOM
963
+ - **Quy tắc bất biến:** Không để lọt các byte Byte Order Mark (`0xEF, 0xBB, 0xBF`) vào bất kỳ tệp mã nguồn, tệp cấu hình hay báo cáo Markdown nào trong toàn bộ kho lưu trữ.
964
+ - **Cơ chế tương hỗ:** Mọi công cụ ghi đĩa (`tools/swe_qa_aci.py`, `tools/test_memory_os.py`, `tools/agentless_patcher.py`) đều sử dụng cờ mở tệp tường minh `encoding='utf-8'` và tự động quét kiểm tra ký tự BOM trước khi lưu, bảo đảm không bao giờ vi phạm Cổng Chất lượng Gate 1 của `tools/verify_all.py`.
965
+
966
+ ---
967
+
968
+ ## MỤC 7: PHÂN TÍCH ĐÁNH ĐỔI & LỘ TRÌNH PHÂN KỲ TRIỂN KHAI (ROADMAP P0 / P1 / P2)
969
+
970
+ ### 7.1 Phân Tích Đánh Đổi (Trade-off Analysis)
971
+
972
+ Mỗi sự nâng cấp kiến trúc đều đi kèm với các chi phí đánh đổi nhất định giữa Chi phí Token, Độ trễ Tính toán và Độ Tin cậy QA:
973
+
974
+ | Cơ Chế Kỹ Thuật Đề Xuất | Thay Đổi Chi Phí Token | Tác Động Độ Trễ / Điện Toán | Lợi Ích Độ Tin Cậy QA Đạt Được | Điểm Đánh Đổi (Trade-off Verdict) |
975
+ |---|---|---|---|---|
976
+ | **Agentless Patcher** (`tools/agentless_patcher.py`) | **Giảm 60% – 80%** token so với vòng lặp tác nhân | Cực nhanh (Hoàn tất dưới 10 giây) | Rất cao (+25% tỷ lệ sửa locator thành công ngay lần đầu) | **Lợi ích vượt trội, không có nhược điểm.** Triển khai ngay. |
977
+ | **SWE-agent ACI** (`tools/swe_qa_aci.py`) | **Giảm 40%** token (nhờ hiển thị cửa sổ 50 dòng) | Không đáng kể (Dưới 1 giây phân tích AST) | Rất cao (Loại bỏ 100% lỗi cú pháp và lệch dòng) | **Lợi ích thuần túy về công thái học.** Triển khai ngay. |
978
+ | **Letta QA Memory OS** (`tools/test_memory_os.py`) | **Giảm 35%** token (nhờ truy vấn ngữ nghĩa thay vì dump log) | Rất thấp (Truy vấn SQLite nội bộ dưới 50ms) | Rất cao (Chấm dứt lỗi chập chờn lặp lại qua các phiên CI) | **Cần quản lý tốt kích thước DB** để tránh phình dung lượng. |
979
+ | **BrowserGym Eval** (`tools/browsergym_eval.py`) | Trung tính (Chỉ chạy khi đo benchmark) | Trung bình (Chạy các bài test web giả lập) | Cực kỳ quan trọng (+30% độ chuẩn xác khi tương tác web) | **Chỉ kích hoạt trong quy trình CI/CD định kỳ.** |
980
+ | **OpenHands Event Stream** (`tools/qa_event_stream.py`) | Trung tính (Chỉ ghi tệp JSONL cục bộ) | Rất thấp (Dưới 10ms cho mỗi thao tác ghi tệp) | Cao (Tua lại 100% hành vi phục vụ điều tra lỗi) | **Cần cơ chế xoay vòng nhật ký (log rotation)** để dọn dẹp ổ đĩa. |
981
+ | **Tree-of-Thoughts** (`tools/tot_exploratory_tester.py`) | **Tăng 25% – 40%** token cho ca kiểm thử thăm dò | Trung bình (Phải đánh giá nhiều nhánh suy nghĩ) | Rất cao (Tìm ra các lỗi biên ẩn sâu trong nghiệp vụ phức tạp) | **Chỉ áp dụng cho các User Story rủi ro cao (P0 Flows).** |
982
+ | **DSPy MIPROv2** (`tools/mipro_assertion_tuner.py`) | Tốn token khi huấn luyện; **Giảm 50% khi chạy thật** | Tốn thời gian biên dịch ban đầu; Zero độ trễ khi chạy thật | Rất cao (+15% tỷ lệ diệt đột biến AST) | **Biên dịch ngoại tuyến (offline), triển khai gọn nhẹ.** |
983
+ | **AutoGen Actor Broker** (`tools/autogen_qa_broker.py`) | Tăng 20% – 30% do trao đổi thông điệp | Đòi hỏi tiến trình nền quản lý hòm thư Actor | Rất cao khi chạy song song các cụm kiểm thử lớn | **Chỉ kích hoạt cho các bộ kiểm thử lớn trên 100 ca test.** |
984
+
985
+ ---
986
+
987
+ ### 7.2 Lộ Trình Triển Khai Phân Kỳ (Roadmap P0 / P1 / P2)
988
+
989
+ Nhóm nghiên cứu đề xuất lộ trình triển khai gồm 3 giai đoạn rõ ràng, bảo đảm tối đa hóa tỷ suất hoàn vốn đầu tư (ROI) ngay từ những tuần đầu tiên:
990
+
991
+ ```mermaid
992
+ gantt
993
+ title LỘ TRÌNH PHÂN KỲ TÍCH HỢP SYNAPSE-HUB
994
+ dateFormat YYYY-MM-DD
995
+ section Giai đoạn P0: Ngay Lập Tức (ROI Cao Nhất)
996
+ Agentless 3-Stage Patcher (tools/agentless_patcher.py) :milestone, p0_1, 2026-11-10, 0d
997
+ SWE-agent ACI Interface (tools/swe_qa_aci.py) :milestone, p0_2, 2026-11-17, 0d
998
+ Hierarchical Memory OS (tools/test_memory_os.py) :milestone, p0_3, 2026-11-24, 0d
999
+ section Giai đoạn P1: Trung Hạn (Nâng Cấp Hạ Tầng)
1000
+ OpenHands Event Stream (tools/qa_event_stream.py) :active, p1_1, 2026-12-01, 21d
1001
+ BrowserGym QA Benchmark (tools/browsergym_eval.py) :active, p1_2, 2026-12-15, 21d
1002
+ Tree-of-Thoughts Tester (tools/tot_exploratory_tester.py):active, p1_3, 2027-01-05, 21d
1003
+ section Giai đoạn P2: Dài Hạn (Tối Ưu Hóa Nâng Cao)
1004
+ MIPROv2 Assertion Tuner (tools/mipro_assertion_tuner.py) :p2_1, 2027-01-26, 30d
1005
+ AutoGen v0.4+ Actor Broker (tools/autogen_qa_broker.py) :p2_2, 2027-02-15, 30d
1006
+ ```
1007
+
1008
+ #### Giai đoạn P0: Ngay Lập Tức (Thời gian: 1–2 tuần, ROI cao nhất)
1009
+ *Mục tiêu:* Giải quyết ngay lập tức bài toán lãng phí token và nâng cao độ chính xác khi sửa lỗi cục bộ.
1010
+ 1. **`tools/agentless_patcher.py` + Gate 17:**
1011
+ - *Lý do:* Giải quyết 80% các bài toán bảo trì kiểm thử thường ngày (hỏng locator, trôi dạt assertion) chỉ trong 1 lượt gọi LLM duy nhất.
1012
+ - *Điều kiện tiên quyết:* Đã có sẵn `tools/repo_map.txt` và `tools/verify_all.py`.
1013
+ 2. **`tools/swe_qa_aci.py` + Gate 11:**
1014
+ - *Lý do:* Chấm dứt hiện tượng nổ cửa sổ ngữ cảnh khi đọc tệp lớn và bảo đảm an toàn cú pháp tuyệt đối khi tác nhân sửa mã.
1015
+ - *Điều kiện tiên quyết:* Thư viện phân tích cú pháp Python `ast`.
1016
+ 3. **`tools/test_memory_os.py` + Gate 10:**
1017
+ - *Lý do:* Thiết lập bộ nhớ phân tầng SQLite cục bộ, chấm dứt tình trạng mất trí nhớ giữa các phiên chạy kiểm thử và hỗ trợ Zero-Second Auth.
1018
+ - *Điều kiện tiên quyết:* Thư viện SQLite3 chuẩn của Python.
1019
+
1020
+ #### Giai đoạn P1: Trung Hạn (Thời gian: 3–6 tuần, Nâng cấp hạ tầng cốt lõi)
1021
+ *Mục tiêu:* Chuẩn hóa môi trường đánh giá thực nghiệm và mở rộng năng lực kiểm thử thăm dò chuyên sâu.
1022
+ 4. **`tools/qa_event_stream.py` + Gate 12:**
1023
+ - *Lý do:* Xây dựng nhật ký sự kiện kiểm thử bất biến có khả năng tua lại, kết nối với ngăn xếp hoàn tác của GoEx.
1024
+ 5. **`tools/browsergym_eval.py` + Gate 13:**
1025
+ - *Lý do:* Tạo lập bộ benchmark thực nghiệm để đo lường năng lực của tác nhân web đối chiếu với trạng thái cơ sở dữ liệu backend.
1026
+ 6. **`tools/tot_exploratory_tester.py` + Gate 14:**
1027
+ - *Lý do:* Cung cấp động cơ tìm kiếm rẽ nhánh cho các kịch bản kiểm thử thăm dò trên các luồng thanh toán và giao dịch tài chính nhạy cảm.
1028
+
1029
+ #### Giai đoạn P2: Dài Hạn (Thời gian: 6–12 tuần, Tối ưu hóa nâng cao & Phân tán)
1030
+ *Mục tiêu:* Tự động hóa hoàn toàn việc tối ưu hóa prompt và vận hành cụm kiểm thử phân tán quy mô lớn.
1031
+ 7. **`tools/mipro_assertion_tuner.py` + Gate 16:**
1032
+ - *Lý do:* Áp dụng thuật toán tối ưu hóa Bayes của Optuna để biên dịch các prompt sinh assertion đạt tỷ lệ diệt đột biến $\ge 85\%$ một cách tự động.
1033
+ 8. **`tools/autogen_qa_broker.py` + Gate 15:**
1034
+ - *Lý do:* Xây dựng hạ tầng điều phối Actor bất đồng bộ cho phép chạy song song hàng trăm ca kiểm thử trên nhiều máy chủ phân tán.
1035
+
1036
+ ---
1037
+
1038
+ ## MỤC 8: KẾT LUẬN & ĐỊNH HƯỚNG PHÁT TRIỂN
1039
+
1040
+ ### 8.1 Kết Luận
1041
+ Cuộc cách mạng của các mô hình AI Agent mã nguồn mở trong năm 2024–2026 đã mang lại những bước tiến phi thường về năng lực bộ nhớ phân tầng (Letta), chuẩn hóa giao diện tương tác máy tính (SWE-agent ACI), kiến trúc luồng sự kiện kiểm toán (OpenHands), môi trường đánh giá web thực nghiệm (BrowserGym/WebArena), suy luận có chủ ý (Tree/Graph-of-Thoughts), biên dịch prompt tự động (DSPy v2/MIPROv2) và đặc biệt là triết lý sửa lỗi tối giản, tiết kiệm chi phí vượt bậc (Agentless).
1042
+
1043
+ Tuy nhiên, việc sao chép nguyên xi các framework đồ sộ bên ngoài vào một hệ sinh thái kiểm thử doanh nghiệp đặc thù như Synapse-Hub là một sai lầm chết người. Nó sẽ dẫn đến việc phá vỡ nguyên tắc Clean POM, gây phình to thư viện phụ thuộc, làm chậm tốc độ chạy kiểm thử và lãng phí ngân sách token của tổ chức.
1044
+
1045
+ Thông qua **Mô hình Chuyển đổi Bộ ba (Triad Translation Model)**, Synapse-Hub chứng minh một phương pháp tiếp cận khoa học, thực dụng và chuẩn mực: Bóc tách phần linh hồn thuật toán của các công nghệ hàng đầu thế giới để đóng gói thành **8 công cụ CLI độc lập, 8 kỹ năng chuẩn hóa và 8 Cổng Chất lượng Definition-of-Done mở rộng (Gates 10–17)**.
1046
+
1047
+ Đặc biệt, việc ưu tiên triển khai ngay lập tức nhóm công cụ **P0 (`agentless_patcher.py`, `swe_qa_aci.py`, `test_memory_os.py`)** sẽ mang lại lợi ích kép: Cắt giảm ngay từ 40% đến 80% chi phí token trong bảo trì kịch bản kiểm thử hàng ngày, đồng thời nâng tầm Synapse-Hub trở thành một trung tâm trí tuệ QA tự hành đạt đẳng cấp thế giới, kiên định với các giá trị Clean POM, Headless Playwright tốc độ cao và chuẩn mực kỹ thuật 100% UTF-8 No BOM.
1048
+
1049
+ ### 8.2 Bảng Thuật Ngữ Đối Chiếu (Glossary of Terms)
1050
+ - **ACI (Agent-Computer Interface):** Giao diện tương tác có cấu trúc giữa tác nhân AI và máy tính, thay thế dòng lệnh shell tự do bằng các công cụ xem/sửa mã an toàn.
1051
+ - **AOM (Accessibility Object Model):** Cây đối tượng trợ năng của trình duyệt, cung cấp ngữ nghĩa giao diện (role, name, state) chuẩn mực hơn so với cây DOM thuần.
1052
+ - **Clean POM (Clean Page Object Model):** Mô hình thiết kế kiểm thử nơi kịch bản test chỉ chứa lời gọi hàm nghiệp vụ; toàn bộ selector và thao tác DOM được đóng gói tuyệt đối trong Page Class.
1053
+ - **DoD (Definition of Done):** Định nghĩa hoàn thành; tập hợp các cổng chất lượng định lượng bắt buộc phải vượt qua trước khi một tác vụ được nghiệm thu.
1054
+ - **GoT (Graph-of-Thoughts):** Đồ thị suy nghĩ; mô hình suy luận phi tuyến cho phép rẽ nhánh, phản biện và hợp nhất nhiều luồng tư duy của AI.
1055
+ - **LAM (Large Action Model):** Mô hình hành động lớn; mô hình AI được huấn luyện chuyên biệt để chuyển hóa ý định người dùng thành các thao tác điều khiển giao diện.
1056
+ - **MIPROv2:** Bộ tối ưu hóa đề xuất chỉ thị và ví dụ mẫu đa prompt phiên bản 2 trong hệ sinh thái DSPy, ứng dụng thuật toán tìm kiếm Bayes.
1057
+ - **Mutation Score:** Tỷ lệ diệt đột biến; thước đo đo lường tỷ lệ các đột biến cú pháp AST cố ý bị phát hiện và chặn lại bởi các câu lệnh khẳng định (assertions).
1058
+ - **SoM (Set-of-Mark):** Kỹ thuật đánh dấu các hộp giới hạn có số thứ tự lên ảnh chụp giao diện để mô hình thị giác nhận diện tọa độ phần tử tương tác chính xác.
1059
+ - **ToT (Tree-of-Thoughts):** Cây suy nghĩ; kỹ thuật giải quyết vấn đề bằng cách tìm kiếm theo chiều rộng hoặc chiều sâu qua các đơn vị ý nghĩ trung gian có hỗ trợ quay lui.
1060
+
1061
+ ---
1062
+ *Tài liệu nghiên cứu được biên soạn và kiểm chứng độc lập bởi Đội ngũ Nghiên cứu Kiến trúc Tác nhân QA Synapse-Hub.*