All parts or assemblies are plain and simple, fully constrained sketches, no incontext, no flexible assemblies ect.
Build bottom up
Having a strange thing(s) happening.
I can open a part, close that part. (no rebuild asked for)
Open an assembly with that part in, induces a rebuild of the part (traffic lights against that part as I chose not to rebuild that assembly)
If I open another assembly with that same part in, that part is not induced to rebuild! (no traffic lights)
This also happens with a sub-assembly that is in two higher assemblies, one higher level assembly induces a rebuild of said sub-assembly, whilst another higher level assembly does not induce a rebuild of said sub-assembly.
Of course Ctrl+Q of the part or sub-assembly induces a rebuild of both the higher assemblies.
If I put the part into a new sub-assembly, this does not induce a rebuild of the part when opening this new sub-assembly
If I put the sub-assembly into a new higher assembly, this does not induce a rebuild of the sub-assembly when opening this new higher assembly