in the same way that we control the permissions for a role for the whole form, we need to be able to define permissions at state level.
This means that UserA has all up to Assign permissions on the form, this automatically is inherited in Status A (initial), but only view and assign permission at State B (not able to edit) selectable through a matrix of checkboxes.
Replacing the "Visible to Roles" control (as shown below)
... with a full Permission Matrix