···
"Coves/internal/core/posts"
"Coves/internal/core/timeline"
"Coves/internal/core/users"
16
-
"Coves/internal/core/votes"
···
postRepo := postgresRepo.NewPostRepository(db)
postService := posts.NewPostService(postRepo, communityService, aggregatorService, defaultPDS)
285
-
// Initialize vote service
284
+
// Initialize vote repository (used by Jetstream consumer for indexing)
voteRepo := postgresRepo.NewVoteRepository(db)
287
-
voteService := votes.NewVoteService(voteRepo, postRepo, defaultPDS)
288
-
log.Println("✅ Vote service initialized")
286
+
log.Println("✅ Vote repository initialized (Jetstream indexing only)")
// Initialize feed service
feedRepo := postgresRepo.NewCommunityFeedRepository(db)
···
routes.RegisterPostRoutes(r, postService, authMiddleware)
log.Println("Post XRPC endpoints registered with OAuth authentication")
382
-
routes.RegisterVoteRoutes(r, voteService, authMiddleware)
383
-
log.Println("Vote XRPC endpoints registered with OAuth authentication")
380
+
// Vote write endpoints removed - clients write directly to their PDS
381
+
// The AppView indexes votes from Jetstream (see vote consumer above)
routes.RegisterCommunityFeedRoutes(r, feedService)
log.Println("Feed XRPC endpoints registered (public, no auth required)")