mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-08-10 16:33:27 +00:00
The Android assembler was hand-rolling the plane-address -> per-relay kind-1059 RelayBasedFilter collapse (with per-relay since). That logic is platform-agnostic — RelayBasedFilter and SincePerRelayMap are both commons/quartz types — so lift it to ConcordSubscriptionPlanner.relayBasedFilters alongside the existing filtersByRelay one-shot variant. The assembler now only does the account-dependent step (deriving channel planes from folded session state) and delegates the collapse. Covered by a new planner unit test. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CzJ2Cwo8tg4oZq43oRa3ig