-
Notifications
You must be signed in to change notification settings - Fork 604
Open
Description
Background:
Current business logic records agvCode in the task's extension attributes. Correct logic is to record agvCode as a property of the station itself.
Problem Details:
- agvCode is currently set in subTask.OperationArgs, but should be recorded as an attribute of the target StationEntity (via StationProperties or ExtendProperties).
- This leads to misleading AGV binding behavior, especially when handling holding points for non-released AGVs.
- The system fails to properly reference agvCode in subsequent append sub-task/continue workflows.
Expected Change:
- Refactor business logic to ensure agvCode is tracked per station, not per sub-task/task extension.
- Update relevant methods to read and write agvCode from StationEntity attributes.
- Ensure AGV release logic validates with station attributes and not task properties.
Impacts:
- Will affect task status transitions, sub-task append logic, and AGV release/hold workflows.
Reference:
Please see existing TaskService implementation (see methods: ReceiveTaskStatus, AppendSubTask, ClearAgvBinding, CheckAndHandleHoldingPoint).
Action Items:
- Refactor code to bind agvCode to station attributes
- Update logic in ReceiveTaskStatus, AppendSubTask for proper AGV hold/release flows
- Test across scenarios involving holding points, multiple sub-tasks, and multi-AGV
- Document changes and migration steps for affected deployments
Metadata
Metadata
Assignees
Labels
No labels