If you create a one-pixel-wide (non-even width) horizontal or vertical line, it should snap to a half pixel. Of course, it's the *node* that will be snapped, not the edge of the stroke, so at 100% zoom, the stroke-edge will appear on a pixel boundary, which is exactly what we want to make it look sharp. If it works any other way, can you please post a bug on the issues page:
http://code.google.com/p/pixelsnap/issues/list. Thanks!
Regarding my workflow, perhaps yes it is flawed. But I'm curious to know how I'm supposed to avoid the tedious process I described. I don't use Inkscape for icon design, I use it to design webpages, usually having more than 15 different objects (header image, sidebar box, separating lines, toolbars, etc etc). Sure, if I edit each object meticulously, I can keep it aligned to pixel-boundaries, with care.
But that's only one of the ways I use Inkscape. Say, for example, I have 3 pixel-perfect rectangles, grouped (for some reason I'm liking rectangles that day). Then I decide "these rectangles are awesome, but the whole cluster needs to be 50% bigger". So I use Inkscape's very useful stretch arrows, with the Ctrl-key held down to keep it proportional, and make it 50% bigger. Suddenly, even if I've got grids turned on:
1) the stroke width is 1.5 pixels wide, if I've selected the "Resize affects stroke-widths" button
2) the height & width of the rectangles is very likely a non-integer number
3) the x,y position of the rectangles is very likely a non-integer number
This is a very common scenario, and I don't see how it's using Inkscape wrongly in any way, and I don't know of any tools that Inkscape provides to avoid having to tediously edit each rectangle.
Very interested in your opinion, though! Sounds like you know what you're doing.