so you think the cooking system needs to reworked?
I think Cooking in Dwarf Fortress is quite overpowered, if simplistic, in its current state - however, there's a risk involved in trying to rework it.
As easy as I find DF, the core backbone of fortresses not starving to death is the pipeline between Fishery to Kitchen, assuming you don't want to spend time farming or animal husbandry.
The secondary upside to fishing is, of course, the fact most streams or underground lakes can be used for wells/watering holes (and farming), which brings a stronger incentive to use all the space you can for as much return as possible.
I sadly can't think of a good way to handle food/cooking in this scenario, though. You can have Dwarfs hold individual diet preferences (like Piscatarian, Vegetarian, etc), but this would cause the whole system to bloat and become arcane in an (admittedly) already arcane game.
Similar situations would go to trying to make better meals require more ingredients - if you have a bad harvest one season or your river freezes over or your animals get slaughtered unexpectedly in a raid, then you'd be stuck in a tantrum spiral waiting to happen.
Which... I think cooking is fine as it is. At the end of the day, I trust that it's gone through several checks like smithing or the economy. If you were to meddle with it, you'd likely end up with something that's not fun to play with/around.
I think an interesting trick Dwarf Fortress pulls off is how, in Adventurer Mode, whenever you enter a site the game first populates it by pulling from the list of historical figures living there (note that for the purposes of Dwarf Fortress "historical figure" doesn't necessarily mean "important person", but "character that the game has chosen to keep track of as the world history progresses"), and then fills out the rest of the site population with random NPCs generated on the spot that you'll pretty much never see again because they're not saved anywhere and they'll despawn as soon as you leave and the site is offloaded.
HOWEVER, if you interact with any of those randos in a way that causes the game to generate a name for them, they'll be immediately marked as a historical figure, so the game will store them in memory and keep track of whatever happens to them from that point onward, ensuring that they can be reencountered at a later time.
That way, the game is able to keep the illusion of a consistent world while only having to keep track of the characters that the player is actually likely to remember.
Also that's one of the reasons I say Dwarf Fortress in Adventurer Mode is the closest you can currently get to playing a fantasy RPG with a human GM. Many of the ways the game reacts to your actions and choices (including this one) kinda resemble the thought process a GM would follow when running a game.
All my dwarves started vomiting everywhere and it's because they HAPPILY drank an entire barrel of mandrake poison that made them all very sick and horny.
Heres something while you're all waiting to see what I'm animating in the background; a totally, 100% canon Iterator Logs event. I've read the script, I'm working on animation, trust me bro.