mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-06 03:38:23 +00:00
The datasource families whose keys are a User, an AddressableNote, a string, or an IAccount-compatible account — chess, relay feed, NIP-66 relay info, url, geohash, the channel assembler, communities, git repo, profile, one/my podcast, onchain zaps and poll responses — move wholesale into `commons/relayClient/<feature>/`, along with the pure thread filter functions and `FilterPostsByScopes.kt` (`CommentKinds`), which those filters share with the home feed. Three Subscription composables that never touched `AccountViewModel` (community, repository, profile) come along; the ones that do stay in the app. The only seam was `LocalCache`, read for `relayHints` and `checkGetOrCreateUser`, both already on `ICacheProvider`. The affected assemblers take `cache: ICacheProvider` first, thread it into their sub-assemblers, and the filter functions that need it take it as their first parameter; `RelaySubscriptionsCoordinator` passes the cache it already holds. `PollResponsesQueryState` is typed on `IAccount`. The URL filter test moves to commons commonTest on `kotlin.test`. The plan doc records what stays behind and why. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01J836W9ZjSUJUQ1d23TpiJo