Why don't we have just have demand 'pull' supplies just as much as supply 'pushes' them, and have potential demand define the level of 'enough'? This would be the simplest way of doing things, I think. Have three goals:
1) Satisfy all existing production orders as quickly as possible
2) The tricky one where we figure out which towns should have their 'minimum stock' (which is determined by their potential use of the resource if they start to produce a lot) filled first, those that need a little bit in case they build something that needs it, those that may need a lot for unit production, or a geographical solution designed to minimize transit times to outlying cities and cities that have all the other resources they need, and so will have their production delayed (I favor this one, but it'll be the hardest to get right).
3) Once all cities have their minimum stock filled, keep their stocks proportional to their ability to produce using this resource until they literally cannot use all their stock before recieving shipments.
4) Continue stocking the resource based on the ability of the city to outproduce supply.
5) The catchall, just stock it proportional to remaining room in the city warehouse.
There are a few key elements to this on the player's end that aren't traditionally encountered, though. Marking units as obsolete will have importance to the distribution of resources, because the obsoleted units won't be used to calculate the utilization potential of a city, so they can change the priority different cities get. Additionally, this means that user production orders can have a large effect on the pattern their shipments take, as can the production of unnecessary buildings, but I feel the benefits outweigh the drawbacks, and that this should keep close to a well microed system (not a brilliant one, though, but solid enough to not be a disadvantage).