Design of GA and GE In GAS

Hi, everyone! I have a question related to GAS that I’d like to ask. From the publicly available information on the internet, I learned that GE is a purely logical entity and shouldn’t have any randomness. Suppose there is a fireball skill: hitting an enemy will cause them to burn, and when the burning reaches 3 layers, it will explode. The part of the logic “if the burning reaches 3 layers then it explodes” is naturally placed within GE: if layer >= 3 then explode. If it’s not placed within GE, should I abstract out a BurningBuffAbility? Then the wait gameplay tag changed: if layer >= 3 then explode?