Breaking Changes
SettingsManagerpersistence semantics changed for SDK consumers. Setters now update in-memory state immediately and queue disk writes. Code that requires durable on-disk settings must callawait settingsManager.flush().AuthStorageconstructor is no longer public. Use static factories (AuthStorage.create(...),AuthStorage.fromStorage(...),AuthStorage.inMemory(...)). This breaks code that usednew AuthStorage(...)directly.
Added
- Added
SettingsManager.drainErrors()for caller-controlled settings I/O error handling without manager-side console output. - Added auth storage backends (
FileAuthStorageBackend,InMemoryAuthStorageBackend) andAuthStorage.fromStorage(...)for storage-first auth persistence wiring. - Added Anthropic
claude-sonnet-4-6model fallback entry to generated model definitions.
Changed
SettingsManagernow uses scoped storage abstraction with per-scope locked read/merge/write persistence for global and project settings.
Fixed
- Fixed project settings persistence to preserve unrelated external edits via merge-on-write, while still applying in-memory changes for modified keys.
- Fixed auth credential persistence to preserve unrelated external edits to
auth.jsonvia locked read/merge/write updates. - Fixed auth load/persist error surfacing by buffering errors and exposing them via
AuthStorage.drainErrors().