Fix settings page bugs found by review

The Plasma config dialog injects only cfg_<key>, never defaults, and no
code populated the cfg_*Default properties. "Restore all defaults" thus
wrote empty values (notifications off, refresh manual, update checks
off) instead of the schema defaults, and the ready-confirmation message
could never appear because clamped spinboxes disagreed with the empty
baseline. The cfg_*Default initializers now mirror main.xml, and
scripts/test_ui_regressions.sh fails when they drift from the schema.

Reinstall the costHistoryDaysSpin value binding after each user edit.
The edit severs it, so runtime costHistoryDays writes from the Usage &
Spend tab stopped reaching the control for the rest of the page's life;
every other interactive settings control already followed this pattern.

Harden the descriptor plan gates in ProviderDescriptor: non-secret
field writes now require a {value} placeholder instead of silently
dropping the user's edit, and the secret prompt path rejects non-secret
fields and commands that still expect {value}, which would reach the
CLI as a literal token. Covered by new QtTests.

Also make the provider diagnostics BusyIndicator running binding a pure
bool instead of propagating null.
6afe2de88aSimone committed on 8/30/2026, 4:49:59 PMparent766d36e
7 files changedLine totals unavailable