A very simple addition, stockpiles have seperate broken (for furniture/goods) and worn (for clothing stockpiles) that can discriminate.
As the current system stands, the only way to collect broken goods is by directly allocating it to refuse (which in itself is a poorly used alternative to just dumping it in a zone/lava right away) and if there is going to be any method of repairing these goods. It would be useful to keep them in clear discriminatory (broken goods of a particular stone type and particular object type) rather than making a warehouse of all the same item type with randomized materials as per the refuse stockpile.
On top of these changes, if broken and worn clothes are brought into the norm, as a quality type (the worst possible one or a chance of being created by poorly trained and very unpractical/creative sentient beings from the workshop, naturally dwarves VERY rarely make broken products and become very upset over doing so with high craftsmanship values) then it would be justifiable to nerf the cost of second hand broken/worn clothes in trading by giving it a negative value modifier (half price bargain basement etc.)
Though there might be a initial uproar about just reducing the cost, for a budding adventurer or even a needle handy dwarf, buying a old garment to improve or even convert into okay quality cloth (with a little penalty to base cloth quality to stop 'reforging' clothes as well as meltdowns due to destroying masterwork clothes) is a worthwhile endeavor if the product can be as good or even better than the original.
The same concept can be translated to all other item types if they go over any kind of restorative process. (yes im aware there is another thread on the forum at the moment covering a similar topic, but mine is stockpile centric)
One less exploit, for more features seems to be a nice ratio