Require sandboxId in putPreferences and add API
Make sandboxDetailsPref fields (repo, description, topics) nullable.
Update generated lexicon/types to reflect nullable/nullable-item types.
Add web client endpoint, React hook, and settings UI integration for
updating preferences. Relax repository URL validator to allow an empty
value.