How to validate form collections where context between collection elements also needs to be validated

I have a form containing a collection financingSources and the corresponding child fieldset FinancingSourceFieldset containing an input share. I want to validate both the respective fieldset’s inputs and the context of the collection’s elements.

After I found out that the CollectionInputFilter exists, my input filter specification looks as follows:

        'financingSources' => [
            'type' => CollectionInputFilter::class,
            'required' => true,
            'input_filter' => [
                'pspElement' => [
                    'required' => true,
                    'filters' => [
                        ['name' => StringTrim::class],
                        ['name' => ToNull::class, 'options' => ['string']],
                    ],
                    'validators' => [
                        [
                            'name' => Regex::class,
                            'options' => [
                                'pattern' => '/^\d{10}$/',
                                'messages' => [
                                    Regex::NOT_MATCH => 'Das PSP-Element muss 10-stellig sein',
                                ],
                            ],
                        ],
                    ],
                ],
                'costCenter' => [
                    'required' => true,
                    'filters' => [
                        ['name' => StringTrim::class],
                        ['name' => ToNull::class, 'options' => ['string']],
                    ],
                    'validators' => [
                        [
                            'name' => Regex::class,
                            'options' => [
                                'pattern' => '/^\d{8}$/',
                                'messages' => [
                                    Regex::NOT_MATCH => 'Die Kostenstelle muss 8-stellig sein',
                                ],
                            ],
                        ],
                    ],
                ],
                'share' => [
                    'required' => true,
                    'validators' => [
                        [
                            'name' => Between::class,
                            'options' => [
                                'min' => 0,
                                'max' => 100,
                            ],
                        ],
                    ],
                ],
            ],

           // not working part form here on

            'validators' => [
                [
                    'name' => Callback::class,
                    'options' => [
                        'callback' => function ($value) {
                            /** @var EmployeeContractFinancingSource $financingSource */
                            $shareSum = array_reduce($value, fn ($sum, $source) => $sum + $source['share'], 0);

                            if (100 != $shareSum) {
                                return false;
                            }

                            return true;
                        },
                        'messages' => [
                            'callbackValue' => 'Die Anteile müssen insgesamt 100% ergeben.',
                        ],
                    ],
                ],
            ],
        ]

I understand that I have to use CollectionInputFilter here, because specifying the input filter specication of the fieldset in the fieldset’s class wouldn’t work if the collection is added to the parent’s form input filter specification as an Input.

But now the “validators”-part is not working anymore. How can I add such a validator for the whole collection that in this case should check if all shares sum up to 100%?