ID 589718 - Expressions stop evaluating when going through merge nodes after metadata has been queried 48 times via Python or TCL

Follow

Problem summary
Expressions stop evaluating when going through merge nodes after metadata has been queried 48 times via Python or TCL
 
This happens with at least Switch, Dissolve and Merge nodes, or a mix of different Merge nodes
 
Customer reported version
nuke.14.1v5
 
Customer reported platform
windows11
 
Steps to reproduce
 
1) Open the attached Nuke Script
 
The Nuke script has different examples, with each one using an expression to query the current metadata, if it is exists, set the nodes input. The input should always be input 1, which contains a Grade adding 0.1 to the red channel. Below is the Python expression used:
 

if nuke.thisNode().metadata():    ret = Trueelse:    ret = False

2) Connect a viewer to the outputs of the node tres, and color pick the viewer, the red channel should be 6.0
 
Expected behaviour
For the Grade node input to be selected every time, so the red channel should be 6.0

 
 
Actual behaviour
The expressions stop evaluating partway up the node graph, capping the value at 4.8:
 

 
Workaround
None
 
Reproduced by support
This bug has been reproduced in:
Nuke 15.1v4 - Windows 10, macOS Sonoma
Nuke 14.0v3 - Windows 10, macOS Sonoma - Python regression
Nuke 12.0v1 - Windows 10, macOS Sonoma - TCL only
 
Unable to reproduce bug in:
Nuke 14.0v2 - Windows 10, macOS Sonoma - with Python
 
Earliest version tested
Nuke 12.0v1 - This issue appears to be in all tested versions of the product
 

    We're sorry to hear that

    Please tell us why