Repository navigation
v1.4
Fragua v1.4
Overview
Version v1.4 introduces a new step construction and reuse layer aimed at reducing boilerplate while preserving Fragua’s core principles: immutability, explicitness, and composability.
This release adds two new foundational classes:
FraguaStepBuilderFraguaStepIndex
Together, they provide a structured and safe way to define, reuse, and compose pipeline steps.
New Features
1. FraguaStepBuilder
The FraguaStepBuilder is a mutable builder designed to construct immutable FraguaStep instances incrementally.
Key characteristics:
- Fluent API for step configuration
- Supports method chaining:
.with_params().with_save_as().with_use()
- Produces immutable
FraguaStepobjects via.build() - Enables safe, incremental construction of steps
Benefits:
- Reduces repetitive boilerplate when defining steps
- Keeps immutability guarantees at the final step level
- Improves readability and intent when assembling pipelines
2. FraguaStepIndex
The FraguaStepIndex acts as a registry for reusable step builder templates.
Key characteristics:
- Stores named
FraguaStepBuildertemplates - Returns fresh builder copies on access
- Prevents shared mutable state
- Enables discoverable and explicit step composition
Benefits:
- Encourages reuse of common step patterns
- Centralizes step definitions without hiding behavior
- Supports scalable pipeline design through templates
Design Rationale
This release formalizes a clear separation between:
- Step definition (builders & templates)
- Step execution (immutable steps & agents)
By introducing builders and an index, Fragua improves developer ergonomics while maintaining strict execution semantics.
Compatibility
- Fully backward compatible
- Existing
FraguaStepandFraguaPipelineusage remains unchanged - New components are optional and additive
Summary
Fragua v1.4 strengthens the framework’s composability story by introducing a structured way to build and reuse steps—without compromising clarity, immutability, or control.