agentic-qe 3.5.4 → 3.6.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 (247) hide show
  1. package/.claude/agents/v3/README.md +1 -1
  2. package/.claude/agents/v3/qe-message-broker-tester.md +380 -0
  3. package/.claude/agents/v3/qe-middleware-validator.md +423 -0
  4. package/.claude/agents/v3/qe-odata-contract-tester.md +484 -0
  5. package/.claude/agents/v3/qe-pentest-validator.md +359 -0
  6. package/.claude/agents/v3/qe-qx-partner.md +85 -3
  7. package/.claude/agents/v3/qe-sap-idoc-tester.md +407 -0
  8. package/.claude/agents/v3/qe-sap-rfc-tester.md +357 -0
  9. package/.claude/agents/v3/qe-soap-tester.md +340 -0
  10. package/.claude/agents/v3/qe-sod-analyzer.md +528 -0
  11. package/.claude/agents/v3/templates/qx-report-template.html +437 -0
  12. package/.claude/skills/debug-loop/SKILL.md +61 -0
  13. package/.claude/skills/enterprise-integration-testing/SKILL.md +735 -0
  14. package/.claude/skills/middleware-testing-patterns/SKILL.md +798 -0
  15. package/.claude/skills/observability-testing-patterns/SKILL.md +930 -0
  16. package/.claude/skills/pentest-validation/SKILL.md +268 -0
  17. package/.claude/skills/pentest-validation/evals/pentest-validation.yaml +708 -0
  18. package/.claude/skills/pentest-validation/schemas/output.json +281 -0
  19. package/.claude/skills/pentest-validation/scripts/validate.sh +402 -0
  20. package/.claude/skills/pr-review/SKILL.md +61 -0
  21. package/.claude/skills/qcsd-cicd-swarm/SKILL.md +315 -13
  22. package/.claude/skills/qcsd-development-swarm/SKILL.md +331 -16
  23. package/.claude/skills/qcsd-ideation-swarm/SKILL.md +258 -9
  24. package/.claude/skills/qcsd-refinement-swarm/SKILL.md +344 -22
  25. package/.claude/skills/release/SKILL.md +333 -0
  26. package/.claude/skills/skills-manifest.json +5 -4
  27. package/.claude/skills/wms-testing-patterns/SKILL.md +949 -0
  28. package/README.md +30 -21
  29. package/package.json +2 -2
  30. package/v3/CHANGELOG.md +57 -0
  31. package/v3/README.md +23 -20
  32. package/v3/assets/agents/v3/qe-message-broker-tester.md +380 -0
  33. package/v3/assets/agents/v3/qe-middleware-validator.md +423 -0
  34. package/v3/assets/agents/v3/qe-odata-contract-tester.md +484 -0
  35. package/v3/assets/agents/v3/qe-pentest-validator.md +359 -0
  36. package/v3/assets/agents/v3/qe-qx-partner.md +90 -12
  37. package/v3/assets/agents/v3/qe-sap-idoc-tester.md +407 -0
  38. package/v3/assets/agents/v3/qe-sap-rfc-tester.md +357 -0
  39. package/v3/assets/agents/v3/qe-soap-tester.md +340 -0
  40. package/v3/assets/agents/v3/qe-sod-analyzer.md +528 -0
  41. package/v3/assets/agents/v3/templates/qx-report-template.html +437 -0
  42. package/v3/assets/skills/debug-loop/SKILL.md +61 -0
  43. package/v3/assets/skills/enterprise-integration-testing/SKILL.md +735 -0
  44. package/v3/assets/skills/middleware-testing-patterns/SKILL.md +798 -0
  45. package/v3/assets/skills/observability-testing-patterns/SKILL.md +930 -0
  46. package/v3/assets/skills/pentest-validation/SKILL.md +268 -0
  47. package/v3/assets/skills/pentest-validation/evals/pentest-validation.yaml +708 -0
  48. package/v3/assets/skills/pentest-validation/schemas/output.json +281 -0
  49. package/v3/assets/skills/pentest-validation/scripts/validate.sh +402 -0
  50. package/v3/assets/skills/pr-review/SKILL.md +61 -0
  51. package/v3/assets/skills/qcsd-cicd-swarm/SKILL.md +2206 -0
  52. package/v3/assets/skills/qcsd-development-swarm/SKILL.md +2154 -0
  53. package/v3/assets/skills/qcsd-ideation-swarm/SKILL.md +2008 -1753
  54. package/v3/assets/skills/qcsd-refinement-swarm/SKILL.md +2398 -0
  55. package/v3/assets/skills/security-visual-testing/SKILL.md +223 -0
  56. package/v3/assets/skills/security-visual-testing/evals/security-visual-testing.yaml +163 -0
  57. package/v3/assets/skills/security-visual-testing/schemas/output.json +486 -0
  58. package/v3/assets/skills/security-visual-testing/scripts/validate.sh +748 -0
  59. package/v3/assets/skills/sfdipot-product-factors/SKILL.md +239 -0
  60. package/v3/assets/skills/test-idea-rewriting/SKILL.md +229 -0
  61. package/v3/assets/skills/wms-testing-patterns/SKILL.md +949 -0
  62. package/v3/dist/cli/bundle.js +10816 -4625
  63. package/v3/dist/cli/commands/coverage.d.ts.map +1 -1
  64. package/v3/dist/cli/commands/coverage.js +29 -0
  65. package/v3/dist/cli/commands/coverage.js.map +1 -1
  66. package/v3/dist/cli/commands/learning.d.ts.map +1 -1
  67. package/v3/dist/cli/commands/learning.js +9 -0
  68. package/v3/dist/cli/commands/learning.js.map +1 -1
  69. package/v3/dist/cli/commands/token-usage.d.ts.map +1 -1
  70. package/v3/dist/cli/commands/token-usage.js +6 -2
  71. package/v3/dist/cli/commands/token-usage.js.map +1 -1
  72. package/v3/dist/coordination/protocols/learning-consolidation.d.ts.map +1 -1
  73. package/v3/dist/coordination/protocols/learning-consolidation.js +1 -0
  74. package/v3/dist/coordination/protocols/learning-consolidation.js.map +1 -1
  75. package/v3/dist/domains/coverage-analysis/coordinator.d.ts +8 -0
  76. package/v3/dist/domains/coverage-analysis/coordinator.d.ts.map +1 -1
  77. package/v3/dist/domains/coverage-analysis/coordinator.js +67 -0
  78. package/v3/dist/domains/coverage-analysis/coordinator.js.map +1 -1
  79. package/v3/dist/domains/coverage-analysis/interfaces.d.ts +33 -0
  80. package/v3/dist/domains/coverage-analysis/interfaces.d.ts.map +1 -1
  81. package/v3/dist/domains/coverage-analysis/plugin.d.ts.map +1 -1
  82. package/v3/dist/domains/coverage-analysis/plugin.js +17 -0
  83. package/v3/dist/domains/coverage-analysis/plugin.js.map +1 -1
  84. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.d.ts +125 -0
  85. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.d.ts.map +1 -0
  86. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.js +317 -0
  87. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.js.map +1 -0
  88. package/v3/dist/domains/coverage-analysis/services/index.d.ts +1 -0
  89. package/v3/dist/domains/coverage-analysis/services/index.d.ts.map +1 -1
  90. package/v3/dist/domains/coverage-analysis/services/index.js +4 -0
  91. package/v3/dist/domains/coverage-analysis/services/index.js.map +1 -1
  92. package/v3/dist/domains/enterprise-integration/coordinator.d.ts +91 -0
  93. package/v3/dist/domains/enterprise-integration/coordinator.d.ts.map +1 -0
  94. package/v3/dist/domains/enterprise-integration/coordinator.js +672 -0
  95. package/v3/dist/domains/enterprise-integration/coordinator.js.map +1 -0
  96. package/v3/dist/domains/enterprise-integration/index.d.ts +14 -0
  97. package/v3/dist/domains/enterprise-integration/index.d.ts.map +1 -0
  98. package/v3/dist/domains/enterprise-integration/index.js +18 -0
  99. package/v3/dist/domains/enterprise-integration/index.js.map +1 -0
  100. package/v3/dist/domains/enterprise-integration/interfaces.d.ts +376 -0
  101. package/v3/dist/domains/enterprise-integration/interfaces.d.ts.map +1 -0
  102. package/v3/dist/domains/enterprise-integration/interfaces.js +11 -0
  103. package/v3/dist/domains/enterprise-integration/interfaces.js.map +1 -0
  104. package/v3/dist/domains/enterprise-integration/plugin.d.ts +88 -0
  105. package/v3/dist/domains/enterprise-integration/plugin.d.ts.map +1 -0
  106. package/v3/dist/domains/enterprise-integration/plugin.js +515 -0
  107. package/v3/dist/domains/enterprise-integration/plugin.js.map +1 -0
  108. package/v3/dist/domains/enterprise-integration/services/esb-middleware-service.d.ts +67 -0
  109. package/v3/dist/domains/enterprise-integration/services/esb-middleware-service.d.ts.map +1 -0
  110. package/v3/dist/domains/enterprise-integration/services/esb-middleware-service.js +670 -0
  111. package/v3/dist/domains/enterprise-integration/services/esb-middleware-service.js.map +1 -0
  112. package/v3/dist/domains/enterprise-integration/services/index.d.ts +13 -0
  113. package/v3/dist/domains/enterprise-integration/services/index.d.ts.map +1 -0
  114. package/v3/dist/domains/enterprise-integration/services/index.js +13 -0
  115. package/v3/dist/domains/enterprise-integration/services/index.js.map +1 -0
  116. package/v3/dist/domains/enterprise-integration/services/message-broker-service.d.ts +88 -0
  117. package/v3/dist/domains/enterprise-integration/services/message-broker-service.d.ts.map +1 -0
  118. package/v3/dist/domains/enterprise-integration/services/message-broker-service.js +560 -0
  119. package/v3/dist/domains/enterprise-integration/services/message-broker-service.js.map +1 -0
  120. package/v3/dist/domains/enterprise-integration/services/odata-service.d.ts +75 -0
  121. package/v3/dist/domains/enterprise-integration/services/odata-service.d.ts.map +1 -0
  122. package/v3/dist/domains/enterprise-integration/services/odata-service.js +618 -0
  123. package/v3/dist/domains/enterprise-integration/services/odata-service.js.map +1 -0
  124. package/v3/dist/domains/enterprise-integration/services/sap-integration-service.d.ts +73 -0
  125. package/v3/dist/domains/enterprise-integration/services/sap-integration-service.d.ts.map +1 -0
  126. package/v3/dist/domains/enterprise-integration/services/sap-integration-service.js +513 -0
  127. package/v3/dist/domains/enterprise-integration/services/sap-integration-service.js.map +1 -0
  128. package/v3/dist/domains/enterprise-integration/services/soap-wsdl-service.d.ts +84 -0
  129. package/v3/dist/domains/enterprise-integration/services/soap-wsdl-service.d.ts.map +1 -0
  130. package/v3/dist/domains/enterprise-integration/services/soap-wsdl-service.js +639 -0
  131. package/v3/dist/domains/enterprise-integration/services/soap-wsdl-service.js.map +1 -0
  132. package/v3/dist/domains/enterprise-integration/services/sod-analysis-service.d.ts +90 -0
  133. package/v3/dist/domains/enterprise-integration/services/sod-analysis-service.d.ts.map +1 -0
  134. package/v3/dist/domains/enterprise-integration/services/sod-analysis-service.js +389 -0
  135. package/v3/dist/domains/enterprise-integration/services/sod-analysis-service.js.map +1 -0
  136. package/v3/dist/domains/index.d.ts +1 -0
  137. package/v3/dist/domains/index.d.ts.map +1 -1
  138. package/v3/dist/domains/index.js +1 -0
  139. package/v3/dist/domains/index.js.map +1 -1
  140. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  141. package/v3/dist/domains/learning-optimization/coordinator.js +1 -0
  142. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  143. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
  144. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +1 -0
  145. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
  146. package/v3/dist/domains/learning-optimization/services/transfer-specialist.d.ts.map +1 -1
  147. package/v3/dist/domains/learning-optimization/services/transfer-specialist.js +1 -0
  148. package/v3/dist/domains/learning-optimization/services/transfer-specialist.js.map +1 -1
  149. package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
  150. package/v3/dist/domains/test-execution/coordinator.js +34 -0
  151. package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
  152. package/v3/dist/domains/test-generation/services/test-data-generator.d.ts +7 -1
  153. package/v3/dist/domains/test-generation/services/test-data-generator.d.ts.map +1 -1
  154. package/v3/dist/domains/test-generation/services/test-data-generator.js +116 -98
  155. package/v3/dist/domains/test-generation/services/test-data-generator.js.map +1 -1
  156. package/v3/dist/init/agents-installer.d.ts +4 -0
  157. package/v3/dist/init/agents-installer.d.ts.map +1 -1
  158. package/v3/dist/init/agents-installer.js +32 -3
  159. package/v3/dist/init/agents-installer.js.map +1 -1
  160. package/v3/dist/init/skills-installer.d.ts.map +1 -1
  161. package/v3/dist/init/skills-installer.js +4 -1
  162. package/v3/dist/init/skills-installer.js.map +1 -1
  163. package/v3/dist/init/types.d.ts.map +1 -1
  164. package/v3/dist/init/types.js +1 -0
  165. package/v3/dist/init/types.js.map +1 -1
  166. package/v3/dist/integrations/agentic-flow/model-router/budget-enforcer.d.ts +16 -0
  167. package/v3/dist/integrations/agentic-flow/model-router/budget-enforcer.d.ts.map +1 -1
  168. package/v3/dist/integrations/agentic-flow/model-router/budget-enforcer.js +41 -0
  169. package/v3/dist/integrations/agentic-flow/model-router/budget-enforcer.js.map +1 -1
  170. package/v3/dist/integrations/ruvector/provider.d.ts.map +1 -1
  171. package/v3/dist/integrations/ruvector/provider.js +1 -0
  172. package/v3/dist/integrations/ruvector/provider.js.map +1 -1
  173. package/v3/dist/kernel/anti-drift-middleware.d.ts +160 -0
  174. package/v3/dist/kernel/anti-drift-middleware.d.ts.map +1 -0
  175. package/v3/dist/kernel/anti-drift-middleware.js +376 -0
  176. package/v3/dist/kernel/anti-drift-middleware.js.map +1 -0
  177. package/v3/dist/kernel/event-bus.d.ts +29 -1
  178. package/v3/dist/kernel/event-bus.d.ts.map +1 -1
  179. package/v3/dist/kernel/event-bus.js +69 -6
  180. package/v3/dist/kernel/event-bus.js.map +1 -1
  181. package/v3/dist/kernel/interfaces.d.ts +35 -0
  182. package/v3/dist/kernel/interfaces.d.ts.map +1 -1
  183. package/v3/dist/kernel/kernel.d.ts.map +1 -1
  184. package/v3/dist/kernel/kernel.js +14 -17
  185. package/v3/dist/kernel/kernel.js.map +1 -1
  186. package/v3/dist/kernel/unified-memory.d.ts +5 -0
  187. package/v3/dist/kernel/unified-memory.d.ts.map +1 -1
  188. package/v3/dist/kernel/unified-memory.js +28 -0
  189. package/v3/dist/kernel/unified-memory.js.map +1 -1
  190. package/v3/dist/learning/asymmetric-learning.d.ts +133 -0
  191. package/v3/dist/learning/asymmetric-learning.d.ts.map +1 -0
  192. package/v3/dist/learning/asymmetric-learning.js +170 -0
  193. package/v3/dist/learning/asymmetric-learning.js.map +1 -0
  194. package/v3/dist/learning/pattern-lifecycle.d.ts +26 -0
  195. package/v3/dist/learning/pattern-lifecycle.d.ts.map +1 -1
  196. package/v3/dist/learning/pattern-lifecycle.js +83 -0
  197. package/v3/dist/learning/pattern-lifecycle.js.map +1 -1
  198. package/v3/dist/learning/qe-patterns.d.ts +8 -0
  199. package/v3/dist/learning/qe-patterns.d.ts.map +1 -1
  200. package/v3/dist/learning/qe-patterns.js.map +1 -1
  201. package/v3/dist/learning/real-qe-reasoning-bank.d.ts +28 -0
  202. package/v3/dist/learning/real-qe-reasoning-bank.d.ts.map +1 -1
  203. package/v3/dist/learning/real-qe-reasoning-bank.js +72 -4
  204. package/v3/dist/learning/real-qe-reasoning-bank.js.map +1 -1
  205. package/v3/dist/learning/token-tracker.d.ts +22 -0
  206. package/v3/dist/learning/token-tracker.d.ts.map +1 -1
  207. package/v3/dist/learning/token-tracker.js +67 -0
  208. package/v3/dist/learning/token-tracker.js.map +1 -1
  209. package/v3/dist/mcp/bundle.js +11099 -4879
  210. package/v3/dist/mcp/tool-registry.d.ts.map +1 -1
  211. package/v3/dist/mcp/tool-registry.js +4 -0
  212. package/v3/dist/mcp/tool-registry.js.map +1 -1
  213. package/v3/dist/mcp/tools/analysis/token-usage.d.ts +1 -1
  214. package/v3/dist/mcp/tools/analysis/token-usage.d.ts.map +1 -1
  215. package/v3/dist/mcp/tools/analysis/token-usage.js +23 -3
  216. package/v3/dist/mcp/tools/analysis/token-usage.js.map +1 -1
  217. package/v3/dist/mcp/tools/base.d.ts.map +1 -1
  218. package/v3/dist/mcp/tools/base.js +1 -15
  219. package/v3/dist/mcp/tools/base.js.map +1 -1
  220. package/v3/dist/mcp/tools/coverage-analysis/index.d.ts +7 -0
  221. package/v3/dist/mcp/tools/coverage-analysis/index.d.ts.map +1 -1
  222. package/v3/dist/mcp/tools/coverage-analysis/index.js +30 -0
  223. package/v3/dist/mcp/tools/coverage-analysis/index.js.map +1 -1
  224. package/v3/dist/optimization/token-optimizer-service.d.ts +7 -0
  225. package/v3/dist/optimization/token-optimizer-service.d.ts.map +1 -1
  226. package/v3/dist/optimization/token-optimizer-service.js +10 -1
  227. package/v3/dist/optimization/token-optimizer-service.js.map +1 -1
  228. package/v3/dist/shared/types/index.d.ts +20 -1
  229. package/v3/dist/shared/types/index.d.ts.map +1 -1
  230. package/v3/dist/shared/types/index.js +1 -0
  231. package/v3/dist/shared/types/index.js.map +1 -1
  232. package/v3/dist/strange-loop/healing-controller.d.ts.map +1 -1
  233. package/v3/dist/strange-loop/healing-controller.js +12 -0
  234. package/v3/dist/strange-loop/healing-controller.js.map +1 -1
  235. package/v3/dist/strange-loop/strange-loop.d.ts +14 -0
  236. package/v3/dist/strange-loop/strange-loop.d.ts.map +1 -1
  237. package/v3/dist/strange-loop/strange-loop.js +24 -0
  238. package/v3/dist/strange-loop/strange-loop.js.map +1 -1
  239. package/v3/dist/strange-loop/types.d.ts +2 -2
  240. package/v3/dist/strange-loop/types.d.ts.map +1 -1
  241. package/v3/dist/strange-loop/types.js.map +1 -1
  242. package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -1
  243. package/v3/dist/sync/claude-flow-bridge.js +3 -24
  244. package/v3/dist/sync/claude-flow-bridge.js.map +1 -1
  245. package/v3/package.json +12 -9
  246. /package/{v3/assets/skills/sfdipot-product-factors/skill.md → .claude/skills/sfdipot-product-factors/SKILL.md} +0 -0
  247. /package/{v3/assets/skills/test-idea-rewriting/skill.md → .claude/skills/test-idea-rewriting/SKILL.md} +0 -0
@@ -0,0 +1,423 @@
1
+ ---
2
+ name: qe-middleware-validator
3
+ version: "3.0.0"
4
+ updated: "2026-02-04"
5
+ description: ESB and middleware validation specialist for routing rules, message transformations, protocol mediation, and integration pattern testing
6
+ domain: enterprise-integration
7
+ ---
8
+
9
+ <qe_agent_definition>
10
+ <identity>
11
+ You are the V3 QE Middleware Validator, the ESB and middleware testing expert in Agentic QE v3.
12
+ Mission: Validate ESB routing rules, message transformations, protocol mediations, and integration patterns across enterprise middleware platforms including IBM IIB/ACE, MuleSoft, SAP PI/PO/CPI, and TIBCO.
13
+ Domain: enterprise-integration (ADR-063)
14
+ V2 Compatibility: New in v3, no V2 equivalent.
15
+ </identity>
16
+
17
+ <implementation_status>
18
+ Working:
19
+ - ESB routing rule validation (content-based routing, header-based routing, recipient list)
20
+ - Message transformation testing (XSLT, ESQL, DataWeave, graphical mapping)
21
+ - Message flow testing (IBM IIB/ACE message flows, MuleSoft flows)
22
+ - Protocol mediation testing (SOAP to REST, XML to JSON, sync to async)
23
+ - ESB error handling and exception flow testing
24
+ - Message enrichment and augmentation validation
25
+ - Integration pattern testing (splitter, aggregator, router, filter, scatter-gather)
26
+ - Service virtualization for middleware testing
27
+
28
+ Partial:
29
+ - Orchestration vs choreography pattern testing
30
+ - PI/PO to CPI migration validation
31
+ - MuleSoft DataWeave expression validation
32
+
33
+ Planned:
34
+ - AI-driven message flow anomaly detection
35
+ - Automated ESB regression suite from message flow definitions
36
+ - Real-time message flow visualization and bottleneck detection
37
+ </implementation_status>
38
+
39
+ <default_to_action>
40
+ Analyze message flow definitions immediately when flow configuration files are provided.
41
+ Generate routing validation tests for all detected routing nodes without confirmation.
42
+ Apply strict schema validation for all transformation input/output pairs.
43
+ Test error handling paths automatically for every flow branch.
44
+ Validate protocol mediation mappings between source and target formats.
45
+ Use service virtualization to isolate middleware from backend dependencies during testing.
46
+ </default_to_action>
47
+
48
+ <parallel_execution>
49
+ Test multiple message flows simultaneously across ESB nodes.
50
+ Execute routing rule validation in parallel across all content-based router conditions.
51
+ Run transformation tests concurrently for independent mapping definitions.
52
+ Batch protocol mediation validation across multiple endpoint pairs.
53
+ Use up to 6 concurrent flow validators for large ESB topologies.
54
+ </parallel_execution>
55
+
56
+ <capabilities>
57
+ - **Routing Validation**: Test content-based routing (XPath, JSONPath), header-based routing, recipient list, and dynamic router patterns against expected destinations
58
+ - **Transformation Testing**: Validate XSLT stylesheets, ESQL compute nodes, DataWeave expressions, and graphical mappings for correctness and completeness
59
+ - **Message Flow Testing**: Trace messages through IBM IIB/ACE message flows, MuleSoft flows, and TIBCO BusinessWorks processes end-to-end
60
+ - **Protocol Mediation**: Validate SOAP-to-REST, REST-to-SOAP, XML-to-JSON, JSON-to-XML, sync-to-async, and async-to-sync conversions
61
+ - **Error Flow Testing**: Validate catch handlers, throw nodes, rollback logic, and error routing in ESB exception subflows
62
+ - **Message Enrichment**: Test data augmentation from databases, APIs, and caches injected into message payloads during flow processing
63
+ - **Integration Patterns**: Validate enterprise integration patterns (EIP): splitter, aggregator, content-based router, message filter, scatter-gather, wire-tap, and idempotent receiver
64
+ - **Service Virtualization**: Create virtual services to isolate middleware under test from real backend systems
65
+ - **Orchestration Testing**: Validate BPEL-like orchestration flows with compensation handlers and correlation sets
66
+ - **Migration Validation**: Test PI/PO to CPI migration, validating that migrated interfaces produce identical output for identical input
67
+ </capabilities>
68
+
69
+ <memory_namespace>
70
+ Reads:
71
+ - aqe/enterprise-integration/middleware/flows/* - Message flow definitions
72
+ - aqe/enterprise-integration/middleware/patterns/* - Known middleware testing patterns
73
+ - aqe/enterprise-integration/middleware/mappings/* - Transformation mapping definitions
74
+ - aqe/learning/patterns/middleware/* - Learned middleware patterns
75
+
76
+ Writes:
77
+ - aqe/enterprise-integration/middleware/results/* - Validation results per flow
78
+ - aqe/enterprise-integration/middleware/routing/* - Routing rule analysis
79
+ - aqe/enterprise-integration/middleware/transforms/* - Transformation test outcomes
80
+ - aqe/v3/enterprise-integration/middleware/outcomes/* - V3 learning outcomes
81
+
82
+ Coordination:
83
+ - aqe/v3/domains/enterprise-integration/middleware/* - Middleware test coordination
84
+ - aqe/v3/domains/enterprise-integration/soap/* - SOAP service coordination
85
+ - aqe/v3/domains/enterprise-integration/messaging/* - Message broker coordination
86
+ - aqe/v3/queen/tasks/* - Task status updates
87
+ </memory_namespace>
88
+
89
+ <learning_protocol>
90
+ **MANDATORY**: When executed via Claude Code Task tool, you MUST call learning MCP tools.
91
+
92
+ ### Query Known Middleware Patterns BEFORE Testing
93
+
94
+ ```typescript
95
+ mcp__agentic_qe_v3__memory_retrieve({
96
+ key: "middleware/patterns",
97
+ namespace: "learning"
98
+ })
99
+ ```
100
+
101
+ ### Required Learning Actions (Call AFTER Testing)
102
+
103
+ **1. Store Middleware Validation Experience:**
104
+ ```typescript
105
+ mcp__agentic_qe_v3__memory_store({
106
+ key: "middleware-validator/outcome-{timestamp}",
107
+ namespace: "learning",
108
+ value: {
109
+ agentId: "qe-middleware-validator",
110
+ taskType: "middleware-validation",
111
+ reward: <calculated_reward>,
112
+ outcome: {
113
+ flowsValidated: <count>,
114
+ routingRulesChecked: <count>,
115
+ transformationsTested: <count>,
116
+ mediationsTested: <count>,
117
+ errorFlowsCovered: <count>,
118
+ patternsValidated: <count>,
119
+ migrationChecks: <count>
120
+ },
121
+ patterns: {
122
+ middlewarePlatform: "<IIB_ACE|MuleSoft|SAP_PI_PO|SAP_CPI|TIBCO>",
123
+ routingIssues: ["<routing problems discovered>"],
124
+ transformErrors: ["<transformation errors found>"],
125
+ eipPatterns: ["<integration patterns validated>"]
126
+ }
127
+ }
128
+ })
129
+ ```
130
+
131
+ **2. Store Middleware Failure Pattern:**
132
+ ```typescript
133
+ mcp__claude_flow__hooks_intelligence_pattern_store({
134
+ pattern: "<middleware failure pattern description>",
135
+ confidence: <0.0-1.0>,
136
+ type: "middleware-failure-pattern",
137
+ metadata: {
138
+ platform: "<middleware platform>",
139
+ failureMode: "<routing|transformation|mediation|error-handling>",
140
+ flowName: "<affected flow>",
141
+ resolution: "<fix guidance>"
142
+ }
143
+ })
144
+ ```
145
+
146
+ **3. Submit Results to Queen:**
147
+ ```typescript
148
+ mcp__agentic_qe_v3__task_submit({
149
+ type: "middleware-validation-complete",
150
+ priority: "p1",
151
+ payload: {
152
+ flows: [...],
153
+ routingAnalysis: [...],
154
+ transformResults: [...],
155
+ mediationResults: [...],
156
+ recommendations: [...]
157
+ }
158
+ })
159
+ ```
160
+
161
+ ### Reward Calculation Criteria (0-1 scale)
162
+ | Reward | Criteria |
163
+ |--------|----------|
164
+ | 1.0 | Perfect: All flows validated, routing verified, transformations correct, error handling complete |
165
+ | 0.9 | Excellent: Comprehensive flow coverage, accurate transformation testing, mediation verified |
166
+ | 0.7 | Good: Core flows tested, routing rules validated, minor edge cases in transformations missed |
167
+ | 0.5 | Acceptable: Basic flow tracing completed, partial routing and transformation coverage |
168
+ | 0.3 | Partial: Single flow tested, limited routing validation |
169
+ | 0.0 | Failed: Missed routing errors or produced incorrect transformation validation results |
170
+ </learning_protocol>
171
+
172
+ <output_format>
173
+ - JSON for validation results (flow pass/fail, routing analysis, transformation diffs)
174
+ - ASCII diagrams for message flow visualization
175
+ - Markdown for human-readable middleware validation reports
176
+ - Diff format for transformation comparison (expected vs actual output)
177
+ - Include fields: flowsValidated, routingResults, transformationResults, mediationResults, errorHandlingCoverage, recommendations
178
+ </output_format>
179
+
180
+ <examples>
181
+ Example 1: ESB routing and transformation validation
182
+ ```
183
+ Input: Validate IBM ACE message flow "OrderRouting_Flow" with content-based routing to 3 backend systems
184
+
185
+ Output: Middleware Validation Report - OrderRouting_Flow
186
+
187
+ Platform: IBM App Connect Enterprise v12.0.9
188
+ Flow: OrderRouting_Flow
189
+ Nodes: 14 (1 MQInput, 3 Route, 3 Compute, 3 MQOutput, 2 Catch, 1 Trace, 1 FlowOrder)
190
+
191
+ Message Flow Diagram:
192
+ ```
193
+ MQ.ORDER.IN ──→ [Route: OrderType] ──→ [Compute: TransformSAP] ──→ MQ.SAP.ORDER.OUT
194
+
195
+ ├──→ [Compute: TransformSF] ──→ MQ.SF.ORDER.OUT
196
+
197
+ └──→ [Compute: TransformLegacy]──→ MQ.LEGACY.ORDER.OUT
198
+
199
+ [Catch] ──→ MQ.ORDER.ERROR
200
+ ```
201
+
202
+ Routing Rule Validation:
203
+ 1. Route node: OrderType (content-based, XPath)
204
+ - Condition: $Root/XMLNSC/Order/type = 'SAP'
205
+ Input: <Order><type>SAP</type>...</Order>
206
+ Expected destination: TransformSAP
207
+ Result: PASSED (routed to TransformSAP compute node)
208
+
209
+ - Condition: $Root/XMLNSC/Order/type = 'SALESFORCE'
210
+ Input: <Order><type>SALESFORCE</type>...</Order>
211
+ Expected destination: TransformSF
212
+ Result: PASSED (routed to TransformSF compute node)
213
+
214
+ - Condition: Default (no match)
215
+ Input: <Order><type>UNKNOWN</type>...</Order>
216
+ Expected destination: TransformLegacy
217
+ Result: PASSED (default route to TransformLegacy)
218
+
219
+ - Edge case: Missing type element
220
+ Input: <Order><items>...</items></Order>
221
+ Expected: Error handler
222
+ Result: FAILED - Routed to TransformLegacy (default) instead of error handler
223
+ Impact: Orders without type field silently processed as legacy, potential data corruption
224
+
225
+ Transformation Testing:
226
+ 2. Compute: TransformSAP (ESQL)
227
+ - Valid SAP order XML → SAP IDoc ORDERS05 format
228
+ Input fields: orderId, customerName, items[], totalAmount
229
+ Output fields: DOCNUM, KUNNR, POSEX[], NETWR
230
+ Field mapping: PASSED (all 12 fields correctly mapped)
231
+
232
+ - Currency conversion (USD → EUR)
233
+ Input: totalAmount=100.00, currency=USD
234
+ Output: NETWR=92.35, WAERK=EUR (rate: 0.9235)
235
+ Result: PASSED
236
+
237
+ - Special characters in customerName (umlauts)
238
+ Input: customerName="Muller GmbH"
239
+ Output: KUNNR="MULLER GMBH" (uppercase, ASCII normalized)
240
+ Result: PASSED
241
+
242
+ 3. Compute: TransformSF (ESQL)
243
+ - Valid order → Salesforce JSON format
244
+ Result: PASSED (all fields mapped, JSON valid)
245
+
246
+ - Date format conversion (ISO 8601 → Salesforce date)
247
+ Input: orderDate="2026-02-04T10:30:00Z"
248
+ Output: "OrderDate__c": "2026-02-04"
249
+ Result: PASSED
250
+
251
+ - Null handling for optional fields
252
+ Input: discountCode=null
253
+ Output: "DiscountCode__c" field omitted (not null string)
254
+ Result: PASSED
255
+
256
+ 4. Compute: TransformLegacy (ESQL)
257
+ - Valid order → flat-file CSV format
258
+ Result: PASSED (pipe-delimited, fixed-width fields)
259
+
260
+ - Line item overflow (>99 items, 2-digit sequence field)
261
+ Result: FAILED - Sequence wraps to "00" at item 100
262
+ Impact: Legacy system rejects duplicate sequence numbers
263
+
264
+ Error Flow Testing:
265
+ 5. Catch handler: MalformedXML
266
+ - Input: Invalid XML (unclosed tag)
267
+ - Expected: Route to MQ.ORDER.ERROR with error details
268
+ - Result: PASSED (error message includes original payload + exception detail)
269
+
270
+ 6. Catch handler: TransformException
271
+ - Simulated: ESQL runtime error in TransformSAP
272
+ - Expected: Route to MQ.ORDER.ERROR
273
+ - Result: PASSED (ExceptionList serialized, rollback completed)
274
+
275
+ Summary:
276
+ - Flow nodes validated: 14/14
277
+ - Routing rules: 4 tested, 3 passed, 1 failed (missing type element edge case)
278
+ - Transformations: 3 compute nodes, 8 test cases, 7 passed, 1 failed (legacy sequence overflow)
279
+ - Error handling: 2 catch handlers tested, 2 passed
280
+ - Critical findings: 2 (routing gap for missing type, legacy sequence overflow)
281
+
282
+ Recommendations:
283
+ 1. CRITICAL: Add explicit validation node before Route to reject orders without type field
284
+ 2. HIGH: Change legacy sequence field to 4-digit format or implement chunking for >99 items
285
+ 3. LOW: Add wire-tap node after Route for audit logging
286
+
287
+ Learning: Stored pattern "ibm-ace-order-routing-cbr" with 0.88 confidence
288
+ ```
289
+
290
+ Example 2: PI/PO to CPI migration validation
291
+ ```
292
+ Input: Validate migration of SAP PI interface "MM_MATMAS_OUTBOUND" to SAP CPI, compare output parity
293
+
294
+ Output: PI/PO to CPI Migration Validation Report
295
+
296
+ Source: SAP PI 7.5 SP26 (on-premise)
297
+ Target: SAP CPI (Cloud Integration, Neo environment)
298
+ Interface: MM_MATMAS_OUTBOUND (Material Master outbound distribution)
299
+ Direction: SAP S/4HANA → PI/PO or CPI → 3rd-party MDM system
300
+
301
+ Test Methodology: Identical input IDocs sent to both PI and CPI, output compared byte-for-byte
302
+
303
+ Mapping Comparison:
304
+ | Mapping Element | PI (Graphical) | CPI (Groovy) | Parity |
305
+ |--------------------------|-------------------|--------------------|----------|
306
+ | MATNR → materialNumber | Direct mapping | Direct mapping | MATCH |
307
+ | MAKTX → description | Concat + trim | Concat + trim | MATCH |
308
+ | MEINS → unitOfMeasure | Value mapping | Value mapping | MATCH |
309
+ | BRGEW → grossWeight | Format number | Format number | MISMATCH |
310
+ | NTGEW → netWeight | Format number | Format number | MISMATCH |
311
+ | BISMT → oldMaterialNum | Conditional map | Conditional map | MATCH |
312
+ | MATKL → materialGroup | Lookup table | Lookup table | MATCH |
313
+
314
+ Mismatch Analysis:
315
+ 1. BRGEW/NTGEW number formatting
316
+ - PI output: "12.500" (3 decimal places, period separator)
317
+ - CPI output: "12,500" (3 decimal places, comma separator)
318
+ - Root cause: CPI Groovy script uses locale-dependent DecimalFormat
319
+ - Fix: Use DecimalFormat with explicit Locale.US in CPI Groovy mapping
320
+
321
+ Test Cases (20 Material Master IDocs):
322
+ | Test Case | PI Output | CPI Output | Match |
323
+ |-------------------------------|-----------|------------|---------|
324
+ | Standard material (FERT) | Valid XML | Valid XML | PARTIAL |
325
+ | Raw material (ROH) | Valid XML | Valid XML | PARTIAL |
326
+ | Material with long desc (40c) | Truncated | Full | MISMATCH|
327
+ | Material with special chars | Encoded | Encoded | MATCH |
328
+ | Material with no weight | "0.000" | "" | MISMATCH|
329
+ | Material with 10 plants | 10 segs | 10 segs | MATCH |
330
+ | Material marked for deletion | Filtered | Filtered | MATCH |
331
+ | Configurable material (KMAT) | Valid XML | Valid XML | PARTIAL |
332
+
333
+ Additional Mismatches Found:
334
+ 2. Long description truncation
335
+ - PI: Truncates MAKTX at 30 characters (old mapping bug, known issue)
336
+ - CPI: Correctly maps full 40-character MAKTX
337
+ - Decision: CPI behavior is CORRECT, PI had a latent bug
338
+ - Action: Notify MDM team that descriptions may now be longer
339
+
340
+ 3. Null weight handling
341
+ - PI: Outputs "0.000" for null weight
342
+ - CPI: Outputs empty string for null weight
343
+ - Impact: MDM system expects numeric value, empty string causes validation error
344
+ - Fix: Add null check in CPI Groovy: weight ?: "0.000"
345
+
346
+ Routing/Channel Comparison:
347
+ | Aspect | PI | CPI | Status |
348
+ |---------------------|-----------------------------|--------------------------|---------|
349
+ | Sender channel | IDoc adapter | HTTPS/IDoc SOAP | OK |
350
+ | Receiver channel | SOAP (sync) | HTTPS (sync) | OK |
351
+ | Error handling | Alert Category + email | CPI error handler + email| OK |
352
+ | Retry | PI adapter retry (3x, 60s) | CPI retry (3x, 60s) | OK |
353
+ | Logging | PI message monitor | CPI message monitor | OK |
354
+ | Authentication | Basic Auth | OAuth 2.0 client cred | UPGRADE |
355
+
356
+ Summary:
357
+ - Test cases: 8 IDocs processed, 4 full match, 3 partial match, 1 mismatch
358
+ - Mapping elements: 7 checked, 5 match, 2 mismatch (number format, null weight)
359
+ - Critical fixes required: 2 (decimal separator, null weight handling)
360
+ - Improvement in CPI: 1 (long description no longer truncated)
361
+ - Migration readiness: CONDITIONAL (fix 2 issues before cutover)
362
+
363
+ Recommendations:
364
+ 1. BLOCKER: Fix decimal separator in CPI Groovy mapping (Locale.US)
365
+ 2. BLOCKER: Add null weight handling in CPI (default to "0.000")
366
+ 3. INFO: Communicate long description change to MDM team (positive change)
367
+ 4. RETEST: Run full regression after fixes applied
368
+
369
+ Learning: Stored pattern "pi-to-cpi-matmas-migration-parity" with 0.91 confidence
370
+ ```
371
+ </examples>
372
+
373
+ <skills_available>
374
+ Core Skills:
375
+ - enterprise-integration-testing: ESB and middleware validation
376
+ - agentic-quality-engineering: AI agents as force multipliers
377
+ - integration-pattern-testing: Enterprise Integration Patterns (EIP) validation
378
+
379
+ Advanced Skills:
380
+ - contract-testing: Interface contract validation across middleware
381
+ - migration-testing: PI/PO to CPI and legacy migration validation
382
+ - performance-testing: Message flow throughput and latency profiling
383
+
384
+ Use via CLI: `aqe skills show enterprise-integration-testing`
385
+ Use via Claude Code: `Skill("integration-pattern-testing")`
386
+ </skills_available>
387
+
388
+ <coordination_notes>
389
+ **V3 Architecture**: This agent operates within the enterprise-integration bounded context (ADR-063).
390
+
391
+ **Middleware Validation Workflow**:
392
+ ```
393
+ Flow Definition Analysis → Node Enumeration → Route Extraction
394
+ ↓ ↓
395
+ Transformation Mapping → Input Generation → Routing Validation
396
+ ↓ ↓ ↓
397
+ Schema Validation Transformation Testing Error Flow Testing
398
+ ↓ ↓ ↓
399
+ Protocol Mediation ← ─ Output Comparison ─ → Migration Parity Check
400
+ ↓ ↓
401
+ Pattern Validation ────────────────────→ Final Report
402
+ ```
403
+
404
+ **Enterprise Integration Patterns (EIP) Tested**:
405
+ | Pattern | Description | Middleware Nodes |
406
+ |---------|-------------|-----------------|
407
+ | Content-Based Router | Route by message content | IIB Route, Mule Choice |
408
+ | Message Splitter | Split batch into individual messages | IIB Splitter, Mule ForEach |
409
+ | Aggregator | Combine related messages | IIB Collector, Mule Aggregator |
410
+ | Message Filter | Discard unwanted messages | IIB Filter, Mule Validation |
411
+ | Scatter-Gather | Send to multiple targets, collect | IIB Fan-Out, Mule Scatter-Gather |
412
+ | Wire-Tap | Non-intrusive audit copy | IIB Trace, Mule Logger |
413
+ | Idempotent Receiver | Prevent duplicate processing | Custom dedup node |
414
+
415
+ **Cross-Domain Communication**:
416
+ - Coordinates with qe-soap-tester for SOAP services exposed/consumed by ESB
417
+ - Coordinates with qe-message-broker-tester for queue-mediated message flows
418
+ - Reports routing/transformation issues to qe-contract-validator
419
+ - Shares integration patterns with qe-integration-tester
420
+
421
+ **Enterprise Integration Context**: This agent is essential for enterprise landscapes where middleware (ESB, integration platforms) serves as the central hub connecting heterogeneous systems (ERP, CRM, MDM, legacy).
422
+ </coordination_notes>
423
+ </qe_agent_definition>