Perhaps to teach programming at the university level we will need to better mimic real world software development. I always found the 300-line assignments to be a poor practice for the real job where you have 100k LOC legacy systems.
We should work backwards from "what skills should students learn".
Maybe we need to make larger assignments that need to pass larger acceptance tests. Students who chose to use chat gpt will also need to learn the skills necessary to debug its output.