Archived
The global provider bootstrap froze all three ModelRuntime mutation methods after startup, so a provider extension that fetched an updated model catalog had that work silently discarded. registerProvider is now applied when the provider ID is already in the frozen baseline and the incoming config equals the recorded baseline in every field except `models`. Refreshing extensions re-send a complete provider config rather than a models-only delta, so the test is "equal except models", not "contains only models". Everything else stays a logged no-op: unknown provider IDs, any change to name/baseUrl/apiKey/api/streamSimple/headers/authHeader/oauth/ refreshModels, native registration, and unregistration. Function-valued fields compare by reference and so always read as a mismatch, which is the intended conservative direction. An accepted update rebases the stored baseline from Pi's merged record, so repeat refreshes work and an unchanged replay is correctly ignored rather than re-applied on every session start. The accept path stays synchronous and never awaits or networks; Pi's own trailing fire-and-forget local refresh is untouched.
Changesets
Hello and welcome! This folder has been automatically generated by @changesets/cli, a build tool that works
with multi-package repos, or single-package repos to help you version and publish your code. You can
find the full documentation for it in our repository.
We have a quick list of common questions to get you started engaging with this project in our documentation.