tapps-agents 3.6.0__py3-none-any.whl → 3.6.1__py3-none-any.whl
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.
- tapps_agents/__init__.py +2 -2
- tapps_agents/agents/__init__.py +22 -22
- tapps_agents/agents/analyst/__init__.py +5 -5
- tapps_agents/agents/architect/__init__.py +5 -5
- tapps_agents/agents/architect/agent.py +1033 -1033
- tapps_agents/agents/architect/pattern_detector.py +75 -75
- tapps_agents/agents/cleanup/__init__.py +7 -7
- tapps_agents/agents/cleanup/agent.py +445 -445
- tapps_agents/agents/debugger/__init__.py +7 -7
- tapps_agents/agents/debugger/agent.py +310 -310
- tapps_agents/agents/debugger/error_analyzer.py +437 -437
- tapps_agents/agents/designer/__init__.py +5 -5
- tapps_agents/agents/designer/agent.py +786 -786
- tapps_agents/agents/designer/visual_designer.py +638 -638
- tapps_agents/agents/documenter/__init__.py +7 -7
- tapps_agents/agents/documenter/agent.py +531 -531
- tapps_agents/agents/documenter/doc_generator.py +472 -472
- tapps_agents/agents/documenter/doc_validator.py +393 -393
- tapps_agents/agents/documenter/framework_doc_updater.py +493 -493
- tapps_agents/agents/enhancer/__init__.py +7 -7
- tapps_agents/agents/evaluator/__init__.py +7 -7
- tapps_agents/agents/evaluator/agent.py +443 -443
- tapps_agents/agents/evaluator/priority_evaluator.py +641 -641
- tapps_agents/agents/evaluator/quality_analyzer.py +147 -147
- tapps_agents/agents/evaluator/report_generator.py +344 -344
- tapps_agents/agents/evaluator/usage_analyzer.py +192 -192
- tapps_agents/agents/evaluator/workflow_analyzer.py +189 -189
- tapps_agents/agents/implementer/__init__.py +7 -7
- tapps_agents/agents/implementer/agent.py +798 -798
- tapps_agents/agents/implementer/auto_fix.py +1119 -1119
- tapps_agents/agents/implementer/code_generator.py +73 -73
- tapps_agents/agents/improver/__init__.py +1 -1
- tapps_agents/agents/improver/agent.py +753 -753
- tapps_agents/agents/ops/__init__.py +1 -1
- tapps_agents/agents/ops/agent.py +619 -619
- tapps_agents/agents/ops/dependency_analyzer.py +600 -600
- tapps_agents/agents/orchestrator/__init__.py +5 -5
- tapps_agents/agents/orchestrator/agent.py +522 -522
- tapps_agents/agents/planner/__init__.py +7 -7
- tapps_agents/agents/planner/agent.py +1127 -1127
- tapps_agents/agents/reviewer/__init__.py +24 -24
- tapps_agents/agents/reviewer/agent.py +3513 -3513
- tapps_agents/agents/reviewer/aggregator.py +213 -213
- tapps_agents/agents/reviewer/batch_review.py +448 -448
- tapps_agents/agents/reviewer/cache.py +443 -443
- tapps_agents/agents/reviewer/context7_enhancer.py +630 -630
- tapps_agents/agents/reviewer/context_detector.py +203 -203
- tapps_agents/agents/reviewer/docker_compose_validator.py +158 -158
- tapps_agents/agents/reviewer/dockerfile_validator.py +176 -176
- tapps_agents/agents/reviewer/error_handling.py +126 -126
- tapps_agents/agents/reviewer/feedback_generator.py +490 -490
- tapps_agents/agents/reviewer/influxdb_validator.py +316 -316
- tapps_agents/agents/reviewer/issue_tracking.py +169 -169
- tapps_agents/agents/reviewer/library_detector.py +295 -295
- tapps_agents/agents/reviewer/library_patterns.py +268 -268
- tapps_agents/agents/reviewer/maintainability_scorer.py +593 -593
- tapps_agents/agents/reviewer/metric_strategies.py +276 -276
- tapps_agents/agents/reviewer/mqtt_validator.py +160 -160
- tapps_agents/agents/reviewer/output_enhancer.py +105 -105
- tapps_agents/agents/reviewer/pattern_detector.py +241 -241
- tapps_agents/agents/reviewer/performance_scorer.py +357 -357
- tapps_agents/agents/reviewer/phased_review.py +516 -516
- tapps_agents/agents/reviewer/progressive_review.py +435 -435
- tapps_agents/agents/reviewer/react_scorer.py +331 -331
- tapps_agents/agents/reviewer/score_constants.py +228 -228
- tapps_agents/agents/reviewer/score_validator.py +507 -507
- tapps_agents/agents/reviewer/scorer_registry.py +373 -373
- tapps_agents/agents/reviewer/service_discovery.py +534 -534
- tapps_agents/agents/reviewer/tools/parallel_executor.py +581 -581
- tapps_agents/agents/reviewer/tools/ruff_grouping.py +250 -250
- tapps_agents/agents/reviewer/tools/scoped_mypy.py +284 -284
- tapps_agents/agents/reviewer/typescript_scorer.py +1142 -1142
- tapps_agents/agents/reviewer/validation.py +208 -208
- tapps_agents/agents/reviewer/websocket_validator.py +132 -132
- tapps_agents/agents/tester/__init__.py +7 -7
- tapps_agents/agents/tester/accessibility_auditor.py +309 -309
- tapps_agents/agents/tester/agent.py +1080 -1080
- tapps_agents/agents/tester/batch_generator.py +54 -54
- tapps_agents/agents/tester/context_learner.py +51 -51
- tapps_agents/agents/tester/coverage_analyzer.py +386 -386
- tapps_agents/agents/tester/coverage_test_generator.py +290 -290
- tapps_agents/agents/tester/debug_enhancer.py +238 -238
- tapps_agents/agents/tester/device_emulator.py +241 -241
- tapps_agents/agents/tester/integration_generator.py +62 -62
- tapps_agents/agents/tester/network_recorder.py +300 -300
- tapps_agents/agents/tester/performance_monitor.py +320 -320
- tapps_agents/agents/tester/test_fixer.py +316 -316
- tapps_agents/agents/tester/test_generator.py +632 -632
- tapps_agents/agents/tester/trace_manager.py +234 -234
- tapps_agents/agents/tester/visual_regression.py +291 -291
- tapps_agents/analysis/pattern_detector.py +36 -36
- tapps_agents/beads/hydration.py +213 -213
- tapps_agents/beads/parse.py +32 -32
- tapps_agents/beads/specs.py +206 -206
- tapps_agents/cli/__init__.py +9 -9
- tapps_agents/cli/__main__.py +8 -8
- tapps_agents/cli/base.py +478 -478
- tapps_agents/cli/command_classifier.py +72 -72
- tapps_agents/cli/commands/__init__.py +2 -2
- tapps_agents/cli/commands/analyst.py +173 -173
- tapps_agents/cli/commands/architect.py +109 -109
- tapps_agents/cli/commands/cleanup_agent.py +92 -92
- tapps_agents/cli/commands/common.py +126 -126
- tapps_agents/cli/commands/debugger.py +90 -90
- tapps_agents/cli/commands/designer.py +112 -112
- tapps_agents/cli/commands/documenter.py +136 -136
- tapps_agents/cli/commands/enhancer.py +110 -110
- tapps_agents/cli/commands/evaluator.py +255 -255
- tapps_agents/cli/commands/implementer.py +301 -301
- tapps_agents/cli/commands/improver.py +91 -91
- tapps_agents/cli/commands/knowledge.py +111 -111
- tapps_agents/cli/commands/learning.py +172 -172
- tapps_agents/cli/commands/observability.py +283 -283
- tapps_agents/cli/commands/ops.py +135 -135
- tapps_agents/cli/commands/orchestrator.py +116 -116
- tapps_agents/cli/commands/planner.py +237 -237
- tapps_agents/cli/commands/reviewer.py +1872 -1872
- tapps_agents/cli/commands/status.py +285 -285
- tapps_agents/cli/commands/task.py +227 -227
- tapps_agents/cli/commands/tester.py +191 -191
- tapps_agents/cli/feedback.py +936 -936
- tapps_agents/cli/formatters.py +608 -608
- tapps_agents/cli/help/__init__.py +7 -7
- tapps_agents/cli/help/static_help.py +425 -425
- tapps_agents/cli/network_detection.py +110 -110
- tapps_agents/cli/output_compactor.py +274 -274
- tapps_agents/cli/parsers/__init__.py +2 -2
- tapps_agents/cli/parsers/analyst.py +186 -186
- tapps_agents/cli/parsers/architect.py +167 -167
- tapps_agents/cli/parsers/cleanup_agent.py +228 -228
- tapps_agents/cli/parsers/debugger.py +116 -116
- tapps_agents/cli/parsers/designer.py +182 -182
- tapps_agents/cli/parsers/documenter.py +134 -134
- tapps_agents/cli/parsers/enhancer.py +113 -113
- tapps_agents/cli/parsers/evaluator.py +213 -213
- tapps_agents/cli/parsers/implementer.py +168 -168
- tapps_agents/cli/parsers/improver.py +132 -132
- tapps_agents/cli/parsers/ops.py +159 -159
- tapps_agents/cli/parsers/orchestrator.py +98 -98
- tapps_agents/cli/parsers/planner.py +145 -145
- tapps_agents/cli/parsers/reviewer.py +462 -462
- tapps_agents/cli/parsers/tester.py +124 -124
- tapps_agents/cli/progress_heartbeat.py +254 -254
- tapps_agents/cli/streaming_progress.py +336 -336
- tapps_agents/cli/utils/__init__.py +6 -6
- tapps_agents/cli/utils/agent_lifecycle.py +48 -48
- tapps_agents/cli/utils/error_formatter.py +82 -82
- tapps_agents/cli/utils/error_recovery.py +188 -188
- tapps_agents/cli/utils/output_handler.py +59 -59
- tapps_agents/cli/utils/prompt_enhancer.py +319 -319
- tapps_agents/cli/validators/__init__.py +9 -9
- tapps_agents/cli/validators/command_validator.py +81 -81
- tapps_agents/context7/__init__.py +112 -112
- tapps_agents/context7/agent_integration.py +869 -869
- tapps_agents/context7/analytics.py +382 -382
- tapps_agents/context7/analytics_dashboard.py +299 -299
- tapps_agents/context7/async_cache.py +681 -681
- tapps_agents/context7/backup_client.py +958 -958
- tapps_agents/context7/cache_locking.py +194 -194
- tapps_agents/context7/cache_metadata.py +214 -214
- tapps_agents/context7/cache_prewarm.py +488 -488
- tapps_agents/context7/cache_structure.py +168 -168
- tapps_agents/context7/cache_warming.py +604 -604
- tapps_agents/context7/circuit_breaker.py +376 -376
- tapps_agents/context7/cleanup.py +461 -461
- tapps_agents/context7/commands.py +858 -858
- tapps_agents/context7/credential_validation.py +276 -276
- tapps_agents/context7/cross_reference_resolver.py +168 -168
- tapps_agents/context7/cross_references.py +424 -424
- tapps_agents/context7/doc_manager.py +225 -225
- tapps_agents/context7/fuzzy_matcher.py +369 -369
- tapps_agents/context7/kb_cache.py +404 -404
- tapps_agents/context7/language_detector.py +219 -219
- tapps_agents/context7/library_detector.py +725 -725
- tapps_agents/context7/lookup.py +738 -738
- tapps_agents/context7/metadata.py +258 -258
- tapps_agents/context7/refresh_queue.py +300 -300
- tapps_agents/context7/security.py +373 -373
- tapps_agents/context7/staleness_policies.py +278 -278
- tapps_agents/context7/tiles_integration.py +47 -47
- tapps_agents/continuous_bug_fix/__init__.py +20 -20
- tapps_agents/continuous_bug_fix/bug_finder.py +306 -306
- tapps_agents/continuous_bug_fix/bug_fix_coordinator.py +177 -177
- tapps_agents/continuous_bug_fix/commit_manager.py +178 -178
- tapps_agents/continuous_bug_fix/continuous_bug_fixer.py +322 -322
- tapps_agents/continuous_bug_fix/proactive_bug_finder.py +285 -285
- tapps_agents/core/__init__.py +298 -298
- tapps_agents/core/adaptive_cache_config.py +432 -432
- tapps_agents/core/agent_base.py +647 -647
- tapps_agents/core/agent_cache.py +466 -466
- tapps_agents/core/agent_learning.py +1865 -1865
- tapps_agents/core/analytics_dashboard.py +563 -563
- tapps_agents/core/analytics_enhancements.py +597 -597
- tapps_agents/core/anonymization.py +274 -274
- tapps_agents/core/ast_parser.py +228 -228
- tapps_agents/core/async_file_ops.py +402 -402
- tapps_agents/core/best_practice_consultant.py +299 -299
- tapps_agents/core/brownfield_analyzer.py +299 -299
- tapps_agents/core/brownfield_review.py +541 -541
- tapps_agents/core/browser_controller.py +513 -513
- tapps_agents/core/capability_registry.py +418 -418
- tapps_agents/core/change_impact_analyzer.py +190 -190
- tapps_agents/core/checkpoint_manager.py +377 -377
- tapps_agents/core/code_generator.py +329 -329
- tapps_agents/core/code_validator.py +276 -276
- tapps_agents/core/command_registry.py +327 -327
- tapps_agents/core/context_gathering/__init__.py +2 -2
- tapps_agents/core/context_gathering/repository_explorer.py +28 -28
- tapps_agents/core/context_intelligence/__init__.py +2 -2
- tapps_agents/core/context_intelligence/relevance_scorer.py +24 -24
- tapps_agents/core/context_intelligence/token_budget_manager.py +27 -27
- tapps_agents/core/context_manager.py +240 -240
- tapps_agents/core/cursor_feedback_monitor.py +146 -146
- tapps_agents/core/cursor_verification.py +290 -290
- tapps_agents/core/customization_loader.py +280 -280
- tapps_agents/core/customization_schema.py +260 -260
- tapps_agents/core/customization_template.py +238 -238
- tapps_agents/core/debug_logger.py +124 -124
- tapps_agents/core/design_validator.py +298 -298
- tapps_agents/core/diagram_generator.py +226 -226
- tapps_agents/core/docker_utils.py +232 -232
- tapps_agents/core/document_generator.py +617 -617
- tapps_agents/core/domain_detector.py +30 -30
- tapps_agents/core/error_envelope.py +454 -454
- tapps_agents/core/error_handler.py +270 -270
- tapps_agents/core/estimation_tracker.py +189 -189
- tapps_agents/core/eval_prompt_engine.py +116 -116
- tapps_agents/core/evaluation_base.py +119 -119
- tapps_agents/core/evaluation_models.py +320 -320
- tapps_agents/core/evaluation_orchestrator.py +225 -225
- tapps_agents/core/evaluators/__init__.py +7 -7
- tapps_agents/core/evaluators/architectural_evaluator.py +205 -205
- tapps_agents/core/evaluators/behavioral_evaluator.py +160 -160
- tapps_agents/core/evaluators/performance_profile_evaluator.py +160 -160
- tapps_agents/core/evaluators/security_posture_evaluator.py +148 -148
- tapps_agents/core/evaluators/spec_compliance_evaluator.py +181 -181
- tapps_agents/core/exceptions.py +107 -107
- tapps_agents/core/expert_config_generator.py +293 -293
- tapps_agents/core/export_schema.py +202 -202
- tapps_agents/core/external_feedback_models.py +102 -102
- tapps_agents/core/external_feedback_storage.py +213 -213
- tapps_agents/core/fallback_strategy.py +314 -314
- tapps_agents/core/feedback_analyzer.py +162 -162
- tapps_agents/core/feedback_collector.py +178 -178
- tapps_agents/core/git_operations.py +445 -445
- tapps_agents/core/hardware_profiler.py +151 -151
- tapps_agents/core/instructions.py +324 -324
- tapps_agents/core/io_guardrails.py +69 -69
- tapps_agents/core/issue_manifest.py +249 -249
- tapps_agents/core/issue_schema.py +139 -139
- tapps_agents/core/json_utils.py +128 -128
- tapps_agents/core/knowledge_graph.py +446 -446
- tapps_agents/core/language_detector.py +296 -296
- tapps_agents/core/learning_confidence.py +242 -242
- tapps_agents/core/learning_dashboard.py +246 -246
- tapps_agents/core/learning_decision.py +384 -384
- tapps_agents/core/learning_explainability.py +578 -578
- tapps_agents/core/learning_export.py +287 -287
- tapps_agents/core/learning_integration.py +228 -228
- tapps_agents/core/llm_behavior.py +232 -232
- tapps_agents/core/long_duration_support.py +786 -786
- tapps_agents/core/mcp_setup.py +106 -106
- tapps_agents/core/memory_integration.py +396 -396
- tapps_agents/core/meta_learning.py +666 -666
- tapps_agents/core/module_path_sanitizer.py +199 -199
- tapps_agents/core/multi_agent_orchestrator.py +382 -382
- tapps_agents/core/network_errors.py +125 -125
- tapps_agents/core/nfr_validator.py +336 -336
- tapps_agents/core/offline_mode.py +158 -158
- tapps_agents/core/output_contracts.py +300 -300
- tapps_agents/core/output_formatter.py +300 -300
- tapps_agents/core/path_normalizer.py +174 -174
- tapps_agents/core/path_validator.py +322 -322
- tapps_agents/core/pattern_library.py +250 -250
- tapps_agents/core/performance_benchmark.py +301 -301
- tapps_agents/core/performance_monitor.py +184 -184
- tapps_agents/core/playwright_mcp_controller.py +771 -771
- tapps_agents/core/policy_loader.py +135 -135
- tapps_agents/core/progress.py +166 -166
- tapps_agents/core/project_profile.py +354 -354
- tapps_agents/core/project_type_detector.py +454 -454
- tapps_agents/core/prompt_base.py +223 -223
- tapps_agents/core/prompt_learning/__init__.py +2 -2
- tapps_agents/core/prompt_learning/learning_loop.py +24 -24
- tapps_agents/core/prompt_learning/project_prompt_store.py +25 -25
- tapps_agents/core/prompt_learning/skills_prompt_analyzer.py +35 -35
- tapps_agents/core/prompt_optimization/__init__.py +6 -6
- tapps_agents/core/prompt_optimization/ab_tester.py +114 -114
- tapps_agents/core/prompt_optimization/correlation_analyzer.py +160 -160
- tapps_agents/core/prompt_optimization/progressive_refiner.py +129 -129
- tapps_agents/core/prompt_optimization/prompt_library.py +37 -37
- tapps_agents/core/requirements_evaluator.py +431 -431
- tapps_agents/core/resource_aware_executor.py +449 -449
- tapps_agents/core/resource_monitor.py +343 -343
- tapps_agents/core/resume_handler.py +298 -298
- tapps_agents/core/retry_handler.py +197 -197
- tapps_agents/core/review_checklists.py +479 -479
- tapps_agents/core/role_loader.py +201 -201
- tapps_agents/core/role_template_loader.py +201 -201
- tapps_agents/core/runtime_mode.py +60 -60
- tapps_agents/core/security_scanner.py +342 -342
- tapps_agents/core/skill_agent_registry.py +194 -194
- tapps_agents/core/skill_integration.py +208 -208
- tapps_agents/core/skill_loader.py +492 -492
- tapps_agents/core/skill_template.py +341 -341
- tapps_agents/core/skill_validator.py +478 -478
- tapps_agents/core/stack_analyzer.py +35 -35
- tapps_agents/core/startup.py +174 -174
- tapps_agents/core/storage_manager.py +397 -397
- tapps_agents/core/storage_models.py +166 -166
- tapps_agents/core/story_evaluator.py +410 -410
- tapps_agents/core/subprocess_utils.py +170 -170
- tapps_agents/core/task_duration.py +296 -296
- tapps_agents/core/task_memory.py +582 -582
- tapps_agents/core/task_state.py +226 -226
- tapps_agents/core/tech_stack_priorities.py +208 -208
- tapps_agents/core/temp_directory.py +194 -194
- tapps_agents/core/template_merger.py +600 -600
- tapps_agents/core/template_selector.py +280 -280
- tapps_agents/core/test_generator.py +286 -286
- tapps_agents/core/tiered_context.py +253 -253
- tapps_agents/core/token_monitor.py +345 -345
- tapps_agents/core/traceability.py +254 -254
- tapps_agents/core/trajectory_tracker.py +50 -50
- tapps_agents/core/unicode_safe.py +143 -143
- tapps_agents/core/unified_cache_config.py +170 -170
- tapps_agents/core/unified_state.py +324 -324
- tapps_agents/core/validate_cursor_setup.py +237 -237
- tapps_agents/core/validation_registry.py +136 -136
- tapps_agents/core/validators/__init__.py +4 -4
- tapps_agents/core/validators/python_validator.py +87 -87
- tapps_agents/core/verification_agent.py +90 -90
- tapps_agents/core/visual_feedback.py +644 -644
- tapps_agents/core/workflow_validator.py +197 -197
- tapps_agents/core/worktree.py +367 -367
- tapps_agents/docker/__init__.py +10 -10
- tapps_agents/docker/analyzer.py +186 -186
- tapps_agents/docker/debugger.py +229 -229
- tapps_agents/docker/error_patterns.py +216 -216
- tapps_agents/epic/__init__.py +22 -22
- tapps_agents/epic/beads_sync.py +115 -115
- tapps_agents/epic/markdown_sync.py +105 -105
- tapps_agents/epic/models.py +96 -96
- tapps_agents/experts/__init__.py +163 -163
- tapps_agents/experts/agent_integration.py +243 -243
- tapps_agents/experts/auto_generator.py +331 -331
- tapps_agents/experts/base_expert.py +536 -536
- tapps_agents/experts/builtin_registry.py +261 -261
- tapps_agents/experts/business_metrics.py +565 -565
- tapps_agents/experts/cache.py +266 -266
- tapps_agents/experts/confidence_breakdown.py +306 -306
- tapps_agents/experts/confidence_calculator.py +336 -336
- tapps_agents/experts/confidence_metrics.py +236 -236
- tapps_agents/experts/domain_config.py +311 -311
- tapps_agents/experts/domain_detector.py +550 -550
- tapps_agents/experts/domain_utils.py +84 -84
- tapps_agents/experts/expert_config.py +113 -113
- tapps_agents/experts/expert_engine.py +465 -465
- tapps_agents/experts/expert_registry.py +744 -744
- tapps_agents/experts/expert_synthesizer.py +70 -70
- tapps_agents/experts/governance.py +197 -197
- tapps_agents/experts/history_logger.py +312 -312
- tapps_agents/experts/knowledge/README.md +180 -180
- tapps_agents/experts/knowledge/accessibility/accessible-forms.md +331 -331
- tapps_agents/experts/knowledge/accessibility/aria-patterns.md +344 -344
- tapps_agents/experts/knowledge/accessibility/color-contrast.md +285 -285
- tapps_agents/experts/knowledge/accessibility/keyboard-navigation.md +332 -332
- tapps_agents/experts/knowledge/accessibility/screen-readers.md +282 -282
- tapps_agents/experts/knowledge/accessibility/semantic-html.md +355 -355
- tapps_agents/experts/knowledge/accessibility/testing-accessibility.md +369 -369
- tapps_agents/experts/knowledge/accessibility/wcag-2.1.md +296 -296
- tapps_agents/experts/knowledge/accessibility/wcag-2.2.md +211 -211
- tapps_agents/experts/knowledge/agent-learning/best-practices.md +715 -715
- tapps_agents/experts/knowledge/agent-learning/pattern-extraction.md +282 -282
- tapps_agents/experts/knowledge/agent-learning/prompt-optimization.md +320 -320
- tapps_agents/experts/knowledge/ai-frameworks/model-optimization.md +90 -90
- tapps_agents/experts/knowledge/ai-frameworks/openvino-patterns.md +260 -260
- tapps_agents/experts/knowledge/api-design-integration/api-gateway-patterns.md +309 -309
- tapps_agents/experts/knowledge/api-design-integration/api-security-patterns.md +521 -521
- tapps_agents/experts/knowledge/api-design-integration/api-versioning.md +421 -421
- tapps_agents/experts/knowledge/api-design-integration/async-protocol-patterns.md +61 -61
- tapps_agents/experts/knowledge/api-design-integration/contract-testing.md +221 -221
- tapps_agents/experts/knowledge/api-design-integration/external-api-integration.md +489 -489
- tapps_agents/experts/knowledge/api-design-integration/fastapi-patterns.md +360 -360
- tapps_agents/experts/knowledge/api-design-integration/fastapi-testing.md +262 -262
- tapps_agents/experts/knowledge/api-design-integration/graphql-patterns.md +582 -582
- tapps_agents/experts/knowledge/api-design-integration/grpc-best-practices.md +499 -499
- tapps_agents/experts/knowledge/api-design-integration/mqtt-patterns.md +455 -455
- tapps_agents/experts/knowledge/api-design-integration/rate-limiting.md +507 -507
- tapps_agents/experts/knowledge/api-design-integration/restful-api-design.md +618 -618
- tapps_agents/experts/knowledge/api-design-integration/websocket-patterns.md +480 -480
- tapps_agents/experts/knowledge/cloud-infrastructure/cloud-native-patterns.md +175 -175
- tapps_agents/experts/knowledge/cloud-infrastructure/container-health-checks.md +261 -261
- tapps_agents/experts/knowledge/cloud-infrastructure/containerization.md +222 -222
- tapps_agents/experts/knowledge/cloud-infrastructure/cost-optimization.md +122 -122
- tapps_agents/experts/knowledge/cloud-infrastructure/disaster-recovery.md +153 -153
- tapps_agents/experts/knowledge/cloud-infrastructure/dockerfile-patterns.md +285 -285
- tapps_agents/experts/knowledge/cloud-infrastructure/infrastructure-as-code.md +187 -187
- tapps_agents/experts/knowledge/cloud-infrastructure/kubernetes-patterns.md +253 -253
- tapps_agents/experts/knowledge/cloud-infrastructure/multi-cloud-strategies.md +155 -155
- tapps_agents/experts/knowledge/cloud-infrastructure/serverless-architecture.md +200 -200
- tapps_agents/experts/knowledge/code-quality-analysis/README.md +16 -16
- tapps_agents/experts/knowledge/code-quality-analysis/code-metrics.md +137 -137
- tapps_agents/experts/knowledge/code-quality-analysis/complexity-analysis.md +181 -181
- tapps_agents/experts/knowledge/code-quality-analysis/technical-debt-patterns.md +191 -191
- tapps_agents/experts/knowledge/data-privacy-compliance/anonymization.md +313 -313
- tapps_agents/experts/knowledge/data-privacy-compliance/ccpa.md +255 -255
- tapps_agents/experts/knowledge/data-privacy-compliance/consent-management.md +282 -282
- tapps_agents/experts/knowledge/data-privacy-compliance/data-minimization.md +275 -275
- tapps_agents/experts/knowledge/data-privacy-compliance/data-retention.md +297 -297
- tapps_agents/experts/knowledge/data-privacy-compliance/data-subject-rights.md +383 -383
- tapps_agents/experts/knowledge/data-privacy-compliance/encryption-privacy.md +285 -285
- tapps_agents/experts/knowledge/data-privacy-compliance/gdpr.md +344 -344
- tapps_agents/experts/knowledge/data-privacy-compliance/hipaa.md +385 -385
- tapps_agents/experts/knowledge/data-privacy-compliance/privacy-by-design.md +280 -280
- tapps_agents/experts/knowledge/database-data-management/acid-vs-cap.md +164 -164
- tapps_agents/experts/knowledge/database-data-management/backup-and-recovery.md +182 -182
- tapps_agents/experts/knowledge/database-data-management/data-modeling.md +172 -172
- tapps_agents/experts/knowledge/database-data-management/database-design.md +187 -187
- tapps_agents/experts/knowledge/database-data-management/flux-query-optimization.md +342 -342
- tapps_agents/experts/knowledge/database-data-management/influxdb-connection-patterns.md +432 -432
- tapps_agents/experts/knowledge/database-data-management/influxdb-patterns.md +442 -442
- tapps_agents/experts/knowledge/database-data-management/migration-strategies.md +216 -216
- tapps_agents/experts/knowledge/database-data-management/nosql-patterns.md +259 -259
- tapps_agents/experts/knowledge/database-data-management/scalability-patterns.md +184 -184
- tapps_agents/experts/knowledge/database-data-management/sql-optimization.md +175 -175
- tapps_agents/experts/knowledge/database-data-management/time-series-modeling.md +444 -444
- tapps_agents/experts/knowledge/development-workflow/README.md +16 -16
- tapps_agents/experts/knowledge/development-workflow/automation-best-practices.md +216 -216
- tapps_agents/experts/knowledge/development-workflow/build-strategies.md +198 -198
- tapps_agents/experts/knowledge/development-workflow/deployment-patterns.md +205 -205
- tapps_agents/experts/knowledge/development-workflow/git-workflows.md +205 -205
- tapps_agents/experts/knowledge/documentation-knowledge-management/README.md +16 -16
- tapps_agents/experts/knowledge/documentation-knowledge-management/api-documentation-patterns.md +231 -231
- tapps_agents/experts/knowledge/documentation-knowledge-management/documentation-standards.md +191 -191
- tapps_agents/experts/knowledge/documentation-knowledge-management/knowledge-management.md +171 -171
- tapps_agents/experts/knowledge/documentation-knowledge-management/technical-writing-guide.md +192 -192
- tapps_agents/experts/knowledge/observability-monitoring/alerting-patterns.md +461 -461
- tapps_agents/experts/knowledge/observability-monitoring/apm-tools.md +459 -459
- tapps_agents/experts/knowledge/observability-monitoring/distributed-tracing.md +367 -367
- tapps_agents/experts/knowledge/observability-monitoring/logging-strategies.md +478 -478
- tapps_agents/experts/knowledge/observability-monitoring/metrics-and-monitoring.md +510 -510
- tapps_agents/experts/knowledge/observability-monitoring/observability-best-practices.md +492 -492
- tapps_agents/experts/knowledge/observability-monitoring/open-telemetry.md +573 -573
- tapps_agents/experts/knowledge/observability-monitoring/slo-sli-sla.md +419 -419
- tapps_agents/experts/knowledge/performance/anti-patterns.md +284 -284
- tapps_agents/experts/knowledge/performance/api-performance.md +256 -256
- tapps_agents/experts/knowledge/performance/caching.md +327 -327
- tapps_agents/experts/knowledge/performance/database-performance.md +252 -252
- tapps_agents/experts/knowledge/performance/optimization-patterns.md +327 -327
- tapps_agents/experts/knowledge/performance/profiling.md +297 -297
- tapps_agents/experts/knowledge/performance/resource-management.md +293 -293
- tapps_agents/experts/knowledge/performance/scalability.md +306 -306
- tapps_agents/experts/knowledge/security/owasp-top10.md +209 -209
- tapps_agents/experts/knowledge/security/secure-coding-practices.md +207 -207
- tapps_agents/experts/knowledge/security/threat-modeling.md +220 -220
- tapps_agents/experts/knowledge/security/vulnerability-patterns.md +342 -342
- tapps_agents/experts/knowledge/software-architecture/docker-compose-patterns.md +314 -314
- tapps_agents/experts/knowledge/software-architecture/microservices-patterns.md +379 -379
- tapps_agents/experts/knowledge/software-architecture/service-communication.md +316 -316
- tapps_agents/experts/knowledge/testing/best-practices.md +310 -310
- tapps_agents/experts/knowledge/testing/coverage-analysis.md +293 -293
- tapps_agents/experts/knowledge/testing/mocking.md +256 -256
- tapps_agents/experts/knowledge/testing/test-automation.md +276 -276
- tapps_agents/experts/knowledge/testing/test-data.md +271 -271
- tapps_agents/experts/knowledge/testing/test-design-patterns.md +280 -280
- tapps_agents/experts/knowledge/testing/test-maintenance.md +236 -236
- tapps_agents/experts/knowledge/testing/test-strategies.md +311 -311
- tapps_agents/experts/knowledge/user-experience/information-architecture.md +325 -325
- tapps_agents/experts/knowledge/user-experience/interaction-design.md +363 -363
- tapps_agents/experts/knowledge/user-experience/prototyping.md +293 -293
- tapps_agents/experts/knowledge/user-experience/usability-heuristics.md +337 -337
- tapps_agents/experts/knowledge/user-experience/usability-testing.md +311 -311
- tapps_agents/experts/knowledge/user-experience/user-journeys.md +296 -296
- tapps_agents/experts/knowledge/user-experience/user-research.md +373 -373
- tapps_agents/experts/knowledge/user-experience/ux-principles.md +340 -340
- tapps_agents/experts/knowledge_freshness.py +321 -321
- tapps_agents/experts/knowledge_ingestion.py +438 -438
- tapps_agents/experts/knowledge_need_detector.py +93 -93
- tapps_agents/experts/knowledge_validator.py +382 -382
- tapps_agents/experts/observability.py +440 -440
- tapps_agents/experts/passive_notifier.py +238 -238
- tapps_agents/experts/proactive_orchestrator.py +32 -32
- tapps_agents/experts/rag_chunker.py +205 -205
- tapps_agents/experts/rag_embedder.py +152 -152
- tapps_agents/experts/rag_evaluation.py +299 -299
- tapps_agents/experts/rag_index.py +303 -303
- tapps_agents/experts/rag_metrics.py +293 -293
- tapps_agents/experts/rag_safety.py +263 -263
- tapps_agents/experts/report_generator.py +296 -296
- tapps_agents/experts/setup_wizard.py +441 -441
- tapps_agents/experts/simple_rag.py +431 -431
- tapps_agents/experts/vector_rag.py +354 -354
- tapps_agents/experts/weight_distributor.py +304 -304
- tapps_agents/health/__init__.py +24 -24
- tapps_agents/health/base.py +75 -75
- tapps_agents/health/checks/__init__.py +22 -22
- tapps_agents/health/checks/automation.py +127 -127
- tapps_agents/health/checks/context7_cache.py +210 -210
- tapps_agents/health/checks/environment.py +116 -116
- tapps_agents/health/checks/execution.py +170 -170
- tapps_agents/health/checks/knowledge_base.py +187 -187
- tapps_agents/health/checks/outcomes.backup_20260204_064058.py +324 -0
- tapps_agents/health/checks/outcomes.backup_20260204_064256.py +324 -0
- tapps_agents/health/checks/outcomes.backup_20260204_064600.py +324 -0
- tapps_agents/health/checks/outcomes.py +324 -324
- tapps_agents/health/collector.py +280 -280
- tapps_agents/health/dashboard.py +137 -137
- tapps_agents/health/metrics.py +151 -151
- tapps_agents/health/registry.py +166 -166
- tapps_agents/hooks/__init__.py +33 -33
- tapps_agents/hooks/config.py +140 -140
- tapps_agents/hooks/events.py +135 -135
- tapps_agents/hooks/executor.py +128 -128
- tapps_agents/hooks/manager.py +143 -143
- tapps_agents/integration/__init__.py +8 -8
- tapps_agents/integration/service_integrator.py +121 -121
- tapps_agents/integrations/__init__.py +10 -10
- tapps_agents/integrations/clawdbot.py +525 -525
- tapps_agents/integrations/memory_bridge.py +356 -356
- tapps_agents/mcp/__init__.py +18 -18
- tapps_agents/mcp/gateway.py +112 -112
- tapps_agents/mcp/servers/__init__.py +13 -13
- tapps_agents/mcp/servers/analysis.py +204 -204
- tapps_agents/mcp/servers/context7.py +198 -198
- tapps_agents/mcp/servers/filesystem.py +218 -218
- tapps_agents/mcp/servers/git.py +201 -201
- tapps_agents/mcp/tool_registry.py +115 -115
- tapps_agents/quality/__init__.py +54 -54
- tapps_agents/quality/coverage_analyzer.py +379 -379
- tapps_agents/quality/enforcement.py +82 -82
- tapps_agents/quality/gates/__init__.py +37 -37
- tapps_agents/quality/gates/approval_gate.py +255 -255
- tapps_agents/quality/gates/base.py +84 -84
- tapps_agents/quality/gates/exceptions.py +43 -43
- tapps_agents/quality/gates/policy_gate.py +195 -195
- tapps_agents/quality/gates/registry.py +239 -239
- tapps_agents/quality/gates/security_gate.py +156 -156
- tapps_agents/quality/quality_gates.py +369 -369
- tapps_agents/quality/secret_scanner.py +335 -335
- tapps_agents/resources/__init__.py +5 -0
- tapps_agents/resources/claude/__init__.py +1 -0
- tapps_agents/resources/claude/commands/README.md +156 -0
- tapps_agents/resources/claude/commands/__init__.py +1 -0
- tapps_agents/resources/claude/commands/build-fix.md +22 -0
- tapps_agents/resources/claude/commands/build.md +77 -0
- tapps_agents/resources/claude/commands/debug.md +53 -0
- tapps_agents/resources/claude/commands/design.md +68 -0
- tapps_agents/resources/claude/commands/docs.md +53 -0
- tapps_agents/resources/claude/commands/e2e.md +22 -0
- tapps_agents/resources/claude/commands/fix.md +54 -0
- tapps_agents/resources/claude/commands/implement.md +53 -0
- tapps_agents/resources/claude/commands/improve.md +53 -0
- tapps_agents/resources/claude/commands/library-docs.md +64 -0
- tapps_agents/resources/claude/commands/lint.md +52 -0
- tapps_agents/resources/claude/commands/plan.md +65 -0
- tapps_agents/resources/claude/commands/refactor-clean.md +21 -0
- tapps_agents/resources/claude/commands/refactor.md +55 -0
- tapps_agents/resources/claude/commands/review.md +67 -0
- tapps_agents/resources/claude/commands/score.md +60 -0
- tapps_agents/resources/claude/commands/security-review.md +22 -0
- tapps_agents/resources/claude/commands/security-scan.md +54 -0
- tapps_agents/resources/claude/commands/tdd.md +24 -0
- tapps_agents/resources/claude/commands/test-coverage.md +21 -0
- tapps_agents/resources/claude/commands/test.md +54 -0
- tapps_agents/resources/claude/commands/update-codemaps.md +20 -0
- tapps_agents/resources/claude/commands/update-docs.md +21 -0
- tapps_agents/resources/claude/skills/__init__.py +1 -0
- tapps_agents/resources/claude/skills/analyst/SKILL.md +272 -0
- tapps_agents/resources/claude/skills/analyst/__init__.py +1 -0
- tapps_agents/resources/claude/skills/architect/SKILL.md +282 -0
- tapps_agents/resources/claude/skills/architect/__init__.py +1 -0
- tapps_agents/resources/claude/skills/backend-patterns/SKILL.md +30 -0
- tapps_agents/resources/claude/skills/backend-patterns/__init__.py +1 -0
- tapps_agents/resources/claude/skills/coding-standards/SKILL.md +29 -0
- tapps_agents/resources/claude/skills/coding-standards/__init__.py +1 -0
- tapps_agents/resources/claude/skills/debugger/SKILL.md +203 -0
- tapps_agents/resources/claude/skills/debugger/__init__.py +1 -0
- tapps_agents/resources/claude/skills/designer/SKILL.md +243 -0
- tapps_agents/resources/claude/skills/designer/__init__.py +1 -0
- tapps_agents/resources/claude/skills/documenter/SKILL.md +252 -0
- tapps_agents/resources/claude/skills/documenter/__init__.py +1 -0
- tapps_agents/resources/claude/skills/enhancer/SKILL.md +307 -0
- tapps_agents/resources/claude/skills/enhancer/__init__.py +1 -0
- tapps_agents/resources/claude/skills/evaluator/SKILL.md +204 -0
- tapps_agents/resources/claude/skills/evaluator/__init__.py +1 -0
- tapps_agents/resources/claude/skills/frontend-patterns/SKILL.md +29 -0
- tapps_agents/resources/claude/skills/frontend-patterns/__init__.py +1 -0
- tapps_agents/resources/claude/skills/implementer/SKILL.md +188 -0
- tapps_agents/resources/claude/skills/implementer/__init__.py +1 -0
- tapps_agents/resources/claude/skills/improver/SKILL.md +218 -0
- tapps_agents/resources/claude/skills/improver/__init__.py +1 -0
- tapps_agents/resources/claude/skills/ops/SKILL.md +281 -0
- tapps_agents/resources/claude/skills/ops/__init__.py +1 -0
- tapps_agents/resources/claude/skills/orchestrator/SKILL.md +390 -0
- tapps_agents/resources/claude/skills/orchestrator/__init__.py +1 -0
- tapps_agents/resources/claude/skills/planner/SKILL.md +254 -0
- tapps_agents/resources/claude/skills/planner/__init__.py +1 -0
- tapps_agents/resources/claude/skills/reviewer/SKILL.md +434 -0
- tapps_agents/resources/claude/skills/reviewer/__init__.py +1 -0
- tapps_agents/resources/claude/skills/security-review/SKILL.md +31 -0
- tapps_agents/resources/claude/skills/security-review/__init__.py +1 -0
- tapps_agents/resources/claude/skills/simple-mode/SKILL.md +695 -0
- tapps_agents/resources/claude/skills/simple-mode/__init__.py +1 -0
- tapps_agents/resources/claude/skills/tester/SKILL.md +219 -0
- tapps_agents/resources/claude/skills/tester/__init__.py +1 -0
- tapps_agents/resources/cursor/.cursorignore +35 -0
- tapps_agents/resources/cursor/__init__.py +1 -0
- tapps_agents/resources/cursor/commands/__init__.py +1 -0
- tapps_agents/resources/cursor/commands/build-fix.md +11 -0
- tapps_agents/resources/cursor/commands/build.md +11 -0
- tapps_agents/resources/cursor/commands/e2e.md +11 -0
- tapps_agents/resources/cursor/commands/fix.md +11 -0
- tapps_agents/resources/cursor/commands/refactor-clean.md +11 -0
- tapps_agents/resources/cursor/commands/review.md +11 -0
- tapps_agents/resources/cursor/commands/security-review.md +11 -0
- tapps_agents/resources/cursor/commands/tdd.md +11 -0
- tapps_agents/resources/cursor/commands/test-coverage.md +11 -0
- tapps_agents/resources/cursor/commands/test.md +11 -0
- tapps_agents/resources/cursor/commands/update-codemaps.md +10 -0
- tapps_agents/resources/cursor/commands/update-docs.md +11 -0
- tapps_agents/resources/cursor/rules/__init__.py +1 -0
- tapps_agents/resources/cursor/rules/agent-capabilities.mdc +687 -0
- tapps_agents/resources/cursor/rules/coding-style.mdc +31 -0
- tapps_agents/resources/cursor/rules/command-reference.mdc +2081 -0
- tapps_agents/resources/cursor/rules/cursor-mode-usage.mdc +125 -0
- tapps_agents/resources/cursor/rules/git-workflow.mdc +29 -0
- tapps_agents/resources/cursor/rules/performance.mdc +29 -0
- tapps_agents/resources/cursor/rules/project-context.mdc +163 -0
- tapps_agents/resources/cursor/rules/project-profiling.mdc +197 -0
- tapps_agents/resources/cursor/rules/quick-reference.mdc +630 -0
- tapps_agents/resources/cursor/rules/security.mdc +32 -0
- tapps_agents/resources/cursor/rules/simple-mode.mdc +500 -0
- tapps_agents/resources/cursor/rules/testing.mdc +31 -0
- tapps_agents/resources/cursor/rules/when-to-use.mdc +156 -0
- tapps_agents/resources/cursor/rules/workflow-presets.mdc +179 -0
- tapps_agents/resources/customizations/__init__.py +1 -0
- tapps_agents/resources/customizations/example-custom.yaml +83 -0
- tapps_agents/resources/hooks/__init__.py +1 -0
- tapps_agents/resources/hooks/templates/README.md +5 -0
- tapps_agents/resources/hooks/templates/__init__.py +1 -0
- tapps_agents/resources/hooks/templates/add-project-context.yaml +8 -0
- tapps_agents/resources/hooks/templates/auto-format-js.yaml +10 -0
- tapps_agents/resources/hooks/templates/auto-format-python.yaml +10 -0
- tapps_agents/resources/hooks/templates/git-commit-check.yaml +7 -0
- tapps_agents/resources/hooks/templates/notify-on-complete.yaml +8 -0
- tapps_agents/resources/hooks/templates/quality-gate.yaml +8 -0
- tapps_agents/resources/hooks/templates/security-scan-on-edit.yaml +10 -0
- tapps_agents/resources/hooks/templates/session-end-log.yaml +7 -0
- tapps_agents/resources/hooks/templates/show-beads-ready.yaml +8 -0
- tapps_agents/resources/hooks/templates/test-on-edit.yaml +10 -0
- tapps_agents/resources/hooks/templates/update-docs-on-complete.yaml +8 -0
- tapps_agents/resources/hooks/templates/user-prompt-log.yaml +7 -0
- tapps_agents/resources/scripts/__init__.py +1 -0
- tapps_agents/resources/scripts/set_bd_path.ps1 +51 -0
- tapps_agents/resources/workflows/__init__.py +1 -0
- tapps_agents/resources/workflows/presets/__init__.py +1 -0
- tapps_agents/resources/workflows/presets/brownfield-analysis.yaml +235 -0
- tapps_agents/resources/workflows/presets/fix.yaml +78 -0
- tapps_agents/resources/workflows/presets/full-sdlc.yaml +122 -0
- tapps_agents/resources/workflows/presets/quality.yaml +82 -0
- tapps_agents/resources/workflows/presets/rapid-dev.yaml +84 -0
- tapps_agents/session/__init__.py +19 -19
- tapps_agents/session/manager.py +256 -256
- tapps_agents/simple_mode/__init__.py +66 -66
- tapps_agents/simple_mode/agent_contracts.py +357 -357
- tapps_agents/simple_mode/beads_hooks.py +151 -151
- tapps_agents/simple_mode/code_snippet_handler.py +382 -382
- tapps_agents/simple_mode/documentation_manager.py +395 -395
- tapps_agents/simple_mode/documentation_reader.py +187 -187
- tapps_agents/simple_mode/file_inference.py +292 -292
- tapps_agents/simple_mode/framework_change_detector.py +268 -268
- tapps_agents/simple_mode/intent_parser.py +510 -510
- tapps_agents/simple_mode/learning_progression.py +358 -358
- tapps_agents/simple_mode/nl_handler.py +700 -700
- tapps_agents/simple_mode/onboarding.py +253 -253
- tapps_agents/simple_mode/orchestrators/__init__.py +38 -38
- tapps_agents/simple_mode/orchestrators/breakdown_orchestrator.py +49 -49
- tapps_agents/simple_mode/orchestrators/brownfield_orchestrator.py +135 -135
- tapps_agents/simple_mode/orchestrators/deliverable_checklist.py +349 -349
- tapps_agents/simple_mode/orchestrators/enhance_orchestrator.py +53 -53
- tapps_agents/simple_mode/orchestrators/epic_orchestrator.py +122 -122
- tapps_agents/simple_mode/orchestrators/explore_orchestrator.py +184 -184
- tapps_agents/simple_mode/orchestrators/plan_analysis_orchestrator.py +206 -206
- tapps_agents/simple_mode/orchestrators/pr_orchestrator.py +237 -237
- tapps_agents/simple_mode/orchestrators/refactor_orchestrator.py +222 -222
- tapps_agents/simple_mode/orchestrators/requirements_tracer.py +262 -262
- tapps_agents/simple_mode/orchestrators/resume_orchestrator.py +210 -210
- tapps_agents/simple_mode/orchestrators/review_orchestrator.py +161 -161
- tapps_agents/simple_mode/orchestrators/test_orchestrator.py +82 -82
- tapps_agents/simple_mode/output_aggregator.py +340 -340
- tapps_agents/simple_mode/result_formatters.py +598 -598
- tapps_agents/simple_mode/step_dependencies.py +382 -382
- tapps_agents/simple_mode/step_results.py +276 -276
- tapps_agents/simple_mode/streaming.py +388 -388
- tapps_agents/simple_mode/variations.py +129 -129
- tapps_agents/simple_mode/visual_feedback.py +238 -238
- tapps_agents/simple_mode/zero_config.py +274 -274
- tapps_agents/suggestions/__init__.py +8 -8
- tapps_agents/suggestions/inline_suggester.py +52 -52
- tapps_agents/templates/__init__.py +8 -8
- tapps_agents/templates/microservice_generator.py +274 -274
- tapps_agents/utils/env_validator.py +291 -291
- tapps_agents/workflow/__init__.py +171 -171
- tapps_agents/workflow/acceptance_verifier.py +132 -132
- tapps_agents/workflow/agent_handlers/__init__.py +41 -41
- tapps_agents/workflow/agent_handlers/analyst_handler.py +75 -75
- tapps_agents/workflow/agent_handlers/architect_handler.py +107 -107
- tapps_agents/workflow/agent_handlers/base.py +84 -84
- tapps_agents/workflow/agent_handlers/debugger_handler.py +100 -100
- tapps_agents/workflow/agent_handlers/designer_handler.py +110 -110
- tapps_agents/workflow/agent_handlers/documenter_handler.py +94 -94
- tapps_agents/workflow/agent_handlers/implementer_handler.py +235 -235
- tapps_agents/workflow/agent_handlers/ops_handler.py +62 -62
- tapps_agents/workflow/agent_handlers/orchestrator_handler.py +43 -43
- tapps_agents/workflow/agent_handlers/planner_handler.py +98 -98
- tapps_agents/workflow/agent_handlers/registry.py +119 -119
- tapps_agents/workflow/agent_handlers/reviewer_handler.py +119 -119
- tapps_agents/workflow/agent_handlers/tester_handler.py +69 -69
- tapps_agents/workflow/analytics_accessor.py +337 -337
- tapps_agents/workflow/analytics_alerts.py +416 -416
- tapps_agents/workflow/analytics_dashboard_cursor.py +281 -281
- tapps_agents/workflow/analytics_dual_write.py +103 -103
- tapps_agents/workflow/analytics_integration.py +119 -119
- tapps_agents/workflow/analytics_query_parser.py +278 -278
- tapps_agents/workflow/analytics_visualizer.py +259 -259
- tapps_agents/workflow/artifact_helper.py +204 -204
- tapps_agents/workflow/audit_logger.py +263 -263
- tapps_agents/workflow/auto_execution_config.py +340 -340
- tapps_agents/workflow/auto_progression.py +586 -586
- tapps_agents/workflow/branch_cleanup.py +349 -349
- tapps_agents/workflow/checkpoint.py +256 -256
- tapps_agents/workflow/checkpoint_manager.py +178 -178
- tapps_agents/workflow/code_artifact.py +179 -179
- tapps_agents/workflow/common_enums.py +96 -96
- tapps_agents/workflow/confirmation_handler.py +130 -130
- tapps_agents/workflow/context_analyzer.py +222 -222
- tapps_agents/workflow/context_artifact.py +230 -230
- tapps_agents/workflow/cursor_chat.py +94 -94
- tapps_agents/workflow/cursor_skill_helper.py +516 -516
- tapps_agents/workflow/dependency_resolver.py +244 -244
- tapps_agents/workflow/design_artifact.py +156 -156
- tapps_agents/workflow/detector.py +751 -751
- tapps_agents/workflow/direct_execution_fallback.py +301 -301
- tapps_agents/workflow/docs_artifact.py +168 -168
- tapps_agents/workflow/enforcer.py +389 -389
- tapps_agents/workflow/enhancement_artifact.py +142 -142
- tapps_agents/workflow/error_recovery.py +806 -806
- tapps_agents/workflow/event_bus.py +183 -183
- tapps_agents/workflow/event_log.py +612 -612
- tapps_agents/workflow/events.py +63 -63
- tapps_agents/workflow/exceptions.py +43 -43
- tapps_agents/workflow/execution_graph.py +498 -498
- tapps_agents/workflow/execution_plan.py +126 -126
- tapps_agents/workflow/file_utils.py +186 -186
- tapps_agents/workflow/gate_evaluator.py +182 -182
- tapps_agents/workflow/gate_integration.py +200 -200
- tapps_agents/workflow/graph_visualizer.py +130 -130
- tapps_agents/workflow/health_checker.py +206 -206
- tapps_agents/workflow/logging_helper.py +243 -243
- tapps_agents/workflow/manifest.py +582 -582
- tapps_agents/workflow/marker_writer.py +250 -250
- tapps_agents/workflow/messaging.py +325 -325
- tapps_agents/workflow/metadata_models.py +91 -91
- tapps_agents/workflow/metrics_integration.py +226 -226
- tapps_agents/workflow/migration_utils.py +116 -116
- tapps_agents/workflow/models.py +148 -148
- tapps_agents/workflow/nlp_config.py +198 -198
- tapps_agents/workflow/nlp_error_handler.py +207 -207
- tapps_agents/workflow/nlp_executor.py +163 -163
- tapps_agents/workflow/nlp_parser.py +528 -528
- tapps_agents/workflow/observability_dashboard.py +451 -451
- tapps_agents/workflow/observer.py +170 -170
- tapps_agents/workflow/ops_artifact.py +257 -257
- tapps_agents/workflow/output_passing.py +214 -214
- tapps_agents/workflow/parallel_executor.py +463 -463
- tapps_agents/workflow/planning_artifact.py +179 -179
- tapps_agents/workflow/preset_loader.py +285 -285
- tapps_agents/workflow/preset_recommender.py +270 -270
- tapps_agents/workflow/progress_logger.py +145 -145
- tapps_agents/workflow/progress_manager.py +303 -303
- tapps_agents/workflow/progress_monitor.py +186 -186
- tapps_agents/workflow/progress_updates.py +423 -423
- tapps_agents/workflow/quality_artifact.py +158 -158
- tapps_agents/workflow/quality_loopback.py +101 -101
- tapps_agents/workflow/recommender.py +387 -387
- tapps_agents/workflow/remediation_loop.py +166 -166
- tapps_agents/workflow/result_aggregator.py +300 -300
- tapps_agents/workflow/review_artifact.py +185 -185
- tapps_agents/workflow/schema_validator.py +522 -522
- tapps_agents/workflow/session_handoff.py +178 -178
- tapps_agents/workflow/skill_invoker.py +648 -648
- tapps_agents/workflow/state_manager.py +756 -756
- tapps_agents/workflow/state_persistence_config.py +331 -331
- tapps_agents/workflow/status_monitor.py +449 -449
- tapps_agents/workflow/step_checkpoint.py +314 -314
- tapps_agents/workflow/step_details.py +201 -201
- tapps_agents/workflow/story_models.py +147 -147
- tapps_agents/workflow/streaming.py +416 -416
- tapps_agents/workflow/suggestion_engine.py +552 -552
- tapps_agents/workflow/testing_artifact.py +186 -186
- tapps_agents/workflow/timeline.py +158 -158
- tapps_agents/workflow/token_integration.py +209 -209
- tapps_agents/workflow/validation.py +217 -217
- tapps_agents/workflow/visual_feedback.py +391 -391
- tapps_agents/workflow/workflow_chain.py +95 -95
- tapps_agents/workflow/workflow_summary.py +219 -219
- tapps_agents/workflow/worktree_manager.py +724 -724
- {tapps_agents-3.6.0.dist-info → tapps_agents-3.6.1.dist-info}/METADATA +672 -672
- tapps_agents-3.6.1.dist-info/RECORD +883 -0
- {tapps_agents-3.6.0.dist-info → tapps_agents-3.6.1.dist-info}/licenses/LICENSE +22 -22
- tapps_agents-3.6.0.dist-info/RECORD +0 -758
- {tapps_agents-3.6.0.dist-info → tapps_agents-3.6.1.dist-info}/WHEEL +0 -0
- {tapps_agents-3.6.0.dist-info → tapps_agents-3.6.1.dist-info}/entry_points.txt +0 -0
- {tapps_agents-3.6.0.dist-info → tapps_agents-3.6.1.dist-info}/top_level.txt +0 -0
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
"""
|
|
2
|
-
Agent Execution Handlers
|
|
3
|
-
|
|
4
|
-
This module provides agent-specific execution handlers using the Strategy Pattern
|
|
5
|
-
to reduce complexity in WorkflowExecutor._execute_step.
|
|
6
|
-
|
|
7
|
-
Epic 20: Complexity Reduction - Story 20.1
|
|
8
|
-
"""
|
|
9
|
-
|
|
10
|
-
from .analyst_handler import AnalystHandler
|
|
11
|
-
from .architect_handler import ArchitectHandler
|
|
12
|
-
from .base import AgentExecutionHandler
|
|
13
|
-
from .debugger_handler import DebuggerHandler
|
|
14
|
-
from .designer_handler import DesignerHandler
|
|
15
|
-
from .documenter_handler import DocumenterHandler
|
|
16
|
-
from .enhancer_handler import EnhancerHandler
|
|
17
|
-
from .implementer_handler import ImplementerHandler
|
|
18
|
-
from .ops_handler import OpsHandler
|
|
19
|
-
from .orchestrator_handler import OrchestratorHandler
|
|
20
|
-
from .planner_handler import PlannerHandler
|
|
21
|
-
from .registry import AgentHandlerRegistry
|
|
22
|
-
from .reviewer_handler import ReviewerHandler
|
|
23
|
-
from .tester_handler import TesterHandler
|
|
24
|
-
|
|
25
|
-
__all__ = [
|
|
26
|
-
"AgentExecutionHandler",
|
|
27
|
-
"AgentHandlerRegistry",
|
|
28
|
-
"AnalystHandler",
|
|
29
|
-
"ArchitectHandler",
|
|
30
|
-
"DebuggerHandler",
|
|
31
|
-
"DesignerHandler",
|
|
32
|
-
"DocumenterHandler",
|
|
33
|
-
"EnhancerHandler",
|
|
34
|
-
"ImplementerHandler",
|
|
35
|
-
"OpsHandler",
|
|
36
|
-
"OrchestratorHandler",
|
|
37
|
-
"PlannerHandler",
|
|
38
|
-
"ReviewerHandler",
|
|
39
|
-
"TesterHandler",
|
|
40
|
-
]
|
|
41
|
-
|
|
1
|
+
"""
|
|
2
|
+
Agent Execution Handlers
|
|
3
|
+
|
|
4
|
+
This module provides agent-specific execution handlers using the Strategy Pattern
|
|
5
|
+
to reduce complexity in WorkflowExecutor._execute_step.
|
|
6
|
+
|
|
7
|
+
Epic 20: Complexity Reduction - Story 20.1
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
from .analyst_handler import AnalystHandler
|
|
11
|
+
from .architect_handler import ArchitectHandler
|
|
12
|
+
from .base import AgentExecutionHandler
|
|
13
|
+
from .debugger_handler import DebuggerHandler
|
|
14
|
+
from .designer_handler import DesignerHandler
|
|
15
|
+
from .documenter_handler import DocumenterHandler
|
|
16
|
+
from .enhancer_handler import EnhancerHandler
|
|
17
|
+
from .implementer_handler import ImplementerHandler
|
|
18
|
+
from .ops_handler import OpsHandler
|
|
19
|
+
from .orchestrator_handler import OrchestratorHandler
|
|
20
|
+
from .planner_handler import PlannerHandler
|
|
21
|
+
from .registry import AgentHandlerRegistry
|
|
22
|
+
from .reviewer_handler import ReviewerHandler
|
|
23
|
+
from .tester_handler import TesterHandler
|
|
24
|
+
|
|
25
|
+
__all__ = [
|
|
26
|
+
"AgentExecutionHandler",
|
|
27
|
+
"AgentHandlerRegistry",
|
|
28
|
+
"AnalystHandler",
|
|
29
|
+
"ArchitectHandler",
|
|
30
|
+
"DebuggerHandler",
|
|
31
|
+
"DesignerHandler",
|
|
32
|
+
"DocumenterHandler",
|
|
33
|
+
"EnhancerHandler",
|
|
34
|
+
"ImplementerHandler",
|
|
35
|
+
"OpsHandler",
|
|
36
|
+
"OrchestratorHandler",
|
|
37
|
+
"PlannerHandler",
|
|
38
|
+
"ReviewerHandler",
|
|
39
|
+
"TesterHandler",
|
|
40
|
+
]
|
|
41
|
+
|
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
"""
|
|
2
|
-
Analyst Agent Handler
|
|
3
|
-
|
|
4
|
-
Handles execution of analyst agent steps for requirements gathering.
|
|
5
|
-
|
|
6
|
-
Epic 20: Complexity Reduction - Story 20.1
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
from pathlib import Path
|
|
10
|
-
from typing import Any
|
|
11
|
-
|
|
12
|
-
from ..models import WorkflowStep
|
|
13
|
-
from .base import AgentExecutionHandler
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class AnalystHandler(AgentExecutionHandler):
|
|
17
|
-
"""Handler for analyst agent execution."""
|
|
18
|
-
|
|
19
|
-
def supports(self, agent_name: str, action: str) -> bool:
|
|
20
|
-
"""Check if this handler supports analyst agent."""
|
|
21
|
-
return agent_name == "analyst" and action in {
|
|
22
|
-
"gather_requirements",
|
|
23
|
-
"gather-requirements",
|
|
24
|
-
"analyze",
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
async def execute(
|
|
28
|
-
self,
|
|
29
|
-
step: WorkflowStep,
|
|
30
|
-
action: str,
|
|
31
|
-
target_path: Path | None,
|
|
32
|
-
) -> list[dict[str, Any]]:
|
|
33
|
-
"""
|
|
34
|
-
Execute analyst step.
|
|
35
|
-
|
|
36
|
-
Args:
|
|
37
|
-
step: Workflow step definition
|
|
38
|
-
action: Normalized action name
|
|
39
|
-
target_path: Target file path (not used for analyst)
|
|
40
|
-
|
|
41
|
-
Returns:
|
|
42
|
-
List of created artifacts
|
|
43
|
-
"""
|
|
44
|
-
# Prefer enhanced text from enhancer when present (e.g. full-sdlc enhance step), else user_prompt
|
|
45
|
-
user_prompt = (
|
|
46
|
-
self.state.variables.get("enhanced_prompt")
|
|
47
|
-
or self.state.variables.get("description")
|
|
48
|
-
or self.state.variables.get("user_prompt")
|
|
49
|
-
or ""
|
|
50
|
-
)
|
|
51
|
-
if not user_prompt:
|
|
52
|
-
# Check if executor has auto_mode attribute
|
|
53
|
-
auto_mode = getattr(self.executor, "auto_mode", False) if self.executor else False
|
|
54
|
-
if not auto_mode:
|
|
55
|
-
user_prompt = "Generate requirements for this project"
|
|
56
|
-
|
|
57
|
-
# Run analyst agent
|
|
58
|
-
requirements_result = await self.run_agent(
|
|
59
|
-
"analyst",
|
|
60
|
-
"gather-requirements",
|
|
61
|
-
description=user_prompt,
|
|
62
|
-
output_file="requirements.md",
|
|
63
|
-
)
|
|
64
|
-
self.state.variables["analyst_result"] = requirements_result
|
|
65
|
-
|
|
66
|
-
# Create requirements.md artifact if requested
|
|
67
|
-
created_artifacts: list[dict[str, Any]] = []
|
|
68
|
-
if "requirements.md" in (step.creates or []):
|
|
69
|
-
req_path = self.project_root / "requirements.md"
|
|
70
|
-
# Analyst agent should have created this, but verify
|
|
71
|
-
if req_path.exists():
|
|
72
|
-
created_artifacts.append({"name": "requirements.md", "path": str(req_path)})
|
|
73
|
-
|
|
74
|
-
return created_artifacts
|
|
75
|
-
|
|
1
|
+
"""
|
|
2
|
+
Analyst Agent Handler
|
|
3
|
+
|
|
4
|
+
Handles execution of analyst agent steps for requirements gathering.
|
|
5
|
+
|
|
6
|
+
Epic 20: Complexity Reduction - Story 20.1
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from pathlib import Path
|
|
10
|
+
from typing import Any
|
|
11
|
+
|
|
12
|
+
from ..models import WorkflowStep
|
|
13
|
+
from .base import AgentExecutionHandler
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class AnalystHandler(AgentExecutionHandler):
|
|
17
|
+
"""Handler for analyst agent execution."""
|
|
18
|
+
|
|
19
|
+
def supports(self, agent_name: str, action: str) -> bool:
|
|
20
|
+
"""Check if this handler supports analyst agent."""
|
|
21
|
+
return agent_name == "analyst" and action in {
|
|
22
|
+
"gather_requirements",
|
|
23
|
+
"gather-requirements",
|
|
24
|
+
"analyze",
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
async def execute(
|
|
28
|
+
self,
|
|
29
|
+
step: WorkflowStep,
|
|
30
|
+
action: str,
|
|
31
|
+
target_path: Path | None,
|
|
32
|
+
) -> list[dict[str, Any]]:
|
|
33
|
+
"""
|
|
34
|
+
Execute analyst step.
|
|
35
|
+
|
|
36
|
+
Args:
|
|
37
|
+
step: Workflow step definition
|
|
38
|
+
action: Normalized action name
|
|
39
|
+
target_path: Target file path (not used for analyst)
|
|
40
|
+
|
|
41
|
+
Returns:
|
|
42
|
+
List of created artifacts
|
|
43
|
+
"""
|
|
44
|
+
# Prefer enhanced text from enhancer when present (e.g. full-sdlc enhance step), else user_prompt
|
|
45
|
+
user_prompt = (
|
|
46
|
+
self.state.variables.get("enhanced_prompt")
|
|
47
|
+
or self.state.variables.get("description")
|
|
48
|
+
or self.state.variables.get("user_prompt")
|
|
49
|
+
or ""
|
|
50
|
+
)
|
|
51
|
+
if not user_prompt:
|
|
52
|
+
# Check if executor has auto_mode attribute
|
|
53
|
+
auto_mode = getattr(self.executor, "auto_mode", False) if self.executor else False
|
|
54
|
+
if not auto_mode:
|
|
55
|
+
user_prompt = "Generate requirements for this project"
|
|
56
|
+
|
|
57
|
+
# Run analyst agent
|
|
58
|
+
requirements_result = await self.run_agent(
|
|
59
|
+
"analyst",
|
|
60
|
+
"gather-requirements",
|
|
61
|
+
description=user_prompt,
|
|
62
|
+
output_file="requirements.md",
|
|
63
|
+
)
|
|
64
|
+
self.state.variables["analyst_result"] = requirements_result
|
|
65
|
+
|
|
66
|
+
# Create requirements.md artifact if requested
|
|
67
|
+
created_artifacts: list[dict[str, Any]] = []
|
|
68
|
+
if "requirements.md" in (step.creates or []):
|
|
69
|
+
req_path = self.project_root / "requirements.md"
|
|
70
|
+
# Analyst agent should have created this, but verify
|
|
71
|
+
if req_path.exists():
|
|
72
|
+
created_artifacts.append({"name": "requirements.md", "path": str(req_path)})
|
|
73
|
+
|
|
74
|
+
return created_artifacts
|
|
75
|
+
|
|
@@ -1,107 +1,107 @@
|
|
|
1
|
-
"""
|
|
2
|
-
Architect Agent Handler
|
|
3
|
-
|
|
4
|
-
Handles execution of architect agent steps for system design.
|
|
5
|
-
|
|
6
|
-
Epic 20: Complexity Reduction - Story 20.1
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
from pathlib import Path
|
|
10
|
-
from typing import Any
|
|
11
|
-
|
|
12
|
-
from ..models import WorkflowStep
|
|
13
|
-
from .base import AgentExecutionHandler
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class ArchitectHandler(AgentExecutionHandler):
|
|
17
|
-
"""Handler for architect agent execution."""
|
|
18
|
-
|
|
19
|
-
def supports(self, agent_name: str, action: str) -> bool:
|
|
20
|
-
"""Check if this handler supports architect agent."""
|
|
21
|
-
return agent_name == "architect" and action in {
|
|
22
|
-
"design_system",
|
|
23
|
-
"design-system",
|
|
24
|
-
"design_architecture",
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
async def execute(
|
|
28
|
-
self,
|
|
29
|
-
step: WorkflowStep,
|
|
30
|
-
action: str,
|
|
31
|
-
target_path: Path | None,
|
|
32
|
-
) -> list[dict[str, Any]]:
|
|
33
|
-
"""
|
|
34
|
-
Execute architect step.
|
|
35
|
-
|
|
36
|
-
Args:
|
|
37
|
-
step: Workflow step definition
|
|
38
|
-
action: Normalized action name
|
|
39
|
-
target_path: Target file path (not used for architect)
|
|
40
|
-
|
|
41
|
-
Returns:
|
|
42
|
-
List of created artifacts
|
|
43
|
-
"""
|
|
44
|
-
# Get outputs from previous steps (e.g., planner, enhancer)
|
|
45
|
-
from ...workflow.output_passing import WorkflowOutputPasser
|
|
46
|
-
output_passer = WorkflowOutputPasser(self.state)
|
|
47
|
-
|
|
48
|
-
base_inputs: dict[str, Any] = {}
|
|
49
|
-
enhanced_inputs = output_passer.prepare_agent_inputs(
|
|
50
|
-
step_id=step.id,
|
|
51
|
-
agent_name="architect",
|
|
52
|
-
command=action,
|
|
53
|
-
base_inputs=base_inputs,
|
|
54
|
-
)
|
|
55
|
-
|
|
56
|
-
# Get requirements from enhanced inputs or fallback to file
|
|
57
|
-
requirements = enhanced_inputs.get("requirements") or enhanced_inputs.get("planner_requirements")
|
|
58
|
-
if not requirements:
|
|
59
|
-
requirements_path = self.project_root / "requirements.md"
|
|
60
|
-
requirements = (
|
|
61
|
-
requirements_path.read_text(encoding="utf-8")
|
|
62
|
-
if requirements_path.exists()
|
|
63
|
-
else ""
|
|
64
|
-
)
|
|
65
|
-
|
|
66
|
-
# Get context from enhanced inputs (user stories from planner) or build from files
|
|
67
|
-
context = enhanced_inputs.get("context") or enhanced_inputs.get("planner_context")
|
|
68
|
-
if not context:
|
|
69
|
-
# Build context from stories if available
|
|
70
|
-
stories_dir = self.project_root / "stories"
|
|
71
|
-
context_parts = []
|
|
72
|
-
if stories_dir.exists():
|
|
73
|
-
story_files = list(stories_dir.glob("*.md"))
|
|
74
|
-
if story_files:
|
|
75
|
-
context_parts.append("User Stories:")
|
|
76
|
-
for story_file in story_files[:10]: # Limit to first 10 stories
|
|
77
|
-
context_parts.append(story_file.read_text(encoding="utf-8")[:1000])
|
|
78
|
-
context = "\n\n".join(context_parts) if context_parts else ""
|
|
79
|
-
|
|
80
|
-
# Run architect agent with enhanced inputs
|
|
81
|
-
architect_result = await self.run_agent(
|
|
82
|
-
"architect",
|
|
83
|
-
"design-system",
|
|
84
|
-
requirements=requirements,
|
|
85
|
-
context=context,
|
|
86
|
-
output_file="architecture.md",
|
|
87
|
-
**{k: v for k, v in enhanced_inputs.items() if k not in ("requirements", "context", "planner_requirements", "planner_context")},
|
|
88
|
-
)
|
|
89
|
-
self.state.variables["architect_result"] = architect_result
|
|
90
|
-
|
|
91
|
-
# Store output for next steps
|
|
92
|
-
output_passer.store_agent_output(
|
|
93
|
-
step_id=step.id,
|
|
94
|
-
agent_name="architect",
|
|
95
|
-
command=action,
|
|
96
|
-
output=architect_result if isinstance(architect_result, dict) else {"result": architect_result},
|
|
97
|
-
)
|
|
98
|
-
|
|
99
|
-
# Create architecture.md artifact if requested
|
|
100
|
-
created_artifacts: list[dict[str, Any]] = []
|
|
101
|
-
if "architecture.md" in (step.creates or []):
|
|
102
|
-
arch_path = self.project_root / "architecture.md"
|
|
103
|
-
if arch_path.exists():
|
|
104
|
-
created_artifacts.append({"name": "architecture.md", "path": str(arch_path)})
|
|
105
|
-
|
|
106
|
-
return created_artifacts
|
|
107
|
-
|
|
1
|
+
"""
|
|
2
|
+
Architect Agent Handler
|
|
3
|
+
|
|
4
|
+
Handles execution of architect agent steps for system design.
|
|
5
|
+
|
|
6
|
+
Epic 20: Complexity Reduction - Story 20.1
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from pathlib import Path
|
|
10
|
+
from typing import Any
|
|
11
|
+
|
|
12
|
+
from ..models import WorkflowStep
|
|
13
|
+
from .base import AgentExecutionHandler
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class ArchitectHandler(AgentExecutionHandler):
|
|
17
|
+
"""Handler for architect agent execution."""
|
|
18
|
+
|
|
19
|
+
def supports(self, agent_name: str, action: str) -> bool:
|
|
20
|
+
"""Check if this handler supports architect agent."""
|
|
21
|
+
return agent_name == "architect" and action in {
|
|
22
|
+
"design_system",
|
|
23
|
+
"design-system",
|
|
24
|
+
"design_architecture",
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
async def execute(
|
|
28
|
+
self,
|
|
29
|
+
step: WorkflowStep,
|
|
30
|
+
action: str,
|
|
31
|
+
target_path: Path | None,
|
|
32
|
+
) -> list[dict[str, Any]]:
|
|
33
|
+
"""
|
|
34
|
+
Execute architect step.
|
|
35
|
+
|
|
36
|
+
Args:
|
|
37
|
+
step: Workflow step definition
|
|
38
|
+
action: Normalized action name
|
|
39
|
+
target_path: Target file path (not used for architect)
|
|
40
|
+
|
|
41
|
+
Returns:
|
|
42
|
+
List of created artifacts
|
|
43
|
+
"""
|
|
44
|
+
# Get outputs from previous steps (e.g., planner, enhancer)
|
|
45
|
+
from ...workflow.output_passing import WorkflowOutputPasser
|
|
46
|
+
output_passer = WorkflowOutputPasser(self.state)
|
|
47
|
+
|
|
48
|
+
base_inputs: dict[str, Any] = {}
|
|
49
|
+
enhanced_inputs = output_passer.prepare_agent_inputs(
|
|
50
|
+
step_id=step.id,
|
|
51
|
+
agent_name="architect",
|
|
52
|
+
command=action,
|
|
53
|
+
base_inputs=base_inputs,
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
# Get requirements from enhanced inputs or fallback to file
|
|
57
|
+
requirements = enhanced_inputs.get("requirements") or enhanced_inputs.get("planner_requirements")
|
|
58
|
+
if not requirements:
|
|
59
|
+
requirements_path = self.project_root / "requirements.md"
|
|
60
|
+
requirements = (
|
|
61
|
+
requirements_path.read_text(encoding="utf-8")
|
|
62
|
+
if requirements_path.exists()
|
|
63
|
+
else ""
|
|
64
|
+
)
|
|
65
|
+
|
|
66
|
+
# Get context from enhanced inputs (user stories from planner) or build from files
|
|
67
|
+
context = enhanced_inputs.get("context") or enhanced_inputs.get("planner_context")
|
|
68
|
+
if not context:
|
|
69
|
+
# Build context from stories if available
|
|
70
|
+
stories_dir = self.project_root / "stories"
|
|
71
|
+
context_parts = []
|
|
72
|
+
if stories_dir.exists():
|
|
73
|
+
story_files = list(stories_dir.glob("*.md"))
|
|
74
|
+
if story_files:
|
|
75
|
+
context_parts.append("User Stories:")
|
|
76
|
+
for story_file in story_files[:10]: # Limit to first 10 stories
|
|
77
|
+
context_parts.append(story_file.read_text(encoding="utf-8")[:1000])
|
|
78
|
+
context = "\n\n".join(context_parts) if context_parts else ""
|
|
79
|
+
|
|
80
|
+
# Run architect agent with enhanced inputs
|
|
81
|
+
architect_result = await self.run_agent(
|
|
82
|
+
"architect",
|
|
83
|
+
"design-system",
|
|
84
|
+
requirements=requirements,
|
|
85
|
+
context=context,
|
|
86
|
+
output_file="architecture.md",
|
|
87
|
+
**{k: v for k, v in enhanced_inputs.items() if k not in ("requirements", "context", "planner_requirements", "planner_context")},
|
|
88
|
+
)
|
|
89
|
+
self.state.variables["architect_result"] = architect_result
|
|
90
|
+
|
|
91
|
+
# Store output for next steps
|
|
92
|
+
output_passer.store_agent_output(
|
|
93
|
+
step_id=step.id,
|
|
94
|
+
agent_name="architect",
|
|
95
|
+
command=action,
|
|
96
|
+
output=architect_result if isinstance(architect_result, dict) else {"result": architect_result},
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
# Create architecture.md artifact if requested
|
|
100
|
+
created_artifacts: list[dict[str, Any]] = []
|
|
101
|
+
if "architecture.md" in (step.creates or []):
|
|
102
|
+
arch_path = self.project_root / "architecture.md"
|
|
103
|
+
if arch_path.exists():
|
|
104
|
+
created_artifacts.append({"name": "architecture.md", "path": str(arch_path)})
|
|
105
|
+
|
|
106
|
+
return created_artifacts
|
|
107
|
+
|
|
@@ -1,84 +1,84 @@
|
|
|
1
|
-
"""
|
|
2
|
-
Base Agent Execution Handler
|
|
3
|
-
|
|
4
|
-
Abstract base class for agent-specific execution handlers.
|
|
5
|
-
|
|
6
|
-
Epic 20: Complexity Reduction - Story 20.1
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
from abc import ABC, abstractmethod
|
|
10
|
-
from pathlib import Path
|
|
11
|
-
from typing import Any
|
|
12
|
-
|
|
13
|
-
from ..models import WorkflowStep
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class AgentExecutionHandler(ABC):
|
|
17
|
-
"""
|
|
18
|
-
Abstract base class for agent-specific execution handlers.
|
|
19
|
-
|
|
20
|
-
Each handler encapsulates the logic for executing a specific agent type,
|
|
21
|
-
reducing complexity in the main WorkflowExecutor._execute_step method.
|
|
22
|
-
"""
|
|
23
|
-
|
|
24
|
-
def __init__(
|
|
25
|
-
self,
|
|
26
|
-
project_root: Path,
|
|
27
|
-
state: Any,
|
|
28
|
-
workflow: Any,
|
|
29
|
-
run_agent_fn: Any,
|
|
30
|
-
executor: Any = None,
|
|
31
|
-
):
|
|
32
|
-
"""
|
|
33
|
-
Initialize the handler.
|
|
34
|
-
|
|
35
|
-
Args:
|
|
36
|
-
project_root: Root directory for the project
|
|
37
|
-
state: WorkflowState instance
|
|
38
|
-
workflow: Workflow instance
|
|
39
|
-
run_agent_fn: Function to run agent commands
|
|
40
|
-
executor: Optional executor instance for utility methods
|
|
41
|
-
"""
|
|
42
|
-
self.project_root = project_root
|
|
43
|
-
self.state = state
|
|
44
|
-
self.workflow = workflow
|
|
45
|
-
self.run_agent = run_agent_fn
|
|
46
|
-
self.executor = executor
|
|
47
|
-
|
|
48
|
-
@abstractmethod
|
|
49
|
-
async def execute(
|
|
50
|
-
self,
|
|
51
|
-
step: WorkflowStep,
|
|
52
|
-
action: str,
|
|
53
|
-
target_path: Path | None,
|
|
54
|
-
) -> list[dict[str, Any]]:
|
|
55
|
-
"""
|
|
56
|
-
Execute the agent step.
|
|
57
|
-
|
|
58
|
-
Args:
|
|
59
|
-
step: Workflow step definition
|
|
60
|
-
action: Normalized action name
|
|
61
|
-
target_path: Optional target file path
|
|
62
|
-
|
|
63
|
-
Returns:
|
|
64
|
-
List of created artifacts (dict with 'name' and 'path' keys)
|
|
65
|
-
|
|
66
|
-
Raises:
|
|
67
|
-
ValueError: If step requirements are not met
|
|
68
|
-
"""
|
|
69
|
-
pass
|
|
70
|
-
|
|
71
|
-
@abstractmethod
|
|
72
|
-
def supports(self, agent_name: str, action: str) -> bool:
|
|
73
|
-
"""
|
|
74
|
-
Check if this handler supports the given agent and action.
|
|
75
|
-
|
|
76
|
-
Args:
|
|
77
|
-
agent_name: Agent name (lowercase)
|
|
78
|
-
action: Normalized action name
|
|
79
|
-
|
|
80
|
-
Returns:
|
|
81
|
-
True if this handler can execute the step
|
|
82
|
-
"""
|
|
83
|
-
pass
|
|
84
|
-
|
|
1
|
+
"""
|
|
2
|
+
Base Agent Execution Handler
|
|
3
|
+
|
|
4
|
+
Abstract base class for agent-specific execution handlers.
|
|
5
|
+
|
|
6
|
+
Epic 20: Complexity Reduction - Story 20.1
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from abc import ABC, abstractmethod
|
|
10
|
+
from pathlib import Path
|
|
11
|
+
from typing import Any
|
|
12
|
+
|
|
13
|
+
from ..models import WorkflowStep
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class AgentExecutionHandler(ABC):
|
|
17
|
+
"""
|
|
18
|
+
Abstract base class for agent-specific execution handlers.
|
|
19
|
+
|
|
20
|
+
Each handler encapsulates the logic for executing a specific agent type,
|
|
21
|
+
reducing complexity in the main WorkflowExecutor._execute_step method.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
def __init__(
|
|
25
|
+
self,
|
|
26
|
+
project_root: Path,
|
|
27
|
+
state: Any,
|
|
28
|
+
workflow: Any,
|
|
29
|
+
run_agent_fn: Any,
|
|
30
|
+
executor: Any = None,
|
|
31
|
+
):
|
|
32
|
+
"""
|
|
33
|
+
Initialize the handler.
|
|
34
|
+
|
|
35
|
+
Args:
|
|
36
|
+
project_root: Root directory for the project
|
|
37
|
+
state: WorkflowState instance
|
|
38
|
+
workflow: Workflow instance
|
|
39
|
+
run_agent_fn: Function to run agent commands
|
|
40
|
+
executor: Optional executor instance for utility methods
|
|
41
|
+
"""
|
|
42
|
+
self.project_root = project_root
|
|
43
|
+
self.state = state
|
|
44
|
+
self.workflow = workflow
|
|
45
|
+
self.run_agent = run_agent_fn
|
|
46
|
+
self.executor = executor
|
|
47
|
+
|
|
48
|
+
@abstractmethod
|
|
49
|
+
async def execute(
|
|
50
|
+
self,
|
|
51
|
+
step: WorkflowStep,
|
|
52
|
+
action: str,
|
|
53
|
+
target_path: Path | None,
|
|
54
|
+
) -> list[dict[str, Any]]:
|
|
55
|
+
"""
|
|
56
|
+
Execute the agent step.
|
|
57
|
+
|
|
58
|
+
Args:
|
|
59
|
+
step: Workflow step definition
|
|
60
|
+
action: Normalized action name
|
|
61
|
+
target_path: Optional target file path
|
|
62
|
+
|
|
63
|
+
Returns:
|
|
64
|
+
List of created artifacts (dict with 'name' and 'path' keys)
|
|
65
|
+
|
|
66
|
+
Raises:
|
|
67
|
+
ValueError: If step requirements are not met
|
|
68
|
+
"""
|
|
69
|
+
pass
|
|
70
|
+
|
|
71
|
+
@abstractmethod
|
|
72
|
+
def supports(self, agent_name: str, action: str) -> bool:
|
|
73
|
+
"""
|
|
74
|
+
Check if this handler supports the given agent and action.
|
|
75
|
+
|
|
76
|
+
Args:
|
|
77
|
+
agent_name: Agent name (lowercase)
|
|
78
|
+
action: Normalized action name
|
|
79
|
+
|
|
80
|
+
Returns:
|
|
81
|
+
True if this handler can execute the step
|
|
82
|
+
"""
|
|
83
|
+
pass
|
|
84
|
+
|