We found a weird issue today when items were getting published even if they were not in final workflow state. We figured out that somehow enableWorkflow in below setting got changed to false which resulted in this issue. This setting can also be used to disable workflow in your site.
<site name="publisher" domain="sitecore" enableTracking="false" enableWorkflow="true" />