enhance_swarm 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.enhance_swarm/archives/session_1751182876_06ee7e0e_20250629_094116.json +16 -0
- data/.enhance_swarm/archives/session_1751187567_9d1227c8_20250629_105927.json +16 -0
- data/.enhance_swarm/archives/session_1751190454_6faf48a2_20250629_114734.json +16 -0
- data/.enhance_swarm/archives/session_1751190516_3e4f9437_20250629_114836.json +16 -0
- data/.enhance_swarm/archives/session_1751192354_79568f0f_20250629_121914.json +16 -0
- data/.enhance_swarm/archives/session_1751195070_99653548_20250629_130433.json +16 -0
- data/.enhance_swarm/archives/session_1751196542_a292e40c_20250629_132902.json +7 -0
- data/.enhance_swarm/archives/session_1751196824_9b65d28e_20250629_133344.json +24 -0
- data/.enhance_swarm/archives/session_1751197867_d16edbc5_20250629_135109.json +24 -0
- data/.enhance_swarm/archives/session_1751208541_f9531ce5_20250629_164901.json +16 -0
- data/.enhance_swarm/logs/backend_error.log +0 -0
- data/.enhance_swarm/logs/backend_output.log +0 -0
- data/.enhance_swarm/logs/debug_manual_error.log +0 -0
- data/.enhance_swarm/logs/debug_manual_output.log +18 -0
- data/.enhance_swarm/logs/frontend_error.log +0 -0
- data/.enhance_swarm/logs/frontend_output.log +45 -0
- data/.enhance_swarm/logs/general_error.log +0 -0
- data/.enhance_swarm/logs/general_output.log +404 -0
- data/.enhance_swarm/user_patterns.json +5 -5
- data/DEPLOYMENT.md +344 -0
- data/README.md +183 -820
- data/debug_agent_spawner.rb +99 -0
- data/debug_cli_spawn.rb +95 -0
- data/debug_fixes.rb +209 -0
- data/debug_script_execution.rb +124 -0
- data/debug_session_issue.rb +87 -0
- data/debug_spawn.rb +113 -0
- data/debug_spawn_step_by_step.rb +190 -0
- data/debug_worktree.rb +77 -0
- data/enhance_swarm-0.1.1.gem +0 -0
- data/enhance_swarm-1.0.0.gem +0 -0
- data/final_validation_test.rb +199 -0
- data/lib/enhance_swarm/agent_spawner.rb +5 -1
- data/lib/enhance_swarm/cli.rb +42 -9
- data/lib/enhance_swarm/control_agent.rb +28 -27
- data/lib/enhance_swarm/smart_orchestration.rb +60 -0
- data/lib/enhance_swarm/task_coordinator.rb +1050 -0
- data/lib/enhance_swarm/version.rb +1 -1
- data/lib/enhance_swarm/visual_dashboard.rb +2 -1
- data/test_blog_app/.enhance_swarm/archives/session_1751187575_e119ea73_20250629_105935.json +16 -0
- data/test_blog_app/.enhance_swarm/archives/session_1751187637_7fda97dd_20250629_110037.json +32 -0
- data/test_blog_app/.enhance_swarm/archives/session_1751190527_4c99147e_20250629_114847.json +32 -0
- data/test_blog_app/.enhance_swarm/archives/session_1751190541_8dc83406_20250629_114901.json +16 -0
- data/test_blog_app/.ruby-version +1 -0
- data/test_blog_app/Gemfile +18 -0
- data/test_blog_app/Gemfile.lock +206 -0
- data/test_blog_app/README.md +24 -0
- data/test_blog_app/Rakefile +6 -0
- data/test_blog_app/app/assets/images/.keep +0 -0
- data/test_blog_app/app/assets/stylesheets/application.css +10 -0
- data/test_blog_app/app/controllers/application_controller.rb +4 -0
- data/test_blog_app/app/controllers/concerns/.keep +0 -0
- data/test_blog_app/app/helpers/application_helper.rb +2 -0
- data/test_blog_app/app/models/application_record.rb +3 -0
- data/test_blog_app/app/models/concerns/.keep +0 -0
- data/test_blog_app/app/views/layouts/application.html.erb +27 -0
- data/test_blog_app/app/views/pwa/manifest.json.erb +22 -0
- data/test_blog_app/app/views/pwa/service-worker.js +26 -0
- data/test_blog_app/bin/dev +2 -0
- data/test_blog_app/bin/rails +4 -0
- data/test_blog_app/bin/rake +4 -0
- data/test_blog_app/bin/setup +34 -0
- data/test_blog_app/config/application.rb +42 -0
- data/test_blog_app/config/boot.rb +3 -0
- data/test_blog_app/config/credentials.yml.enc +1 -0
- data/test_blog_app/config/database.yml +32 -0
- data/test_blog_app/config/environment.rb +5 -0
- data/test_blog_app/config/environments/development.rb +51 -0
- data/test_blog_app/config/environments/production.rb +67 -0
- data/test_blog_app/config/environments/test.rb +42 -0
- data/test_blog_app/config/initializers/assets.rb +7 -0
- data/test_blog_app/config/initializers/content_security_policy.rb +25 -0
- data/test_blog_app/config/initializers/filter_parameter_logging.rb +8 -0
- data/test_blog_app/config/initializers/inflections.rb +16 -0
- data/test_blog_app/config/locales/en.yml +31 -0
- data/test_blog_app/config/master.key +1 -0
- data/test_blog_app/config/puma.rb +38 -0
- data/test_blog_app/config/routes.rb +14 -0
- data/test_blog_app/config.ru +6 -0
- data/test_blog_app/db/seeds.rb +9 -0
- data/test_blog_app/lib/tasks/.keep +0 -0
- data/test_blog_app/log/.keep +0 -0
- data/test_blog_app/public/400.html +114 -0
- data/test_blog_app/public/404.html +114 -0
- data/test_blog_app/public/406-unsupported-browser.html +114 -0
- data/test_blog_app/public/422.html +114 -0
- data/test_blog_app/public/500.html +114 -0
- data/test_blog_app/public/icon.png +0 -0
- data/test_blog_app/public/icon.svg +3 -0
- data/test_blog_app/public/robots.txt +1 -0
- data/test_blog_app/script/.keep +0 -0
- data/test_blog_app/storage/.keep +0 -0
- data/test_blog_app/test/controllers/.keep +0 -0
- data/test_blog_app/test/fixtures/files/.keep +0 -0
- data/test_blog_app/test/helpers/.keep +0 -0
- data/test_blog_app/test/integration/.keep +0 -0
- data/test_blog_app/test/models/.keep +0 -0
- data/test_blog_app/test/test_helper.rb +15 -0
- data/test_blog_app/test_enhance_swarm_e2e.rb +244 -0
- data/test_blog_app/test_realistic_workflow.rb +292 -0
- data/test_blog_app/tmp/.keep +0 -0
- data/test_blog_app/tmp/pids/.keep +0 -0
- data/test_blog_app/tmp/storage/.keep +0 -0
- data/test_blog_app/vendor/.keep +0 -0
- data/test_complete_system.rb +267 -0
- metadata +99 -1
@@ -76,6 +76,34 @@ module EnhanceSwarm
|
|
76
76
|
}
|
77
77
|
end
|
78
78
|
|
79
|
+
# Enhanced progress tracking integration
|
80
|
+
def track_progress_with_streamer(streamer = nil)
|
81
|
+
return unless streamer
|
82
|
+
|
83
|
+
Thread.new do
|
84
|
+
while @status == 'coordinating'
|
85
|
+
status = current_status
|
86
|
+
|
87
|
+
# Update progress tracker
|
88
|
+
progress = status['progress_percentage'] || 0
|
89
|
+
message = status['message'] || 'Coordinating agents...'
|
90
|
+
|
91
|
+
streamer.set_progress(progress,
|
92
|
+
message: message,
|
93
|
+
details: {
|
94
|
+
operation: 'control_coordination',
|
95
|
+
phase: status['phase'],
|
96
|
+
active_agents: status['active_agents']&.length || 0,
|
97
|
+
completed_agents: status['completed_agents']&.length || 0
|
98
|
+
})
|
99
|
+
|
100
|
+
break if %w[completed failed].include?(status['status'])
|
101
|
+
|
102
|
+
sleep(2)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
79
107
|
private
|
80
108
|
|
81
109
|
def spawn_control_agent
|
@@ -276,32 +304,5 @@ module EnhanceSwarm
|
|
276
304
|
end
|
277
305
|
end
|
278
306
|
|
279
|
-
# Enhanced progress tracking integration
|
280
|
-
def track_progress_with_streamer(streamer = nil)
|
281
|
-
return unless streamer
|
282
|
-
|
283
|
-
Thread.new do
|
284
|
-
while @status == 'coordinating'
|
285
|
-
status = current_status
|
286
|
-
|
287
|
-
# Update progress tracker
|
288
|
-
progress = status['progress_percentage'] || 0
|
289
|
-
message = status['message'] || 'Coordinating agents...'
|
290
|
-
|
291
|
-
streamer.set_progress(progress,
|
292
|
-
message: message,
|
293
|
-
operation: 'control_coordination',
|
294
|
-
details: {
|
295
|
-
phase: status['phase'],
|
296
|
-
active_agents: status['active_agents']&.length || 0,
|
297
|
-
completed_agents: status['completed_agents']&.length || 0
|
298
|
-
})
|
299
|
-
|
300
|
-
break if %w[completed failed].include?(status['status'])
|
301
|
-
|
302
|
-
sleep(2)
|
303
|
-
end
|
304
|
-
end
|
305
|
-
end
|
306
307
|
end
|
307
308
|
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'logger'
|
4
|
+
require_relative 'task_coordinator'
|
5
|
+
|
6
|
+
module EnhanceSwarm
|
7
|
+
# Smart orchestration with intelligent defaults for all new installations
|
8
|
+
# Implements real dev team patterns as the default user experience
|
9
|
+
class SmartOrchestration
|
10
|
+
def self.enhance_with_coordination(description)
|
11
|
+
orchestrator = new
|
12
|
+
orchestrator.smart_enhance(description)
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize
|
16
|
+
@coordinator = TaskCoordinator.new
|
17
|
+
end
|
18
|
+
|
19
|
+
def smart_enhance(description)
|
20
|
+
Logger.info("🎯 Smart Enhancement Protocol: #{description}")
|
21
|
+
|
22
|
+
# Check if this looks like a review/polish task
|
23
|
+
if review_task?(description)
|
24
|
+
handle_review_task(description)
|
25
|
+
else
|
26
|
+
# Standard coordinated development
|
27
|
+
@coordinator.coordinate_task(description)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
private
|
32
|
+
|
33
|
+
def review_task?(description)
|
34
|
+
description.downcase.match?(/review|polish|qa|test|merge|integrate|finish|complete|open browser/)
|
35
|
+
end
|
36
|
+
|
37
|
+
def handle_review_task(description)
|
38
|
+
Logger.info("🔍 Detected review/polish task - using smart review workflow")
|
39
|
+
|
40
|
+
# Create specialized review and polish tasks
|
41
|
+
review_tasks = [
|
42
|
+
"Review current codebase state and identify missing features or improvements",
|
43
|
+
"Perform QA testing of all existing functionality and identify issues",
|
44
|
+
"Polish and improve UI/UX consistency and user experience",
|
45
|
+
"Integrate all improvements and ensure everything works together",
|
46
|
+
"Prepare for final review and browser testing"
|
47
|
+
]
|
48
|
+
|
49
|
+
review_tasks.each_with_index do |task, index|
|
50
|
+
Logger.info("📋 Review Phase #{index + 1}: #{task}")
|
51
|
+
@coordinator.coordinate_task(task)
|
52
|
+
|
53
|
+
# Brief pause between review phases
|
54
|
+
sleep(1) if index < review_tasks.length - 1
|
55
|
+
end
|
56
|
+
|
57
|
+
Logger.info("✅ Smart review workflow completed")
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|