NAME

Langertha::Raid::Loop - Looping Raid orchestrator

VERSION

version 0.305

SYNOPSIS

my $raid = Langertha::Raid::Loop->new(
  steps     => [ $worker ],
  max_loops => 3,
);

my $result = await $raid->run_f($ctx);

DESCRIPTION

Repeats child step execution on orchestration level (not Raider's internal tool loop). The loop stops when:

  • max_loops/max_iterations is reached

  • a step returns question, pause, or abort

  • optional continue_while callback returns false

max_loops

Maximum number of loop iterations (default limit).

max_iterations

Alias/override for max_loops when explicitly provided.

continue_while

Optional callback sub ($ctx, $iteration, $result) controlling whether the loop should continue after each final iteration.

run_f

my $result = await $raid->run_f($ctx);

Executes loop iterations with explicit iteration state and safe stop rules.

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://github.com/Getty/langertha/issues.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

Torsten Raudssus <torsten@raudssus.de> https://raudss.us/

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Torsten Raudssus.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.