==================== Restart ==================== 1. MCCS Subarray Leaf Node provides API for the Restart workflow. 2. The TMC MCCS Leaf Node accepts the command if: a. MCCS Subarray is in any observation state: FAULT, ABORTED, RESOURCING, CONFIGURING, IDLE, READY, or SCANNING. b. MCCS Subarray is responsive.(:ref:`availablity`) 3. The TMC MCCS Leaf Node rejects the command if: a. MCCS Subarray is not in the required observation state. b. MCCS Subarray is not responsive. 4. The following state requirements are applied for command execution: a. MCCS Subarray is in any observation state: FAULT, ABORTED, RESOURCING, CONFIGURING, IDLE, READY, or SCANNING. b. MCCS Subarray node is available. 5. The command execution involves the following key operations: a. Check for MCCS Subarray observation state is performed. b. Based on the state: i. If the state is RESOURCING, IDLE, CONFIGURING, SCANNING, or READY: - Abort command is sent to MCCS Subarray. - Once the Abort command transitions MCCS Subarray to ABORTED observation state, Restart command is sent to MCCS Subarray. ii. If the state is FAULT or ABORTED: - Restart command is sent directly to MCCS Subarray. c. When Restart is invoked on the MCCS Subarray: i. If MCCS Subarray reports rejection or failure, command failure is reported as '**RESULT_CODE - FAILED**' on the **Long Running Command Result** attribute of the TMC MCCS Leaf Node. ii. If MCCS Subarray accepts the command, the TMC MCCS Leaf Node waits for command completion. 6. The TMC MCCS Leaf Node monitors the progress of the command via the MCCS Subarray node ObsState transitions and the **Long Running Command Result**: a. Command is **successful** when the MCCS Subarray node transitions to EMPTY observation state. This is reported as '**RESULT_CODE - OK**' on the **Long Running Command Result** attribute of the TMC MCCS Subarray leaf node. b. Command failure is reported in any of the following cases as '**RESULT_CODE - FAILED**' on the **Long Running Command Result** attribute of the TMC MCCS Subarray leaf node: i. The MCCS Subarray reports '**RESULT_CODE - FAILED**' on its **Long Running Command Result** attribute. ii. The command times out if the MCCS Subarray node does not transition to EMPTY within the timeout period specified by the **CommandTimeOutDefault** property in the Helm chart of the TMC MCCS Leaf Node.