* refactor(settings): read stored preferences with a Valibot schema
Each field falls back to its default on its own, so one bad value keeps the rest, as before. Tests pin the behavior; they pass against the previous implementation too.
* refactor(mcp): read stored MCP connections with a Valibot schema
A connection schema checks the ID, trimmed name, transport, and URL rule; a bearer token is kept only for the connection's own credential. A new test covers the credential check and normalization, and passes against the previous implementation.
* refactor(clipboard): read Figma's image batch response with a Valibot schema
* refactor(mcp): read tool descriptors with a Valibot schema
The descriptor type now follows the schema, and tests cover what a descriptor must contain.
* refactor(ai): read stored model settings with Valibot schemas
Connections and model profiles are schemas with their defaults and bounds; the thinking-level migration and the checks between connections, models, and role assignments stay as code. Characterization tests written against the previous implementation pin the behavior.