Why does runAll="true" validate checksum?

I have a changeset that applies some default data through SQL scripts.

Those scripts can be run always as they handle old and new data alike.

So we change the script to integrate new defaults.

The changeSet is defined with runAlways=“true”

The problem is: if the script was changed, Liquibase complains about an invalid checksum.

Why does Liquibase (3.5.5) validate the checksum if the changeSet should be run always anyway?

Is this intended or a bug?

I know I can workaround this by using validCheckSum=“1:any” but still, this feels like a bug to me.