Symptoms
Suppose the following scenario: You had created a simple workflow that sends an email when a Change has occurred, next workflow had been successfully deployed but at runtime you are receiving the following error:
Specified cast not available.
In the SmartObject Service tester the same error is being thrown.
Diagnoses
One of the possible causes for such errors is that a source object for SmartObject used in your workflow has been changed after workflow has been deployed an SmartObject is out of sync with real object.
For example it maybe some added field in SharePoint list used by your workflow which has been added post workflow deployment and after the list in question was appified.
K2 expects the document library or the list or any other app to be the same or in sync with the SmartObjects so the refresh or the recreate of the SmartObject after alter of the app is an expected behavior, but as you can see in certain scenarios error messages you end up with not quite obvious/self-explanatory.
Resolution
Check SmartObjects in use by your workflow, they likely might have been changed and need to be refreshed in K2.