When I used aptitude, I noticed that aptitude does not have an error handling mechanism. When I `aptitude update`, if the network is broken (like dns problem, route problem), it can not connect to the server, so it reports error, and clean up local apt record. If I stupidly `aptitude autoclean` then, all my debs are gone.
And, during the update, if I find something error, and press C-c, OK, apt record broken, just leave a little….
Why does aptitude do that?