When a chain becomes a few millimetres longer that it should be, not all of the chain is in contact with all of the chainring teeth. Less contact leads to chain slip which can then damage the chainrings. If you put a 1000 mile chain alongside a brand new one, you will see a very noticeable stretch in the used chain. At the first sign of slip, I pop on a new chain (I have spare in my toolbox).
A new 57 link (1" links) chain is 1448mm long. If you're going to change a chain and allow the cassette to carry on, this is best done when the chain is 0.5% elongated (NB chains do not 'stretch') - so max 7mm more than when new.
"not all of the chain is in contact with all of the chainring teeth"
All the time very little of the chain is in contact with the chainring teeth. Whatever the number of chainring teeth, the number of teeth in contact is 'half'. But the load (full on contact) is taken by the top few teeth and this number reduces to one as the chain elongates (same as on the sprocket).
Have a read of this thread:
https://www.cyclechat.net/threads/why-a-worn-cassette-cannot-damage-a-new-chain.255700/ where we had great fun looking at the detail.
"chain slip which can then damage the chainrings"
"Chain slip" occurs when the chain is so elongated that the chain skates over/off a sprocket.
Please explain how the chain skating over a sprocket can 'damage the chainring'. It's the elongated chain that damages the chainring, not the chain skating/slipping per se (which will happen earlier).
I find that I experience very little elongation in 1000 miles (but chain wear/elongation rate varies with riding style and terrain/soil nature) but at 1500 miles it needs replacement if I'm to do so without chainging the cassette as well.
"At the first sign of slip, I pop on a new chain"
And then I presume you replace the cassette pronto. If you've let the chain/cassette combo go as far as the chain skating, then the chain is more than 0.75% elongated, the cassette is worn and a new chain on it will not be 'happy'. YMMV.