Hi there,
Are these separate progressions? Also, be sure that all emails, all forms, all landing pages etc are approved.
You might want to model your Smart campaigns like this:
00 - Send (this will include smart list members you want and the flow step will simply be send email then change program staus)
01 - Recevied (Smart list for this will be trigger 'was delievered email" then filter for the email you sent this will make sure you know who actually got it, no bounces. flow step is to update their program status accordingly)
02 - Opens (same concept as before trigger is opened the email, then filter for the email you sent, flow step is to update program status)
03 - Clicks on link (same concept, trigger is clicks link in Email [the exact URL] flow step change program status)
04 - Fills out form (trigger, fills out form and to be safe add in the constraint and select the specific landing page that you are using in this email. flow step will be to send yourself an alert, send email to the lead and then update the program status)
05 - Received thank you email - if you want to go a step further you could do this
hope that helps