is it possible that the dest sheet that contains IMPORTRANGE periodically tries to refresh from the source sheet and this in turn is considered an OnChange event? Thanks!
No. Upon testing as well it doesn't work that way. The onChange event does not automatically trigger when an IMPORTRANGE formula refreshes its data in the destination sheet, it only triggers when:
An installable change trigger runs when a user modifies the structure of a spreadsheet itself—for example, by adding a new sheet or removing a column. See Installable Triggers.
This is also supported by the official documentation where it says:
Any update to the source document IMPORTRANGE will cause all open receiving documents to refresh and show a green loading bar. IMPORTRANGE also waits for calculations to complete on the source document before it returns results to the receiving doc, even if there is no calculation to be done in the source range.
Google Sheets ensures that Sheets users get the fresh data while they keep their use reasonable. IMPORTRANGE automatically checks for updates every hour while the document is open, even if the formula and spreadsheet don’t change. If you delete, read, or overwrite the cells with the same formula, the reload of the functions trigger. If you open and reload the document, it doesn’t trigger a reload on IMPORTRANGE.