user5085: I have a spending validator that currently expects an output with an NFT to be recreated at its own address.
Is it necessary to also include a check whether the output's value has a greater equal ADA balance of minAdaTxOut (minAdaTxOut Reference)
Or is this done by the 2 phase node validation process?

user6086: In theory no; In practice maybe.
If min ada is not present in each output then the Tx will fail regardless of validator.
But. Min ada as implemented in Plutus is hardcoded to 2 ada. This is not how min ada works. Min ada is calculated against the size (of data) of the utxo. More than three NFTs? that'll be more than 2 Ada  required in the same utxo.
If your using constraints then you'll need to bear this in mind,
since these details may really matter https://github.com/input-output-hk/plutus-apps/blob/c4cc9ee1add8f421e57789befb6a0c90621801f1/plutus-ledger-constraints/src/Ledger/Constraints/OnChain.hs#L123
How to calculate min ada is a bit convoluted. Why isnt a function in plutus-apps for it? No idea. Why wasn't it implemented properly... ?
You can extract the logic from here https://docs.cardano.org/native-tokens/minimum-ada-value-requirement/

5085: <p>I have a spending validator that currently expects an output with an NFT to be recreated at its own address.
Is it necessary to also include a check whether the output's value has a greater equal ADA balance of <code>minAdaTxOut</code> (<a href="https://playground.plutus.iohkdev.io/doc/haddock/plutus-ledger/html/Ledger.html#v:minAdaTxOut" rel="nofollow noreferrer">minAdaTxOut Reference</a>)</p>
<p>Or is this done by the 2 phase node validation process?</p>
 6086: <p>In theory no; In practice maybe.</p>
<p>If min ada is not present in each output then the Tx will fail regardless of validator.</p>
<p>But. Min ada as implemented in Plutus is hardcoded to 2 ada. This is not how min ada works. Min ada is calculated against the size (of data) of the utxo. More than three NFTs? that'll be more than 2 Ada  required in the same utxo.</p>
<p>If your using constraints then you'll need to bear this in mind,
since these details may really matter <a href="https://github.com/input-output-hk/plutus-apps/blob/c4cc9ee1add8f421e57789befb6a0c90621801f1/plutus-ledger-constraints/src/Ledger/Constraints/OnChain.hs#L123" rel="nofollow noreferrer">https://github.com/input-output-hk/plutus-apps/blob/c4cc9ee1add8f421e57789befb6a0c90621801f1/plutus-ledger-constraints/src/Ledger/Constraints/OnChain.hs#L123</a></p>
<p>How to calculate min ada is a bit convoluted. Why isnt a function in plutus-apps for it? No idea. Why wasn't it implemented properly... ?</p>
<p>You can extract the logic from here <a href="https://docs.cardano.org/native-tokens/minimum-ada-value-requirement/" rel="nofollow noreferrer">https://docs.cardano.org/native-tokens/minimum-ada-value-requirement/</a></p>
