Class: Ocak::Commands::Hiz

Inherits:
Dry::CLI::Command
  • Object
show all
Includes:
Verification
Defined in:
lib/ocak/commands/hiz.rb

Constant Summary collapse

MODEL =
'sonnet'
STEPS =
[
  { agent: 'implementer', role: 'implement' },
  { agent: 'reviewer',    role: 'review' },
  { agent: 'security-reviewer', role: 'security' }
].freeze

Instance Method Summary collapse

Methods included from Verification

#lint_extensions_for, #run_final_checks, #run_scoped_lint

Instance Method Details

#call(issue:, **options) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/ocak/commands/hiz.rb', line 29

def call(issue:, **options)
  @config = Config.load
  issue_number = issue.to_i
  logger = build_logger(issue_number)
  watch_formatter = options[:watch] ? WatchFormatter.new : nil
  claude = ClaudeRunner.new(config: @config, logger: logger, watch: watch_formatter)
  issues = IssueFetcher.new(config: @config, logger: logger)

  logger.info("=== Hiz (fast mode) for issue ##{issue_number} ===")

  run_fast_pipeline(issue_number, claude: claude, logger: logger, issues: issues)
rescue Config::ConfigNotFound => e
  warn "Error: #{e.message}"
  exit 1
end