Was für mich an Moonlight und Phoenix auf DuskVM endlich Klick gemacht hat, ist, dass unterschiedliche Zustandsmodelle keine unterschiedlichen Finalitätsmodelle brauchen.

Moonlight kommt mit einer öffentlichen Konten-Historie: Guthaben, Absender, Empfänger, Betrag, Nonce.

Phoenix kommt über verschlüsselte Notizen, geschützte Outputs und Nullifizierer.

Ich bin die ganze Zeit davon ausgegangen, dass diese beiden Formen irgendwie zwei verschiedene Wege zur Finalität nach DuskVM erfordern würden.

Aber das ist eigentlich nicht die Aufgabe von DuskDS.

Moonlight kann kontenförmig bleiben. Phoenix kann notizförmig bleiben. DuskVM kann beides akzeptieren, ohne dass eines gezwungen ist, das andere zu werden, während Dusk L1 trotzdem der resultierenden Zustandsform eine deterministische Finalitätsgrenze gibt.

Der Fehler war also die Annahme, dass unterschiedliche Zustandsdarstellungen auch unterschiedliche Enden brauchen.

Das tun sie nicht.

Dusk kann zulassen, dass Moonlight und Phoenix unter der Oberfläche grundlegend verschieden bleiben, während es beiden dennoch die gleiche Antwort auf die eine Frage gibt, die am Ende zählt:

Wann ist dieser Zustand final?
#dusk $DUSK @Dusk