NAME

Langertha::Raid - Base class for orchestrating Runnable steps

VERSION

version 0.305

SYNOPSIS

my $raid = Langertha::Raid::Sequential->new(
  steps => [ $raider_a, $raider_b ],
);

my $ctx = Langertha::RunContext->new(input => 'start');
my $result = await $raid->run_f($ctx);

DESCRIPTION

Abstract orchestration base class for runnable workflows. Holds child steps that implement run_f($ctx) and provides shared helpers for context coercion, step validation, result normalization, and sequential step driving.

steps

Ordered child nodes. Each step must implement run_f.

name

Optional human-friendly node name used in traces and diagnostics.

_validate_steps

Internal step validation used at construction.

_coerce_context

Internal helper that normalizes scalar/array input into Langertha::RunContext.

_normalize_result

Internal helper to normalize scalar/hash/object returns into Langertha::Result.

_run_steps_sequentially_f

Internal sequential executor used by sequential/loop orchestrators. Stops early and propagates question, pause, and abort.

run_f

Abstract execution method required by Langertha::Role::Runnable. Concrete subclasses must implement it.

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.