feat: runtime provider hotswap (#82)

Add ability to replace a FeedSourceProvider at runtime and propagate
the new source to all active (and pending) user sessions, invalidating
their feed caches.

Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
2026-03-19 23:32:29 +00:00
committed by GitHub
parent ca2664b617
commit 0095d9cd72
12 changed files with 717 additions and 81 deletions

View File

@@ -20,6 +20,7 @@ const weatherConfig = type({
})
export class WeatherSourceProvider implements FeedSourceProvider {
readonly sourceId = "aelis.weather"
private readonly db: Database
private readonly credentials: WeatherSourceOptions["credentials"]
private readonly client: WeatherSourceOptions["client"]