* refactor(processor): enhance type annotations for processors in record, replay, teleoperate, and control utils
- Updated type annotations for preprocessor and postprocessor parameters in record_loop and predict_action functions to specify the expected dictionary types.
- Adjusted robot_action_processor type in ReplayConfig and TeleoperateConfig to improve clarity and maintainability.
- Ensured consistency in type definitions across multiple files, enhancing overall code readability.
* refactor(processor): enhance type annotations for RobotProcessorPipeline in various files
- Updated type annotations for RobotProcessorPipeline instances in evaluate.py, record.py, replay.py, teleoperate.py, and other related files to specify input and output types more clearly.
- Introduced new type conversions for PolicyAction and EnvTransition to improve type safety and maintainability across the processing pipelines.
- Ensured consistency in type definitions, enhancing overall code readability and reducing potential runtime errors.
* refactor(processor): update transition handling in processors to use transition_to_batch
- Replaced direct transition handling with transition_to_batch in various processor tests and implementations to ensure consistent batching of input data.
- Updated assertions in tests to reflect changes in data structure, enhancing clarity and maintainability.
- Improved overall code readability by standardizing the way transitions are processed across different processor types.
* refactor(tests): standardize transition key usage in processor tests
- Updated assertions in processor test files to utilize the TransitionKey for action references, enhancing consistency across tests.
- Replaced direct string references with TransitionKey constants for improved readability and maintainability.
- Ensured that all relevant tests reflect these changes, contributing to a more uniform approach in handling transitions.
* refactor(processor): rename MapDeltaActionToRobotAction and MapTensorToDeltaActionDict for consistency
* refactor(processor): rename DeviceProcessor to DeviceProcessorStep for consistency across modules
* refactor(processor): rename Torch2NumpyActionProcessor to Torch2NumpyActionProcessorStep for consistency
* refactor(processor): rename Numpy2TorchActionProcessor to Numpy2TorchActionProcessorStep for consistency
* refactor(processor): rename AddTeleopActionAsComplimentaryData to AddTeleopActionAsComplimentaryDataStep for consistency
* refactor(processor): rename ImageCropResizeProcessor and AddTeleopEventsAsInfo for consistency
* refactor(processor): rename TimeLimitProcessor to TimeLimitProcessorStep for consistency
* refactor(processor): rename GripperPenaltyProcessor to GripperPenaltyProcessorStep for consistency
* refactor(processor): rename InterventionActionProcessor to InterventionActionProcessorStep for consistency
* refactor(processor): rename RewardClassifierProcessor to RewardClassifierProcessorStep for consistency
* refactor(processor): rename JointVelocityProcessor to JointVelocityProcessorStep for consistency
* refactor(processor): rename MotorCurrentProcessor to MotorCurrentProcessorStep for consistency
* refactor(processor): rename NormalizerProcessor and UnnormalizerProcessor to NormalizerProcessorStep and UnnormalizerProcessorStep for consistency
* refactor(processor): rename VanillaObservationProcessor to VanillaObservationProcessorStep for consistency
* refactor(processor): rename RenameProcessor to RenameProcessorStep for consistency
* refactor(processor): rename TokenizerProcessor to TokenizerProcessorStep for consistency
* refactor(processor): rename ToBatchProcessor to AddBatchDimensionProcessorStep for consistency
* refactor(processor): update config file name in test for RenameProcessorStep consistency
* refactor(processor): introduce generic type for to_output
- Always return `TOutput`
- Remove `_prepare_transition`, so `__call__` now always returns `TOutput`
- Update tests accordingly
- This refactor paves the way for adding settings for `to_transition` and `to_output` in `make_processor` and the post-processor
* refactor(processor): consolidate ProcessorKwargs usage across policies
- Removed the ProcessorTypes module and integrated ProcessorKwargs directly into the processor pipeline.
- Updated multiple policy files to utilize the new ProcessorKwargs structure for preprocessor and postprocessor arguments.
- Simplified the handling of processor kwargs by initializing them to empty dictionaries when not provided.
- Introduced new test files for ACT, Classifier, Diffusion, PI0, SAC, SmolVLA, TDMPC, and VQBeT policy processors.
- Each test file includes unit tests to validate functionality, including handling of batch sizes, device management, and data type conversions.
- Enhanced test coverage to ensure robustness and reliability of processor implementations across different scenarios.