What problem does it solve?
This Skill addresses the complexity of managing side effects in Java applications by providing a structured, algebraic-effect-style approach that separates business logic from execution, eliminating nested error handling and simplifying testing.
Core Features & Use Cases
- Algebraic Effect Handlers: Define domain operations as data structures (Free monads) and interpret them via multiple modes like production, testing, or audit.
- Mock-Free Testing: Use Id monad interpreters to perform deterministic, pure testing of complex workflows without needing external mocks or Spring context.
- Use Case: A payment processing service can be written once and interpreted as a real IO-based production service, a pure Id-based test suite, or a dry-run fee estimator without changing the core business logic.
Quick Start
Use the hkj-effects skill to generate an effect algebra interface and a corresponding interpreter skeleton for a new domain operation.