Inferred Fields and other system managed fields my take a while to populate. When this happens, they won't have the necessary values at the moment the campaign is triggered. To resolve this, add a small wait step as the first step of the flow for trigger campaigns. This wait step allows the system to populate these fields and index them appropriately so they can be used as criteria in flow steps that have decisions in them.