Opening the book…
The moment a child mutates a parent's object directly, the render dependency graph stops being knowable. The bugs this creates appear far from their cause.
Pass immutable-ish values and records down. When a child needs to change something, it raises an EventCallback and the owner mutates its own state.
Cascading values for genuinely app-wide concerns (theme, auth state) — sparingly, and read-only.