I would argue that one can generally safely add information to his
or her router's RIB (such as adding a local preference, weight, or
advertising with prepends to direct traffic toward a better
performing, less utilized, or lower cost peer), but that removing
information from a router's RIB always comes at some cost (and
some may find this cost perfectly acceptable).
One needs to remember that removing information from RIB is how BGP
works. If you have the common setup of two BGP edge routers, each with
a directly connected transit provider link, the routers will only tell
the other one about the routes it actually uses. Neither router has a
complete view.
I manage a network like you describe: Two BGP edge routers, both routers
accept a full eBGP feed from transit, both share routing information via
iBGP. Both edge routers in my network have a complete view. If one
transit provider is down or there is an upstream peering change, both
still have a complete view. The only time they wouldn't have a complete
view is during convergence or when there is a simultaneous outage of
both transit providers at different physical facilities.
I could certainly use a default route (configured statically or received
via BGP) instead, but that reduces my network's ability to make informed
decisions. When one of my upstream transit providers is performing
maintenance and loses a peer, I want that to be reflected in my routing
so that traffic can be directed via the shortest path. When my transit
provider's edge router loses upstream connectivity, but maintains
connectivity to my equipment, I want that reflected in my routing so
that traffic doesn't go towards the path that leads to the bit bucket. I
can't detect those conditions and route around them if my router only
has a default route.