agentic-qe 1.1.0 → 1.3.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 (567) hide show
  1. package/.claude/agents/qe-coverage-analyzer.md +8 -0
  2. package/.claude/agents/qe-flaky-test-hunter.md +9 -1
  3. package/.claude/agents/qe-test-generator.md +7 -0
  4. package/.claude/agents/reasoning/agent.md +816 -0
  5. package/.claude/agents/reasoning/goal-planner.md +73 -0
  6. package/.claude/settings.json +64 -25
  7. package/.claude/skills/README.md +124 -0
  8. package/.claude/skills/accessibility-testing/SKILL.md +777 -0
  9. package/.claude/skills/agentdb-advanced/SKILL.md +550 -0
  10. package/.claude/skills/agentdb-learning/SKILL.md +545 -0
  11. package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -0
  12. package/.claude/skills/agentdb-optimization/SKILL.md +509 -0
  13. package/.claude/skills/agentdb-vector-search/SKILL.md +339 -0
  14. package/.claude/skills/agentic-quality-engineering/SKILL.md +604 -0
  15. package/.claude/skills/api-testing-patterns/SKILL.md +686 -0
  16. package/.claude/skills/bug-reporting-excellence/SKILL.md +632 -0
  17. package/.claude/skills/chaos-engineering-resilience/SKILL.md +109 -0
  18. package/.claude/skills/code-review-quality/SKILL.md +683 -0
  19. package/.claude/skills/compatibility-testing/SKILL.md +101 -0
  20. package/.claude/skills/compliance-testing/SKILL.md +162 -0
  21. package/.claude/skills/consultancy-practices/SKILL.md +540 -0
  22. package/.claude/skills/context-driven-testing/SKILL.md +466 -0
  23. package/.claude/skills/contract-testing/SKILL.md +193 -0
  24. package/.claude/skills/database-testing/SKILL.md +243 -0
  25. package/.claude/skills/exploratory-testing-advanced/SKILL.md +676 -0
  26. package/.claude/skills/flow-nexus-neural/SKILL.md +738 -0
  27. package/.claude/skills/flow-nexus-platform/SKILL.md +1157 -0
  28. package/.claude/skills/flow-nexus-swarm/SKILL.md +610 -0
  29. package/.claude/skills/github-code-review/SKILL.md +1140 -0
  30. package/.claude/skills/github-multi-repo/SKILL.md +874 -0
  31. package/.claude/skills/github-project-management/SKILL.md +1277 -0
  32. package/.claude/skills/github-release-management/SKILL.md +1081 -0
  33. package/.claude/skills/github-workflow-automation/SKILL.md +1065 -0
  34. package/.claude/skills/hive-mind-advanced/SKILL.md +712 -0
  35. package/.claude/skills/holistic-testing-pact/SKILL.md +225 -0
  36. package/.claude/skills/hooks-automation/SKILL.md +1201 -0
  37. package/.claude/skills/localization-testing/SKILL.md +115 -0
  38. package/.claude/skills/mobile-testing/SKILL.md +548 -0
  39. package/.claude/skills/mutation-testing/SKILL.md +129 -0
  40. package/.claude/skills/pair-programming/SKILL.md +1202 -0
  41. package/.claude/skills/performance-analysis/SKILL.md +563 -0
  42. package/.claude/skills/performance-testing/SKILL.md +662 -0
  43. package/.claude/skills/quality-metrics/SKILL.md +592 -0
  44. package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -0
  45. package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -0
  46. package/.claude/skills/refactoring-patterns/SKILL.md +778 -0
  47. package/.claude/skills/regression-testing/SKILL.md +1045 -0
  48. package/.claude/skills/risk-based-testing/SKILL.md +721 -0
  49. package/.claude/skills/security-testing/SKILL.md +651 -0
  50. package/.claude/skills/shift-left-testing/SKILL.md +535 -0
  51. package/.claude/skills/shift-right-testing/SKILL.md +591 -0
  52. package/.claude/skills/skill-builder/SKILL.md +910 -0
  53. package/.claude/skills/sparc-methodology/SKILL.md +1115 -0
  54. package/.claude/skills/stream-chain/SKILL.md +563 -0
  55. package/.claude/skills/swarm-advanced/SKILL.md +973 -0
  56. package/.claude/skills/swarm-orchestration/SKILL.md +179 -0
  57. package/.claude/skills/tdd-london-chicago/SKILL.md +567 -0
  58. package/.claude/skills/technical-writing/SKILL.md +235 -0
  59. package/.claude/skills/test-automation-strategy/SKILL.md +842 -0
  60. package/.claude/skills/test-data-management/SKILL.md +1067 -0
  61. package/.claude/skills/test-design-techniques/SKILL.md +160 -0
  62. package/.claude/skills/test-environment-management/SKILL.md +204 -0
  63. package/.claude/skills/test-reporting-analytics/SKILL.md +143 -0
  64. package/.claude/skills/verification-quality/SKILL.md +649 -0
  65. package/.claude/skills/visual-testing-advanced/SKILL.md +148 -0
  66. package/.claude/skills/xp-practices/SKILL.md +671 -0
  67. package/.claude/statusline-command.sh +176 -0
  68. package/CHANGELOG.md +623 -6
  69. package/README.md +101 -5
  70. package/config/improvement-loop.config.ts +323 -0
  71. package/config/neural-agent.config.ts +197 -0
  72. package/dist/adapters/MemoryStoreAdapter.d.ts +16 -16
  73. package/dist/adapters/MemoryStoreAdapter.d.ts.map +1 -1
  74. package/dist/adapters/MemoryStoreAdapter.js +16 -16
  75. package/dist/adapters/MemoryStoreAdapter.js.map +1 -1
  76. package/dist/agents/BaseAgent.d.ts +69 -0
  77. package/dist/agents/BaseAgent.d.ts.map +1 -1
  78. package/dist/agents/BaseAgent.js +387 -5
  79. package/dist/agents/BaseAgent.js.map +1 -1
  80. package/dist/agents/CoverageAnalyzerAgent.d.ts +13 -2
  81. package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
  82. package/dist/agents/CoverageAnalyzerAgent.js +112 -12
  83. package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
  84. package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
  85. package/dist/agents/DeploymentReadinessAgent.js +13 -13
  86. package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
  87. package/dist/agents/FlakyTestHunterAgent.d.ts +28 -0
  88. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  89. package/dist/agents/FlakyTestHunterAgent.js +160 -4
  90. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  91. package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
  92. package/dist/agents/FleetCommanderAgent.js +4 -3
  93. package/dist/agents/FleetCommanderAgent.js.map +1 -1
  94. package/dist/agents/LearningAgent.d.ts +14 -5
  95. package/dist/agents/LearningAgent.d.ts.map +1 -1
  96. package/dist/agents/LearningAgent.js +36 -16
  97. package/dist/agents/LearningAgent.js.map +1 -1
  98. package/dist/agents/NeuralAgentExtension.d.ts +117 -0
  99. package/dist/agents/NeuralAgentExtension.d.ts.map +1 -0
  100. package/dist/agents/NeuralAgentExtension.js +288 -0
  101. package/dist/agents/NeuralAgentExtension.js.map +1 -0
  102. package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
  103. package/dist/agents/PerformanceTesterAgent.js +11 -9
  104. package/dist/agents/PerformanceTesterAgent.js.map +1 -1
  105. package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -1
  106. package/dist/agents/ProductionIntelligenceAgent.js +14 -13
  107. package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
  108. package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -1
  109. package/dist/agents/QualityAnalyzerAgent.js +39 -38
  110. package/dist/agents/QualityAnalyzerAgent.js.map +1 -1
  111. package/dist/agents/QualityGateAgent.d.ts.map +1 -1
  112. package/dist/agents/QualityGateAgent.js +7 -6
  113. package/dist/agents/QualityGateAgent.js.map +1 -1
  114. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -1
  115. package/dist/agents/RegressionRiskAnalyzerAgent.js +22 -21
  116. package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
  117. package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
  118. package/dist/agents/RequirementsValidatorAgent.js +1 -1
  119. package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
  120. package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
  121. package/dist/agents/SecurityScannerAgent.js +8 -7
  122. package/dist/agents/SecurityScannerAgent.js.map +1 -1
  123. package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -1
  124. package/dist/agents/TestDataArchitectAgent.js +12 -11
  125. package/dist/agents/TestDataArchitectAgent.js.map +1 -1
  126. package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
  127. package/dist/agents/TestExecutorAgent.js +18 -19
  128. package/dist/agents/TestExecutorAgent.js.map +1 -1
  129. package/dist/agents/TestGeneratorAgent.d.ts +15 -4
  130. package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
  131. package/dist/agents/TestGeneratorAgent.js +172 -49
  132. package/dist/agents/TestGeneratorAgent.js.map +1 -1
  133. package/dist/agents/index.d.ts.map +1 -1
  134. package/dist/agents/index.js +2 -1
  135. package/dist/agents/index.js.map +1 -1
  136. package/dist/agents/mixins/NeuralCapableMixin.d.ts +130 -0
  137. package/dist/agents/mixins/NeuralCapableMixin.d.ts.map +1 -0
  138. package/dist/agents/mixins/NeuralCapableMixin.js +358 -0
  139. package/dist/agents/mixins/NeuralCapableMixin.js.map +1 -0
  140. package/dist/agents/mixins/QUICCapableMixin.d.ts +34 -0
  141. package/dist/agents/mixins/QUICCapableMixin.d.ts.map +1 -0
  142. package/dist/agents/mixins/QUICCapableMixin.js +346 -0
  143. package/dist/agents/mixins/QUICCapableMixin.js.map +1 -0
  144. package/dist/cli/commands/agent/benchmark.d.ts.map +1 -1
  145. package/dist/cli/commands/agent/benchmark.js +2 -1
  146. package/dist/cli/commands/agent/benchmark.js.map +1 -1
  147. package/dist/cli/commands/agent/index.d.ts +5 -0
  148. package/dist/cli/commands/agent/index.d.ts.map +1 -1
  149. package/dist/cli/commands/agent/index.js +11 -6
  150. package/dist/cli/commands/agent/index.js.map +1 -1
  151. package/dist/cli/commands/agent/kill.d.ts +13 -0
  152. package/dist/cli/commands/agent/kill.d.ts.map +1 -0
  153. package/dist/cli/commands/agent/kill.js +65 -0
  154. package/dist/cli/commands/agent/kill.js.map +1 -0
  155. package/dist/cli/commands/agent/list.d.ts +19 -0
  156. package/dist/cli/commands/agent/list.d.ts.map +1 -0
  157. package/dist/cli/commands/agent/list.js +92 -0
  158. package/dist/cli/commands/agent/list.js.map +1 -0
  159. package/dist/cli/commands/agent/logs.d.ts +14 -0
  160. package/dist/cli/commands/agent/logs.d.ts.map +1 -0
  161. package/dist/cli/commands/agent/logs.js +77 -0
  162. package/dist/cli/commands/agent/logs.js.map +1 -0
  163. package/dist/cli/commands/agent/metrics.d.ts +21 -0
  164. package/dist/cli/commands/agent/metrics.d.ts.map +1 -0
  165. package/dist/cli/commands/agent/metrics.js +87 -0
  166. package/dist/cli/commands/agent/metrics.js.map +1 -0
  167. package/dist/cli/commands/agent/spawn.d.ts +28 -0
  168. package/dist/cli/commands/agent/spawn.d.ts.map +1 -0
  169. package/dist/cli/commands/agent/spawn.js +84 -0
  170. package/dist/cli/commands/agent/spawn.js.map +1 -0
  171. package/dist/cli/commands/analyze.d.ts.map +1 -1
  172. package/dist/cli/commands/analyze.js +2 -1
  173. package/dist/cli/commands/analyze.js.map +1 -1
  174. package/dist/cli/commands/config/list.d.ts.map +1 -1
  175. package/dist/cli/commands/config/list.js +2 -1
  176. package/dist/cli/commands/config/list.js.map +1 -1
  177. package/dist/cli/commands/config/set.d.ts +7 -0
  178. package/dist/cli/commands/config/set.d.ts.map +1 -1
  179. package/dist/cli/commands/config/set.js +35 -4
  180. package/dist/cli/commands/config/set.js.map +1 -1
  181. package/dist/cli/commands/fleet/logs.d.ts.map +1 -1
  182. package/dist/cli/commands/fleet/logs.js +2 -1
  183. package/dist/cli/commands/fleet/logs.js.map +1 -1
  184. package/dist/cli/commands/fleet/metrics.d.ts.map +1 -1
  185. package/dist/cli/commands/fleet/metrics.js +2 -1
  186. package/dist/cli/commands/fleet/metrics.js.map +1 -1
  187. package/dist/cli/commands/fleet/monitor.d.ts.map +1 -1
  188. package/dist/cli/commands/fleet/monitor.js +7 -5
  189. package/dist/cli/commands/fleet/monitor.js.map +1 -1
  190. package/dist/cli/commands/fleet.d.ts.map +1 -1
  191. package/dist/cli/commands/fleet.js +2 -1
  192. package/dist/cli/commands/fleet.js.map +1 -1
  193. package/dist/cli/commands/generate.d.ts.map +1 -1
  194. package/dist/cli/commands/generate.js +2 -1
  195. package/dist/cli/commands/generate.js.map +1 -1
  196. package/dist/cli/commands/improve/index.d.ts.map +1 -1
  197. package/dist/cli/commands/improve/index.js +12 -11
  198. package/dist/cli/commands/improve/index.js.map +1 -1
  199. package/dist/cli/commands/init.d.ts +24 -0
  200. package/dist/cli/commands/init.d.ts.map +1 -1
  201. package/dist/cli/commands/init.js +503 -11
  202. package/dist/cli/commands/init.js.map +1 -1
  203. package/dist/cli/commands/learn/index.d.ts.map +1 -1
  204. package/dist/cli/commands/learn/index.js +13 -12
  205. package/dist/cli/commands/learn/index.js.map +1 -1
  206. package/dist/cli/commands/monitor/alerts.d.ts.map +1 -1
  207. package/dist/cli/commands/monitor/alerts.js +2 -1
  208. package/dist/cli/commands/monitor/alerts.js.map +1 -1
  209. package/dist/cli/commands/patterns/index.d.ts.map +1 -1
  210. package/dist/cli/commands/patterns/index.js +20 -19
  211. package/dist/cli/commands/patterns/index.js.map +1 -1
  212. package/dist/cli/commands/quality/decision.d.ts.map +1 -1
  213. package/dist/cli/commands/quality/decision.js +9 -7
  214. package/dist/cli/commands/quality/decision.js.map +1 -1
  215. package/dist/cli/commands/quality/gate.d.ts.map +1 -1
  216. package/dist/cli/commands/quality/gate.js +10 -8
  217. package/dist/cli/commands/quality/gate.js.map +1 -1
  218. package/dist/cli/commands/quality/policy.d.ts.map +1 -1
  219. package/dist/cli/commands/quality/policy.js +10 -8
  220. package/dist/cli/commands/quality/policy.js.map +1 -1
  221. package/dist/cli/commands/quality/risk.d.ts.map +1 -1
  222. package/dist/cli/commands/quality/risk.js +5 -3
  223. package/dist/cli/commands/quality/risk.js.map +1 -1
  224. package/dist/cli/commands/quality/validate.d.ts.map +1 -1
  225. package/dist/cli/commands/quality/validate.js +10 -8
  226. package/dist/cli/commands/quality/validate.js.map +1 -1
  227. package/dist/cli/commands/quantization.d.ts +6 -0
  228. package/dist/cli/commands/quantization.d.ts.map +1 -0
  229. package/dist/cli/commands/quantization.js +188 -0
  230. package/dist/cli/commands/quantization.js.map +1 -0
  231. package/dist/cli/commands/routing/index.d.ts +0 -6
  232. package/dist/cli/commands/routing/index.d.ts.map +1 -1
  233. package/dist/cli/commands/routing/index.js +17 -16
  234. package/dist/cli/commands/routing/index.js.map +1 -1
  235. package/dist/cli/commands/run.d.ts.map +1 -1
  236. package/dist/cli/commands/run.js +2 -1
  237. package/dist/cli/commands/run.js.map +1 -1
  238. package/dist/cli/commands/skills/index.d.ts +51 -0
  239. package/dist/cli/commands/skills/index.d.ts.map +1 -0
  240. package/dist/cli/commands/skills/index.js +365 -0
  241. package/dist/cli/commands/skills/index.js.map +1 -0
  242. package/dist/cli/commands/test/debug.d.ts.map +1 -1
  243. package/dist/cli/commands/test/debug.js +2 -1
  244. package/dist/cli/commands/test/debug.js.map +1 -1
  245. package/dist/cli/commands/test/mutate.d.ts.map +1 -1
  246. package/dist/cli/commands/test/mutate.js +2 -1
  247. package/dist/cli/commands/test/mutate.js.map +1 -1
  248. package/dist/cli/commands/test/parallel.d.ts.map +1 -1
  249. package/dist/cli/commands/test/parallel.js +6 -4
  250. package/dist/cli/commands/test/parallel.js.map +1 -1
  251. package/dist/cli/commands/test/profile.d.ts.map +1 -1
  252. package/dist/cli/commands/test/profile.js +3 -2
  253. package/dist/cli/commands/test/profile.js.map +1 -1
  254. package/dist/cli/commands/test/queue.d.ts.map +1 -1
  255. package/dist/cli/commands/test/queue.js +2 -1
  256. package/dist/cli/commands/test/queue.js.map +1 -1
  257. package/dist/cli/commands/test/retry.d.ts.map +1 -1
  258. package/dist/cli/commands/test/retry.js +6 -4
  259. package/dist/cli/commands/test/retry.js.map +1 -1
  260. package/dist/cli/commands/test/trace.d.ts.map +1 -1
  261. package/dist/cli/commands/test/trace.js +2 -1
  262. package/dist/cli/commands/test/trace.js.map +1 -1
  263. package/dist/cli/commands/test/watch.d.ts.map +1 -1
  264. package/dist/cli/commands/test/watch.js +3 -2
  265. package/dist/cli/commands/test/watch.js.map +1 -1
  266. package/dist/cli/commands/workflow/cancel.d.ts.map +1 -1
  267. package/dist/cli/commands/workflow/cancel.js +2 -1
  268. package/dist/cli/commands/workflow/cancel.js.map +1 -1
  269. package/dist/cli/index-working.js +9 -8
  270. package/dist/cli/index-working.js.map +1 -1
  271. package/dist/cli/index.js +97 -1
  272. package/dist/cli/index.js.map +1 -1
  273. package/dist/core/EventBus.d.ts +38 -0
  274. package/dist/core/EventBus.d.ts.map +1 -1
  275. package/dist/core/EventBus.js +176 -31
  276. package/dist/core/EventBus.js.map +1 -1
  277. package/dist/core/FleetManager.d.ts +35 -1
  278. package/dist/core/FleetManager.d.ts.map +1 -1
  279. package/dist/core/FleetManager.js +121 -45
  280. package/dist/core/FleetManager.js.map +1 -1
  281. package/dist/core/MemoryManager.d.ts +19 -1
  282. package/dist/core/MemoryManager.d.ts.map +1 -1
  283. package/dist/core/MemoryManager.js +25 -1
  284. package/dist/core/MemoryManager.js.map +1 -1
  285. package/dist/core/coordination/OODACoordination.d.ts.map +1 -1
  286. package/dist/core/coordination/OODACoordination.js +2 -1
  287. package/dist/core/coordination/OODACoordination.js.map +1 -1
  288. package/dist/core/embeddings/EmbeddingCache.d.ts +134 -0
  289. package/dist/core/embeddings/EmbeddingCache.d.ts.map +1 -0
  290. package/dist/core/embeddings/EmbeddingCache.js +239 -0
  291. package/dist/core/embeddings/EmbeddingCache.js.map +1 -0
  292. package/dist/core/embeddings/EmbeddingGenerator.d.ts +224 -0
  293. package/dist/core/embeddings/EmbeddingGenerator.d.ts.map +1 -0
  294. package/dist/core/embeddings/EmbeddingGenerator.js +459 -0
  295. package/dist/core/embeddings/EmbeddingGenerator.js.map +1 -0
  296. package/dist/core/embeddings/index.d.ts +15 -0
  297. package/dist/core/embeddings/index.d.ts.map +1 -0
  298. package/dist/core/embeddings/index.js +22 -0
  299. package/dist/core/embeddings/index.js.map +1 -0
  300. package/dist/core/memory/AgentDBIntegration.d.ts +35 -0
  301. package/dist/core/memory/AgentDBIntegration.d.ts.map +1 -0
  302. package/dist/core/memory/AgentDBIntegration.js +75 -0
  303. package/dist/core/memory/AgentDBIntegration.js.map +1 -0
  304. package/dist/core/memory/AgentDBManager.d.ts +200 -0
  305. package/dist/core/memory/AgentDBManager.d.ts.map +1 -0
  306. package/dist/core/memory/AgentDBManager.js +246 -0
  307. package/dist/core/memory/AgentDBManager.js.map +1 -0
  308. package/dist/core/memory/AgentDBService.d.ts +160 -0
  309. package/dist/core/memory/AgentDBService.d.ts.map +1 -0
  310. package/dist/core/memory/AgentDBService.js +450 -0
  311. package/dist/core/memory/AgentDBService.js.map +1 -0
  312. package/dist/core/memory/RealAgentDBAdapter.d.ts +51 -0
  313. package/dist/core/memory/RealAgentDBAdapter.d.ts.map +1 -0
  314. package/dist/core/memory/RealAgentDBAdapter.js +231 -0
  315. package/dist/core/memory/RealAgentDBAdapter.js.map +1 -0
  316. package/dist/core/memory/ReasoningBankAdapter.d.ts +58 -0
  317. package/dist/core/memory/ReasoningBankAdapter.d.ts.map +1 -0
  318. package/dist/core/memory/ReasoningBankAdapter.js +77 -0
  319. package/dist/core/memory/ReasoningBankAdapter.js.map +1 -0
  320. package/dist/core/memory/SwarmMemoryManager.d.ts +75 -3
  321. package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
  322. package/dist/core/memory/SwarmMemoryManager.js +240 -55
  323. package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
  324. package/dist/core/memory/index.d.ts +4 -0
  325. package/dist/core/memory/index.d.ts.map +1 -1
  326. package/dist/core/memory/index.js +9 -1
  327. package/dist/core/memory/index.js.map +1 -1
  328. package/dist/core/neural/NeuralTrainer.d.ts +137 -0
  329. package/dist/core/neural/NeuralTrainer.d.ts.map +1 -0
  330. package/dist/core/neural/NeuralTrainer.js +544 -0
  331. package/dist/core/neural/NeuralTrainer.js.map +1 -0
  332. package/dist/core/neural/index.d.ts +8 -0
  333. package/dist/core/neural/index.d.ts.map +1 -0
  334. package/dist/core/neural/index.js +24 -0
  335. package/dist/core/neural/index.js.map +1 -0
  336. package/dist/core/neural/types.d.ts +216 -0
  337. package/dist/core/neural/types.d.ts.map +1 -0
  338. package/dist/core/neural/types.js +8 -0
  339. package/dist/core/neural/types.js.map +1 -0
  340. package/dist/core/quantization/QuantizationManager.d.ts +83 -0
  341. package/dist/core/quantization/QuantizationManager.d.ts.map +1 -0
  342. package/dist/core/quantization/QuantizationManager.js +264 -0
  343. package/dist/core/quantization/QuantizationManager.js.map +1 -0
  344. package/dist/core/quantization/index.d.ts +5 -0
  345. package/dist/core/quantization/index.d.ts.map +1 -0
  346. package/dist/core/quantization/index.js +9 -0
  347. package/dist/core/quantization/index.js.map +1 -0
  348. package/dist/core/security/CertificateValidator.d.ts +130 -0
  349. package/dist/core/security/CertificateValidator.d.ts.map +1 -0
  350. package/dist/core/security/CertificateValidator.js +376 -0
  351. package/dist/core/security/CertificateValidator.js.map +1 -0
  352. package/dist/core/transport/QUICTransport.d.ts +62 -0
  353. package/dist/core/transport/QUICTransport.d.ts.map +1 -0
  354. package/dist/core/transport/QUICTransport.js +381 -0
  355. package/dist/core/transport/QUICTransport.js.map +1 -0
  356. package/dist/core/transport/SecureQUICTransport.d.ts +71 -0
  357. package/dist/core/transport/SecureQUICTransport.d.ts.map +1 -0
  358. package/dist/core/transport/SecureQUICTransport.js +253 -0
  359. package/dist/core/transport/SecureQUICTransport.js.map +1 -0
  360. package/dist/learning/AdvancedFeatureExtractor.d.ts +123 -0
  361. package/dist/learning/AdvancedFeatureExtractor.d.ts.map +1 -0
  362. package/dist/learning/AdvancedFeatureExtractor.js +423 -0
  363. package/dist/learning/AdvancedFeatureExtractor.js.map +1 -0
  364. package/dist/learning/FlakyPredictionModel.d.ts +11 -1
  365. package/dist/learning/FlakyPredictionModel.d.ts.map +1 -1
  366. package/dist/learning/FlakyPredictionModel.js +82 -35
  367. package/dist/learning/FlakyPredictionModel.js.map +1 -1
  368. package/dist/learning/FlakyTestDetector.d.ts +9 -0
  369. package/dist/learning/FlakyTestDetector.d.ts.map +1 -1
  370. package/dist/learning/FlakyTestDetector.js +28 -6
  371. package/dist/learning/FlakyTestDetector.js.map +1 -1
  372. package/dist/learning/ImprovementLoop.d.ts +16 -2
  373. package/dist/learning/ImprovementLoop.d.ts.map +1 -1
  374. package/dist/learning/ImprovementLoop.js +67 -8
  375. package/dist/learning/ImprovementLoop.js.map +1 -1
  376. package/dist/learning/ImprovementWorker.d.ts +83 -0
  377. package/dist/learning/ImprovementWorker.d.ts.map +1 -0
  378. package/dist/learning/ImprovementWorker.js +164 -0
  379. package/dist/learning/ImprovementWorker.js.map +1 -0
  380. package/dist/learning/NeuralPatternMatcher.d.ts +184 -0
  381. package/dist/learning/NeuralPatternMatcher.d.ts.map +1 -0
  382. package/dist/learning/NeuralPatternMatcher.js +702 -0
  383. package/dist/learning/NeuralPatternMatcher.js.map +1 -0
  384. package/dist/learning/NeuralTrainer.d.ts +209 -0
  385. package/dist/learning/NeuralTrainer.d.ts.map +1 -0
  386. package/dist/learning/NeuralTrainer.js +478 -0
  387. package/dist/learning/NeuralTrainer.js.map +1 -0
  388. package/dist/learning/index.d.ts +13 -7
  389. package/dist/learning/index.d.ts.map +1 -1
  390. package/dist/learning/index.js +27 -11
  391. package/dist/learning/index.js.map +1 -1
  392. package/dist/learning/types.d.ts +1 -0
  393. package/dist/learning/types.d.ts.map +1 -1
  394. package/dist/learning/types.js +16 -0
  395. package/dist/learning/types.js.map +1 -1
  396. package/dist/mcp/MCPToolRegistry.d.ts +34 -0
  397. package/dist/mcp/MCPToolRegistry.d.ts.map +1 -0
  398. package/dist/mcp/MCPToolRegistry.js +48 -0
  399. package/dist/mcp/MCPToolRegistry.js.map +1 -0
  400. package/dist/mcp/handlers/advanced/mutation-test-execute.d.ts +3 -3
  401. package/dist/mcp/handlers/advanced/mutation-test-execute.d.ts.map +1 -1
  402. package/dist/mcp/handlers/advanced/mutation-test-execute.js +5 -4
  403. package/dist/mcp/handlers/advanced/mutation-test-execute.js.map +1 -1
  404. package/dist/mcp/handlers/agent-spawn.d.ts.map +1 -1
  405. package/dist/mcp/handlers/agent-spawn.js +2 -1
  406. package/dist/mcp/handlers/agent-spawn.js.map +1 -1
  407. package/dist/mcp/handlers/analysis/coverageAnalyzeSublinear.d.ts.map +1 -1
  408. package/dist/mcp/handlers/analysis/coverageAnalyzeSublinear.js +9 -8
  409. package/dist/mcp/handlers/analysis/coverageAnalyzeSublinear.js.map +1 -1
  410. package/dist/mcp/handlers/analysis/coverageGapsDetect.d.ts.map +1 -1
  411. package/dist/mcp/handlers/analysis/coverageGapsDetect.js +6 -5
  412. package/dist/mcp/handlers/analysis/coverageGapsDetect.js.map +1 -1
  413. package/dist/mcp/handlers/analysis/performance-monitor-realtime-handler.d.ts.map +1 -1
  414. package/dist/mcp/handlers/analysis/performance-monitor-realtime-handler.js +5 -4
  415. package/dist/mcp/handlers/analysis/performance-monitor-realtime-handler.js.map +1 -1
  416. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.d.ts.map +1 -1
  417. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.js +8 -7
  418. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.js.map +1 -1
  419. package/dist/mcp/handlers/analysis/performanceMonitorRealtime.d.ts.map +1 -1
  420. package/dist/mcp/handlers/analysis/performanceMonitorRealtime.js +7 -6
  421. package/dist/mcp/handlers/analysis/performanceMonitorRealtime.js.map +1 -1
  422. package/dist/mcp/handlers/analysis/securityScanComprehensive.d.ts.map +1 -1
  423. package/dist/mcp/handlers/analysis/securityScanComprehensive.js +18 -21
  424. package/dist/mcp/handlers/analysis/securityScanComprehensive.js.map +1 -1
  425. package/dist/mcp/handlers/base-handler.d.ts.map +1 -1
  426. package/dist/mcp/handlers/base-handler.js +2 -9
  427. package/dist/mcp/handlers/base-handler.js.map +1 -1
  428. package/dist/mcp/handlers/chaos/chaos-inject-failure.d.ts.map +1 -1
  429. package/dist/mcp/handlers/chaos/chaos-inject-failure.js +4 -3
  430. package/dist/mcp/handlers/chaos/chaos-inject-failure.js.map +1 -1
  431. package/dist/mcp/handlers/chaos/chaos-inject-latency.d.ts.map +1 -1
  432. package/dist/mcp/handlers/chaos/chaos-inject-latency.js +6 -5
  433. package/dist/mcp/handlers/chaos/chaos-inject-latency.js.map +1 -1
  434. package/dist/mcp/handlers/coordination/event-emit.d.ts.map +1 -1
  435. package/dist/mcp/handlers/coordination/event-emit.js +2 -1
  436. package/dist/mcp/handlers/coordination/event-emit.js.map +1 -1
  437. package/dist/mcp/handlers/coordination/event-subscribe.d.ts.map +1 -1
  438. package/dist/mcp/handlers/coordination/event-subscribe.js +2 -1
  439. package/dist/mcp/handlers/coordination/event-subscribe.js.map +1 -1
  440. package/dist/mcp/handlers/coordination/workflow-checkpoint.d.ts.map +1 -1
  441. package/dist/mcp/handlers/coordination/workflow-checkpoint.js +2 -1
  442. package/dist/mcp/handlers/coordination/workflow-checkpoint.js.map +1 -1
  443. package/dist/mcp/handlers/coordination/workflow-create.d.ts.map +1 -1
  444. package/dist/mcp/handlers/coordination/workflow-create.js +2 -1
  445. package/dist/mcp/handlers/coordination/workflow-create.js.map +1 -1
  446. package/dist/mcp/handlers/coordination/workflow-execute.d.ts.map +1 -1
  447. package/dist/mcp/handlers/coordination/workflow-execute.js +2 -1
  448. package/dist/mcp/handlers/coordination/workflow-execute.js.map +1 -1
  449. package/dist/mcp/handlers/coordination/workflow-resume.d.ts.map +1 -1
  450. package/dist/mcp/handlers/coordination/workflow-resume.js +2 -1
  451. package/dist/mcp/handlers/coordination/workflow-resume.js.map +1 -1
  452. package/dist/mcp/handlers/fleet-init.d.ts.map +1 -1
  453. package/dist/mcp/handlers/fleet-init.js +2 -1
  454. package/dist/mcp/handlers/fleet-init.js.map +1 -1
  455. package/dist/mcp/handlers/fleet-status.d.ts.map +1 -1
  456. package/dist/mcp/handlers/fleet-status.js +31 -30
  457. package/dist/mcp/handlers/fleet-status.js.map +1 -1
  458. package/dist/mcp/handlers/integration/dependency-check.d.ts.map +1 -1
  459. package/dist/mcp/handlers/integration/dependency-check.js +3 -2
  460. package/dist/mcp/handlers/integration/dependency-check.js.map +1 -1
  461. package/dist/mcp/handlers/integration/integration-test-orchestrate.d.ts.map +1 -1
  462. package/dist/mcp/handlers/integration/integration-test-orchestrate.js +2 -1
  463. package/dist/mcp/handlers/integration/integration-test-orchestrate.js.map +1 -1
  464. package/dist/mcp/handlers/optimize-tests.d.ts.map +1 -1
  465. package/dist/mcp/handlers/optimize-tests.js +33 -32
  466. package/dist/mcp/handlers/optimize-tests.js.map +1 -1
  467. package/dist/mcp/handlers/predict-defects.d.ts.map +1 -1
  468. package/dist/mcp/handlers/predict-defects.js +46 -45
  469. package/dist/mcp/handlers/predict-defects.js.map +1 -1
  470. package/dist/mcp/handlers/prediction/deployment-readiness-check.d.ts.map +1 -1
  471. package/dist/mcp/handlers/prediction/deployment-readiness-check.js +24 -23
  472. package/dist/mcp/handlers/prediction/deployment-readiness-check.js.map +1 -1
  473. package/dist/mcp/handlers/prediction/predict-defects-ai.d.ts.map +1 -1
  474. package/dist/mcp/handlers/prediction/predict-defects-ai.js +10 -9
  475. package/dist/mcp/handlers/prediction/predict-defects-ai.js.map +1 -1
  476. package/dist/mcp/handlers/prediction/regression-risk-analyze.d.ts.map +1 -1
  477. package/dist/mcp/handlers/prediction/regression-risk-analyze.js +10 -9
  478. package/dist/mcp/handlers/prediction/regression-risk-analyze.js.map +1 -1
  479. package/dist/mcp/handlers/prediction/visual-test-regression.d.ts.map +1 -1
  480. package/dist/mcp/handlers/prediction/visual-test-regression.js +7 -6
  481. package/dist/mcp/handlers/prediction/visual-test-regression.js.map +1 -1
  482. package/dist/mcp/handlers/quality-analyze.d.ts.map +1 -1
  483. package/dist/mcp/handlers/quality-analyze.js +53 -52
  484. package/dist/mcp/handlers/quality-analyze.js.map +1 -1
  485. package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -1
  486. package/dist/mcp/handlers/task-orchestrate.js +19 -18
  487. package/dist/mcp/handlers/task-orchestrate.js.map +1 -1
  488. package/dist/mcp/handlers/test/test-execute-parallel.d.ts.map +1 -1
  489. package/dist/mcp/handlers/test/test-execute-parallel.js +7 -6
  490. package/dist/mcp/handlers/test/test-execute-parallel.js.map +1 -1
  491. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts.map +1 -1
  492. package/dist/mcp/handlers/test/test-generate-enhanced.js +2 -1
  493. package/dist/mcp/handlers/test/test-generate-enhanced.js.map +1 -1
  494. package/dist/mcp/handlers/test/test-optimize-sublinear.d.ts.map +1 -1
  495. package/dist/mcp/handlers/test/test-optimize-sublinear.js +3 -2
  496. package/dist/mcp/handlers/test/test-optimize-sublinear.js.map +1 -1
  497. package/dist/mcp/handlers/test-execute.d.ts.map +1 -1
  498. package/dist/mcp/handlers/test-execute.js +11 -10
  499. package/dist/mcp/handlers/test-execute.js.map +1 -1
  500. package/dist/mcp/handlers/test-generate.d.ts.map +1 -1
  501. package/dist/mcp/handlers/test-generate.js +4 -3
  502. package/dist/mcp/handlers/test-generate.js.map +1 -1
  503. package/dist/mcp/server.d.ts +4 -4
  504. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
  505. package/dist/mcp/services/AgentRegistry.js +9 -2
  506. package/dist/mcp/services/AgentRegistry.js.map +1 -1
  507. package/dist/mcp/streaming/CoverageAnalyzeStreamHandler.d.ts.map +1 -1
  508. package/dist/mcp/streaming/CoverageAnalyzeStreamHandler.js +10 -9
  509. package/dist/mcp/streaming/CoverageAnalyzeStreamHandler.js.map +1 -1
  510. package/dist/mcp/streaming/StreamingMCPTool.d.ts.map +1 -1
  511. package/dist/mcp/streaming/StreamingMCPTool.js +2 -1
  512. package/dist/mcp/streaming/StreamingMCPTool.js.map +1 -1
  513. package/dist/mcp/streaming/TestExecuteStreamHandler.d.ts.map +1 -1
  514. package/dist/mcp/streaming/TestExecuteStreamHandler.js +6 -5
  515. package/dist/mcp/streaming/TestExecuteStreamHandler.js.map +1 -1
  516. package/dist/reasoning/TestTemplateCreator.d.ts +10 -2
  517. package/dist/reasoning/TestTemplateCreator.d.ts.map +1 -1
  518. package/dist/reasoning/TestTemplateCreator.js +81 -21
  519. package/dist/reasoning/TestTemplateCreator.js.map +1 -1
  520. package/dist/transport/QUICTransport.d.ts +340 -0
  521. package/dist/transport/QUICTransport.d.ts.map +1 -0
  522. package/dist/transport/QUICTransport.js +814 -0
  523. package/dist/transport/QUICTransport.js.map +1 -0
  524. package/dist/transport/UDPTransport.d.ts +348 -0
  525. package/dist/transport/UDPTransport.d.ts.map +1 -0
  526. package/dist/transport/UDPTransport.js +820 -0
  527. package/dist/transport/UDPTransport.js.map +1 -0
  528. package/dist/types/errors.d.ts +1 -1
  529. package/dist/types/index.d.ts +37 -0
  530. package/dist/types/index.d.ts.map +1 -1
  531. package/dist/types/index.js +2 -0
  532. package/dist/types/index.js.map +1 -1
  533. package/dist/types/pattern.types.d.ts +39 -3
  534. package/dist/types/pattern.types.d.ts.map +1 -1
  535. package/dist/types/quic.d.ts +339 -0
  536. package/dist/types/quic.d.ts.map +1 -0
  537. package/dist/types/quic.js +48 -0
  538. package/dist/types/quic.js.map +1 -0
  539. package/dist/utils/Config.js +3 -3
  540. package/dist/utils/Config.js.map +1 -1
  541. package/dist/utils/Database.d.ts +14 -0
  542. package/dist/utils/Database.d.ts.map +1 -1
  543. package/dist/utils/Database.js +51 -4
  544. package/dist/utils/Database.js.map +1 -1
  545. package/dist/utils/Logger.d.ts.map +1 -1
  546. package/dist/utils/Logger.js +111 -26
  547. package/dist/utils/Logger.js.map +1 -1
  548. package/dist/utils/ProcessExit.d.ts +23 -0
  549. package/dist/utils/ProcessExit.d.ts.map +1 -0
  550. package/dist/utils/ProcessExit.js +40 -0
  551. package/dist/utils/ProcessExit.js.map +1 -0
  552. package/dist/utils/SecureRandom.d.ts +171 -0
  553. package/dist/utils/SecureRandom.d.ts.map +1 -0
  554. package/dist/utils/SecureRandom.js +229 -0
  555. package/dist/utils/SecureRandom.js.map +1 -0
  556. package/dist/utils/SecureUrlValidator.d.ts +167 -0
  557. package/dist/utils/SecureUrlValidator.d.ts.map +1 -0
  558. package/dist/utils/SecureUrlValidator.js +306 -0
  559. package/dist/utils/SecureUrlValidator.js.map +1 -0
  560. package/dist/utils/SecureValidation.d.ts +131 -0
  561. package/dist/utils/SecureValidation.d.ts.map +1 -0
  562. package/dist/utils/SecureValidation.js +265 -0
  563. package/dist/utils/SecureValidation.js.map +1 -0
  564. package/dist/utils/validation.d.ts.map +1 -1
  565. package/dist/utils/validation.js +5 -4
  566. package/dist/utils/validation.js.map +1 -1
  567. package/package.json +31 -8
@@ -0,0 +1,671 @@
1
+ ---
2
+ name: xp-practices
3
+ description: Apply XP practices including pair programming, ensemble programming, continuous integration, and sustainable pace. Use when implementing agile development practices, improving team collaboration, or adopting technical excellence practices.
4
+ version: 1.0.0
5
+ category: development
6
+ tags: [xp, pair-programming, ensemble-programming, continuous-integration, sustainable-pace, agile, teamwork]
7
+ difficulty: intermediate
8
+ estimated_time: 2-3 hours
9
+ author: user
10
+ ---
11
+
12
+ # Extreme Programming (XP) Practices
13
+
14
+ ## Core Philosophy
15
+
16
+ XP emphasizes technical excellence, rapid feedback, and sustainable pace. It's about doing the simple thing that could possibly work, then iterating based on real feedback.
17
+
18
+ ## The Five Values
19
+
20
+ 1. **Communication** - Everyone knows what everyone else is doing
21
+ 2. **Simplicity** - Do the simplest thing that could possibly work
22
+ 3. **Feedback** - Get feedback early and often
23
+ 4. **Courage** - Tell the truth about progress and estimates, adapt when needed
24
+ 5. **Respect** - Everyone contributes value, treat team members well
25
+
26
+ ## Core XP Practices
27
+
28
+ ### 1. Pair Programming
29
+
30
+ **Definition:** Two developers working together at one workstation. One writes code (driver), the other reviews each line as it's typed (navigator).
31
+
32
+ #### Pairing Styles
33
+
34
+ **Driver-Navigator (Classic)**
35
+ - Driver: Writes code
36
+ - Navigator: Reviews, suggests, thinks ahead
37
+ - Rotate every 20-30 minutes
38
+
39
+ **Ping-Pong Pairing (with TDD)**
40
+ ```
41
+ Person A: Writes failing test
42
+ Person B: Makes test pass
43
+ Person B: Refactors
44
+ Person B: Writes next failing test
45
+ Person A: Makes test pass
46
+ [Continue...]
47
+ ```
48
+
49
+ **Strong-Style Pairing**
50
+ - "For an idea to go from your head to the computer, it must go through someone else's hands"
51
+ - Great for mentoring/knowledge transfer
52
+
53
+ #### When to Pair
54
+
55
+ **ALWAYS pair for:**
56
+ - Complex or risky code
57
+ - Learning new technology
58
+ - Onboarding new team members
59
+ - Critical bug fixes
60
+ - Architectural decisions
61
+
62
+ **CAN pair for:**
63
+ - Regular feature development
64
+ - Refactoring sessions
65
+ - Code reviews (live pairing review)
66
+
67
+ **DON'T pair for:**
68
+ - Simple, well-understood tasks
69
+ - Spikes/research (pair to discuss findings)
70
+ - Personal learning time
71
+ - Admin work
72
+
73
+ #### Making Pairing Work
74
+
75
+ **Do:**
76
+ - ✅ Switch roles regularly (20-30 min)
77
+ - ✅ Take breaks together
78
+ - ✅ Speak your thoughts aloud
79
+ - ✅ Ask questions
80
+ - ✅ Challenge ideas respectfully
81
+ - ✅ Keep sessions 2-4 hours max
82
+
83
+ **Don't:**
84
+ - ❌ Grab keyboard without asking
85
+ - ❌ Check phone/email while pairing
86
+ - ❌ Dominate the conversation
87
+ - ❌ Pair all day every day (exhausting)
88
+ - ❌ Pair with same person exclusively
89
+
90
+ #### Remote Pairing Tools
91
+
92
+ - **VS Code Live Share** - Shared editing, debugging
93
+ - **Tuple** - Low-latency screen sharing for pairing
94
+ - **Zoom/Meet** - Standard video with screen share
95
+ - **tmux/screen** - Terminal sharing for CLI work
96
+
97
+ ### 2. Ensemble Programming (Mob Programming)
98
+
99
+ **Definition:** 3+ developers working together on the same code at the same workstation.
100
+
101
+ #### Ensemble Setup
102
+
103
+ ```
104
+ [Projector/Large Screen]
105
+
106
+ [Computer with Code]
107
+
108
+ [Driver]
109
+ ← ← ←
110
+ [Navigator 1] [Navigator 2] [Navigator 3]
111
+ ```
112
+
113
+ **Rotation:** Driver switches every 5-10 minutes
114
+
115
+ #### Ensemble Patterns
116
+
117
+ **Strong-Style Mob**
118
+ - Navigators direct, driver types
119
+ - Driver doesn't add own ideas while driving
120
+ - Forces clear communication
121
+
122
+ **Rotating Facilitator**
123
+ - One person manages time/rotation
124
+ - Keeps discussion focused
125
+ - Rotates like driver position
126
+
127
+ **Expert Learning**
128
+ - Expert explains while driving
129
+ - Others learn and ask questions
130
+ - Useful for knowledge transfer
131
+
132
+ #### When to Ensemble
133
+
134
+ **Great for:**
135
+ - Complex problem solving
136
+ - Architectural decisions
137
+ - Learning new frameworks
138
+ - Kickstarting difficult features
139
+ - Resolving blockers
140
+
141
+ **Not great for:**
142
+ - Simple, well-understood tasks
143
+ - When people need deep focus
144
+ - Long-term (unsustainable)
145
+
146
+ ### 3. Continuous Integration
147
+
148
+ **Definition:** Integrate code into shared repository frequently (multiple times per day), with automated build and tests.
149
+
150
+ #### CI Workflow
151
+
152
+ ```
153
+ Developer:
154
+ 1. Pull latest from main
155
+ 2. Make small change (<2 hours work)
156
+ 3. Run tests locally (all pass)
157
+ 4. Commit and push to main
158
+ 5. CI runs tests automatically
159
+ 6. If tests fail → fix immediately
160
+
161
+ Pipeline:
162
+ main ← commit
163
+
164
+ [Run Tests]
165
+
166
+ [Build]
167
+
168
+ [Deploy to Staging]
169
+ ```
170
+
171
+ #### CI Best Practices
172
+
173
+ **Commit frequently:**
174
+ - Small commits (< 2 hours of work)
175
+ - Each commit should pass all tests
176
+ - Commit to main/trunk (no long-lived branches)
177
+
178
+ **Keep build fast:**
179
+ - Full build + tests < 10 minutes
180
+ - Faster feedback = more valuable
181
+ - Parallelize slow tests
182
+
183
+ **Fix broken builds immediately:**
184
+ - Broken build = top priority
185
+ - Don't commit more code until fixed
186
+ - Revert commit if fix takes too long
187
+
188
+ **Automate everything:**
189
+ - Tests run automatically
190
+ - Build happens automatically
191
+ - Deploy to staging automatically
192
+
193
+ ### 4. Test-Driven Development (TDD)
194
+
195
+ (See `tdd-london-chicago` skill for deep dive)
196
+
197
+ **Red-Green-Refactor cycle:**
198
+ 1. Write failing test (Red)
199
+ 2. Write minimal code to pass (Green)
200
+ 3. Refactor while keeping tests green
201
+
202
+ **XP emphasis:** Tests as executable specifications, safety net for refactoring.
203
+
204
+ ### 5. Simple Design
205
+
206
+ **Four Rules of Simple Design** (Kent Beck):
207
+ 1. Passes all tests
208
+ 2. Reveals intention (clear, expressive)
209
+ 3. No duplication (DRY principle)
210
+ 4. Fewest elements (no speculative code)
211
+
212
+ **Apply in order - tests first!**
213
+
214
+ #### Examples
215
+
216
+ **Not simple:**
217
+ ```javascript
218
+ // Speculative generalization
219
+ class PaymentProcessor {
220
+ process(payment, options = {}) {
221
+ // Supports 15 payment types we might need someday
222
+ // Has configuration for every possible scenario
223
+ // 500 lines of "just in case" code
224
+ }
225
+ }
226
+ ```
227
+
228
+ **Simple:**
229
+ ```javascript
230
+ // Just what we need today
231
+ class PaymentProcessor {
232
+ processCreditCard(cardInfo) {
233
+ // Does one thing well
234
+ // 30 lines of clear code
235
+ }
236
+ }
237
+
238
+ // Add complexity only when needed
239
+ ```
240
+
241
+ ### 6. Refactoring
242
+
243
+ **Definition:** Improving code structure without changing behavior.
244
+
245
+ #### When to Refactor
246
+
247
+ **The Rule of Three:**
248
+ 1. First time: Just do it
249
+ 2. Second time: Wince and duplicate
250
+ 3. Third time: Refactor
251
+
252
+ **Refactor when:**
253
+ - Tests are green
254
+ - You see duplication
255
+ - Code is hard to understand
256
+ - Adding feature reveals poor design
257
+ - During green phase of TDD
258
+
259
+ **Don't refactor when:**
260
+ - Tests are failing
261
+ - Under deadline pressure (address later)
262
+ - Code works and rarely changes
263
+
264
+ #### Safe Refactoring
265
+
266
+ **Always:**
267
+ 1. Have tests that pass
268
+ 2. Refactor in small steps
269
+ 3. Run tests after each step
270
+ 4. Commit working code frequently
271
+
272
+ **Common Refactorings:**
273
+ - Extract method
274
+ - Rename for clarity
275
+ - Remove duplication
276
+ - Introduce parameter object
277
+ - Replace conditional with polymorphism
278
+
279
+ ### 7. Collective Code Ownership
280
+
281
+ **Principle:** Anyone can improve any part of the codebase.
282
+
283
+ **Benefits:**
284
+ - No bottlenecks (no waiting for "that one person")
285
+ - Knowledge spreads across team
286
+ - Code quality improves (more eyes)
287
+ - Bus factor > 1
288
+
289
+ **Requirements:**
290
+ - Comprehensive test suite (safety net)
291
+ - Coding standards (consistency)
292
+ - Continuous integration (catch issues fast)
293
+ - Code reviews or pairing (maintain quality)
294
+
295
+ **In practice:**
296
+ ```
297
+ ❌ "That's Alice's module, only she can change it"
298
+ ✅ "I see an issue in this module, I'll pair with Alice to fix it"
299
+ ✅ "I need to change this module, I'll write tests first"
300
+ ```
301
+
302
+ ### 8. Coding Standards
303
+
304
+ **Purpose:** Consistency makes collaboration easier.
305
+
306
+ **What to standardize:**
307
+ - Formatting (use auto-formatter: Prettier, Black)
308
+ - Naming conventions
309
+ - File structure
310
+ - Testing patterns
311
+ - Documentation style
312
+
313
+ **How to maintain:**
314
+ - Automated linting (ESLint, Pylint)
315
+ - Pre-commit hooks
316
+ - CI enforcement
317
+ - Pair/ensemble programming (natural alignment)
318
+
319
+ **Don't:**
320
+ - Have 50-page style guides no one reads
321
+ - Enforce arbitrary preferences
322
+ - Spend hours debating tabs vs spaces (use formatter)
323
+
324
+ ### 9. Sustainable Pace
325
+
326
+ **Principle:** Team should work at a pace they can sustain indefinitely.
327
+
328
+ **40-hour work week:**
329
+ - No routine overtime
330
+ - Regular hours = sustainable productivity
331
+ - Tired developers write bugs
332
+
333
+ **Warning signs of unsustainable pace:**
334
+ - Regular late nights/weekends
335
+ - Increasing bug rate
336
+ - Declining code quality
337
+ - Team burnout/turnover
338
+ - Decreased morale
339
+
340
+ **How to maintain:**
341
+ - Realistic estimates
342
+ - Buffer time in plans
343
+ - Say no to unrealistic deadlines
344
+ - Measure velocity, plan accordingly
345
+ - Take vacations
346
+
347
+ ### 10. Small Releases
348
+
349
+ **Principle:** Release working software frequently.
350
+
351
+ **Benefits:**
352
+ - Fast feedback from users
353
+ - Reduced risk (small changes)
354
+ - Easier to debug (what changed?)
355
+ - Business value delivered sooner
356
+
357
+ **How small?**
358
+ - Deploy to production: daily or weekly
359
+ - Internal release: multiple times per day
360
+ - Feature flags for incomplete work
361
+
362
+ **Continuous Deployment:**
363
+ ```
364
+ Commit → CI Tests → Deploy Staging → Automated Tests → Deploy Production
365
+ [All automated, happens multiple times per day]
366
+ ```
367
+
368
+ ### 11. On-Site Customer
369
+
370
+ **Modern interpretation:** Product Owner embedded with team.
371
+
372
+ **Customer responsibilities:**
373
+ - Writes user stories
374
+ - Prioritizes backlog
375
+ - Answers questions immediately
376
+ - Accepts completed work
377
+ - Makes scope decisions
378
+
379
+ **Not realistic:** Customer physically present 40hrs/week
380
+
381
+ **Practical compromise:**
382
+ - Daily standup attendance
383
+ - Available for questions (Slack/quick calls)
384
+ - Sprint planning and review
385
+ - Regular demo sessions
386
+
387
+ ### 12. Metaphor / Ubiquitous Language
388
+
389
+ **Principle:** Shared vocabulary between technical and non-technical team members.
390
+
391
+ **Example - E-commerce System:**
392
+ ```
393
+ Shared language:
394
+ - "Cart" (not "session shopping container")
395
+ - "Checkout" (not "payment initialization workflow")
396
+ - "Order" (not "purchase transaction record")
397
+
398
+ Everyone uses same terms:
399
+ - Product owner writes stories using these words
400
+ - Developers name classes/methods using these words
401
+ - Tests use these words
402
+ - Documentation uses these words
403
+ ```
404
+
405
+ **Benefits:**
406
+ - Clearer communication
407
+ - Code reflects business domain
408
+ - Less translation needed
409
+ - Easier onboarding
410
+
411
+ ## Combining XP Practices
412
+
413
+ ### Practice Synergies
414
+
415
+ **TDD + Pair Programming**
416
+ ```
417
+ Ping-pong pairing with TDD:
418
+ Person A writes test → Person B makes it pass
419
+ High quality code, fast feedback, knowledge sharing
420
+ ```
421
+
422
+ **Collective Ownership + CI + Tests**
423
+ ```
424
+ Anyone can change anything because:
425
+ - Tests catch regressions immediately
426
+ - CI runs tests on every commit
427
+ - Broken builds fixed immediately
428
+ No fear of stepping on toes
429
+ ```
430
+
431
+ **Simple Design + Refactoring**
432
+ ```
433
+ Start with simplest design
434
+ When requirements change → refactor
435
+ Tests give confidence to refactor
436
+ Never build more than needed
437
+ ```
438
+
439
+ ## Adapting XP for Your Context
440
+
441
+ ### Startup Context
442
+ - **Keep:** TDD, CI, Simple Design, Small Releases
443
+ - **Adapt:** Pair occasionally (not always), lighter standards
444
+ - **Skip:** Might not need dedicated on-site customer
445
+
446
+ ### Enterprise Context
447
+ - **Keep:** All practices, especially sustainable pace
448
+ - **Adapt:** More formal standards, documentation requirements
449
+ - **Add:** Architecture reviews, security scans
450
+
451
+ ### Remote Team
452
+ - **Keep:** All core practices
453
+ - **Adapt:** Remote pairing tools, async communication
454
+ - **Add:** Over-communicate, document decisions
455
+
456
+ ### Legacy Codebase
457
+ - **Start with:** Tests for changes, CI, Refactoring
458
+ - **Build towards:** TDD for new code, Collective ownership
459
+ - **Be patient:** Can't adopt everything at once
460
+
461
+ ## Common Objections (and Responses)
462
+
463
+ **"Pair programming is twice as slow"**
464
+ → Studies show 15% slower to write, 15% fewer bugs, better design. Net positive.
465
+
466
+ **"We don't have time for TDD"**
467
+ → You don't have time NOT to. Debugging takes longer than writing tests.
468
+
469
+ **"Continuous integration is too hard to set up"**
470
+ → Start simple: GitHub Actions with one test. Build from there.
471
+
472
+ **"Collective ownership will create chaos"**
473
+ → Only with poor tests and no CI. Fix those first.
474
+
475
+ **"40-hour weeks won't work for our deadlines"**
476
+ → Your deadlines are based on unsustainable pace. Adjust estimates.
477
+
478
+ ## XP in Quality Engineering
479
+
480
+ ### QE-Specific Applications
481
+
482
+ **Ensemble Testing Sessions**
483
+ - 3-5 people exploring together
484
+ - Share testing heuristics in real-time
485
+ - Rapid bug discovery and investigation
486
+
487
+ **Test Code Pairing**
488
+ - Pair on test automation
489
+ - Share testing patterns
490
+ - Improve test quality
491
+
492
+ **Quality as Team Responsibility**
493
+ - Developers write tests
494
+ - QE does exploratory testing
495
+ - Everyone owns quality
496
+
497
+ **Continuous Testing**
498
+ - Tests run on every commit
499
+ - Fast feedback on quality
500
+ - No separate QE phase
501
+
502
+ ## Measuring XP Success
503
+
504
+ **Code Quality Metrics:**
505
+ - Test coverage trend
506
+ - Defect density
507
+ - Code churn
508
+
509
+ **Team Health Metrics:**
510
+ - Velocity consistency
511
+ - Team satisfaction surveys
512
+ - Turnover rate
513
+
514
+ **Delivery Metrics:**
515
+ - Deployment frequency
516
+ - Lead time for changes
517
+ - Mean time to recovery
518
+
519
+ **Don't measure:**
520
+ - Lines of code written
521
+ - Hours worked
522
+ - Number of commits
523
+
524
+ ## Resources
525
+
526
+ **Books:**
527
+ - **Extreme Programming Explained** by Kent Beck
528
+ - **Extreme Programming Installed** by Jeffries, Anderson, Hendrickson
529
+ - **Pair Programming Illuminated** by Williams & Kessler
530
+
531
+ **Modern Practices:**
532
+ - Remote mob programming techniques
533
+ - DevOps integration with XP
534
+ - Continuous deployment patterns
535
+
536
+ ## Using with QE Agents
537
+
538
+ ### Agent-Human Pair Testing
539
+
540
+ **qe-test-generator** + Human QE:
541
+ ```typescript
542
+ // Ping-pong pattern with AI agent
543
+ // Human writes test charter
544
+ const charter = "Test payment processing edge cases";
545
+
546
+ // Agent generates test code
547
+ const test = await qe-test-generator.generate(charter);
548
+
549
+ // Human reviews and refines
550
+ const refinedTest = await human.review(test);
551
+
552
+ // Agent implements refinements
553
+ await qe-test-generator.implement(refinedTest);
554
+ ```
555
+
556
+ ### Ensemble Testing with Multiple Agents
557
+
558
+ ```typescript
559
+ // Mob testing: Multiple agents + human coordinator
560
+ const ensemble = await FleetManager.startEnsemble({
561
+ facilitator: 'human',
562
+ participants: [
563
+ 'qe-test-generator',
564
+ 'qe-coverage-analyzer',
565
+ 'qe-security-scanner'
566
+ ],
567
+ rotation: '10min',
568
+ charter: 'Design test strategy for new payment API'
569
+ });
570
+
571
+ // Human directs, agents execute and suggest
572
+ // Rotate which agent is "driving" every 10 minutes
573
+ ```
574
+
575
+ ### Continuous Integration with Agents
576
+
577
+ ```yaml
578
+ # AI agents in CI pipeline
579
+ name: XP CI with Agents
580
+
581
+ on: [push]
582
+
583
+ jobs:
584
+ test:
585
+ steps:
586
+ # Agent runs risk analysis
587
+ - name: Risk Analysis
588
+ run: aqe agent run qe-regression-risk-analyzer
589
+
590
+ # Agent generates tests for changes
591
+ - name: Generate Tests
592
+ run: aqe agent run qe-test-generator
593
+
594
+ # Agent executes all tests
595
+ - name: Execute Tests
596
+ run: aqe agent run qe-test-executor
597
+
598
+ # Agent analyzes coverage
599
+ - name: Coverage Check
600
+ run: aqe agent run qe-coverage-analyzer
601
+ ```
602
+
603
+ ### Collective Code & Test Ownership
604
+
605
+ ```typescript
606
+ // Agents help maintain collective ownership
607
+ // Any team member can improve any test
608
+ // Agents ensure consistency
609
+
610
+ await qe-quality-analyzer.enforceStandards({
611
+ scope: 'all-tests',
612
+ standards: ['naming-conventions', 'test-structure', 'assertions'],
613
+ autoFix: true // Agent fixes simple violations
614
+ });
615
+ ```
616
+
617
+ ### Sustainable Pace with Agent Assistance
618
+
619
+ ```typescript
620
+ // Agents handle grunt work, humans focus on high-value tasks
621
+ const workDistribution = {
622
+ agents: [
623
+ 'Repetitive regression testing',
624
+ 'Log analysis and pattern detection',
625
+ 'Test data generation',
626
+ 'Coverage gap analysis',
627
+ 'Performance monitoring'
628
+ ],
629
+ humans: [
630
+ 'Exploratory testing',
631
+ 'Risk assessment',
632
+ 'Test strategy decisions',
633
+ 'Domain-specific edge cases',
634
+ 'Stakeholder communication'
635
+ ]
636
+ };
637
+
638
+ // Result: 40-hour work week, sustainable, high productivity
639
+ ```
640
+
641
+ ---
642
+
643
+ ## Related Skills
644
+
645
+ **Core Quality Practices:**
646
+ - [agentic-quality-engineering](../agentic-quality-engineering/) - Agents as pair partners
647
+ - [holistic-testing-pact](../holistic-testing-pact/) - Whole-team quality practices
648
+ - [context-driven-testing](../context-driven-testing/) - Adapt XP to context
649
+
650
+ **Development Practices:**
651
+ - [tdd-london-chicago](../tdd-london-chicago/) - TDD within XP workflow
652
+ - [refactoring-patterns](../refactoring-patterns/) - Safe refactoring techniques
653
+ - [code-review-quality](../code-review-quality/) - Review as pairing alternative
654
+
655
+ **Testing Specializations:**
656
+ - [exploratory-testing-advanced](../exploratory-testing-advanced/) - Ensemble exploration
657
+ - [test-automation-strategy](../test-automation-strategy/) - CI/CD integration
658
+
659
+ ---
660
+
661
+ ## Remember
662
+
663
+ XP practices work together as a system. Don't cherry-pick randomly:
664
+ - Start with practices that give immediate value
665
+ - Build supporting practices gradually
666
+ - Adapt to your context
667
+ - Measure results
668
+
669
+ **The goal:** Sustainable delivery of high-quality software through technical excellence and teamwork.
670
+
671
+ **With Agents**: XP practices amplify agent effectiveness. Pair humans with agents for best results. Agents handle repetitive work, humans provide judgment and creativity.