Skip to content
This repository was archived by the owner on Jun 18, 2026. It is now read-only.

v1.4

Choose a tag to compare

@SagoDev SagoDev released this 06 Jan 05:35
· 77 commits to main since this release
fb298a4

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:

  • FraguaStepBuilder
  • FraguaStepIndex

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 FraguaStep objects 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 FraguaStepBuilder templates
  • 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 FraguaStep and FraguaPipeline usage 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.