The logic of Music scrapers?

i’m currently working on python based scrapers for artists and albums.
since i’m pretty clueless on the scraping process, i’m hoping to get some feedback from more experienced devs.

so far, i came across two things i don’t quite understand:

1) if the ‘prefer online info’ setting is disabled, we pass the artistname to the artist scraper.
if the setting is enabled, we pass the artist mbid to the scraper.

why don’t we always pass the mbid (if available) regardless of this setting?

2) if the album scraper returns no results, we completely skip the artist scraper. why?

(using a test library with just 1 artist + 1 album. no musicbrainz id3 tags)