-
Notifications
You must be signed in to change notification settings - Fork 9
Add policy concept #183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add policy concept #183
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces a Policy abstraction that serves as a factory for creating Pipeline objects. The Policy pattern separates the "what" (control flow and strategy) from the "how" (execution details in Actions), providing a clean architectural boundary for defining different workflow behaviors.
Key changes:
- Adds
Policyabstract base class withmakePipeline()factory method - Implements comprehensive unit tests covering normal execution and error handling
- Integrates the new test into the CMake build system
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| src/AMSlib/wf/policy.hpp | Defines the Policy abstract interface as a factory for Pipeline construction |
| tests/AMSlib/wf/policy.cpp | Provides comprehensive test coverage with mock implementations testing both success and failure scenarios |
| tests/AMSlib/wf/CMakeLists.txt | Registers the new policy unit test in the build system |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <[email protected]>
* Initial plan * Remove unnecessary __has_include preprocessor check Co-authored-by: koparasy <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: koparasy <[email protected]>
lpottier
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
No description provided.