Rollover runs earlier than expected

I have an index with 2 shards, I configured a policy that performs rollover on max_primary_shard_size=40gb.

"policy": {
      "phases": {
        "hot": {
          "min_age": "0ms",
          "actions": {
            "rollover": {
              "max_primary_shard_size": "40gb"
            }
          }
        },
        "delete": {
          "min_age": "365d",
          "actions": {
            "delete": {
              "delete_searchable_snapshot": true
            }
          }
        }
      }
    }

Since moving to version8.12 I see that the rollover is performed earlier ~10-20gb shard size instead ~40gb.

It was working properly on version 7.13.

What could be the reason?

Thanks...

For example: Rollover is done when:

Shard0 - "docs": "349643740", "store": "17gb"
Shard1 - "docs": "349549511", "store": "16.9gb"

According to [shard document count](https://shard document count)
There is no hard limit on the physical size of a shard, and each shard can in theory contain up to just over two billion documents. However, experience shows that shards between 10GB and 50GB typically work well for many use cases, as long as the per-shard document count is kept below 200 million.

Is there any new restriction in version 8?