Render the app tree, and confirm what a parent switch-off takes

Featurekamo-internal
Shipped
August 25, 2026 at 12:05 AM UTC
Author
kamo
Commit
a459636

Children now sit under their parent in the Apps & Features list, each with its own switch. Nesting is expressed by ORDER plus an indent rather than a nested container, so the existing card, motion and gating code is untouched — and a child whose parent is filtered out of the current tab still renders at top level rather than vanishing. Two behaviours the cascade made necessary: Toggling now applies the server's whole feature list instead of flipping the clicked row. Enabling a child switches its parent on and disabling a parent switches every child off, so a local single-row update would leave the UI disagreeing with the server about everything else the cascade touched. Both endpoints already returned the full list; nothing new was needed server-side. The old single-row path stays as a fallback for a SecurityService that sends no list. Switching a parent off asks first, naming the children it will take with it. That is a bigger action than the toggle looks. The tree comes from the features endpoint rather than a TypeScript mirror of ServiceType — those have drifted from Java twice already, and the server is the only place that knows the operator catalog. 203 test files / 2921 tests green, build clean.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing