Coffee journaling on ATProto (alpha) alpha.arabica.social

refactor: generic EntityCodec + ResolveRefs descriptor hook #349

Closed arabica.social
targeting main from push-ssspnvopnuuy
Closed opened by and assigned to arabica.social
targeting main from push-ssspnvopnuuy

Collapses ~220 LOC of duplicated typed CRUD on AtprotoStore (Roaster, Grinder, Brewer) into thin wrappers over generic EntityCodec[M] helpers. Adds a ResolveRefs callback to entities.Descriptor so firehose no longer imports arabica types for feed-ref hydration; arabica's resolvers move to internal/entities/arabica/feed_refs.go.

Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com

Commits 0