I think the suggestion (from Wyvern, where they went into a bit more detail) to have the CR boost from the skill be instantaneous and raise the max/min/current fixes things, right?
Hmm, maybe? I'm not crazy about the case of the ship getting a minimum CR of 15% (or 30% if Crew Training and Combat Endurance combine). It's rather non-trivial to implement, though, with the in-combat officer switching handling, the places where the game expects 0% CR to mean something specific, etc.
Well, there are a few other ways of handling that. Scaling the bonus to current CR with percent-of-max CR, for example. Or just allowing "less than zero CR" as a valid state for a ship that was at zero CR and then had its officer moved elsewhere.
Kind of a pain in what way? If you mean the UI, that seems fixable; put the officer list on one side, put the fleet display on the other side, and allow drag-and-drop rather than the current 'click on one specific ship, pick an officer off the list, close the officer UI, click on the next specific ship'.
Just more generally - it feels to me like "what officer is this ship assigned to" ought to be a more long-term decision and that shuffling officers around to optimize for a specific encounter - no matter how clean the UI - is just fundamentally annoying. This is, of course, subjective.
(... actually, this makes me wonder if going through officers might not be a nice way to bring back a different take on crew veterancy. Having the officer gain XP *on that ship* along a separate track, with some kind of basic bonus to ship performance... hmm. And you'd lose it/it'd take a hit when the officer is swapped out.)
That's actually one of the reasons I run with the Starship Legends mod: it provides exactly that sort of bonus to keeping an officer on a given ship - though, notably, it remembers that progress, so you can swap your fleet around and experiment with new or different hulls without losing it and having to start over from scratch on swapping things back.
Re: Officer swapping
I tend to leave officers on a ship and tailor the officer to the ship, rather than the other way around, but an XP system that incentivizes long-term attachment would have to account for acquiring a plain better ship. An officer tailored to an Enforcer is going to work really well for a Dominator and I shouldn’t feel like I’m losing something by moving that officer to a superior hull. If the benefit is fairly minor, no big deal (and I doubt you’d go over board with it anyway).
I'm actually okay with this. If an officer tailored to an Enforcer gets moved to a Dominator, then they have to start over with learning how to get the best out of that specific Dominator. (But if I do change my mind and put them back in their original Enforcer, it'd be nice if they remembered how to get the best out of it.)
That being said, I really like the idea of officer “veterancy” improving basic ship function. That could be a way of increasing CR without it coming in “chunks” via skills. Heck, you could replace the +15% CR from Combat Endurance with something more interesting and just make having an officer (over time) achieve the same result via experience. Skills could also improve veterancy gain or veterancy benefits rather than fleet wide buffs (looking at you Crew Training).
Oh, I like this idea. It's rather more effort than my suggestion was, and involves some more complicated design stuff, but it does sound neat.
...You'd probably still need a mechanism for "swapping an experienced officer out reduces both current and max CR", though. As well as, at a minimum, misclick protection of some sort, be that allowing negative CR, or perhaps even just a confirmation window for "Swapping these officers will reduce X ship's CR by Y, and will require Z supplies to recover if you swap the officers back, are you sure you want to do this?" - I've definitely accidentally moved officers between ships before when I was, for example, only trying to check what skills they had.