For me it does not make sense to consider shipyards and star bases differently. I would consider a shipyard a star base with a shipyard module. It should be possible for a star base to have two or more main function for example Culture and mining, Military and mining, military and culture.
Needs of a civilization in a sector of space change as the game goes on. It doesn't make sense to build a nearby star base just to have a different use. In real life, a module would be added to the existing star base.
The way a shipyard is sponsored by a planet should be enhanced so that a Mining star base could also sponsor a Star base/Shipyard. By selecting the priority of the type of enhancement, the star base/shipyard could update itself without the constant need of spamming constructors at it.
Civilization based upgrading:
This mode would enable a civilization to upgrade its star bases according to the total resources produced. (Mines + Planets) In order to specify the priority a specific star base has for your civilization, it could be given a default priority number ei: 1. The higher the priority number, the more resources it gets for upgrading.
Now the percentage of the total resources a star base/shipyard gets would be: Shipyard Priority No / Sum(Every Shipyard Priority No)
The sum of every shipyard priority number representing 100% regardless of what the total number amounts to. A star base with no available module would be considered to have a priority number of 0 for the duration of the turn. If all star bases have no available modules, the resources accumulate for use in a later turn.
Specifying upgrade priority: We can have a list where we can move up or down a upgrade type:
Military / Defense
Mining
Manufacturing
Research
Culture
Finance
When a module of a specific type isn't available the resources go to a module of the next available type partially completing it. The assignment can go back to a higher priority module as techs make these modules available. It is assumed that a Star base / Shipyard has the necessary tech to build any new module that is needed given enough resources. (For example 3D printing micro-chip production etc).
Another possibility is to allocate a priority number to the upgrade types just as we do with the ressourses allocated to a star base in relation to the others. So we could have:
Miitary 10
Manufacturing 8
Research 6
Culture 3
Finance 2
So the % military modules would get of the star base resources / turn would be: 100 * 10 / (10 + 8 + 6 + 3 + 2) = 34%
This would prevent constructor spam all over the map. There are so many modules that can be added to a star base and so many star bases that it can built. It becomes dreary to have to direct constructors all over the place and manually upgrade each star base. It breaks the flow of the game to have to click on "Upgrade Star base" every time. There is a of that as a player's civilization becomes stronger.
Freighters & Star bases: A star base from another civilization may have a need of certain goods and have an excess of certain goods which could be useful to our own star base. By enabling trading between the star bases of different civilization, a star base can increase the speed in which it build things / makes profit. The goods could be those that increase: Manufacturing, Research, Finance, Moral, Culture. A star base that exports cultural items increases its influence. Profit can also be made by being the middle guy between two civilizations that can't reach each other. For example I purchase ore from a Drengin Star base via one trade route to one star base and I sell Ore to the Krynn for a profit at another star base. A trade governor could make it possible to establish trade routes if you have the necessary freighters and the prices of a star base/planet would be known once first contact had been made with a civilization.