I know, I know, it's been quite a while.
Indeed, in GOAP as implemented in 2005 by Jeff Orkin in F.E.A.R. (and reused in the sequels, extension and... Shadow Of Mordor), actions have fixed costs, ranging from 0.5 to 8. In general, the cost of attacking is much more expensive than the cost of defending. These costs can be accessed in the game database of the Free F.E.A.R. SDK (2008); here they are:
{{Animate, 1}, {Attack, 6}, {AttackBurstLimited, 5},
{AttackCrouch, 5}, {AttackFromAmbush, 4},
{AttackFromArmored, 4}, {AttackFromArmoredBounded, 4},
{AttackFromCover, 4}, {AttackFromVehicle, 1},
{AttackFromView, 4.5}, {AttackGrenadeFromCover, 2},
{AttackLunge3D, 1}, {AttackLungeMelee, 1},
{AttackLungeSuicide, 1}, {AttackLungeUncloaked, 1}, {AttackMelee, 3},
{AttackMeleeLong, 1}, {AttackMeleeUncloaked, 3}, {AttackReady, 7},
{AttackTurret, 6}, {AttackTurretCeiling, 6}, {BlindFireFromCover, 2},
{Charge, 1}, {DeathOnVehicle, 1}, {DismountNodeUncloaked, 1},
{DismountVehicle, 1}, {DodgeCovered, 1}, {DodgeOnVehicle, 1},
{DodgeRoll, 2}, {DodgeRollParanoid, 2}, {DodgeShuffle, 3},
{DrawWeapon, 1}, {EscapeDanger, 0.5}, {FaceNode, 1},
{FlushOutWithGrenade, 3}, {Follow, 3}, {FollowHeavyArmor, 2},
{FollowPlayer, 2}, {FollowPlayerFidget, 1.8}, {FollowWaitAtNode, 4},
{GetOutOfTheWay, 1}, {GotoNode, 1}, {GotoNode3D, 1}, {GotoNodeDirect, 1},
{GotoNodeOfType, 1}, {GotoTarget, 4}, {GotoTarget3D, 4}, {GotoTargetLost, 8},
{GotoValidPosition, 1}, {HolsterWeapon, 1}, {Idle, 2}, {IdleFidget, 1},
{IdleOnVehicle, 1}, {IdleTurret, 2}, {InspectDisturbance, 2},
{InstantDeath, 1}, {InstantDeathKnockDown, 1}, {KnockDownBullet, 2},
{KnockDownExplosive, 2}, {KnockDownMelee, 2}, {LongRecoilBullet, 3},
{LongRecoilExplosive, 3}, {LongRecoilHelmetPiercing, 3}, {LongRecoilMelee, 3},
{LookAtDisturbance, 1.5}, {LookAtDisturbanceFromView, 3},
{LopeToTargetUncloaked, 1}, {MountNodeUncloaked, 1}, {MountVehicle, 1},
{ReactToDanger, 1}, {Reload, 5}, {ReloadCovered, 1}, {ReloadCrouch, 5},
{ShortRecoilMelee, 4}, {Stunned, 1}, {SuppressionFire, 2},
{SuppressionFireFromCover, 1}, {SurveyArea, 1}, {TraverseBlockedDoor, 1},
{TraverseLink, 2}, {TraverseLinkUncloaked, 1}, {Uncover, 1},
{UseSmartObjectNode, 3}, {UseSmartObjectNodeMounted, 1}}
But it's not the case in all GOAP implementations and, for instance, the Tomb Raiders have variable costs (e.g. the distance for a Goto action).
Actions also have preconditions and some actions must be played despite the GOAP architecture (e.g. play a "stunned" animation in reaction rapidly decreasing health -- despite the "Kill Enemy" Goal and the plan that GOAP returns to satisfy that Goal). In your exemple, i.e. running away vs attacking, health level can be a precondition (and no need to have variable costs).
Or a Check_Costs() member function is executed before anything else, based on Michael's priorities, and returns the dynamic cost.
Now, please note that in Shadow Of Mordor game developers tried to play with the costs of the actions in order to influence what would be executed on screen. It turns out that it's not that easy and even cheap action don't show up so often: AI in a game supports the player; if the player doesn't do what is expected, the AI will just support that and... what will appear on screen won't be what game design expected.