Class: Commiti::Flows::BaseFlow
- Inherits:
-
Object
- Object
- Commiti::Flows::BaseFlow
- Defined in:
- lib/flows/base_flow.rb
Direct Known Subclasses
Instance Method Summary collapse
-
#initialize(options:) ⇒ BaseFlow
constructor
A new instance of BaseFlow.
- #run ⇒ Object
Constructor Details
#initialize(options:) ⇒ BaseFlow
Returns a new instance of BaseFlow.
6 7 8 9 |
# File 'lib/flows/base_flow.rb', line 6 def initialize(options:) # Merge defaults/config file with CLI options (CLI options win) @options = Commiti::ConfigLoader.load.merge( || {}) end |
Instance Method Details
#run ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/flows/base_flow.rb', line 11 def run prepare! diff = collect_diff client = Commiti::GoogleClient.new(config: ) selected_model = [:model] context = Commiti::FlowContextBuilder.build( flow_type: flow_type, diff: diff, client: client, run_stage: method(:run_stage), model: selected_model ) Commiti::MessagePresenter.print_summarization_notice(context[:summarized_result]) candidates = generate_candidates( client: client, prompt: context[:prompt], diff_metadata: context[:diff_metadata], model: selected_model ) = (candidates) maybe_copy_to_clipboard() finalize() end |