I recently ran into a problem in WSS3 with emails not firing when folks registered for an online course. The workflow would inconsistently end with the status of ‘stopped’. However, every time I would run it things went through without a problem. After some research I stumbled upon a great post that seems to have solved the issue! I have posted the full post below (with link).
In short, just make sure that if you are sending emails to a group that the group members are visible to all (which they aren’t by default).
I have had a baffling problem with a simple workflow I created in SharePoint Designer to manage a simple approval business process. The workflow repeatedly completed but did so with a Stopped status and none of the actions in the workflow were executed. There were no errors reported and I could find no reason based on what I was doing in the workflow for this to occur. The workflow would send email to the members of a SharePoint group, set a task for these members, create a new entry in a separate list and then update a field on the item in the list that the workflow is associated with. None of these actions were being performed. If I opened the workflow in Designer and then saved it (clicking the Finish button) I could immediately run workflow with no problems but the next person to attempt to run it would hit the same issue.
Well, it turns out that a stalemate occurs when you create a SharePoint Designer workflow with an action that sends e-mail to a SharePoint group. The workflow runs but completes with a status Stopped when run accounts with any permission level other than when run under Administrator account.
This issue occurs because by default, the visibility of the members list of a SharePoint group is granted only to the members of those in the group. Any other user outside that group cannot see the members of the group and as a result the workflow cannot see who to send the email to and fails setting the status to Stopped. To resolve the issue, go to SharePoint Group Settings (Site Settings -> People and Groups -> select the group -> Settings -> Group Settings) and select Everyone to see the members of group (see the picture below).
This SharePoint Designer Team blog entry gives some clarity around the issue of declarative workflows and user context.