[Solved] Altitude correction is kind of weird

Those are all three from a different source…
Initially, the field with total ascent in the FIT file is what your device has calculated from its built-in barometric sensor with its own algorithm and written to the dedicated FIT file field. If you ask Intervals to apply altitude correction, it will use the GPS coordinates to look-up altitude on cloud-available map services and it will calculate total ascent from those. If you now disable altitude correction, Intervals will use the altitude data that is in the FIT file to calculate total ascent with its own algorithm. And that isn’t the same algorithm as the one used by your device, hence the difference.
What I mean is that when you revert the situation, Intervals isn’t using the value anymore that was written in the FIT file by your device, but Intervals recalculates from the altitude data in the FIT.
Why are altitude algorithms all different?
It depends on what the dev is giving more importance. If you work without any hysteresis, you may end-up with dozens of ascent meters on a perfectly flat terrain, simply because the output from your sensor continuously jumps up & down from e.g. 6 to 7m. All those jumps would cause an increasing ascent number which isn’t correct.
If a bigger hysteresis is used, you have less of that up and down jumping. If it is too big, you have less ascent then what it should be. That’s the factor that is causing differences in between devices, software packages and calculation methods.