tercul-backend/internal/domain/search/client.go
google-labs-jules[bot] 0237e44b1f feat: Implement full-text search service
This commit implements the full-text search service using Weaviate. It replaces the stub implementation with a fully functional search service that supports hybrid and BM25 search modes.

The new implementation includes:
- Support for hybrid and BM25 search modes.
- Transformation of Weaviate search results into domain entities.
- Unit tests using a mock Weaviate wrapper to ensure the implementation is correct and to avoid environmental issues in the test pipeline.
2025-11-29 00:55:05 +00:00

13 lines
310 B
Go

package search
import (
"context"
"tercul/internal/domain"
)
// SearchClient defines the interface for a search client.
type SearchClient interface {
Search(ctx context.Context, params SearchParams) (*domain.SearchResults, error)
IndexWork(ctx context.Context, work *domain.Work, content string) error
}