Class: Aidp::Harness::UI::EnhancedWorkflowSelector

Inherits:
Object
  • Object
show all
Defined in:
lib/aidp/harness/ui/enhanced_workflow_selector.rb

Overview

Enhanced workflow selector with TTY components

Defined Under Namespace

Classes: WorkflowError

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(tui = nil, project_dir: Dir.pwd) ⇒ EnhancedWorkflowSelector

Returns a new instance of EnhancedWorkflowSelector.



18
19
20
21
22
23
# File 'lib/aidp/harness/ui/enhanced_workflow_selector.rb', line 18

def initialize(tui = nil, project_dir: Dir.pwd)
  @tui = tui || EnhancedTUI.new
  @user_input = {}
  @workflow_selector = Aidp::Workflows::Selector.new
  @project_dir = project_dir
end

Instance Attribute Details

#project_dirObject (readonly)

Expose state for testability



15
16
17
# File 'lib/aidp/harness/ui/enhanced_workflow_selector.rb', line 15

def project_dir
  @project_dir
end

#tuiObject (readonly)

Expose state for testability



15
16
17
# File 'lib/aidp/harness/ui/enhanced_workflow_selector.rb', line 15

def tui
  @tui
end

#user_inputObject (readonly)

Expose state for testability



15
16
17
# File 'lib/aidp/harness/ui/enhanced_workflow_selector.rb', line 15

def user_input
  @user_input
end

#workflow_selectorObject

Returns the value of attribute workflow_selector.



16
17
18
# File 'lib/aidp/harness/ui/enhanced_workflow_selector.rb', line 16

def workflow_selector
  @workflow_selector
end

Instance Method Details

#select_workflow(harness_mode: false, mode: :analyze) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/aidp/harness/ui/enhanced_workflow_selector.rb', line 25

def select_workflow(harness_mode: false, mode: :analyze)
  if harness_mode
    select_workflow_with_defaults(mode)
  else
    select_workflow_interactive(mode)
  end
end