I can't say whether it's right or wrong, but I can explain the (probable) reason:
Research progress is based on force.research_progress, and is stored off somewhere (it's not in the technology).
The values for progress in the tech screen are based on force.research_progress. The infinite researches are based on the same prototype - so their research_progress may refer to the same value across all infinite techs, unless it was removed from each infinite tech's picture (they are sequential, so they should never actually show anything past the first)
hint hint that's probably gonna be the fix
.
When the technology finishes (
explicitly finishes) the force.research_unit_count is updated from the research_unit_count_formula, and progress reset to 0, as well as level being incremented and research set to enabled. Bunch of things.
There's a bug with two* mods, and your issue perfectly explains it: one sets force.current_research.enabled when it triggers, instead of modifying force.research_progress. Because the research is enabled, the level cost is recalculated to a fixed-cost, but the progress is not reset. As soon as the first infinite research completes, the progress isn't reset, and each next level happens instantly (progress is 100% or over, research_units_required is fixed by second mod).
Easy way to reproduce:
https://mods.factorio.com/mod/enemytechnology
Edit: Forgot, another mod is needed for the instant research, a fixed-infinite-research cost mod. Just using that mod makes all the completed researches include their previous progress, but it doesn't recalculate the cost unless the research noise is made I think (normally it gets close and skips past).