### Description

Clusters can have thousands of ILM policies. 
`GET _ilm/policy` returns all of them and runs on the master node.

This proposes we chunk the response for better memory usage and clients experience.

Relates to https://github.com/elastic/elasticsearch/issues/96568
x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/ilm/action/GetLifecycleResponseTests.java
)
                );
            } else {
                responseItems.remove(0);
            }
        } else {
            responseItems.add(
                new LifecyclePolicyResponseItem(
                    randomTestLifecyclePolicy(randomAlphaOfLength(2)),
                    randomNonNegativeLong(),
                    randomAlphaOfLength(4),
                    randomUsage()
                )
            );
        }
        return new Response(responseItems);
    }
    public static ItemUsage randomUsage() {
        return new ItemUsage(randomStringList(), randomStringList(), randomStringList());
    }
    @Nullable
    private static List<String> randomStringList() {
        if (randomBoolean()) {
            return null;
        } else {
            return randomList(0, 1, () -> randomAlphaOfLengthBetween(2, 10));
        }
    }
}