crackerjack 0.33.0__py3-none-any.whl → 0.33.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.
Potentially problematic release.
This version of crackerjack might be problematic. Click here for more details.
- crackerjack/__main__.py +1350 -34
- crackerjack/adapters/__init__.py +17 -0
- crackerjack/adapters/lsp_client.py +358 -0
- crackerjack/adapters/rust_tool_adapter.py +194 -0
- crackerjack/adapters/rust_tool_manager.py +193 -0
- crackerjack/adapters/skylos_adapter.py +231 -0
- crackerjack/adapters/zuban_adapter.py +560 -0
- crackerjack/agents/base.py +7 -3
- crackerjack/agents/coordinator.py +271 -33
- crackerjack/agents/documentation_agent.py +9 -15
- crackerjack/agents/dry_agent.py +3 -15
- crackerjack/agents/formatting_agent.py +1 -1
- crackerjack/agents/import_optimization_agent.py +36 -180
- crackerjack/agents/performance_agent.py +17 -98
- crackerjack/agents/performance_helpers.py +7 -31
- crackerjack/agents/proactive_agent.py +1 -3
- crackerjack/agents/refactoring_agent.py +16 -85
- crackerjack/agents/refactoring_helpers.py +7 -42
- crackerjack/agents/security_agent.py +9 -48
- crackerjack/agents/test_creation_agent.py +356 -513
- crackerjack/agents/test_specialist_agent.py +0 -4
- crackerjack/api.py +6 -25
- crackerjack/cli/cache_handlers.py +204 -0
- crackerjack/cli/cache_handlers_enhanced.py +683 -0
- crackerjack/cli/facade.py +100 -0
- crackerjack/cli/handlers.py +224 -9
- crackerjack/cli/interactive.py +6 -4
- crackerjack/cli/options.py +642 -55
- crackerjack/cli/utils.py +2 -1
- crackerjack/code_cleaner.py +58 -117
- crackerjack/config/global_lock_config.py +8 -48
- crackerjack/config/hooks.py +53 -62
- crackerjack/core/async_workflow_orchestrator.py +24 -34
- crackerjack/core/autofix_coordinator.py +3 -17
- crackerjack/core/enhanced_container.py +4 -13
- crackerjack/core/file_lifecycle.py +12 -89
- crackerjack/core/performance.py +2 -2
- crackerjack/core/performance_monitor.py +15 -55
- crackerjack/core/phase_coordinator.py +104 -204
- crackerjack/core/resource_manager.py +14 -90
- crackerjack/core/service_watchdog.py +62 -95
- crackerjack/core/session_coordinator.py +149 -0
- crackerjack/core/timeout_manager.py +14 -72
- crackerjack/core/websocket_lifecycle.py +13 -78
- crackerjack/core/workflow_orchestrator.py +171 -174
- crackerjack/docs/INDEX.md +11 -0
- crackerjack/docs/generated/api/API_REFERENCE.md +10895 -0
- crackerjack/docs/generated/api/CLI_REFERENCE.md +109 -0
- crackerjack/docs/generated/api/CROSS_REFERENCES.md +1755 -0
- crackerjack/docs/generated/api/PROTOCOLS.md +3 -0
- crackerjack/docs/generated/api/SERVICES.md +1252 -0
- crackerjack/documentation/__init__.py +31 -0
- crackerjack/documentation/ai_templates.py +756 -0
- crackerjack/documentation/dual_output_generator.py +765 -0
- crackerjack/documentation/mkdocs_integration.py +518 -0
- crackerjack/documentation/reference_generator.py +977 -0
- crackerjack/dynamic_config.py +55 -50
- crackerjack/executors/async_hook_executor.py +10 -15
- crackerjack/executors/cached_hook_executor.py +117 -43
- crackerjack/executors/hook_executor.py +8 -34
- crackerjack/executors/hook_lock_manager.py +26 -183
- crackerjack/executors/individual_hook_executor.py +13 -11
- crackerjack/executors/lsp_aware_hook_executor.py +270 -0
- crackerjack/executors/tool_proxy.py +417 -0
- crackerjack/hooks/lsp_hook.py +79 -0
- crackerjack/intelligence/adaptive_learning.py +25 -10
- crackerjack/intelligence/agent_orchestrator.py +2 -5
- crackerjack/intelligence/agent_registry.py +34 -24
- crackerjack/intelligence/agent_selector.py +5 -7
- crackerjack/interactive.py +17 -6
- crackerjack/managers/async_hook_manager.py +0 -1
- crackerjack/managers/hook_manager.py +79 -1
- crackerjack/managers/publish_manager.py +44 -8
- crackerjack/managers/test_command_builder.py +1 -15
- crackerjack/managers/test_executor.py +1 -3
- crackerjack/managers/test_manager.py +98 -7
- crackerjack/managers/test_manager_backup.py +10 -9
- crackerjack/mcp/cache.py +2 -2
- crackerjack/mcp/client_runner.py +1 -1
- crackerjack/mcp/context.py +191 -68
- crackerjack/mcp/dashboard.py +7 -5
- crackerjack/mcp/enhanced_progress_monitor.py +31 -28
- crackerjack/mcp/file_monitor.py +30 -23
- crackerjack/mcp/progress_components.py +31 -21
- crackerjack/mcp/progress_monitor.py +50 -53
- crackerjack/mcp/rate_limiter.py +6 -6
- crackerjack/mcp/server_core.py +17 -16
- crackerjack/mcp/service_watchdog.py +2 -1
- crackerjack/mcp/state.py +4 -7
- crackerjack/mcp/task_manager.py +11 -9
- crackerjack/mcp/tools/core_tools.py +173 -32
- crackerjack/mcp/tools/error_analyzer.py +3 -2
- crackerjack/mcp/tools/execution_tools.py +8 -10
- crackerjack/mcp/tools/execution_tools_backup.py +42 -30
- crackerjack/mcp/tools/intelligence_tool_registry.py +7 -5
- crackerjack/mcp/tools/intelligence_tools.py +5 -2
- crackerjack/mcp/tools/monitoring_tools.py +33 -70
- crackerjack/mcp/tools/proactive_tools.py +24 -11
- crackerjack/mcp/tools/progress_tools.py +5 -8
- crackerjack/mcp/tools/utility_tools.py +20 -14
- crackerjack/mcp/tools/workflow_executor.py +62 -40
- crackerjack/mcp/websocket/app.py +8 -0
- crackerjack/mcp/websocket/endpoints.py +352 -357
- crackerjack/mcp/websocket/jobs.py +40 -57
- crackerjack/mcp/websocket/monitoring_endpoints.py +2935 -0
- crackerjack/mcp/websocket/server.py +7 -25
- crackerjack/mcp/websocket/websocket_handler.py +6 -17
- crackerjack/mixins/__init__.py +0 -2
- crackerjack/mixins/error_handling.py +1 -70
- crackerjack/models/config.py +12 -1
- crackerjack/models/config_adapter.py +49 -1
- crackerjack/models/protocols.py +122 -122
- crackerjack/models/resource_protocols.py +55 -210
- crackerjack/monitoring/ai_agent_watchdog.py +13 -13
- crackerjack/monitoring/metrics_collector.py +426 -0
- crackerjack/monitoring/regression_prevention.py +8 -8
- crackerjack/monitoring/websocket_server.py +643 -0
- crackerjack/orchestration/advanced_orchestrator.py +11 -6
- crackerjack/orchestration/coverage_improvement.py +3 -3
- crackerjack/orchestration/execution_strategies.py +26 -6
- crackerjack/orchestration/test_progress_streamer.py +8 -5
- crackerjack/plugins/base.py +2 -2
- crackerjack/plugins/hooks.py +7 -0
- crackerjack/plugins/managers.py +11 -8
- crackerjack/security/__init__.py +0 -1
- crackerjack/security/audit.py +6 -35
- crackerjack/services/anomaly_detector.py +392 -0
- crackerjack/services/api_extractor.py +615 -0
- crackerjack/services/backup_service.py +2 -2
- crackerjack/services/bounded_status_operations.py +15 -152
- crackerjack/services/cache.py +127 -1
- crackerjack/services/changelog_automation.py +395 -0
- crackerjack/services/config.py +15 -9
- crackerjack/services/config_merge.py +19 -80
- crackerjack/services/config_template.py +506 -0
- crackerjack/services/contextual_ai_assistant.py +48 -22
- crackerjack/services/coverage_badge_service.py +171 -0
- crackerjack/services/coverage_ratchet.py +27 -25
- crackerjack/services/debug.py +3 -3
- crackerjack/services/dependency_analyzer.py +460 -0
- crackerjack/services/dependency_monitor.py +14 -11
- crackerjack/services/documentation_generator.py +491 -0
- crackerjack/services/documentation_service.py +675 -0
- crackerjack/services/enhanced_filesystem.py +6 -5
- crackerjack/services/enterprise_optimizer.py +865 -0
- crackerjack/services/error_pattern_analyzer.py +676 -0
- crackerjack/services/file_hasher.py +1 -1
- crackerjack/services/git.py +8 -25
- crackerjack/services/health_metrics.py +10 -8
- crackerjack/services/heatmap_generator.py +735 -0
- crackerjack/services/initialization.py +11 -30
- crackerjack/services/input_validator.py +5 -97
- crackerjack/services/intelligent_commit.py +327 -0
- crackerjack/services/log_manager.py +15 -12
- crackerjack/services/logging.py +4 -3
- crackerjack/services/lsp_client.py +628 -0
- crackerjack/services/memory_optimizer.py +19 -87
- crackerjack/services/metrics.py +42 -33
- crackerjack/services/parallel_executor.py +9 -67
- crackerjack/services/pattern_cache.py +1 -1
- crackerjack/services/pattern_detector.py +6 -6
- crackerjack/services/performance_benchmarks.py +18 -59
- crackerjack/services/performance_cache.py +20 -81
- crackerjack/services/performance_monitor.py +27 -95
- crackerjack/services/predictive_analytics.py +510 -0
- crackerjack/services/quality_baseline.py +234 -0
- crackerjack/services/quality_baseline_enhanced.py +646 -0
- crackerjack/services/quality_intelligence.py +785 -0
- crackerjack/services/regex_patterns.py +605 -524
- crackerjack/services/regex_utils.py +43 -123
- crackerjack/services/secure_path_utils.py +5 -164
- crackerjack/services/secure_status_formatter.py +30 -141
- crackerjack/services/secure_subprocess.py +11 -92
- crackerjack/services/security.py +9 -41
- crackerjack/services/security_logger.py +12 -24
- crackerjack/services/server_manager.py +124 -16
- crackerjack/services/status_authentication.py +16 -159
- crackerjack/services/status_security_manager.py +4 -131
- crackerjack/services/thread_safe_status_collector.py +19 -125
- crackerjack/services/unified_config.py +21 -13
- crackerjack/services/validation_rate_limiter.py +5 -54
- crackerjack/services/version_analyzer.py +459 -0
- crackerjack/services/version_checker.py +1 -1
- crackerjack/services/websocket_resource_limiter.py +10 -144
- crackerjack/services/zuban_lsp_service.py +390 -0
- crackerjack/slash_commands/__init__.py +2 -7
- crackerjack/slash_commands/run.md +2 -2
- crackerjack/tools/validate_input_validator_patterns.py +14 -40
- crackerjack/tools/validate_regex_patterns.py +19 -48
- {crackerjack-0.33.0.dist-info → crackerjack-0.33.1.dist-info}/METADATA +196 -25
- crackerjack-0.33.1.dist-info/RECORD +229 -0
- crackerjack/CLAUDE.md +0 -207
- crackerjack/RULES.md +0 -380
- crackerjack/py313.py +0 -234
- crackerjack-0.33.0.dist-info/RECORD +0 -187
- {crackerjack-0.33.0.dist-info → crackerjack-0.33.1.dist-info}/WHEEL +0 -0
- {crackerjack-0.33.0.dist-info → crackerjack-0.33.1.dist-info}/entry_points.txt +0 -0
- {crackerjack-0.33.0.dist-info → crackerjack-0.33.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
crackerjack/__init__.py,sha256=k8_Ev_3fWdjFtGNSJdSOvyaSLW54y3j484d3a8k_Ob4,1396
|
|
2
|
+
crackerjack/__main__.py,sha256=zSZyImAZrHvOvGQT7-QHXqJPW8IQLH2c6QU5Awvy1eU,52552
|
|
3
|
+
crackerjack/api.py,sha256=hXWqk9qLxYley6NiIIz9RemYhxC67cwwbktQdV1IPPY,21550
|
|
4
|
+
crackerjack/code_cleaner.py,sha256=M1zVaq31uW0nOkPneKR8kfR3892gyyVx0VhFgRaxsj4,44338
|
|
5
|
+
crackerjack/dynamic_config.py,sha256=1eIXUemABDmY7nN3i45L91GXDEKC14wXfkXsE7YVAWY,18360
|
|
6
|
+
crackerjack/errors.py,sha256=yYbZ92kn_y6acEWgQvEPvozAYs2HT65uLwAXrtXxGsE,10049
|
|
7
|
+
crackerjack/interactive.py,sha256=QXFZrnbY0nc8rFJcivFAVFNgUTHXqLCu3FFv5bmq_eI,21634
|
|
8
|
+
crackerjack/adapters/__init__.py,sha256=k-8ajMDL9DS9hV2FYOu694nmNQg3HkudJRuNcXmx8N4,451
|
|
9
|
+
crackerjack/adapters/lsp_client.py,sha256=4kQ3T5JiWC7uc6kOjZuPdtUboseKSDjZpuKQpV74onc,10963
|
|
10
|
+
crackerjack/adapters/rust_tool_adapter.py,sha256=ui_qMt_WIwInRvRCeT7MnIdp8eln7Fvp4hakXQiVnjg,5999
|
|
11
|
+
crackerjack/adapters/rust_tool_manager.py,sha256=RotOX7WUMAm4GT9bD8xOhSeHFXaME37R9dW-YLTpVcc,6590
|
|
12
|
+
crackerjack/adapters/skylos_adapter.py,sha256=aUO8P7daTXstM3UxaAKOwZDLdMPIUbjmhmXROTF5RlU,7890
|
|
13
|
+
crackerjack/adapters/zuban_adapter.py,sha256=NHg2vAsaONEMMlV3a5lmjPm61poIojL-gqZWqoX-R9o,19663
|
|
14
|
+
crackerjack/agents/__init__.py,sha256=OkL6WdzTk1_EnhJpIPsHV2qCrw6tqKegu_zTpZXnJik,908
|
|
15
|
+
crackerjack/agents/architect_agent.py,sha256=Gq9eAy1_pl-1iEYC28xn4rdIPi9AVynZ7Sd5FnBrNn8,8130
|
|
16
|
+
crackerjack/agents/base.py,sha256=XRF0VKrkIB-QJ_izuM33EPKL26gBABrDKKgMNJy9lJQ,4888
|
|
17
|
+
crackerjack/agents/coordinator.py,sha256=uLh-9aTJedqmTSDmwV2dx42_aeIIOCEFbcdj9wcIR4w,22470
|
|
18
|
+
crackerjack/agents/documentation_agent.py,sha256=tPtNO-2K1f4LELDtC4xnM6m8tet5HPr-PEb9j020908,17180
|
|
19
|
+
crackerjack/agents/dry_agent.py,sha256=OP386uTOEQEQZCetCIHV6j7_cl7BKrhK3BmAmRqdgYI,13302
|
|
20
|
+
crackerjack/agents/formatting_agent.py,sha256=eDkLABvpkc3vkYLBjsjib9_AtqsdjxyPIddIvD293L8,6821
|
|
21
|
+
crackerjack/agents/import_optimization_agent.py,sha256=DoDaN7Pb0Z6Nt6YkkKeWMu3Paffy5eOb6ao4khtL3ko,40578
|
|
22
|
+
crackerjack/agents/performance_agent.py,sha256=1EwvGUBD046mI9HUwEhn4q_PTnXbKthgijY-Qy_vplU,47130
|
|
23
|
+
crackerjack/agents/performance_helpers.py,sha256=fyK5lkh8j5f1dTPld8v1ABMzsVEkeVCk3Feq4BEa_hY,7187
|
|
24
|
+
crackerjack/agents/proactive_agent.py,sha256=cwb5VqYDhqIDB19ACzXq9pp3Jfz5ZukkNJBQ6AkKUOA,2010
|
|
25
|
+
crackerjack/agents/refactoring_agent.py,sha256=F9eOj1Eu-gAvw75ddJntefZmy3TK63RRNG5j1g48G4Y,35411
|
|
26
|
+
crackerjack/agents/refactoring_helpers.py,sha256=FmnuAZ5kXXNljFTd17L5H1ElumkIX6ZmOAjuo7m74bA,9087
|
|
27
|
+
crackerjack/agents/security_agent.py,sha256=gl10hhKAAX_u-3HdhLt7mKditW1XzlLRXDtHk-4f7A4,29050
|
|
28
|
+
crackerjack/agents/test_creation_agent.py,sha256=Mv8rjmhthoFyP5fvzMe6BAb1PsfUUe7N7w7ofsJDSSs,79768
|
|
29
|
+
crackerjack/agents/test_specialist_agent.py,sha256=m9N6G6j1Gc39KxaAIgkkFwlJFdfkZx6NGHOffivxj6M,18434
|
|
30
|
+
crackerjack/agents/tracker.py,sha256=5Hje7Ox-hSPq2yTqkbucwChEvzwlCQxjgVri0KSUUPY,3401
|
|
31
|
+
crackerjack/cli/__init__.py,sha256=6pnXZIglNzax4XA2lWfiqAZQs24Dr7GbXUwIwCF_9_w,583
|
|
32
|
+
crackerjack/cli/cache_handlers.py,sha256=Wa-1ZJdWO7RufLd6Fo62pUTij-a3epFi92h5CfJLlDM,6757
|
|
33
|
+
crackerjack/cli/cache_handlers_enhanced.py,sha256=6X5rYSo1l-rj9eb7eB8mpA-6BlUagyDu-IvCaHwYy5k,24841
|
|
34
|
+
crackerjack/cli/facade.py,sha256=e4_oB04awqEijI3yqiYAZGc6x09uMBa4ih0SsXpgMuY,3751
|
|
35
|
+
crackerjack/cli/handlers.py,sha256=mYhwMLUKid6mQLff0ScpcnhP0yUS9IzOIMdM7VLkUCc,17178
|
|
36
|
+
crackerjack/cli/interactive.py,sha256=bGOMXHYyuselHh2b4khbDGJ4tX9yI2rVN3SZ1oSDOaM,16988
|
|
37
|
+
crackerjack/cli/options.py,sha256=rbjGnl4Y_xbJwWWZEfCVVqzO6RLackGvk4GYthbB2uo,33847
|
|
38
|
+
crackerjack/cli/utils.py,sha256=XC7dT8GNidhORjUe2p2hQOpZgCi2KvVCNu6g3azzgqY,584
|
|
39
|
+
crackerjack/config/__init__.py,sha256=b0481N2f_JvGufMPcbo5IXu2VjYd111r1BHw0oD3x7o,330
|
|
40
|
+
crackerjack/config/global_lock_config.py,sha256=PyonoA2__HKEEvn6SD-gEYh9iD7xIAdts2C3lNoTWhw,1996
|
|
41
|
+
crackerjack/config/hooks.py,sha256=iYliWaMIuEnTHyhf_u9je-7jTEGBQz3ohZGFtc6jIFk,5294
|
|
42
|
+
crackerjack/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
43
|
+
crackerjack/core/async_workflow_orchestrator.py,sha256=qX4gTLZVHZmcp-z5hhjJ3fc3LOgbFdJ92LwocdMQzNw,26187
|
|
44
|
+
crackerjack/core/autofix_coordinator.py,sha256=e8n7_LBG5K1DINFuXQReKuvYOpG2ymwsih7zFr8E8Eg,8694
|
|
45
|
+
crackerjack/core/container.py,sha256=e9_1YnWHijUJ0yl23lpgf9mennVQy8NkgJBKtZstG-M,2889
|
|
46
|
+
crackerjack/core/enhanced_container.py,sha256=0rN9aDm5WfcH-g3D_dj7byc1aZK6dLKthKdQrVYuIHw,19475
|
|
47
|
+
crackerjack/core/file_lifecycle.py,sha256=W0A0Bk3XTds1Za-h4gASAUdUrMozbq2XvGi-BjrnkGc,15149
|
|
48
|
+
crackerjack/core/performance.py,sha256=ZVpDydd5BDycxwwZLOUG1tzwejwVvjJvFFSiKbDHpVQ,7606
|
|
49
|
+
crackerjack/core/performance_monitor.py,sha256=5fMDcn8mSDAEJNm6DfNNLDt_NTcRwDHcbKx_eyqHeTs,13303
|
|
50
|
+
crackerjack/core/phase_coordinator.py,sha256=qEkbaD4iXcpFi2voLMy4n0AQveQ8S5dxtAToZJIlN-Y,31126
|
|
51
|
+
crackerjack/core/proactive_workflow.py,sha256=DcmQnOvP4uge5O13t0bfXfBI4K4EjD8fnJPQmlYMO5U,9774
|
|
52
|
+
crackerjack/core/resource_manager.py,sha256=gFQ629Ves5vwd0KNSVCqDp4H57e7-342yRCWL4xRHD8,12797
|
|
53
|
+
crackerjack/core/service_watchdog.py,sha256=Ttj1imOxvUea4Tkf5JO1e2dQtGIK7D-bX1xOsHTa-Kc,15688
|
|
54
|
+
crackerjack/core/session_coordinator.py,sha256=TgoGE9DfXe2x-OkH93Ld9dX9ROjx2_mZFkGXen-z5YI,15680
|
|
55
|
+
crackerjack/core/timeout_manager.py,sha256=_sbEsfYDwWx7y0Pn89QCoAZ5DpWIbCdtR9qkG_Kqj5E,15013
|
|
56
|
+
crackerjack/core/websocket_lifecycle.py,sha256=74kn6ugu6FLlDQhCNSPgqguCFwRoT1WFOvtl8G2OyFc,12860
|
|
57
|
+
crackerjack/core/workflow_orchestrator.py,sha256=Hqow7VkI7WeZVXHDn_Mt6Cc_aKhUaOh5PQ4wurtZfG0,65007
|
|
58
|
+
crackerjack/docs/INDEX.md,sha256=a6CGFEeL5DX_FRft_JFWd0nOxoBmCSSp-QHIC3B7ato,342
|
|
59
|
+
crackerjack/docs/generated/api/API_REFERENCE.md,sha256=mWoqImZA7AhDvRqqF1MhUo70g_pnZr3NoBeZQRotqN8,155816
|
|
60
|
+
crackerjack/docs/generated/api/CLI_REFERENCE.md,sha256=ikuG0hO5EjIiQlJtAUnvEuAhXDa-JHPULPXNNmUwvk4,2805
|
|
61
|
+
crackerjack/docs/generated/api/CROSS_REFERENCES.md,sha256=MscaFom5lJAT1bgh6ubFrj0h3Y6mOkEcmqttBDqH-1c,57825
|
|
62
|
+
crackerjack/docs/generated/api/PROTOCOLS.md,sha256=sDoy3TnMPvkLO_Vrb3u70C7g5UPClshYnHtIMn3oxTk,92
|
|
63
|
+
crackerjack/docs/generated/api/SERVICES.md,sha256=Zqh-6RiJeWWRiEmKR4MUZEbguOdrMlDvSp6tjY4YrXw,22315
|
|
64
|
+
crackerjack/documentation/__init__.py,sha256=gGR--er5oTHhbwLKOHVlU2QgGmQtA0qUXf33F5IzeP0,774
|
|
65
|
+
crackerjack/documentation/ai_templates.py,sha256=GRBKB5bqWudh9MDLjo1b3vNiFAgpL62ezzRp_WxTews,21629
|
|
66
|
+
crackerjack/documentation/dual_output_generator.py,sha256=w7rDthOnyFeRPQDWvYiR4aiScPxsHzkwjJ3blMwT9-w,28552
|
|
67
|
+
crackerjack/documentation/mkdocs_integration.py,sha256=KqU2_9mA-rjP_VDrrfr6KTuPWtTlcvkInPxoH03LTC0,15657
|
|
68
|
+
crackerjack/documentation/reference_generator.py,sha256=qthAvJU32xUjpl6GZ5s0sWILdCS3OGQLzIuw6UBsUU4,30618
|
|
69
|
+
crackerjack/executors/__init__.py,sha256=HF-DmXvKN45uKKDdiMxOT9bYxuy1B-Z91BihOhkK5lg,322
|
|
70
|
+
crackerjack/executors/async_hook_executor.py,sha256=FmKpiAxpZXKwvOWXnRQ73N-reDfX8NusESQ9a4HeacM,17620
|
|
71
|
+
crackerjack/executors/cached_hook_executor.py,sha256=izwdW0B22EZcl_2_llmTIyq5oTcZDZTRL2G97ZwYiXg,11173
|
|
72
|
+
crackerjack/executors/hook_executor.py,sha256=g53TXs5hOY0yRnSpyr44GgEmCRPMxHRgkfjtqBx_-4s,14479
|
|
73
|
+
crackerjack/executors/hook_lock_manager.py,sha256=ft24q6VFEkW_QrifNnSlrQeHGx9GuJeOOTsdlCcjnMI,26694
|
|
74
|
+
crackerjack/executors/individual_hook_executor.py,sha256=t0W9vuqLGPx0HmbTo01N9MRFyqLfY0ZLG06ZIA5qfBY,24362
|
|
75
|
+
crackerjack/executors/lsp_aware_hook_executor.py,sha256=aZxtTwpaDxfmN71II2MEAtfzEst-jPJp-GXmMLwnibA,10388
|
|
76
|
+
crackerjack/executors/tool_proxy.py,sha256=dJnrt72aFXEMuZLsgrLZrf51vfELDaXs5nBxzGHu7SQ,14881
|
|
77
|
+
crackerjack/hooks/lsp_hook.py,sha256=hJCkJ-jUJasE35XPWdnGRDXgynEh2-gUiEd1wxLFp48,2397
|
|
78
|
+
crackerjack/intelligence/__init__.py,sha256=3Sty6xFyxBEXTyy8W34dpAQk7S7m8SnxUz4wrb3xrZc,878
|
|
79
|
+
crackerjack/intelligence/adaptive_learning.py,sha256=Q0pUyxzBBCtySTfp96zHObQVAUaN0c5kEFOFJKIG0j8,25610
|
|
80
|
+
crackerjack/intelligence/agent_orchestrator.py,sha256=YOG2sQc0l5ddz7TzRZ_1YAugTNwuyY1brWrlj5tnMhk,16728
|
|
81
|
+
crackerjack/intelligence/agent_registry.py,sha256=aaj8aO1XTgUZKcgSEzwzsHcOUbgNfWUeYzf_L0RM9uA,13295
|
|
82
|
+
crackerjack/intelligence/agent_selector.py,sha256=DxiY3suJojbeoF2GdJnhECJk5ACH9l8vSBwn1Tjlwvc,15027
|
|
83
|
+
crackerjack/intelligence/integration.py,sha256=vVaC2Fp5RbbABpaohCePzGw1XANuRztGl4qKm_9a1SY,8295
|
|
84
|
+
crackerjack/managers/__init__.py,sha256=PFWccXx4hDQA76T02idAViOLVD-aPeVpgjdfSkh_Dmk,298
|
|
85
|
+
crackerjack/managers/async_hook_manager.py,sha256=c0HFR98sFwfk0uZ3NmAe_6OVZpBrq9I570V8A2DoIxw,5129
|
|
86
|
+
crackerjack/managers/hook_manager.py,sha256=_FT0ngwPwujqg0KZGpLz-pP07mwDmptJ5pVkiy5yS8k,7820
|
|
87
|
+
crackerjack/managers/publish_manager.py,sha256=10LzEiTH3Ck7uP6ky6JaMNSigwdZeWgwc6Ru53CR8sc,17740
|
|
88
|
+
crackerjack/managers/test_command_builder.py,sha256=1TlPzddNcDDxRORH6UvAudcbRc6hKwFyknSEVLkiWAo,3459
|
|
89
|
+
crackerjack/managers/test_executor.py,sha256=2837Ti4OaNsmLxnmELjbQ18hmfL0-Z2EW-W2UeFSDcE,13871
|
|
90
|
+
crackerjack/managers/test_manager.py,sha256=BRPBWXx4flPDK0w96xyHhg-9dmUca1vpKQRM2VofSlI,13158
|
|
91
|
+
crackerjack/managers/test_manager_backup.py,sha256=Yj_HcJBgSM0DJTWOgRCn-pDslEjrmQ_094kBU6Mn1Ec,37932
|
|
92
|
+
crackerjack/managers/test_progress.py,sha256=B1013ygUk2nAo37whDXNA7n-FYdsEO4qj17fuDm_fdg,3058
|
|
93
|
+
crackerjack/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
94
|
+
crackerjack/mcp/cache.py,sha256=uq5XVeRjNyARfaAyN9DsaPURU_OHdBId5UfDvXbfSos,11974
|
|
95
|
+
crackerjack/mcp/client_runner.py,sha256=Mrcsw7oTk1JgIno7OuNlVVM28UtmGjQYItpToTVOFzU,2993
|
|
96
|
+
crackerjack/mcp/context.py,sha256=T1rhScFxbqi0Kaf6o8NusVUIwc8o7YGxcsLdmlWVsPI,28350
|
|
97
|
+
crackerjack/mcp/dashboard.py,sha256=eApQekZe1DfKBrlDW5yobyqaN_gdh17ZQlqGmut5TCs,19602
|
|
98
|
+
crackerjack/mcp/enhanced_progress_monitor.py,sha256=xhACaEjreDw1cLObJmhr5ttowl5mRqeohmMzQfRQj3w,16448
|
|
99
|
+
crackerjack/mcp/file_monitor.py,sha256=4OR-nxqH0ettiGInIY6MckFoflwX5VP9bgxXcAZZzfE,12824
|
|
100
|
+
crackerjack/mcp/progress_components.py,sha256=OzD6jccwQOk2-pAcq2-D7f9E_VKsnhZ7AYBGBcT59-g,20577
|
|
101
|
+
crackerjack/mcp/progress_monitor.py,sha256=3TxQ_Og1md8zuNrH9cltOa8RQf_5lHNiVh9DiBkvbBM,37546
|
|
102
|
+
crackerjack/mcp/rate_limiter.py,sha256=oM29wHyvoR9Q9cMBAEqWquHoiBBS1ylrZkUhhFnDkVo,12309
|
|
103
|
+
crackerjack/mcp/server.py,sha256=-AdHHoFNAtoPM1A3_M2giZbIbggUhhvv16uIXk2xqNo,403
|
|
104
|
+
crackerjack/mcp/server_core.py,sha256=c1R_X8U2t1B0_4ZfJEHy_e2AXMF6vr9e6KtNGvorytc,10589
|
|
105
|
+
crackerjack/mcp/service_watchdog.py,sha256=_z99JrYrmVaXI2tVERts0_xHsl4pjltD5iF47mQVADk,16826
|
|
106
|
+
crackerjack/mcp/state.py,sha256=pNclwUxGTH5YiRMq8hB15B9_rpX9aJ-IVnhMw7q9dtI,14427
|
|
107
|
+
crackerjack/mcp/task_manager.py,sha256=hxuZGbRHwEBO-W3UTbg7Lx7gMhTcPRaAiQ8I8VIFs6g,8713
|
|
108
|
+
crackerjack/mcp/websocket_server.py,sha256=Dsw_orJOSeO7t7zRiVErh8GLp5jAaGab6shOeQTynbw,203
|
|
109
|
+
crackerjack/mcp/tools/__init__.py,sha256=T_RMPXHQQWJLvSJjrPkJYtWi5tmyoRrzm0WS2G--iwU,613
|
|
110
|
+
crackerjack/mcp/tools/core_tools.py,sha256=8gytjhqxKglR-ZvLIy0DwJzzaqStex_s9WHiAjkXlD0,14612
|
|
111
|
+
crackerjack/mcp/tools/error_analyzer.py,sha256=8ap3_TIqEfrN0n49w_wJFRE3zu7eHB9E8UyXqqz7unM,8515
|
|
112
|
+
crackerjack/mcp/tools/execution_tools.py,sha256=iMtcTm45v04wNgfiIdzOjMXyB-lZ9x-yUtN9SuLGxNI,10410
|
|
113
|
+
crackerjack/mcp/tools/execution_tools_backup.py,sha256=aq3njWeBlHT8EbBlmWsdtKwYujssV1hyI5waGku68Ec,33269
|
|
114
|
+
crackerjack/mcp/tools/intelligence_tool_registry.py,sha256=eAOBzW3EZTKSz_MeYVzgjD6a1xVZFSXUdgOsgcQLSBk,1262
|
|
115
|
+
crackerjack/mcp/tools/intelligence_tools.py,sha256=R0TK-sLuCezJQu0FfTg1xXs-xI_oI2aJeueZgOrM58g,9106
|
|
116
|
+
crackerjack/mcp/tools/monitoring_tools.py,sha256=5RYbytBmLjJdz1sE33xYchdrO9LgzGwSvsqRsZIV7oA,21804
|
|
117
|
+
crackerjack/mcp/tools/proactive_tools.py,sha256=Geww8uUbdWx1UBoT9JmNc_Q7xr4rcPuZuRVYHKocJoE,12954
|
|
118
|
+
crackerjack/mcp/tools/progress_tools.py,sha256=S4IkENegGaH06EYNotJ3m2Zuky2OMk-iSd3rLs9T9vs,6930
|
|
119
|
+
crackerjack/mcp/tools/utility_tools.py,sha256=zt4tES5uhyvZfMdgtStlqItWCBA4MWqGCypQ5u_HPds,10367
|
|
120
|
+
crackerjack/mcp/tools/workflow_executor.py,sha256=IvHPyvak1UP1MsWgrYScoFvIe52gL7cdPlec0mAHkFc,19628
|
|
121
|
+
crackerjack/mcp/websocket/__init__.py,sha256=lZzyfvYjywHfqyy5X3wWR_jgBkRUxYSpgjdKALBzZcI,345
|
|
122
|
+
crackerjack/mcp/websocket/app.py,sha256=NGZemhdO4TdFBcA8IvRjpRR1_26FTWBGmOsGVyAD2pY,1339
|
|
123
|
+
crackerjack/mcp/websocket/endpoints.py,sha256=SHP6WEm88DMyZvHrc3i3r0o9IDU06Nvce7qPwr43Sv0,16158
|
|
124
|
+
crackerjack/mcp/websocket/jobs.py,sha256=q88kfpvrAujD0zv8dj8xFhvjG-bXk_WXtFHLc__9QRU,13730
|
|
125
|
+
crackerjack/mcp/websocket/monitoring_endpoints.py,sha256=iG-xo9--00wL4U8IL2cAH49UWZ4Q1acrWRZhXsszzkM,106213
|
|
126
|
+
crackerjack/mcp/websocket/server.py,sha256=0kFYpAyMb4mfMyDP-kqnNlNmvql8URkrUzTjh1ZMziE,5725
|
|
127
|
+
crackerjack/mcp/websocket/websocket_handler.py,sha256=fskGcsG7viFWVfK_F8v8tVFEQhJ0mM7UVrEDWCsSLm4,6568
|
|
128
|
+
crackerjack/mixins/__init__.py,sha256=s9jqIIkqJcnnD4lRpQTGO22ITeXXeFHpTv2t4e2NApI,81
|
|
129
|
+
crackerjack/mixins/error_handling.py,sha256=H2B_4bYSXlq_nxvi4h1gp9G56Kd7lYYvqLXHw_UAuLM,4213
|
|
130
|
+
crackerjack/models/__init__.py,sha256=LtKdnwSPDLxKDfGbRa0BuWu50qL7r6EngGNsQRFT6ZY,598
|
|
131
|
+
crackerjack/models/config.py,sha256=YBP3W_XhI94W_mcDZ_Tw5p0cOtVPMKZ4nsJs-GiXyYU,2690
|
|
132
|
+
crackerjack/models/config_adapter.py,sha256=hlw2fwlgwSFjcgzRFG4NYsV5bO1Tud0PL-2WsJRSlvw,8821
|
|
133
|
+
crackerjack/models/protocols.py,sha256=ZtyatubJxnmnnTKzXWCbl8CvREPt2pywSco5KYBJI2o,10970
|
|
134
|
+
crackerjack/models/resource_protocols.py,sha256=oZiq0NEG2kWV0XQ871GIYRx_0v_oQulvEjTbidTbueM,7297
|
|
135
|
+
crackerjack/models/task.py,sha256=Du5vwXj-P_aSIZsFt1Ek4jCTkXz_6DXfnflUxgXkecY,4542
|
|
136
|
+
crackerjack/monitoring/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
137
|
+
crackerjack/monitoring/ai_agent_watchdog.py,sha256=bc29uV9uAGFjQvL36vOtmpsYAhZCwqsOs8i1I6cmegE,15150
|
|
138
|
+
crackerjack/monitoring/metrics_collector.py,sha256=PTeOTXk07HWvPwTDK5j-Ef7LPrrNiwouz4_jw0LcP7M,15920
|
|
139
|
+
crackerjack/monitoring/regression_prevention.py,sha256=hV7jwKBXjS9gBVbqHTGEr9BxtKLHkXEg6zPDgTmOeWc,20986
|
|
140
|
+
crackerjack/monitoring/websocket_server.py,sha256=tmCYh5Qp58iicS_txj5OTdmt3I85M5bAGONeyrv0-EQ,24965
|
|
141
|
+
crackerjack/orchestration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
142
|
+
crackerjack/orchestration/advanced_orchestrator.py,sha256=RFvyJuUrL2-Vrii4XPX1NNtF-tcBWbbnyokqSe6sxmQ,34000
|
|
143
|
+
crackerjack/orchestration/coverage_improvement.py,sha256=1G88wEvCCL3Gxa1O6jg2U_F3suwJqpu-KKbNJf1e7TI,6745
|
|
144
|
+
crackerjack/orchestration/execution_strategies.py,sha256=G34eYqd5fqKPgPcRScASS86PE-mX2hjL8so-7kPhbRI,12456
|
|
145
|
+
crackerjack/orchestration/test_progress_streamer.py,sha256=Yu6uHuhoCvX6SZP0QNG3Yt8Q4s2tufEHr40o16QU98c,22541
|
|
146
|
+
crackerjack/plugins/__init__.py,sha256=B7hy9b9amJVbYLHgIz8kgTI29j-vYxsUY_sZ5ISbXU0,386
|
|
147
|
+
crackerjack/plugins/base.py,sha256=VFk-xNsgjSlmzJ_iPQALhkr7cguiOtEd3XSR9CcCPkc,5732
|
|
148
|
+
crackerjack/plugins/hooks.py,sha256=IOnYYEB366HR0t09bV7G_F7wOf2D9vtMcEiR0PRfwiw,7574
|
|
149
|
+
crackerjack/plugins/loader.py,sha256=9RmA5Lkizz5BADn-aJDGekISyL7C_O2Grr1tB6undHY,10814
|
|
150
|
+
crackerjack/plugins/managers.py,sha256=3kQlxjvcHyHDgZIdr-JZBO1kqz2asqA4kf2XVAA1K6A,8824
|
|
151
|
+
crackerjack/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
152
|
+
crackerjack/security/audit.py,sha256=NZJRREvjeKJMhusNZkL8GnBf4XiQFnTwKGcu6NqmvgI,6728
|
|
153
|
+
crackerjack/services/__init__.py,sha256=thXyf5Yh6WRsnGjG3onf5Obe1xbd_p72Fm2tIl1IA3s,617
|
|
154
|
+
crackerjack/services/anomaly_detector.py,sha256=vUwhhGxNGarHQAly4GaN7kc5PBaBvlTfzuvbNYJNf3g,13405
|
|
155
|
+
crackerjack/services/api_extractor.py,sha256=iN4JDkvSyfHRNlhgV0Sf5B9cg4NVaCZn6p-zQlp9YGU,23836
|
|
156
|
+
crackerjack/services/backup_service.py,sha256=0e8AAo9svSBtbsbI9vwnAVSilB2fjph61lskgsUvDLk,15528
|
|
157
|
+
crackerjack/services/bounded_status_operations.py,sha256=mrBkUQwgtYjkbp-Y-5MdrU2A3rp3ZLVgOJv9vLdnJ8k,18763
|
|
158
|
+
crackerjack/services/cache.py,sha256=FutQKxItKSdQFzOlWQaQzVBEfn6lbPXCDdvNnz3NCDQ,14536
|
|
159
|
+
crackerjack/services/changelog_automation.py,sha256=KUeXCYLihRfLR0mUIRiI2aRQdCfe-45GnbB2gYNJJQE,14095
|
|
160
|
+
crackerjack/services/config.py,sha256=Jseaw8bVRxLlMKo2zrEiTO2PPSK1CrlZJYlGFNKZRJ4,13182
|
|
161
|
+
crackerjack/services/config_integrity.py,sha256=Ac6-c7WuupsyrP2dxx_ijgjzpNnx9G0NWsXB-SZjelg,2904
|
|
162
|
+
crackerjack/services/config_merge.py,sha256=jeyvRHSjGnPT7p2EKKJZKpx_A7Q1o4Bgvofu_tXGLfg,16263
|
|
163
|
+
crackerjack/services/config_template.py,sha256=RgSYFVNBxdBfMitlRqz7bzkEHaQhEWMm3pUMS7maRFU,18035
|
|
164
|
+
crackerjack/services/contextual_ai_assistant.py,sha256=6Pnb2r824c4JYkP5mtCH8sJ2OPPvI-KtzbXcosspCfE,19962
|
|
165
|
+
crackerjack/services/coverage_badge_service.py,sha256=gzC3LEyVLt4rpf378APsFVRGgNwkLc50w9S_9xEPPoM,6645
|
|
166
|
+
crackerjack/services/coverage_ratchet.py,sha256=eKxmFyg-7Rnctnk--6P-yNNOFhoKwzTxd4iCJ52dtZE,13439
|
|
167
|
+
crackerjack/services/debug.py,sha256=kTy2vy6JjjNReNn4z7xmhXDVIj8xImaE67kYi-Pfb3o,23227
|
|
168
|
+
crackerjack/services/dependency_analyzer.py,sha256=4MxexuyQ3wyPHVsHr77N22EsAqZTDGOVcSBSm1mOXFQ,16322
|
|
169
|
+
crackerjack/services/dependency_monitor.py,sha256=g2XocjAs5UJmgUfAFFbKc0__cYDMAZqvNVgFufswi6E,20562
|
|
170
|
+
crackerjack/services/documentation_generator.py,sha256=xDJ2dv3Q_HTGCPJADKPVtYzcIpSOhuH5qUxPU2ttICE,16482
|
|
171
|
+
crackerjack/services/documentation_service.py,sha256=V2fY01u_tP_ep87KMGxIocgP6hfpwbf-YyVqssLQSns,24792
|
|
172
|
+
crackerjack/services/enhanced_filesystem.py,sha256=IT-obfj2U2Sfy0iJOq0ZAiczEN6LdHf6VAhnugQe1mQ,15487
|
|
173
|
+
crackerjack/services/enterprise_optimizer.py,sha256=q6srIGxe18N9zH-MNhZ9R34sWnr_-ybGqOWnKyI17Zk,33798
|
|
174
|
+
crackerjack/services/error_pattern_analyzer.py,sha256=bTMwhAMAjVPSUXrNkrtm1KDqfxjnyBMGAPwetBUGCM4,24402
|
|
175
|
+
crackerjack/services/file_hasher.py,sha256=eReytwwK-_-B8JBnpwytDC52cKKgg4qpaxaZKcQjD-0,5211
|
|
176
|
+
crackerjack/services/filesystem.py,sha256=nmL3mYqylS_BSQpwFbC7EMHoA44K5qUxa9CPg1QFZvc,17480
|
|
177
|
+
crackerjack/services/git.py,sha256=a5uwUvZn6bmL6LWN_3G7Pfte036IW_dR4mugpuCP_r8,12723
|
|
178
|
+
crackerjack/services/health_metrics.py,sha256=KmwFlvcB-Pb8DnDI0IRV9ETDdp_vJTaGlhJ_HmBL2YY,21538
|
|
179
|
+
crackerjack/services/heatmap_generator.py,sha256=zz5V-zXPfoCGNXoj7iuyOeFuDRRUhFpxuENUnd0X75g,26200
|
|
180
|
+
crackerjack/services/initialization.py,sha256=oq0D9AZtLufvIP8sNOVayaEhW9PAhXb7NFHFcd2RHjs,25772
|
|
181
|
+
crackerjack/services/input_validator.py,sha256=N2ONa0C2tke4H4MH9kY1j21kMab0PO4iPJCHBZE8jx8,22269
|
|
182
|
+
crackerjack/services/intelligent_commit.py,sha256=HfryPb8ieDPcirPQm1ZYGihZMhAx-n3qv88UAaeFUuE,11307
|
|
183
|
+
crackerjack/services/log_manager.py,sha256=GzZJ_lwbvuj8JscnvqR2TsQ1XHrX6PturqZ6wJCkFLo,8578
|
|
184
|
+
crackerjack/services/logging.py,sha256=aHHrK7Hnke-pqulyJHIoqfymHVyPc5Fxp0WQX_cvbD8,5390
|
|
185
|
+
crackerjack/services/lsp_client.py,sha256=6XPnNbKwDWaU5DEJWBCU7w1gii4glkTYgURulzYtWlY,22299
|
|
186
|
+
crackerjack/services/memory_optimizer.py,sha256=GBRkzWNR1O7lkPV1EmGKMqtaJbRWOKavYYxsdTmKxSg,13328
|
|
187
|
+
crackerjack/services/metrics.py,sha256=0_tiaK2-lBY0Y5MrS3Rrzyxft_JziGEEPgUXW486rX0,23122
|
|
188
|
+
crackerjack/services/parallel_executor.py,sha256=cwKj8KKzaANn6zLmvPRr1v_nije_VqF6O6jSprBFDdM,13604
|
|
189
|
+
crackerjack/services/pattern_cache.py,sha256=fdD-HPoImUnd07rlGuDfyFWG86teWpNVr2LacJkCZ5Q,11097
|
|
190
|
+
crackerjack/services/pattern_detector.py,sha256=soB9zXsjsNFo5pzMpFhFehNOemPTCQh-ARdKlHi46U0,18032
|
|
191
|
+
crackerjack/services/performance_benchmarks.py,sha256=WWZq2J6uxDAPF_tkOumFaBIb8FP3x8bFkIrlKpozynM,10450
|
|
192
|
+
crackerjack/services/performance_cache.py,sha256=Q8_nVePfUFbOhAOyvjoip-VodkGpBsqZcD7Zc4zo6wc,11865
|
|
193
|
+
crackerjack/services/performance_monitor.py,sha256=cDu6FoiUX2VpslA3vG4JL6YQyIk1JzDcD4g5zR8NdjI,20214
|
|
194
|
+
crackerjack/services/predictive_analytics.py,sha256=OcZYP0p2_zZuyWqbqzLHDoHTxVfrPm3VtiY-Yq9y7xc,17843
|
|
195
|
+
crackerjack/services/quality_baseline.py,sha256=ImC1XTFTfrwFIDDDX1F0V7sGquAXI21oVxgjOSYIYFQ,8229
|
|
196
|
+
crackerjack/services/quality_baseline_enhanced.py,sha256=mBxzXD4lkegPc_q_KNJyorBk0cezud40lOWYDBWeNGU,24064
|
|
197
|
+
crackerjack/services/quality_intelligence.py,sha256=iVmYJyyfiU78dR2lsl47PZBee8dj5eCI6f2lYksp0FM,28393
|
|
198
|
+
crackerjack/services/regex_patterns.py,sha256=Uqv3hRQXpe5bqff-g7vknr2Yn6tkdSWLOIGnCYG7ovU,116628
|
|
199
|
+
crackerjack/services/regex_utils.py,sha256=e7AD59_L-T5-oOxzqsGgrLd94uxRE9aKnwasZkohwI8,14966
|
|
200
|
+
crackerjack/services/secure_path_utils.py,sha256=aHsLwxDch42DidPYtTL_ko40g2rhbXDLnRhcx2LlGk8,16688
|
|
201
|
+
crackerjack/services/secure_status_formatter.py,sha256=yhwNtzvvQVcuHsNOTNZMzlqIMQT9zx-lzAtq9LuSDuk,14121
|
|
202
|
+
crackerjack/services/secure_subprocess.py,sha256=hVUWZMr0f3NZDG_MfhHnf6a66MRtC-7e2i-yGJPca7M,17049
|
|
203
|
+
crackerjack/services/security.py,sha256=plgIz-B8oYN_mpF4NYrqHnT7TRcsp4jr0-YlV9WgD5o,7298
|
|
204
|
+
crackerjack/services/security_logger.py,sha256=B4yuXKi02SRikS8aXLR_fpMrziAAPRvCV6C4vAP60mE,16710
|
|
205
|
+
crackerjack/services/server_manager.py,sha256=IQ0oUFEEMZTxI8csecIJzkCSMESE5KIkYqPxa56tvUw,11399
|
|
206
|
+
crackerjack/services/smart_scheduling.py,sha256=VSaL7DpKR6aa0sC_TUrYP9ZgC9CB7tE3TTNzEqB-GpE,4352
|
|
207
|
+
crackerjack/services/status_authentication.py,sha256=2OJ1MoWlBuvUUXOX02N_zdWKzQfXz4jhEZpsmIJfQ00,16453
|
|
208
|
+
crackerjack/services/status_security_manager.py,sha256=et0h6w7Wt1cPFjzg7frsykAQ-IMfiAXr44WU9Fs6-1U,10967
|
|
209
|
+
crackerjack/services/terminal_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
210
|
+
crackerjack/services/thread_safe_status_collector.py,sha256=DXtuaj1gT4KwPZ33LHE-_-AewSVa8I0whnFseEOW3IA,16393
|
|
211
|
+
crackerjack/services/tool_version_service.py,sha256=2FKDAPjnzXALNS_jJCPTy-shLsSPiRRTtHvIFuND3U8,1233
|
|
212
|
+
crackerjack/services/unified_config.py,sha256=QmfcAsv7N65veDI7NiAaiyh0AVTs-t4ZOk3jJZzjzGc,13565
|
|
213
|
+
crackerjack/services/validation_rate_limiter.py,sha256=T5n0N8PB5Ds2JrYm64CBARIm7E5fflLwKh_pCtQz3oI,7753
|
|
214
|
+
crackerjack/services/version_analyzer.py,sha256=yUGku0eO2MrvqV8tVuztuHEBhyOOp7Rwnv-hWd0uIm4,16910
|
|
215
|
+
crackerjack/services/version_checker.py,sha256=UTU3EjC4yiq3hdL203HxTErbTy1oBZnyrlmGd2cUmZk,7579
|
|
216
|
+
crackerjack/services/websocket_resource_limiter.py,sha256=bsEAdqY_Qgaa_Kkz5Ew8WOnTueg7R8FQFp6eKHIDEGM,17217
|
|
217
|
+
crackerjack/services/zuban_lsp_service.py,sha256=CA4FKvVcSGIbgi0b9v86pOTINKguo8nvTfKuO_edlmA,13101
|
|
218
|
+
crackerjack/slash_commands/__init__.py,sha256=69ObvFhmSn06ekM5irraPtFA1KcpP2MjQ0RhVJNt5M8,1774
|
|
219
|
+
crackerjack/slash_commands/init.md,sha256=mANRdCiFAzaTw29lKNrI1JFthK4pxVdtiFC5lN2SDSQ,4581
|
|
220
|
+
crackerjack/slash_commands/run.md,sha256=VEWWset52jPV0m00LnQpjRkHL8g8XRPYAzgOq6BaDnU,6502
|
|
221
|
+
crackerjack/slash_commands/status.md,sha256=U3qqppVLtIIm2lEiMYaKagaHYLI9UplL7OH1j6SRJGw,3921
|
|
222
|
+
crackerjack/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
223
|
+
crackerjack/tools/validate_input_validator_patterns.py,sha256=NN7smYlXWrHLQXTb-81gRam2vjW-cJav92f1klPA0qA,8234
|
|
224
|
+
crackerjack/tools/validate_regex_patterns.py,sha256=y2pAp2BzfSC_3XYMIKGMpQFwwwDidPy3k2Y2almOy74,5811
|
|
225
|
+
crackerjack-0.33.1.dist-info/METADATA,sha256=1hUmyHVLPn8eHEQZ2rcOeI2IJmaKHXuh0uyeZz3M7fA,37942
|
|
226
|
+
crackerjack-0.33.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
227
|
+
crackerjack-0.33.1.dist-info/entry_points.txt,sha256=AJKNft0WXm9xoGUJ3Trl-iXHOWxRAYbagQiza3AILr4,57
|
|
228
|
+
crackerjack-0.33.1.dist-info/licenses/LICENSE,sha256=fDt371P6_6sCu7RyqiZH_AhT1LdN3sN1zjBtqEhDYCk,1531
|
|
229
|
+
crackerjack-0.33.1.dist-info/RECORD,,
|
crackerjack/CLAUDE.md
DELETED
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
# CLAUDE.md
|
|
2
|
-
|
|
3
|
-
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
-
|
|
5
|
-
## Project Overview
|
|
6
|
-
|
|
7
|
-
Crackerjack is an opinionated Python project management tool unifying UV, Ruff, pytest, and pre-commit into a single workflow with AI agent integration via MCP.
|
|
8
|
-
|
|
9
|
-
**Key Dependencies**: Python 3.13+, UV, pre-commit, pytest
|
|
10
|
-
|
|
11
|
-
**Clean Code Philosophy**: DRY/YAGNI/KISS - Every line is a liability. Optimize for readability with self-documenting code.
|
|
12
|
-
|
|
13
|
-
## AI Documentation References
|
|
14
|
-
|
|
15
|
-
- **[AI-REFERENCE.md](AI-REFERENCE.md)** - Command reference with decision trees
|
|
16
|
-
- **[AGENT-CAPABILITIES.json](AGENT-CAPABILITIES.json)** - Structured agent data
|
|
17
|
-
- **[ERROR-PATTERNS.yaml](ERROR-PATTERNS.yaml)** - Automated issue resolution patterns
|
|
18
|
-
|
|
19
|
-
## Essential Commands
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
# Daily workflow
|
|
23
|
-
python -m crackerjack # Quality checks
|
|
24
|
-
python -m crackerjack -t # With tests
|
|
25
|
-
python -m crackerjack --ai-agent -t # AI auto-fixing (recommended)
|
|
26
|
-
|
|
27
|
-
# Development
|
|
28
|
-
python -m crackerjack --ai-debug -t # Debug AI issues
|
|
29
|
-
python -m crackerjack --skip-hooks # Skip hooks during iteration
|
|
30
|
-
python -m crackerjack -x # Code cleaning mode
|
|
31
|
-
|
|
32
|
-
# Server management
|
|
33
|
-
python -m crackerjack --start-mcp-server # MCP server
|
|
34
|
-
python -m crackerjack --watchdog # Monitor/restart services
|
|
35
|
-
|
|
36
|
-
# Release
|
|
37
|
-
python -m crackerjack -a patch # Full release workflow
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
## AI Agent System
|
|
41
|
-
|
|
42
|
-
**9 Specialized Agents** handle domain-specific issues:
|
|
43
|
-
|
|
44
|
-
- **RefactoringAgent** (0.9): Complexity ≤15, dead code removal
|
|
45
|
-
- **PerformanceAgent** (0.85): O(n²) detection, optimization
|
|
46
|
-
- **SecurityAgent** (0.8): Hardcoded paths, unsafe operations
|
|
47
|
-
- **DocumentationAgent** (0.8): Changelog, .md consistency
|
|
48
|
-
- **TestCreationAgent** (0.8): Test failures, fixtures
|
|
49
|
-
- **DRYAgent** (0.8): Code duplication patterns
|
|
50
|
-
- **FormattingAgent** (0.8): Style violations, imports
|
|
51
|
-
- **ImportOptimizationAgent**: Import cleanup, reorganization
|
|
52
|
-
- **TestSpecialistAgent** (0.8): Advanced testing scenarios
|
|
53
|
-
|
|
54
|
-
**Usage**: `--ai-agent` enables batch fixing; confidence ≥0.7 uses specific agents
|
|
55
|
-
|
|
56
|
-
## Architecture
|
|
57
|
-
|
|
58
|
-
**Modular DI Architecture**: `__main__.py` → `WorkflowOrchestrator` → Coordinators → Managers → Services
|
|
59
|
-
|
|
60
|
-
**Critical Pattern**: Always import protocols from `models/protocols.py`, never concrete classes
|
|
61
|
-
|
|
62
|
-
```python
|
|
63
|
-
# ❌ Wrong
|
|
64
|
-
from ..managers.test_manager import TestManager
|
|
65
|
-
|
|
66
|
-
# ✅ Correct
|
|
67
|
-
from ..models.protocols import TestManagerProtocol
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
**Core Layers**:
|
|
71
|
-
|
|
72
|
-
- **Orchestration**: `WorkflowOrchestrator`, DI containers, lifecycle management
|
|
73
|
-
- **Coordinators**: Session/phase coordination, async workflows, parallel execution
|
|
74
|
-
- **Managers**: Hook execution (fast→comprehensive), test management, publishing
|
|
75
|
-
- **Services**: Filesystem, git, config, security, health monitoring
|
|
76
|
-
|
|
77
|
-
## Testing & Development
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
# Specific test
|
|
81
|
-
python -m pytest tests/test_file.py::TestClass::test_method -v
|
|
82
|
-
|
|
83
|
-
# Coverage
|
|
84
|
-
python -m pytest --cov=crackerjack --cov-report=html
|
|
85
|
-
|
|
86
|
-
# Custom workers
|
|
87
|
-
python -m crackerjack -t --test-workers 4
|
|
88
|
-
|
|
89
|
-
# Version bump
|
|
90
|
-
python -m crackerjack --bump patch
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
## Quality Process
|
|
94
|
-
|
|
95
|
-
**Workflow Order**:
|
|
96
|
-
|
|
97
|
-
1. **Fast Hooks** (~5s): formatting, basic checks → retry once if fail
|
|
98
|
-
1. **Full Test Suite**: collect ALL failures, don't stop on first
|
|
99
|
-
1. **Comprehensive Hooks** (~30s): type checking, security, complexity → collect ALL issues
|
|
100
|
-
1. **AI Batch Fixing**: process all collected failures together
|
|
101
|
-
|
|
102
|
-
**Testing**: pytest with asyncio, 300s timeout, auto-detected workers
|
|
103
|
-
**Coverage**: Ratchet system targeting 100%, never decrease
|
|
104
|
-
|
|
105
|
-
## Code Standards
|
|
106
|
-
|
|
107
|
-
**Quality Rules**:
|
|
108
|
-
|
|
109
|
-
- **Complexity ≤15** per function
|
|
110
|
-
- **No hardcoded paths** (use `tempfile`)
|
|
111
|
-
- **No shell=True** in subprocess
|
|
112
|
-
- **Type annotations required**
|
|
113
|
-
- **Protocol-based DI**
|
|
114
|
-
- **Python 3.13+**: `|` unions, protocols, pathlib
|
|
115
|
-
|
|
116
|
-
**Refactoring Pattern**: Break complex methods into helpers
|
|
117
|
-
|
|
118
|
-
```python
|
|
119
|
-
def complex_method(self, data: dict) -> bool:
|
|
120
|
-
if not self._validate_input(data):
|
|
121
|
-
return self._handle_invalid_input()
|
|
122
|
-
processed = self._process_data(data)
|
|
123
|
-
return self._save_results(processed)
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
**Critical Regex Safety**: NEVER write raw regex. Use centralized registry:
|
|
127
|
-
|
|
128
|
-
```python
|
|
129
|
-
# ❌ DANGEROUS
|
|
130
|
-
text = re.sub(r"(\w+) - (\w+)", r"\g < 1 >-\g < 2 >", text)
|
|
131
|
-
|
|
132
|
-
# ✅ SAFE
|
|
133
|
-
from crackerjack.services.regex_patterns import SAFE_PATTERNS
|
|
134
|
-
|
|
135
|
-
text = SAFE_PATTERNS["fix_hyphenated_names"].apply(text)
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
## Common Issues & Solutions
|
|
139
|
-
|
|
140
|
-
**Development**:
|
|
141
|
-
|
|
142
|
-
- **AI agent ineffective**: Use `--ai-debug -t` for analysis
|
|
143
|
-
- **Import errors**: Always import protocols from `models/protocols.py`
|
|
144
|
-
- **Test hangs**: Avoid complex async tests, use simple synchronous config tests
|
|
145
|
-
- **Coverage failing**: Never reduce below baseline, add tests incrementally
|
|
146
|
-
- **Complexity >15**: Break into helper methods using RefactoringAgent approach
|
|
147
|
-
|
|
148
|
-
**Server**:
|
|
149
|
-
|
|
150
|
-
- **MCP not starting**: `--restart-mcp-server` or `--watchdog`
|
|
151
|
-
- **Terminal stuck**: `stty sane; reset; exec $SHELL -l`
|
|
152
|
-
- **Slow tests**: Customize `--test-workers N` or use `--skip-hooks`
|
|
153
|
-
|
|
154
|
-
## MCP Server Integration
|
|
155
|
-
|
|
156
|
-
**Features**: Dual protocol (MCP + WebSocket), real-time progress, job tracking
|
|
157
|
-
|
|
158
|
-
```bash
|
|
159
|
-
# Start server
|
|
160
|
-
python -m crackerjack --start-mcp-server
|
|
161
|
-
|
|
162
|
-
# Monitor progress at http://localhost:8675/
|
|
163
|
-
python -m crackerjack.mcp.progress_monitor <job_id>
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
**Available Tools**: `execute_crackerjack`, `get_job_progress`, `get_comprehensive_status`, `analyze_errors`
|
|
167
|
-
|
|
168
|
-
**Slash Commands**: `/crackerjack:run`, `/crackerjack:status`, `/crackerjack:init`
|
|
169
|
-
|
|
170
|
-
## Critical Reminders
|
|
171
|
-
|
|
172
|
-
**Core Instructions**:
|
|
173
|
-
|
|
174
|
-
- Do only what's asked, nothing more
|
|
175
|
-
- NEVER create files unless absolutely necessary
|
|
176
|
-
- ALWAYS prefer editing existing files
|
|
177
|
-
- MAINTAIN coverage ratchet
|
|
178
|
-
|
|
179
|
-
**Quality Standards**:
|
|
180
|
-
|
|
181
|
-
- **Test Quality**: Avoid async tests that hang, use synchronous config tests
|
|
182
|
-
- **Import Compliance**: Use protocols from `models/protocols.py`
|
|
183
|
-
- **Fix failures FIRST** before creating new tests
|
|
184
|
-
- Use IDE diagnostics after implementation
|
|
185
|
-
|
|
186
|
-
**Failure Patterns to Avoid**:
|
|
187
|
-
|
|
188
|
-
```python
|
|
189
|
-
# ❌ Async tests that hang
|
|
190
|
-
@pytest.mark.asyncio
|
|
191
|
-
async def test_batch_processing(self, batched_saver):
|
|
192
|
-
await batched_saver.start() # Can hang
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
# ✅ Simple synchronous tests
|
|
196
|
-
def test_batch_configuration(self, batched_saver):
|
|
197
|
-
assert batched_saver.max_batch_size == expected_size
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
# ❌ Import concrete classes
|
|
201
|
-
from ..managers.test_manager import TestManager
|
|
202
|
-
|
|
203
|
-
# ✅ Import protocols
|
|
204
|
-
from ..models.protocols import TestManagerProtocol
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
**Current Status**: 10.11% coverage baseline targeting 100% (ratchet system: 2% tolerance, never reduce)
|