summaryrefslogtreecommitdiff
path: root/crates/system_action/src
AgeCommit message (Collapse)Author
2025-11-25Improve documentation for system action and config file crates魏曹先生
2025-10-29update: Action.rs 1. Rename `insert` to `with_data` and `insert_arc` to魏曹先生
`with_arc_data` 2. Add new `insert_data` and `insert_arc_data` methods that take &mut self
2025-10-27update: ActionContext 1. Rename `local` to `proc_on_local` 2. Add魏曹先生
`is_remote_action`
2025-10-27fix: Make the ActionContext passed to on_proc_begin mutable魏曹先生
2025-10-24Re-export subcrate `action_system` to `just_enough_vcs`魏曹先生
2025-10-13Fix Clippy warnings and optimize code魏曹先生
- Fix let_underscore_future warning by properly awaiting async functions - Make accept_import function async to match add_mapping usage - Propagate errors properly with ? operator instead of ignoring them - Replace manual Default implementation with derive attribute - Replace vec! with array literal to avoid useless_vec warning - All tests pass and code is now Clippy clean
2025-10-13feat: implement asynchronous action call system魏曹先生
- Add async callback support with proper argument passing - Implement remote action invocation via TCP connection - Add hello_world_action example demonstrating async communication - Improve ActionPool with type-safe async processing - Update client registry for remote action handling - Enhance ActionContext with better instance management - Support both local and remote action execution modes
2025-10-13feat: Implement JSON-based type-erased action invocation魏曹先生
- Add process_json method to ActionPool for type-agnostic calls using JSON serialization - Extend ActionContext with action_name and action_args fields and setter methods - Update action_gen macro to use process_json instead of typed process method - Implement remote action invocation framework in client_registry and action_service - Add protocol definitions for remote action communication - Enable flexible action execution without explicit type specifications
2025-10-13feat: Add JSON-based action invocation to ActionPool魏曹先生
- Extend action_gen macro to generate JSON serialization logic - Implement generic action processing using JSON text for type-agnostic calls - Add callback mechanism with action name and arguments in ActionPool - Update client and server registries to use new callback system - Improve action system flexibility at the cost of serialization overhead
2025-10-12feat: Add callback mechanism to ActionPool魏曹先生
- Add ProcBeginCallback and ProcEndCallback types - Implement set_on_proc_begin and set_on_proc_end methods - Add callback execution in process method - Update trait bounds for better type safety
2025-10-12feat: Add Clone implementation for ActionContext魏曹先生
This enables ActionContext to be cloned when setting up process begin callbacks, resolving lifetime issues in callback registration.
2025-10-06feat: add default implementation and convenience methods to ActionContext魏曹先生
- Implement Default trait for ActionContext - Add local() and remote() constructor methods - Make instance field optional for better flexibility
2025-10-06Rename vcs_service to action_system for better naming clarity魏曹先生
- Create new action_system crate with action framework - Create action_system_macros crate for procedural macros - Update vcs crate dependencies to use action_system - Maintain same functionality with improved naming