Skip to content

Feat/relevance scoring#32

Merged
mak1ss merged 3 commits intodevelopmentfrom
feat/relevance-scoring
Apr 24, 2026
Merged

Feat/relevance scoring#32
mak1ss merged 3 commits intodevelopmentfrom
feat/relevance-scoring

Conversation

@mak1ss
Copy link
Copy Markdown
Owner

@mak1ss mak1ss commented Apr 24, 2026

No description provided.

mak1ss and others added 3 commits April 24, 2026 07:35
Add async semantic relevance scoring for reviews using sentence-transformers
and Kafka event streaming:

- Add core_scoring_strategies.py: preprocessing, edge-case handling, and
  sentence-transformer cosine similarity scoring (RelevanceScoringFunction)
- Add Kafka consumer in recommenderService to process ReviewScoringRequest
  events and publish ReviewScoringResult back to reviewService
- Add Avro schemas for ReviewScoringRequest and ReviewScoringResult events
- Add ReviewScoringRequestProducer: publishes scoring requests on review create
- Add ReviewScoringResultListener: persists scoring results into Review documents
- Add BookMetadataAggregator: assembles title/author/genres/description for scoring
- Add ReviewScoringResult model and embed score in Review entity
- Enable @EnableAsync and migrate InitialDataGenerator to ApplicationReadyEvent
- Expand BookResponse client DTO with nested Author/Category/Genre objects
- Configure Kafka topics (review-scoring-requests/results/dlq) and schema registry
- Add kafka-init Docker service to pre-create Kafka topics on stack startup

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
# Conflicts:
#	.gitignore
#	reviewService/src/main/resources/application-dev.yml
…oring pipeline

- Add Authors list page and Author Details page with dedicated routes
  (/authors, /authors/:authorId)
- Display top relevant reviews section on the home page, pulling review
  relevance scores from the scoring pipeline
- Expose `relevanceScore` in ReviewResponse DTO and populate it via the
  mapper when a successful scoring result exists
- Trigger re-scoring when a review's text is updated (not just on create)
- Move Kafka topic name to config property in BookService
  (`kafka.topics.book-deleted`) instead of a hardcoded string
- Add `bookId` / `bookTitle` / `bookAuthor` enrichment to reviews on
  the home page via forkJoin + BookService lookups
- Seed initial data improvements in InitialDataGenerator
- Add CLAUDE.md with full codebase documentation
@mak1ss mak1ss merged commit ec174a1 into development Apr 24, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant