For Munin plugins of COUNTER and DERIVE type, what values should I use for
It depends on the data you're measuring (and not really on the data type).
COUNTERs are absolute values, so you just specify the minimum and maximum values that should be present. A common example is the number of users currently logged into a system. It's (usually) okay not to have anyone logged in, so there would be no minimum threshold. On a server, you normally wouldn't have too many simultaneously active logins, so you could warn if there were five active logins and issue a critical alert if there were ten or more. That would look like this:
users.warning :5 users.critical :10
DERIVE fields are rate-of-change values, so you just consider the minimum and maximum rates you want to see. Let's say you're monitoring electrical power in watts (and it's a DERIVE field because the system reports the total number of joules it's consumed since poweron and you're deriving watts from that). If the system normally draws 80 watts, you might set your thresholds at 75 and 100 watts for a warning and 70 and 130 watts for a critical status. (If power consumption is too low, one of the system components is probably broken, since most computers have a lower bound for normal operating current. On the other hand, a "too high" wattage is going to depend on more external factors like the capacity of your electrical infrastructure.) That would look like this:
power.warning: 75:100 power.critical: 70:130
I hope I've illustrated with my examples that the limit settings depending significantly on what exactly you're measuring and there's no general way to say things like, "A DERIVE data source should have a warning threshold of X:Y."
From what I can tell there is a bug in munin for DERIVE. You can adjust graph_period to be minute/hour/day, but the crit/warning limits will always be per second.