I'm not sure that the conclusion, "You can't use willSet/didSet with @Observable" is correct any longer.
With Xcode 16, the @Observable macro expands a simple String property as shown in the image below. Note that the "didSet" expression is copied to the newly-generated stored property "_name".
Depending on exactly what you're doing in the property observers, they should just work.
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: