fix(accounting): stabilize numeric mapping identity across property storage

This commit is contained in:
ENELIX Agent
2026-10-03 09:40:02 +00:00
parent 5890093b80
commit 6c91d6bcc6
3 changed files with 64 additions and 1 deletions
+2 -1
View File
@@ -34,7 +34,8 @@ final class NetzfahrplanV4Bilanzierung
|| !is_int($c['maxSkewSeconds']) || $c['maxSkewSeconds'] < 0 || $c['maxSkewSeconds'] > 60) {
throw new InvalidArgumentException('Bilanzkonfiguration unvollstaendig.');
}
self::number($c['splitToleranceW'], 'Zuordnungstoleranz W', 0, 500);
// Preserve a stable numeric representation across JSON property round-trips.
$c['splitToleranceW'] = self::number($c['splitToleranceW'], 'Zuordnungstoleranz W', 0, 500);
$seen=[];$keys=[];$roles=[];
foreach ($c['sources'] as &$s) {
if (!is_array($s) || count($s)!==8 || array_diff(['key','role','variableId','parentId','ident','factorToW','maxAgeSeconds','dependsOn'],array_keys($s))) {