Nowadays, it is modern to modularise projects in order to speed up their build time. But since sonar does not support this modularised approach, all tests for all modules must be run in order to correctly calculate the estimated code coverage.
How I imagine this working is that the server version knows the current code coverage for each module separately (we have the sonar properties set for each module). When only one module is changed, the code coverage might be updated only for that module.
And for the rest of the modules, the coverage could be taken from the latest server version - nothing has changed in those modules, so nothing needs to be recalculated there.