EIP-7907 bepreist nur noch große Verträge, das 64-KB-Limit wandert zu EIP-7954
Ein am 29. September im EIPs-Repository gemergtes Update teilt EIP-7907 in zwei Teile. Bisher tat der Vorschlag zwei Dinge: Er hob das Größenlimit für Vertragscode in Ethereum von den durch EIP-170 festgelegten 24 KB auf 64 KB und führte eine Gasbepreisung für das Laden von Code über 24 KB ein. Nach der Änderung behält EIP-7907 nur die Bepreisung, die Anhebung des Limits gehört zu EIP-7954.
Der neue Titel spiegelt das: „Meter Contract Code Size“ statt „Meter Contract Code Size And Increase Limit“. Die Zusammenfassung sagt nun, das EIP führe Kosten von 2 Gas je 32-Byte-Wort für Vertragscode über 24 KB (24.576 Byte) ein und baue auf EIP-7954 auf, das das Codelimit auf 64 KB (65.536 Byte) und das Initcode-Limit von 48 KB auf 128 KB (131.072 Byte) anhebt, „ohne eines der Limits zu ändern“. Die Abhängigkeiten ändern sich entsprechend: EIP-7907 setzt nun EIP-7954 voraus statt EIP-3860, der Initcode-Regel, deren Limit es zuvor selbst angehoben hatte. Ben Adams kommt als Autor hinzu, der Status bleibt Entwurf.
Die Begründung beider Teile bleibt gleich. Das Limit aus EIP-170 existiert, weil große Verträge Kosten verursachen, die Gas nicht direkt abdeckt: Festplattenzugriffe, Vorverarbeitung in der VM und größere Merkle-Beweise wachsen mit der Codegröße. Ein höheres Limit erlaubt legitimen großen Verträgen den Einsatz ohne Aufteilung, die Bepreisung des Überschusses lässt Aufrufer für die zusätzliche Ladearbeit zahlen.

Warum das wichtig ist
Die Teilung erlaubt Client-Teams und dem Upgrade-Prozess, beide Änderungen getrennt zu behandeln: Eine Limitanhebung ist ein einfacher Parameter, die Bepreisung berührt, wie jeder Code ladende Aufruf kostet. Vertragsentwickler, die Systeme aufteilen, um unter 24 KB zu bleiben, sollten nun EIP-7954 für das Limit und EIP-7907 für die Kosten großer Verträge verfolgen.