This is something that's been discussed for some years in Debian. See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=160743.
I believe this has been addressed:
Author: Michael Vogt <firstname.lastname@example.org>
Date: Sat Jan 2 22:08:30 2016 +0100
Add new APT::Keep-Downloaded-Packages option
This option controls if downloaded packages should be kept after
a successful install or if they should be deleted. The default
for "apt-get" is that they are kept (just like before).
However the default for "apt" is that they get deleted.
We can then add an option to remove downloaded packages
after they are successfully installed. But it needs some more