Anyway, brushing up on some points for later today let me see a very obvious fact that I'd overlooked before and that is: students' customary procedure for comparing decimals fails spectacularly in this case. For example, here it is expressed at the first hit from a web search at a site called AAAMath:
Therefore, when decimals are compared start with tenths place and then hundredths place, etc. If one decimal has a higher number in the tenths place then it is larger than a decimal with fewer tenths. If the tenths are equal compare the hundredths, then the thousandths etc. until one decimal is larger or there are no more places to compare. If each decimal place value is the same then the decimals are equal.So if students apply the "simple" decimal comparison technique ("if one decimal has a higher number in the X place"), even at just the ones place, then this algorithm reports back that 1.000 is greater than 0.999... It overlooks the fact that the lower places can actually "add up" to an extra unit in a higher place. And thus all sorts of confused mayhem immediately follow.
So the simple decimal comparison algorithm is actually wrong! To fix it, you'd have to add this clause: unless either decimal ends with an infinitely repeating string of 9's. In that case the best thing to do would be to initially "reduce" it back to the terminating form of the decimal (this being the only case where one number has multiple representations in decimal), and only then apply the simple grade-school algorithm.