agentic-qe 3.3.0 → 3.3.2
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.
- package/README.md +6 -2
- package/package.json +6 -1
- package/v3/CHANGELOG.md +134 -0
- package/v3/dist/cli/bundle.js +29332 -22739
- package/v3/dist/cli/command-registry.d.ts +55 -0
- package/v3/dist/cli/command-registry.d.ts.map +1 -0
- package/v3/dist/cli/command-registry.js +103 -0
- package/v3/dist/cli/command-registry.js.map +1 -0
- package/v3/dist/cli/commands/code.d.ts +9 -0
- package/v3/dist/cli/commands/code.d.ts.map +1 -0
- package/v3/dist/cli/commands/code.js +254 -0
- package/v3/dist/cli/commands/code.js.map +1 -0
- package/v3/dist/cli/commands/completions.d.ts +8 -0
- package/v3/dist/cli/commands/completions.d.ts.map +1 -0
- package/v3/dist/cli/commands/completions.js +99 -0
- package/v3/dist/cli/commands/completions.js.map +1 -0
- package/v3/dist/cli/commands/coverage.d.ts +9 -0
- package/v3/dist/cli/commands/coverage.d.ts.map +1 -0
- package/v3/dist/cli/commands/coverage.js +208 -0
- package/v3/dist/cli/commands/coverage.js.map +1 -0
- package/v3/dist/cli/commands/fleet.d.ts +11 -0
- package/v3/dist/cli/commands/fleet.d.ts.map +1 -0
- package/v3/dist/cli/commands/fleet.js +338 -0
- package/v3/dist/cli/commands/fleet.js.map +1 -0
- package/v3/dist/cli/commands/migrate.d.ts +9 -0
- package/v3/dist/cli/commands/migrate.d.ts.map +1 -0
- package/v3/dist/cli/commands/migrate.js +566 -0
- package/v3/dist/cli/commands/migrate.js.map +1 -0
- package/v3/dist/cli/commands/quality.d.ts +9 -0
- package/v3/dist/cli/commands/quality.d.ts.map +1 -0
- package/v3/dist/cli/commands/quality.js +40 -0
- package/v3/dist/cli/commands/quality.js.map +1 -0
- package/v3/dist/cli/commands/security.d.ts +9 -0
- package/v3/dist/cli/commands/security.d.ts.map +1 -0
- package/v3/dist/cli/commands/security.js +124 -0
- package/v3/dist/cli/commands/security.js.map +1 -0
- package/v3/dist/cli/commands/sync.d.ts +19 -0
- package/v3/dist/cli/commands/sync.d.ts.map +1 -0
- package/v3/dist/cli/commands/sync.js +283 -0
- package/v3/dist/cli/commands/sync.js.map +1 -0
- package/v3/dist/cli/commands/test.d.ts +9 -0
- package/v3/dist/cli/commands/test.d.ts.map +1 -0
- package/v3/dist/cli/commands/test.js +166 -0
- package/v3/dist/cli/commands/test.js.map +1 -0
- package/v3/dist/cli/handlers/agent-handler.d.ts +20 -0
- package/v3/dist/cli/handlers/agent-handler.d.ts.map +1 -0
- package/v3/dist/cli/handlers/agent-handler.js +158 -0
- package/v3/dist/cli/handlers/agent-handler.js.map +1 -0
- package/v3/dist/cli/handlers/domain-handler.d.ts +20 -0
- package/v3/dist/cli/handlers/domain-handler.d.ts.map +1 -0
- package/v3/dist/cli/handlers/domain-handler.js +115 -0
- package/v3/dist/cli/handlers/domain-handler.js.map +1 -0
- package/v3/dist/cli/handlers/index.d.ts +13 -0
- package/v3/dist/cli/handlers/index.d.ts.map +1 -0
- package/v3/dist/cli/handlers/index.js +15 -0
- package/v3/dist/cli/handlers/index.js.map +1 -0
- package/v3/dist/cli/handlers/init-handler.d.ts +38 -0
- package/v3/dist/cli/handlers/init-handler.d.ts.map +1 -0
- package/v3/dist/cli/handlers/init-handler.js +288 -0
- package/v3/dist/cli/handlers/init-handler.js.map +1 -0
- package/v3/dist/cli/handlers/interfaces.d.ts +104 -0
- package/v3/dist/cli/handlers/interfaces.d.ts.map +1 -0
- package/v3/dist/cli/handlers/interfaces.js +109 -0
- package/v3/dist/cli/handlers/interfaces.js.map +1 -0
- package/v3/dist/cli/handlers/protocol-handler.d.ts +19 -0
- package/v3/dist/cli/handlers/protocol-handler.d.ts.map +1 -0
- package/v3/dist/cli/handlers/protocol-handler.js +79 -0
- package/v3/dist/cli/handlers/protocol-handler.js.map +1 -0
- package/v3/dist/cli/handlers/status-handler.d.ts +30 -0
- package/v3/dist/cli/handlers/status-handler.d.ts.map +1 -0
- package/v3/dist/cli/handlers/status-handler.js +218 -0
- package/v3/dist/cli/handlers/status-handler.js.map +1 -0
- package/v3/dist/cli/handlers/task-handler.d.ts +22 -0
- package/v3/dist/cli/handlers/task-handler.d.ts.map +1 -0
- package/v3/dist/cli/handlers/task-handler.js +271 -0
- package/v3/dist/cli/handlers/task-handler.js.map +1 -0
- package/v3/dist/cli/index.d.ts +4 -0
- package/v3/dist/cli/index.d.ts.map +1 -1
- package/v3/dist/cli/index.js +48 -2677
- package/v3/dist/cli/index.js.map +1 -1
- package/v3/dist/cli/wizards/core/index.d.ts +11 -0
- package/v3/dist/cli/wizards/core/index.d.ts.map +1 -0
- package/v3/dist/cli/wizards/core/index.js +15 -0
- package/v3/dist/cli/wizards/core/index.js.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-base.d.ts +87 -0
- package/v3/dist/cli/wizards/core/wizard-base.d.ts.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-base.js +120 -0
- package/v3/dist/cli/wizards/core/wizard-base.js.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-command.d.ts +182 -0
- package/v3/dist/cli/wizards/core/wizard-command.d.ts.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-command.js +45 -0
- package/v3/dist/cli/wizards/core/wizard-command.js.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-step.d.ts +109 -0
- package/v3/dist/cli/wizards/core/wizard-step.d.ts.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-step.js +384 -0
- package/v3/dist/cli/wizards/core/wizard-step.js.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-utils.d.ts +117 -0
- package/v3/dist/cli/wizards/core/wizard-utils.d.ts.map +1 -0
- package/v3/dist/cli/wizards/core/wizard-utils.js +291 -0
- package/v3/dist/cli/wizards/core/wizard-utils.js.map +1 -0
- package/v3/dist/cli/wizards/coverage-wizard.d.ts +13 -68
- package/v3/dist/cli/wizards/coverage-wizard.d.ts.map +1 -1
- package/v3/dist/cli/wizards/coverage-wizard.js +127 -391
- package/v3/dist/cli/wizards/coverage-wizard.js.map +1 -1
- package/v3/dist/cli/wizards/fleet-wizard.d.ts +13 -64
- package/v3/dist/cli/wizards/fleet-wizard.d.ts.map +1 -1
- package/v3/dist/cli/wizards/fleet-wizard.js +150 -363
- package/v3/dist/cli/wizards/fleet-wizard.js.map +1 -1
- package/v3/dist/cli/wizards/index.d.ts +2 -0
- package/v3/dist/cli/wizards/index.d.ts.map +1 -1
- package/v3/dist/cli/wizards/index.js +3 -0
- package/v3/dist/cli/wizards/index.js.map +1 -1
- package/v3/dist/cli/wizards/security-wizard.d.ts +13 -64
- package/v3/dist/cli/wizards/security-wizard.d.ts.map +1 -1
- package/v3/dist/cli/wizards/security-wizard.js +152 -395
- package/v3/dist/cli/wizards/security-wizard.js.map +1 -1
- package/v3/dist/cli/wizards/test-wizard.d.ts +13 -77
- package/v3/dist/cli/wizards/test-wizard.d.ts.map +1 -1
- package/v3/dist/cli/wizards/test-wizard.js +196 -328
- package/v3/dist/cli/wizards/test-wizard.js.map +1 -1
- package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts +3 -0
- package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts.map +1 -1
- package/v3/dist/coordination/mincut/mincut-health-monitor.js +6 -2
- package/v3/dist/coordination/mincut/mincut-health-monitor.js.map +1 -1
- package/v3/dist/coordination/mincut/queen-integration.d.ts +3 -0
- package/v3/dist/coordination/mincut/queen-integration.d.ts.map +1 -1
- package/v3/dist/coordination/mincut/queen-integration.js +6 -1
- package/v3/dist/coordination/mincut/queen-integration.js.map +1 -1
- package/v3/dist/coordination/queen-coordinator.d.ts +13 -1
- package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
- package/v3/dist/coordination/queen-coordinator.js +91 -3
- package/v3/dist/coordination/queen-coordinator.js.map +1 -1
- package/v3/dist/coordination/task-executor.js +2 -2
- package/v3/dist/coordination/task-executor.js.map +1 -1
- package/v3/dist/domains/chaos-resilience/plugin.js +2 -2
- package/v3/dist/domains/chaos-resilience/plugin.js.map +1 -1
- package/v3/dist/domains/code-intelligence/plugin.js +2 -2
- package/v3/dist/domains/code-intelligence/plugin.js.map +1 -1
- package/v3/dist/domains/contract-testing/plugin.js +2 -2
- package/v3/dist/domains/contract-testing/plugin.js.map +1 -1
- package/v3/dist/domains/coverage-analysis/plugin.d.ts +6 -1
- package/v3/dist/domains/coverage-analysis/plugin.d.ts.map +1 -1
- package/v3/dist/domains/coverage-analysis/plugin.js +75 -1
- package/v3/dist/domains/coverage-analysis/plugin.js.map +1 -1
- package/v3/dist/domains/defect-intelligence/plugin.js +2 -2
- package/v3/dist/domains/defect-intelligence/plugin.js.map +1 -1
- package/v3/dist/domains/domain-interface.d.ts +39 -2
- package/v3/dist/domains/domain-interface.d.ts.map +1 -1
- package/v3/dist/domains/domain-interface.js +102 -1
- package/v3/dist/domains/domain-interface.js.map +1 -1
- package/v3/dist/domains/learning-optimization/coordinator.d.ts +83 -0
- package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/learning-optimization/coordinator.js +174 -0
- package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
- package/v3/dist/domains/learning-optimization/interfaces.d.ts +14 -0
- package/v3/dist/domains/learning-optimization/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/learning-optimization/plugin.js +2 -2
- package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
- package/v3/dist/domains/quality-assessment/coordinator.d.ts +23 -0
- package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/coordinator.js +139 -1
- package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
- package/v3/dist/domains/quality-assessment/plugin.d.ts +6 -1
- package/v3/dist/domains/quality-assessment/plugin.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/plugin.js +69 -2
- package/v3/dist/domains/quality-assessment/plugin.js.map +1 -1
- package/v3/dist/domains/requirements-validation/plugin.js +2 -2
- package/v3/dist/domains/requirements-validation/plugin.js.map +1 -1
- package/v3/dist/domains/security-compliance/plugin.js +2 -2
- package/v3/dist/domains/security-compliance/plugin.js.map +1 -1
- package/v3/dist/domains/test-execution/index.d.ts +2 -1
- package/v3/dist/domains/test-execution/index.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/index.js +0 -2
- package/v3/dist/domains/test-execution/index.js.map +1 -1
- package/v3/dist/domains/test-execution/interfaces.d.ts +222 -25
- package/v3/dist/domains/test-execution/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/interfaces.js +130 -3
- package/v3/dist/domains/test-execution/interfaces.js.map +1 -1
- package/v3/dist/domains/test-execution/plugin.d.ts +6 -1
- package/v3/dist/domains/test-execution/plugin.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/plugin.js +79 -1
- package/v3/dist/domains/test-execution/plugin.js.map +1 -1
- package/v3/dist/domains/test-execution/test-prioritization-types.d.ts +5 -172
- package/v3/dist/domains/test-execution/test-prioritization-types.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/test-prioritization-types.js +6 -129
- package/v3/dist/domains/test-execution/test-prioritization-types.js.map +1 -1
- package/v3/dist/domains/test-execution/types/index.d.ts +7 -3
- package/v3/dist/domains/test-execution/types/index.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/types/index.js +7 -17
- package/v3/dist/domains/test-execution/types/index.js.map +1 -1
- package/v3/dist/domains/test-generation/coordinator.d.ts +41 -1
- package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/coordinator.js +187 -4
- package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
- package/v3/dist/domains/test-generation/factories/index.d.ts +8 -0
- package/v3/dist/domains/test-generation/factories/index.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/factories/index.js +8 -0
- package/v3/dist/domains/test-generation/factories/index.js.map +1 -0
- package/v3/dist/domains/test-generation/factories/test-generator-factory.d.ts +108 -0
- package/v3/dist/domains/test-generation/factories/test-generator-factory.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/factories/test-generator-factory.js +158 -0
- package/v3/dist/domains/test-generation/factories/test-generator-factory.js.map +1 -0
- package/v3/dist/domains/test-generation/generators/base-test-generator.d.ts +79 -0
- package/v3/dist/domains/test-generation/generators/base-test-generator.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/generators/base-test-generator.js +252 -0
- package/v3/dist/domains/test-generation/generators/base-test-generator.js.map +1 -0
- package/v3/dist/domains/test-generation/generators/index.d.ts +11 -0
- package/v3/dist/domains/test-generation/generators/index.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/generators/index.js +13 -0
- package/v3/dist/domains/test-generation/generators/index.js.map +1 -0
- package/v3/dist/domains/test-generation/generators/jest-vitest-generator.d.ts +77 -0
- package/v3/dist/domains/test-generation/generators/jest-vitest-generator.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/generators/jest-vitest-generator.js +365 -0
- package/v3/dist/domains/test-generation/generators/jest-vitest-generator.js.map +1 -0
- package/v3/dist/domains/test-generation/generators/mocha-generator.d.ts +56 -0
- package/v3/dist/domains/test-generation/generators/mocha-generator.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/generators/mocha-generator.js +197 -0
- package/v3/dist/domains/test-generation/generators/mocha-generator.js.map +1 -0
- package/v3/dist/domains/test-generation/generators/pytest-generator.d.ts +66 -0
- package/v3/dist/domains/test-generation/generators/pytest-generator.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/generators/pytest-generator.js +240 -0
- package/v3/dist/domains/test-generation/generators/pytest-generator.js.map +1 -0
- package/v3/dist/domains/test-generation/index.d.ts +2 -2
- package/v3/dist/domains/test-generation/index.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/index.js +3 -3
- package/v3/dist/domains/test-generation/index.js.map +1 -1
- package/v3/dist/domains/test-generation/interfaces/index.d.ts +9 -0
- package/v3/dist/domains/test-generation/interfaces/index.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/interfaces/index.js +9 -0
- package/v3/dist/domains/test-generation/interfaces/index.js.map +1 -0
- package/v3/dist/domains/test-generation/interfaces/test-generator.interface.d.ts +166 -0
- package/v3/dist/domains/test-generation/interfaces/test-generator.interface.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/interfaces/test-generator.interface.js +8 -0
- package/v3/dist/domains/test-generation/interfaces/test-generator.interface.js.map +1 -0
- package/v3/dist/domains/test-generation/interfaces.d.ts +163 -24
- package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/interfaces.js +2 -2
- package/v3/dist/domains/test-generation/plugin.d.ts +6 -1
- package/v3/dist/domains/test-generation/plugin.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/plugin.js +90 -5
- package/v3/dist/domains/test-generation/plugin.js.map +1 -1
- package/v3/dist/domains/test-generation/{coherence-gate.d.ts → services/coherence-gate-service.d.ts} +4 -4
- package/v3/dist/domains/test-generation/services/coherence-gate-service.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/{coherence-gate.js → services/coherence-gate-service.js} +2 -2
- package/v3/dist/domains/test-generation/services/coherence-gate-service.js.map +1 -0
- package/v3/dist/domains/test-generation/services/index.d.ts +8 -2
- package/v3/dist/domains/test-generation/services/index.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/services/index.js +10 -3
- package/v3/dist/domains/test-generation/services/index.js.map +1 -1
- package/v3/dist/domains/test-generation/services/property-test-generator.d.ts +34 -0
- package/v3/dist/domains/test-generation/services/property-test-generator.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/services/property-test-generator.js +306 -0
- package/v3/dist/domains/test-generation/services/property-test-generator.js.map +1 -0
- package/v3/dist/domains/test-generation/services/tdd-generator.d.ts +33 -0
- package/v3/dist/domains/test-generation/services/tdd-generator.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/services/tdd-generator.js +342 -0
- package/v3/dist/domains/test-generation/services/tdd-generator.js.map +1 -0
- package/v3/dist/domains/test-generation/services/test-data-generator.d.ts +34 -0
- package/v3/dist/domains/test-generation/services/test-data-generator.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/services/test-data-generator.js +245 -0
- package/v3/dist/domains/test-generation/services/test-data-generator.js.map +1 -0
- package/v3/dist/domains/test-generation/services/test-generator.d.ts +51 -160
- package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/services/test-generator.js +101 -1858
- package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/plugin.js +2 -2
- package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
- package/v3/dist/init/phases/12-verification.d.ts +23 -0
- package/v3/dist/init/phases/12-verification.d.ts.map +1 -1
- package/v3/dist/init/phases/12-verification.js +185 -2
- package/v3/dist/init/phases/12-verification.js.map +1 -1
- package/v3/dist/integrations/agentic-flow/model-router/complexity-analyzer.d.ts +24 -62
- package/v3/dist/integrations/agentic-flow/model-router/complexity-analyzer.d.ts.map +1 -1
- package/v3/dist/integrations/agentic-flow/model-router/complexity-analyzer.js +45 -497
- package/v3/dist/integrations/agentic-flow/model-router/complexity-analyzer.js.map +1 -1
- package/v3/dist/integrations/agentic-flow/model-router/router.js +2 -2
- package/v3/dist/integrations/agentic-flow/model-router/router.js.map +1 -1
- package/v3/dist/integrations/agentic-flow/model-router/score-calculator.d.ts +98 -0
- package/v3/dist/integrations/agentic-flow/model-router/score-calculator.d.ts.map +1 -0
- package/v3/dist/integrations/agentic-flow/model-router/score-calculator.js +197 -0
- package/v3/dist/integrations/agentic-flow/model-router/score-calculator.js.map +1 -0
- package/v3/dist/integrations/agentic-flow/model-router/signal-collector.d.ts +102 -0
- package/v3/dist/integrations/agentic-flow/model-router/signal-collector.d.ts.map +1 -0
- package/v3/dist/integrations/agentic-flow/model-router/signal-collector.js +372 -0
- package/v3/dist/integrations/agentic-flow/model-router/signal-collector.js.map +1 -0
- package/v3/dist/integrations/agentic-flow/model-router/tier-recommender.d.ts +64 -0
- package/v3/dist/integrations/agentic-flow/model-router/tier-recommender.d.ts.map +1 -0
- package/v3/dist/integrations/agentic-flow/model-router/tier-recommender.js +120 -0
- package/v3/dist/integrations/agentic-flow/model-router/tier-recommender.js.map +1 -0
- package/v3/dist/integrations/coherence/coherence-service.d.ts.map +1 -1
- package/v3/dist/integrations/coherence/coherence-service.js +87 -30
- package/v3/dist/integrations/coherence/coherence-service.js.map +1 -1
- package/v3/dist/integrations/coherence/engines/spectral-adapter.d.ts.map +1 -1
- package/v3/dist/integrations/coherence/engines/spectral-adapter.js +124 -35
- package/v3/dist/integrations/coherence/engines/spectral-adapter.js.map +1 -1
- package/v3/dist/kernel/interfaces.d.ts +54 -1
- package/v3/dist/kernel/interfaces.d.ts.map +1 -1
- package/v3/dist/learning/dream/dream-scheduler.d.ts +302 -0
- package/v3/dist/learning/dream/dream-scheduler.d.ts.map +1 -0
- package/v3/dist/learning/dream/dream-scheduler.js +551 -0
- package/v3/dist/learning/dream/dream-scheduler.js.map +1 -0
- package/v3/dist/learning/dream/index.d.ts +1 -0
- package/v3/dist/learning/dream/index.d.ts.map +1 -1
- package/v3/dist/learning/dream/index.js +4 -0
- package/v3/dist/learning/dream/index.js.map +1 -1
- package/v3/dist/learning/memory-auditor.d.ts.map +1 -1
- package/v3/dist/learning/memory-auditor.js +3 -1
- package/v3/dist/learning/memory-auditor.js.map +1 -1
- package/v3/dist/mcp/bundle.js +30870 -23598
- package/v3/dist/mcp/handlers/core-handlers.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/core-handlers.js +16 -2
- package/v3/dist/mcp/handlers/core-handlers.js.map +1 -1
- package/v3/dist/mcp/handlers/task-handlers.d.ts +1 -0
- package/v3/dist/mcp/handlers/task-handlers.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/task-handlers.js +46 -12
- package/v3/dist/mcp/handlers/task-handlers.js.map +1 -1
- package/v3/dist/mcp/security/cve-prevention.d.ts +31 -134
- package/v3/dist/mcp/security/cve-prevention.d.ts.map +1 -1
- package/v3/dist/mcp/security/cve-prevention.js +37 -562
- package/v3/dist/mcp/security/cve-prevention.js.map +1 -1
- package/v3/dist/mcp/security/index.d.ts +5 -1
- package/v3/dist/mcp/security/index.d.ts.map +1 -1
- package/v3/dist/mcp/security/validators/command-validator.d.ts +41 -0
- package/v3/dist/mcp/security/validators/command-validator.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/command-validator.js +123 -0
- package/v3/dist/mcp/security/validators/command-validator.js.map +1 -0
- package/v3/dist/mcp/security/validators/crypto-validator.d.ts +40 -0
- package/v3/dist/mcp/security/validators/crypto-validator.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/crypto-validator.js +72 -0
- package/v3/dist/mcp/security/validators/crypto-validator.js.map +1 -0
- package/v3/dist/mcp/security/validators/index.d.ts +12 -0
- package/v3/dist/mcp/security/validators/index.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/index.js +22 -0
- package/v3/dist/mcp/security/validators/index.js.map +1 -0
- package/v3/dist/mcp/security/validators/input-sanitizer.d.ts +56 -0
- package/v3/dist/mcp/security/validators/input-sanitizer.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/input-sanitizer.js +157 -0
- package/v3/dist/mcp/security/validators/input-sanitizer.js.map +1 -0
- package/v3/dist/mcp/security/validators/interfaces.d.ts +164 -0
- package/v3/dist/mcp/security/validators/interfaces.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/interfaces.js +6 -0
- package/v3/dist/mcp/security/validators/interfaces.js.map +1 -0
- package/v3/dist/mcp/security/validators/path-traversal-validator.d.ts +50 -0
- package/v3/dist/mcp/security/validators/path-traversal-validator.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/path-traversal-validator.js +242 -0
- package/v3/dist/mcp/security/validators/path-traversal-validator.js.map +1 -0
- package/v3/dist/mcp/security/validators/regex-safety-validator.d.ts +50 -0
- package/v3/dist/mcp/security/validators/regex-safety-validator.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/regex-safety-validator.js +183 -0
- package/v3/dist/mcp/security/validators/regex-safety-validator.js.map +1 -0
- package/v3/dist/mcp/security/validators/validation-orchestrator.d.ts +66 -0
- package/v3/dist/mcp/security/validators/validation-orchestrator.d.ts.map +1 -0
- package/v3/dist/mcp/security/validators/validation-orchestrator.js +146 -0
- package/v3/dist/mcp/security/validators/validation-orchestrator.js.map +1 -0
- package/v3/dist/mcp/server.d.ts.map +1 -1
- package/v3/dist/mcp/server.js +1 -0
- package/v3/dist/mcp/server.js.map +1 -1
- package/v3/dist/mcp/services/reasoning-bank-service.d.ts +87 -13
- package/v3/dist/mcp/services/reasoning-bank-service.d.ts.map +1 -1
- package/v3/dist/mcp/services/reasoning-bank-service.js +291 -31
- package/v3/dist/mcp/services/reasoning-bank-service.js.map +1 -1
- package/v3/dist/mcp/tool-registry.d.ts +3 -1
- package/v3/dist/mcp/tool-registry.d.ts.map +1 -1
- package/v3/dist/mcp/tool-registry.js +155 -2
- package/v3/dist/mcp/tool-registry.js.map +1 -1
- package/v3/dist/mcp/tools/test-generation/generate.d.ts +1 -0
- package/v3/dist/mcp/tools/test-generation/generate.d.ts.map +1 -1
- package/v3/dist/mcp/tools/test-generation/generate.js +3 -2
- package/v3/dist/mcp/tools/test-generation/generate.js.map +1 -1
- package/v3/dist/routing/qe-agent-registry.d.ts +27 -0
- package/v3/dist/routing/qe-agent-registry.d.ts.map +1 -1
- package/v3/dist/routing/qe-agent-registry.js +96 -0
- package/v3/dist/routing/qe-agent-registry.js.map +1 -1
- package/v3/dist/shared/events/domain-events.d.ts +27 -0
- package/v3/dist/shared/events/domain-events.d.ts.map +1 -1
- package/v3/dist/shared/events/domain-events.js +1 -0
- package/v3/dist/shared/events/domain-events.js.map +1 -1
- package/v3/dist/sync/cloud/index.d.ts +8 -0
- package/v3/dist/sync/cloud/index.d.ts.map +1 -0
- package/v3/dist/sync/cloud/index.js +8 -0
- package/v3/dist/sync/cloud/index.js.map +1 -0
- package/v3/dist/sync/cloud/postgres-writer.d.ts +88 -0
- package/v3/dist/sync/cloud/postgres-writer.d.ts.map +1 -0
- package/v3/dist/sync/cloud/postgres-writer.js +319 -0
- package/v3/dist/sync/cloud/postgres-writer.js.map +1 -0
- package/v3/dist/sync/cloud/tunnel-manager.d.ts +75 -0
- package/v3/dist/sync/cloud/tunnel-manager.d.ts.map +1 -0
- package/v3/dist/sync/cloud/tunnel-manager.js +221 -0
- package/v3/dist/sync/cloud/tunnel-manager.js.map +1 -0
- package/v3/dist/sync/index.d.ts +35 -0
- package/v3/dist/sync/index.d.ts.map +1 -0
- package/v3/dist/sync/index.js +35 -0
- package/v3/dist/sync/index.js.map +1 -0
- package/v3/dist/sync/interfaces.d.ts +245 -0
- package/v3/dist/sync/interfaces.d.ts.map +1 -0
- package/v3/dist/sync/interfaces.js +160 -0
- package/v3/dist/sync/interfaces.js.map +1 -0
- package/v3/dist/sync/readers/index.d.ts +8 -0
- package/v3/dist/sync/readers/index.d.ts.map +1 -0
- package/v3/dist/sync/readers/index.js +8 -0
- package/v3/dist/sync/readers/index.js.map +1 -0
- package/v3/dist/sync/readers/json-reader.d.ts +95 -0
- package/v3/dist/sync/readers/json-reader.d.ts.map +1 -0
- package/v3/dist/sync/readers/json-reader.js +306 -0
- package/v3/dist/sync/readers/json-reader.js.map +1 -0
- package/v3/dist/sync/readers/sqlite-reader.d.ts +88 -0
- package/v3/dist/sync/readers/sqlite-reader.d.ts.map +1 -0
- package/v3/dist/sync/readers/sqlite-reader.js +255 -0
- package/v3/dist/sync/readers/sqlite-reader.js.map +1 -0
- package/v3/dist/sync/sync-agent.d.ts +116 -0
- package/v3/dist/sync/sync-agent.d.ts.map +1 -0
- package/v3/dist/sync/sync-agent.js +416 -0
- package/v3/dist/sync/sync-agent.js.map +1 -0
- package/v3/package.json +13 -2
- package/v3/dist/domains/test-generation/coherence-gate.d.ts.map +0 -1
- package/v3/dist/domains/test-generation/coherence-gate.js.map +0 -1
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Pytest Test Generator
|
|
3
|
+
* Strategy implementation for Python's pytest framework
|
|
4
|
+
*
|
|
5
|
+
* Generates test code using:
|
|
6
|
+
* - pytest class-based and function-based tests
|
|
7
|
+
* - Python assert statements
|
|
8
|
+
* - @pytest.fixture decorators
|
|
9
|
+
* - @pytest.mark.asyncio for async tests
|
|
10
|
+
*
|
|
11
|
+
* @module test-generation/generators
|
|
12
|
+
*/
|
|
13
|
+
import { BaseTestGenerator } from './base-test-generator';
|
|
14
|
+
import type { TestFramework, TestType, FunctionInfo, ClassInfo, TestGenerationContext } from '../interfaces';
|
|
15
|
+
/**
|
|
16
|
+
* PytestGenerator - Test generator for Python's pytest framework
|
|
17
|
+
*
|
|
18
|
+
* Generates idiomatic Python test code with pytest conventions:
|
|
19
|
+
* - Test classes prefixed with Test
|
|
20
|
+
* - Test methods prefixed with test_
|
|
21
|
+
* - Fixtures for setup/teardown
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const generator = new PytestGenerator();
|
|
26
|
+
* const testCode = generator.generateTests({
|
|
27
|
+
* moduleName: 'user_service',
|
|
28
|
+
* importPath: 'app.services.user_service',
|
|
29
|
+
* testType: 'unit',
|
|
30
|
+
* patterns: [],
|
|
31
|
+
* analysis: { functions: [...], classes: [...] }
|
|
32
|
+
* });
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export declare class PytestGenerator extends BaseTestGenerator {
|
|
36
|
+
readonly framework: TestFramework;
|
|
37
|
+
/**
|
|
38
|
+
* Generate complete test file from analysis
|
|
39
|
+
*/
|
|
40
|
+
generateTests(context: TestGenerationContext): string;
|
|
41
|
+
/**
|
|
42
|
+
* Generate tests for a standalone function
|
|
43
|
+
*/
|
|
44
|
+
generateFunctionTests(fn: FunctionInfo, _testType: TestType): string;
|
|
45
|
+
/**
|
|
46
|
+
* Generate tests for a class
|
|
47
|
+
*/
|
|
48
|
+
generateClassTests(cls: ClassInfo, _testType: TestType): string;
|
|
49
|
+
/**
|
|
50
|
+
* Generate stub tests when no AST analysis is available
|
|
51
|
+
*/
|
|
52
|
+
generateStubTests(context: TestGenerationContext): string;
|
|
53
|
+
/**
|
|
54
|
+
* Generate coverage-focused tests for specific lines
|
|
55
|
+
*/
|
|
56
|
+
generateCoverageTests(moduleName: string, importPath: string, lines: number[]): string;
|
|
57
|
+
/**
|
|
58
|
+
* Generate Python pattern comment
|
|
59
|
+
*/
|
|
60
|
+
private generatePythonPatternComment;
|
|
61
|
+
/**
|
|
62
|
+
* Generate a Python test value for a parameter
|
|
63
|
+
*/
|
|
64
|
+
private generatePythonTestValue;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=pytest-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pytest-generator.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/pytest-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,SAAS,EAET,qBAAqB,EAEtB,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAY;IAE7C;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAoCrD;;OAEG;IACH,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IAwBpE;;OAEG;IACH,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IA0B/D;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAwDzD;;OAEG;IACH,qBAAqB,CACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EAAE,GACd,MAAM;IAiCT;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAKpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAsBhC"}
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Pytest Test Generator
|
|
3
|
+
* Strategy implementation for Python's pytest framework
|
|
4
|
+
*
|
|
5
|
+
* Generates test code using:
|
|
6
|
+
* - pytest class-based and function-based tests
|
|
7
|
+
* - Python assert statements
|
|
8
|
+
* - @pytest.fixture decorators
|
|
9
|
+
* - @pytest.mark.asyncio for async tests
|
|
10
|
+
*
|
|
11
|
+
* @module test-generation/generators
|
|
12
|
+
*/
|
|
13
|
+
import { faker } from '@faker-js/faker';
|
|
14
|
+
import { BaseTestGenerator } from './base-test-generator';
|
|
15
|
+
/**
|
|
16
|
+
* PytestGenerator - Test generator for Python's pytest framework
|
|
17
|
+
*
|
|
18
|
+
* Generates idiomatic Python test code with pytest conventions:
|
|
19
|
+
* - Test classes prefixed with Test
|
|
20
|
+
* - Test methods prefixed with test_
|
|
21
|
+
* - Fixtures for setup/teardown
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const generator = new PytestGenerator();
|
|
26
|
+
* const testCode = generator.generateTests({
|
|
27
|
+
* moduleName: 'user_service',
|
|
28
|
+
* importPath: 'app.services.user_service',
|
|
29
|
+
* testType: 'unit',
|
|
30
|
+
* patterns: [],
|
|
31
|
+
* analysis: { functions: [...], classes: [...] }
|
|
32
|
+
* });
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export class PytestGenerator extends BaseTestGenerator {
|
|
36
|
+
framework = 'pytest';
|
|
37
|
+
/**
|
|
38
|
+
* Generate complete test file from analysis
|
|
39
|
+
*/
|
|
40
|
+
generateTests(context) {
|
|
41
|
+
const { moduleName, importPath, testType, patterns, analysis } = context;
|
|
42
|
+
if (!analysis || (analysis.functions.length === 0 && analysis.classes.length === 0)) {
|
|
43
|
+
return this.generateStubTests(context);
|
|
44
|
+
}
|
|
45
|
+
const patternComment = this.generatePythonPatternComment(patterns);
|
|
46
|
+
const exports = this.extractExports(analysis.functions, analysis.classes);
|
|
47
|
+
const pythonImport = importPath.replace(/\//g, '.').replace(/\.(ts|js)$/, '');
|
|
48
|
+
const importStatement = exports.length > 0
|
|
49
|
+
? `from ${pythonImport} import ${exports.join(', ')}`
|
|
50
|
+
: `import ${pythonImport} as ${moduleName}`;
|
|
51
|
+
let code = `${patternComment}import pytest
|
|
52
|
+
${importStatement}
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
class Test${this.pascalCase(moduleName)}:
|
|
56
|
+
"""${testType} tests for ${moduleName}"""
|
|
57
|
+
|
|
58
|
+
`;
|
|
59
|
+
for (const fn of analysis.functions) {
|
|
60
|
+
code += this.generateFunctionTests(fn, testType);
|
|
61
|
+
}
|
|
62
|
+
for (const cls of analysis.classes) {
|
|
63
|
+
code += this.generateClassTests(cls, testType);
|
|
64
|
+
}
|
|
65
|
+
return code;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Generate tests for a standalone function
|
|
69
|
+
*/
|
|
70
|
+
generateFunctionTests(fn, _testType) {
|
|
71
|
+
const validParams = fn.parameters.map((p) => this.generatePythonTestValue(p)).join(', ');
|
|
72
|
+
let code = ` def test_${fn.name}_valid_input(self):\n`;
|
|
73
|
+
code += ` """Test ${fn.name} with valid input"""\n`;
|
|
74
|
+
code += ` result = ${fn.name}(${validParams})\n`;
|
|
75
|
+
code += ` assert result is not None\n\n`;
|
|
76
|
+
// Test for edge cases
|
|
77
|
+
for (const param of fn.parameters) {
|
|
78
|
+
if (!param.optional && param.type?.includes('str')) {
|
|
79
|
+
code += ` def test_${fn.name}_empty_${param.name}(self):\n`;
|
|
80
|
+
code += ` """Test ${fn.name} with empty ${param.name}"""\n`;
|
|
81
|
+
const paramsWithEmpty = fn.parameters
|
|
82
|
+
.map((p) => (p.name === param.name ? '""' : this.generatePythonTestValue(p)))
|
|
83
|
+
.join(', ');
|
|
84
|
+
code += ` result = ${fn.name}(${paramsWithEmpty})\n`;
|
|
85
|
+
code += ` assert result is not None\n\n`;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return code;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Generate tests for a class
|
|
92
|
+
*/
|
|
93
|
+
generateClassTests(cls, _testType) {
|
|
94
|
+
const constructorArgs = cls.constructorParams?.map((p) => this.generatePythonTestValue(p)).join(', ') || '';
|
|
95
|
+
let code = `\nclass Test${cls.name}:\n`;
|
|
96
|
+
code += ` """Tests for ${cls.name}"""\n\n`;
|
|
97
|
+
code += ` @pytest.fixture\n`;
|
|
98
|
+
code += ` def instance(self):\n`;
|
|
99
|
+
code += ` return ${cls.name}(${constructorArgs})\n\n`;
|
|
100
|
+
code += ` def test_instantiation(self, instance):\n`;
|
|
101
|
+
code += ` assert isinstance(instance, ${cls.name})\n\n`;
|
|
102
|
+
for (const method of cls.methods) {
|
|
103
|
+
if (!method.name.startsWith('_')) {
|
|
104
|
+
const methodParams = method.parameters
|
|
105
|
+
.map((p) => this.generatePythonTestValue(p))
|
|
106
|
+
.join(', ');
|
|
107
|
+
code += ` def test_${method.name}(self, instance):\n`;
|
|
108
|
+
code += ` result = instance.${method.name}(${methodParams})\n`;
|
|
109
|
+
code += ` assert result is not None\n\n`;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return code;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Generate stub tests when no AST analysis is available
|
|
116
|
+
*/
|
|
117
|
+
generateStubTests(context) {
|
|
118
|
+
const { moduleName, importPath, testType, patterns } = context;
|
|
119
|
+
const patternComment = this.generatePythonPatternComment(patterns);
|
|
120
|
+
// Determine if async tests needed based on patterns
|
|
121
|
+
const isAsync = patterns.some((p) => p.name.toLowerCase().includes('async') || p.name.toLowerCase().includes('promise'));
|
|
122
|
+
const asyncDecorator = isAsync ? '@pytest.mark.asyncio\n ' : '';
|
|
123
|
+
const asyncDef = isAsync ? 'async def' : 'def';
|
|
124
|
+
return `${patternComment}import pytest
|
|
125
|
+
from ${importPath} import ${moduleName}
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
class Test${this.pascalCase(moduleName)}:
|
|
129
|
+
"""${testType} tests for ${moduleName}"""
|
|
130
|
+
|
|
131
|
+
def test_is_defined(self):
|
|
132
|
+
"""Verify the module is properly exported and defined."""
|
|
133
|
+
assert ${moduleName} is not None
|
|
134
|
+
|
|
135
|
+
${asyncDecorator}${asyncDef} test_basic_operations(self):
|
|
136
|
+
"""Test core functionality with valid inputs."""
|
|
137
|
+
# Verify module can be instantiated or accessed
|
|
138
|
+
if callable(${moduleName}):
|
|
139
|
+
instance = ${moduleName}()
|
|
140
|
+
assert instance is not None
|
|
141
|
+
else:
|
|
142
|
+
assert len(dir(${moduleName})) > 0
|
|
143
|
+
|
|
144
|
+
def test_edge_cases(self):
|
|
145
|
+
"""Test handling of edge case inputs."""
|
|
146
|
+
# Verify module handles edge cases gracefully
|
|
147
|
+
instance = ${moduleName}() if callable(${moduleName}) else ${moduleName}
|
|
148
|
+
assert instance is not None
|
|
149
|
+
# Module should be serializable
|
|
150
|
+
import json
|
|
151
|
+
try:
|
|
152
|
+
json.dumps(str(instance))
|
|
153
|
+
except (TypeError, ValueError):
|
|
154
|
+
pass # Complex objects may not serialize, but shouldn't crash
|
|
155
|
+
|
|
156
|
+
def test_error_conditions(self):
|
|
157
|
+
"""Test error handling and recovery."""
|
|
158
|
+
# Module instantiation should not raise unexpected errors
|
|
159
|
+
try:
|
|
160
|
+
instance = ${moduleName}() if callable(${moduleName}) else ${moduleName}
|
|
161
|
+
assert instance is not None
|
|
162
|
+
except TypeError:
|
|
163
|
+
# Expected if constructor requires arguments
|
|
164
|
+
pass
|
|
165
|
+
`;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Generate coverage-focused tests for specific lines
|
|
169
|
+
*/
|
|
170
|
+
generateCoverageTests(moduleName, importPath, lines) {
|
|
171
|
+
const funcName = this.camelCase(moduleName);
|
|
172
|
+
const lineRange = this.formatLineRange(lines);
|
|
173
|
+
const pythonImport = importPath.replace(/\//g, '.');
|
|
174
|
+
return `# Coverage test for ${lineRange} in ${moduleName}
|
|
175
|
+
import pytest
|
|
176
|
+
from ${pythonImport} import ${funcName}
|
|
177
|
+
|
|
178
|
+
class Test${this.pascalCase(moduleName)}Coverage:
|
|
179
|
+
"""Tests to cover ${lineRange}"""
|
|
180
|
+
|
|
181
|
+
def test_cover_${lines[0]}_${lines[lines.length - 1]}(self):
|
|
182
|
+
"""Exercise code path covering ${lineRange}"""
|
|
183
|
+
# Arrange: Set up test inputs to reach uncovered lines
|
|
184
|
+
test_input = None # Replace with appropriate input
|
|
185
|
+
|
|
186
|
+
# Act: Execute the code path
|
|
187
|
+
try:
|
|
188
|
+
result = ${funcName}(test_input)
|
|
189
|
+
|
|
190
|
+
# Assert: Verify expected behavior
|
|
191
|
+
assert result is not None
|
|
192
|
+
except Exception as e:
|
|
193
|
+
# If exception is expected for this path, verify it
|
|
194
|
+
pytest.fail(f"Unexpected exception: {e}")
|
|
195
|
+
`;
|
|
196
|
+
}
|
|
197
|
+
// ============================================================================
|
|
198
|
+
// Python-Specific Helpers
|
|
199
|
+
// ============================================================================
|
|
200
|
+
/**
|
|
201
|
+
* Generate Python pattern comment
|
|
202
|
+
*/
|
|
203
|
+
generatePythonPatternComment(patterns) {
|
|
204
|
+
if (patterns.length === 0)
|
|
205
|
+
return '';
|
|
206
|
+
return `# Applied patterns: ${patterns.map((p) => p.name).join(', ')}\n`;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Generate a Python test value for a parameter
|
|
210
|
+
*/
|
|
211
|
+
generatePythonTestValue(param) {
|
|
212
|
+
const type = param.type?.toLowerCase() || 'unknown';
|
|
213
|
+
const name = param.name.toLowerCase();
|
|
214
|
+
// Infer from param name
|
|
215
|
+
if (name.includes('id'))
|
|
216
|
+
return `"${faker.string.uuid()}"`;
|
|
217
|
+
if (name.includes('name'))
|
|
218
|
+
return `"${faker.person.fullName()}"`;
|
|
219
|
+
if (name.includes('email'))
|
|
220
|
+
return `"${faker.internet.email()}"`;
|
|
221
|
+
if (name.includes('url'))
|
|
222
|
+
return `"${faker.internet.url()}"`;
|
|
223
|
+
// Infer from type
|
|
224
|
+
if (type.includes('str'))
|
|
225
|
+
return `"${faker.lorem.word()}"`;
|
|
226
|
+
if (type.includes('int') || type.includes('number')) {
|
|
227
|
+
return String(faker.number.int({ min: 1, max: 100 }));
|
|
228
|
+
}
|
|
229
|
+
if (type.includes('bool'))
|
|
230
|
+
return 'True';
|
|
231
|
+
if (type.includes('list') || type.includes('[]'))
|
|
232
|
+
return '[]';
|
|
233
|
+
if (type.includes('dict') || type.includes('{}'))
|
|
234
|
+
return '{}';
|
|
235
|
+
if (type.includes('float'))
|
|
236
|
+
return String(faker.number.float({ min: 0, max: 100 }));
|
|
237
|
+
return 'None';
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
//# sourceMappingURL=pytest-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pytest-generator.js","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/pytest-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export { TestGenerationPlugin, createTestGenerationPlugin, type TestGenerationPluginConfig, type TestGenerationExtendedAPI, } from './plugin';
|
|
8
8
|
export { TestGenerationCoordinator, type ITestGenerationCoordinator, type WorkflowStatus, type CoordinatorConfig, } from './coordinator';
|
|
9
|
-
export { TestGeneratorService, type ITestGenerationService, type TestGeneratorConfig, } from './services/test-generator';
|
|
9
|
+
export { TestGeneratorService, createTestGeneratorService, createTestGeneratorServiceWithDependencies, type ITestGenerationService, type TestGeneratorConfig, type TestGeneratorDependencies, } from './services/test-generator';
|
|
10
10
|
export { PatternMatcherService, type IPatternMatchingService, type PatternMatcherConfig, type PatternSearchContext, type PatternMatch, type AppliedPattern, type PatternModification, type PatternDefinition, type PatternExample, type PatternFilter, } from './services/pattern-matcher';
|
|
11
|
-
export { TestGenerationCoherenceGate, createTestGenerationCoherenceGate, CoherenceError, DEFAULT_COHERENCE_GATE_CONFIG, type Requirement, type TestSpecification, type EnrichmentRecommendation, type RequirementCoherenceResult, type RequirementContradiction, type ContradictionSeverity, type TestGenerationCoherenceGateConfig, type IEmbeddingService, } from './coherence-gate';
|
|
11
|
+
export { TestGenerationCoherenceGate, createTestGenerationCoherenceGate, CoherenceError, DEFAULT_COHERENCE_GATE_CONFIG, type Requirement, type TestSpecification, type EnrichmentRecommendation, type RequirementCoherenceResult, type RequirementContradiction, type ContradictionSeverity, type TestGenerationCoherenceGateConfig, type IEmbeddingService, } from './services/coherence-gate-service';
|
|
12
12
|
export type { TestGenerationAPI, GenerateTestsRequest, TDDRequest, PropertyTestRequest, TestDataRequest, LearnPatternsRequest, GeneratedTests, GeneratedTest, TDDResult, PropertyTests, PropertyTest, TestData, LearnedPatterns, Pattern, } from './interfaces';
|
|
13
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/test-generation/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,GAC/B,MAAM,UAAU,CAAC;AAMlB,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,cAAc,EACnB,KAAK,iBAAiB,GACvB,MAAM,eAAe,CAAC;AAMvB,OAAO,EACL,oBAAoB,EACpB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/test-generation/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,GAC/B,MAAM,UAAU,CAAC;AAMlB,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,cAAc,EACnB,KAAK,iBAAiB,GACvB,MAAM,eAAe,CAAC;AAMvB,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,0CAA0C,EAC1C,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,qBAAqB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,4BAA4B,CAAC;AAMpC,OAAO,EACL,2BAA2B,EAC3B,iCAAiC,EACjC,cAAc,EACd,6BAA6B,EAC7B,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,iCAAiC,EACtC,KAAK,iBAAiB,GACvB,MAAM,mCAAmC,CAAC;AAM3C,YAAY,EAEV,iBAAiB,EAGjB,oBAAoB,EACpB,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EAGpB,cAAc,EACd,aAAa,EACb,SAAS,EACT,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,OAAO,GACR,MAAM,cAAc,CAAC"}
|
|
@@ -15,10 +15,10 @@ export { TestGenerationCoordinator, } from './coordinator';
|
|
|
15
15
|
// ============================================================================
|
|
16
16
|
// Services
|
|
17
17
|
// ============================================================================
|
|
18
|
-
export { TestGeneratorService, } from './services/test-generator';
|
|
18
|
+
export { TestGeneratorService, createTestGeneratorService, createTestGeneratorServiceWithDependencies, } from './services/test-generator';
|
|
19
19
|
export { PatternMatcherService, } from './services/pattern-matcher';
|
|
20
20
|
// ============================================================================
|
|
21
|
-
// Coherence Gate (ADR-052)
|
|
21
|
+
// Coherence Gate Service (ADR-052)
|
|
22
22
|
// ============================================================================
|
|
23
|
-
export { TestGenerationCoherenceGate, createTestGenerationCoherenceGate, CoherenceError, DEFAULT_COHERENCE_GATE_CONFIG, } from './coherence-gate';
|
|
23
|
+
export { TestGenerationCoherenceGate, createTestGenerationCoherenceGate, CoherenceError, DEFAULT_COHERENCE_GATE_CONFIG, } from './services/coherence-gate-service';
|
|
24
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domains/test-generation/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAE/E,OAAO,EACL,oBAAoB,EACpB,0BAA0B,GAG3B,MAAM,UAAU,CAAC;AAElB,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,OAAO,EACL,yBAAyB,GAI1B,MAAM,eAAe,CAAC;AAEvB,+EAA+E;AAC/E,WAAW;AACX,+EAA+E;AAE/E,OAAO,EACL,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domains/test-generation/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAE/E,OAAO,EACL,oBAAoB,EACpB,0BAA0B,GAG3B,MAAM,UAAU,CAAC;AAElB,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,OAAO,EACL,yBAAyB,GAI1B,MAAM,eAAe,CAAC;AAEvB,+EAA+E;AAC/E,WAAW;AACX,+EAA+E;AAE/E,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,0CAA0C,GAI3C,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,qBAAqB,GAUtB,MAAM,4BAA4B,CAAC;AAEpC,+EAA+E;AAC/E,mCAAmC;AACnC,+EAA+E;AAE/E,OAAO,EACL,2BAA2B,EAC3B,iCAAiC,EACjC,cAAc,EACd,6BAA6B,GAS9B,MAAM,mCAAmC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Test Generation Strategy Pattern Interfaces
|
|
3
|
+
* Re-exports from main interfaces file for backward compatibility
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Import directly from '../interfaces' instead
|
|
6
|
+
* @module test-generation/interfaces
|
|
7
|
+
*/
|
|
8
|
+
export type { TestFramework, TestType, Pattern, IPattern, FunctionInfo, ClassInfo, ParameterInfo, PropertyInfo, TestCase, CodeAnalysis, IFunctionInfo, IClassInfo, IParameterInfo, IPropertyInfo, ITestCase, ICodeAnalysis, TestGenerationContext, ITestGenerationContext, ITestGenerator, ITestGeneratorFactory, } from '../interfaces';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/interfaces/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EAEV,aAAa,EACb,QAAQ,EACR,OAAO,EACP,QAAQ,EAGR,YAAY,EACZ,SAAS,EACT,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,UAAU,EACV,cAAc,EACd,aAAa,EACb,SAAS,EACT,aAAa,EAGb,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,GACtB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Test Generation Strategy Pattern Interfaces
|
|
3
|
+
* Re-exports from main interfaces file for backward compatibility
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Import directly from '../interfaces' instead
|
|
6
|
+
* @module test-generation/interfaces
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/domains/test-generation/interfaces/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Test Generator Strategy Pattern Interfaces
|
|
3
|
+
* Defines the core abstractions for framework-specific test generation
|
|
4
|
+
*
|
|
5
|
+
* @module test-generation/interfaces
|
|
6
|
+
*/
|
|
7
|
+
export interface Pattern {
|
|
8
|
+
id: string;
|
|
9
|
+
name: string;
|
|
10
|
+
structure: string;
|
|
11
|
+
examples: number;
|
|
12
|
+
applicability: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Supported test frameworks
|
|
16
|
+
*/
|
|
17
|
+
export type TestFramework = 'jest' | 'vitest' | 'mocha' | 'pytest';
|
|
18
|
+
/**
|
|
19
|
+
* Types of tests that can be generated
|
|
20
|
+
*/
|
|
21
|
+
export type TestType = 'unit' | 'integration' | 'e2e';
|
|
22
|
+
/**
|
|
23
|
+
* Information about a function extracted from AST
|
|
24
|
+
*/
|
|
25
|
+
export interface FunctionInfo {
|
|
26
|
+
name: string;
|
|
27
|
+
parameters: ParameterInfo[];
|
|
28
|
+
returnType: string | undefined;
|
|
29
|
+
isAsync: boolean;
|
|
30
|
+
isExported: boolean;
|
|
31
|
+
complexity: number;
|
|
32
|
+
startLine: number;
|
|
33
|
+
endLine: number;
|
|
34
|
+
body?: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Information about a class extracted from AST
|
|
38
|
+
*/
|
|
39
|
+
export interface ClassInfo {
|
|
40
|
+
name: string;
|
|
41
|
+
methods: FunctionInfo[];
|
|
42
|
+
properties: PropertyInfo[];
|
|
43
|
+
isExported: boolean;
|
|
44
|
+
hasConstructor: boolean;
|
|
45
|
+
constructorParams?: ParameterInfo[];
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Information about a parameter
|
|
49
|
+
*/
|
|
50
|
+
export interface ParameterInfo {
|
|
51
|
+
name: string;
|
|
52
|
+
type: string | undefined;
|
|
53
|
+
optional: boolean;
|
|
54
|
+
defaultValue: string | undefined;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Information about a class property
|
|
58
|
+
*/
|
|
59
|
+
export interface PropertyInfo {
|
|
60
|
+
name: string;
|
|
61
|
+
type: string | undefined;
|
|
62
|
+
isPrivate: boolean;
|
|
63
|
+
isReadonly: boolean;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Test case definition
|
|
67
|
+
*/
|
|
68
|
+
export interface TestCase {
|
|
69
|
+
description: string;
|
|
70
|
+
type: 'happy-path' | 'edge-case' | 'error-handling' | 'boundary';
|
|
71
|
+
setup?: string;
|
|
72
|
+
action: string;
|
|
73
|
+
assertion: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Code analysis result from AST parsing
|
|
77
|
+
*/
|
|
78
|
+
export interface CodeAnalysis {
|
|
79
|
+
functions: FunctionInfo[];
|
|
80
|
+
classes: ClassInfo[];
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Context for test generation
|
|
84
|
+
*/
|
|
85
|
+
export interface TestGenerationContext {
|
|
86
|
+
moduleName: string;
|
|
87
|
+
importPath: string;
|
|
88
|
+
testType: TestType;
|
|
89
|
+
patterns: Pattern[];
|
|
90
|
+
analysis?: CodeAnalysis;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* ITestGenerator - Strategy interface for framework-specific test generation
|
|
94
|
+
*
|
|
95
|
+
* Each framework implementation (Jest, Vitest, Mocha, Pytest) implements this
|
|
96
|
+
* interface to provide consistent test generation capabilities.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```typescript
|
|
100
|
+
* const generator: ITestGenerator = new JestVitestGenerator('jest');
|
|
101
|
+
* const testCode = generator.generateTests(context);
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
export interface ITestGenerator {
|
|
105
|
+
/**
|
|
106
|
+
* The test framework this generator targets
|
|
107
|
+
*/
|
|
108
|
+
readonly framework: TestFramework;
|
|
109
|
+
/**
|
|
110
|
+
* Generate complete test code for a module
|
|
111
|
+
* @param context - The test generation context including source analysis
|
|
112
|
+
* @returns Generated test code as a string
|
|
113
|
+
*/
|
|
114
|
+
generateTests(context: TestGenerationContext): string;
|
|
115
|
+
/**
|
|
116
|
+
* Generate tests for a single function
|
|
117
|
+
* @param fn - Function information from AST analysis
|
|
118
|
+
* @param testType - Type of test to generate
|
|
119
|
+
* @returns Generated test code for the function
|
|
120
|
+
*/
|
|
121
|
+
generateFunctionTests(fn: FunctionInfo, testType: TestType): string;
|
|
122
|
+
/**
|
|
123
|
+
* Generate tests for a class
|
|
124
|
+
* @param cls - Class information from AST analysis
|
|
125
|
+
* @param testType - Type of test to generate
|
|
126
|
+
* @returns Generated test code for the class
|
|
127
|
+
*/
|
|
128
|
+
generateClassTests(cls: ClassInfo, testType: TestType): string;
|
|
129
|
+
/**
|
|
130
|
+
* Generate stub test code when no AST analysis is available
|
|
131
|
+
* @param context - The test generation context
|
|
132
|
+
* @returns Generated stub test code
|
|
133
|
+
*/
|
|
134
|
+
generateStubTests(context: TestGenerationContext): string;
|
|
135
|
+
/**
|
|
136
|
+
* Generate coverage-focused test code for specific lines
|
|
137
|
+
* @param moduleName - Name of the module under test
|
|
138
|
+
* @param importPath - Import path to the module
|
|
139
|
+
* @param lines - Line numbers to cover
|
|
140
|
+
* @returns Generated coverage test code
|
|
141
|
+
*/
|
|
142
|
+
generateCoverageTests(moduleName: string, importPath: string, lines: number[]): string;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Factory interface for creating test generators
|
|
146
|
+
*/
|
|
147
|
+
export interface ITestGeneratorFactory {
|
|
148
|
+
/**
|
|
149
|
+
* Create a test generator for the specified framework
|
|
150
|
+
* @param framework - Target test framework
|
|
151
|
+
* @returns Test generator instance
|
|
152
|
+
*/
|
|
153
|
+
create(framework: TestFramework): ITestGenerator;
|
|
154
|
+
/**
|
|
155
|
+
* Check if a framework is supported
|
|
156
|
+
* @param framework - Framework to check
|
|
157
|
+
* @returns True if supported
|
|
158
|
+
*/
|
|
159
|
+
supports(framework: string): framework is TestFramework;
|
|
160
|
+
/**
|
|
161
|
+
* Get the default framework
|
|
162
|
+
* @returns Default test framework
|
|
163
|
+
*/
|
|
164
|
+
getDefault(): TestFramework;
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=test-generator.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-generator.interface.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/interfaces/test-generator.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-generator.interface.js","sourceRoot":"","sources":["../../../../src/domains/test-generation/interfaces/test-generator.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|