@User: I found the problem with the LVS issue that you found. There is a setting called "exhaustive subdivision". When it's on, it slows the comparison down, but it is only meaningful for the final iteration. So the comparison method is supposed to be: (1) set exhaustive off, (2) iterate to convergence, (3) set exhaustive on, (4) iterate to convergence. Item (3) was being missed unless netgen had to do symmetry breaking at the end. When you leave out that step, then pins can be arbitrarily swapped between any two otherwise matching devices, and netgen will not notice it. This is why your example passes, and explains why your assertion that op-amp inputs can be swapped without netgen noticing. The correction is netgen
commit 4bbc4967496828ffbdb65a5934457c4940bab40b
on
opencircuitdesign.com (and on github by tomorrow), version 1.5.190.