We all had to learn at one time or another...
You have set your rule on the PassFail field. Rules only fire when a field changes -- so the PassFail field has to change in order for your rule to run.... and if it did change and your rule did run, you'd probably get an error about your rule creating an endless loop.
I'd probably use an expression box, instead of a text field. And then I'd conditionally format it to hide unless certain conditions are true. I've added a sample of this to your form -- the expression boxes are only formatted to look at the first field, and I've most likely got the wrong answer showing "Fail", but you'll get the idea.
Right click the link on the template in the heading of this message to save it locally. Then right click on the saved file and select Design to open in design mode so you can see what I changed.
Before you start having users fill out this form, make sure you update the names of the fields in your data source -- you'll be annoyed with yourself if in a few months you have to make changes and your field names are "field1" and so forth.