Something from writing/fixing others code :
If there is some parameter flags that cause variations of behavior of a subroutine - clearly comment this at the parameter definition and down in the code where trhe different modes take action. (Im not talking about simple subroutines but ones hundreds and thousands of lines long that it may not be productive to have a variant copy customized for each 'mode'.)
Especially if the scope of the differences cause odd side-effects or have important limitations.
Document those (if not anything else) becase of the amount of the time/effort it takes to trace thru the code again to figure out what it does and once you find it (as when fixing other peoples poorly documemnted/commented code) it can save the effort or repeating the detailed logic tracing.
Anything with weird/atypical/convoluted behavior should get priority for comments if there is little time for any done systematically (its just a fact in the real world that you dont always have the resources to do a full commenting/documentation).
And when I make many such comments I make them very plainly stand out so that its hard to miss (indicating that the codes behavior is something to be wary of)