Summary
Integrate batch aggregate for WorkshopCoordinator transport operations to complete batch aggregate integration across all coordinators and prepare for future rake management.
Problem
WorkshopCoordinator currently uses manual coupling/decoupling time calculations without batch aggregate integration, making it inconsistent with CollectionCoordinator and ParkingCoordinator.
Solution
Implement batch aggregate integration for both inbound (Retrofit → Workshop) and outbound (Workshop → Retrofitted) transport with MVP coupling strategy.
Implementation Details
MVP Coupling Strategy (Approach C - Pre-Dissolved)
- Retrofit Track: Wagons treated as decoupled (MVP simplification)
- Before Transport: Couple wagons into rake:
(n-1) × coupling_time
- Transport: Batch aggregate for validation and tracking
- Workshop: Manual coupling/decoupling for bay operations
Changes
- Retrofit Track Coupling: Add coupling time before transport to workshop
- Inbound Batch Aggregate: Create with SCREW couplers
- Outbound Batch Aggregate: Create with DAC couplers (after retrofit)
- New Methods:
_transport_to_workshop_with_batch()
_transport_from_workshop_with_batch()
- Fallback: Old methods if batch aggregate creation fails
Summary
Integrate batch aggregate for WorkshopCoordinator transport operations to complete batch aggregate integration across all coordinators and prepare for future rake management.
Problem
WorkshopCoordinator currently uses manual coupling/decoupling time calculations without batch aggregate integration, making it inconsistent with CollectionCoordinator and ParkingCoordinator.
Solution
Implement batch aggregate integration for both inbound (Retrofit → Workshop) and outbound (Workshop → Retrofitted) transport with MVP coupling strategy.
Implementation Details
MVP Coupling Strategy (Approach C - Pre-Dissolved)
(n-1) × coupling_timeChanges
_transport_to_workshop_with_batch()_transport_from_workshop_with_batch()