It seems like you are maybe wanting this- If the previous row is the same, then get the previous row's run_nr. If it is different, then increment.
case when lag( property_A ) over() = property_A and lag( property_B ) over() = property_B then coalesce( lag( run_nr ) over(), 1 ) else lag( run_nr ) over() + 1 end Perhaps there is a much simpler implementation though.