Module: Ace::Git::Worktree::Molecules

Defined in:
lib/ace/git/worktree/molecules/pr_creator.rb,
lib/ace/git/worktree/molecules/task_pusher.rb,
lib/ace/git/worktree/molecules/task_fetcher.rb,
lib/ace/git/worktree/molecules/config_loader.rb,
lib/ace/git/worktree/molecules/hook_executor.rb,
lib/ace/git/worktree/molecules/task_committer.rb,
lib/ace/git/worktree/molecules/worktree_lister.rb,
lib/ace/git/worktree/molecules/worktree_creator.rb,
lib/ace/git/worktree/molecules/worktree_remover.rb,
lib/ace/git/worktree/molecules/current_task_linker.rb,
lib/ace/git/worktree/molecules/task_status_updater.rb,
lib/ace/git/worktree/molecules/parent_task_resolver.rb

Defined Under Namespace

Classes: ConfigLoader, CurrentTaskLinker, HookExecutor, ParentTaskResolver, PrCreator, TaskCommitter, TaskFetcher, TaskPusher, TaskStatusUpdater, WorktreeCreator, WorktreeLister, WorktreeRemover

Instance Method Summary collapse

Instance Method Details

#ace_task_unavailable_messageString

Get helpful error message when ace-task is unavailable

Returns:

  • (String)

    User-friendly error message with installation guidance



216
217
218
219
220
221
222
223
224
225
226
227
228
# File 'lib/ace/git/worktree/molecules/task_fetcher.rb', line 216

def ace_task_unavailable_message
  <<~MESSAGE
    ace-task is not available.

    Required for task-aware worktree operations.

    In a mono-repo environment, ensure ace-task is in your Gemfile.
    For standalone installation:
    1. Install ace-task gem: gem install ace-task

    For more information: https://github.com/cs3b/ace
  MESSAGE
end

#check_availability_with_messageHash

Check availability and return helpful error if unavailable

Returns:

  • (Hash)

    { available: boolean, message: string }



233
234
235
236
237
238
239
240
# File 'lib/ace/git/worktree/molecules/task_fetcher.rb', line 233

def check_availability_with_message
  if ace_task_available?
    # API is available - this is the preferred method in mono-repo
    {available: true, message: "ace-task API is available"}
  else
    {available: false, message: ace_task_unavailable_message}
  end
end