When I use the repair action facing a pile of items, it should repair (randomly or last dropped repairable first) any one of the items that might be repairable.
The current behavior is that it attempts to repair one (and only one) of the items on the tile. So if I drop all my spears, it might select an unrepairable one, and then I have to pick them all up, find the broken one, etc.
Also if the tile has (e.g. stones) on it, it may refute to repair a sword I drop on top.