Versions in this module Expand all Collapse all v0 v0.12.0 Mar 10, 2026 Changes in this version + func ComputeOpportunities(ctx context.Context, store OpportunityStore, opts ComputeOpportunitiesOptions) error + func CosineDistanceFloat32(a, b []float32) float64 + func DeduplicatePages(pageMeta map[string]storage.PageMetadata) map[string]bool + func NormalizeURL(rawURL string) string + func WithVirtualLinks(g *storage.PageRankGraph, links []storage.VirtualLink) *storage.PageRankGraph + type ComputeOpportunitiesOptions struct + MaxOpportunities int + Method string + MinCommonTerms int + SessionID string + SimilarityThreshold float64 + type Corpus struct + DocCount int + Docs []Document + IDF []float64 + Vocab map[string]uint32 + func BuildCorpus(pages <-chan storage.PageHTMLRow, pageInfo map[string]storage.PageMetadata) (*Corpus, error) + type Document struct + Lang string + Norm float64 + PageRank float64 + TermFreqs map[uint32]float64 + Title string + URL string + WordCount uint32 + type EmbeddingProvider interface + Dimension func() int + Embed func(ctx context.Context, texts []string) ([][]float32, error) + type OpenAIProvider struct + APIKey string + BatchSize int + Model string + func NewOpenAIProvider(apiKey, model string, batchSize int) *OpenAIProvider + func (p *OpenAIProvider) Dimension() int + func (p *OpenAIProvider) Embed(ctx context.Context, texts []string) ([][]float32, error) + type OpportunityStore interface + DeleteInterlinkingOpportunities func(ctx context.Context, sessionID string) error + InsertInterlinkingOpportunities func(ctx context.Context, sessionID string, opps []storage.InterlinkingOpportunity) error + LoadInternalLinkSet func(ctx context.Context, sessionID string) (map[[2]string]struct{}, error) + LoadPageMetadata func(ctx context.Context, sessionID string) (map[string]storage.PageMetadata, error) + StreamPagesHTML func(ctx context.Context, sessionID string) (<-chan storage.PageHTMLRow, error) + type SimilarPair struct + Similarity float64 + SourceIdx int + TargetIdx int + func FindSimilarPairs(corpus *Corpus, threshold float64, minCommonTerms int) []SimilarPair + type SimulateResult struct + AvgDiff float64 + MaxDiff float64 + PagesDeclined uint32 + PagesImproved uint32 + Results []storage.SimulationResultRow + SimulationID string + func SimulatePageRank(ctx context.Context, store SimulationStore, sessionID, simID string, ...) (*SimulateResult, error) + type SimulationStore interface + InsertSimulation func(ctx context.Context, sessionID string, simID string, ...) error + LoadPageRankGraph func(ctx context.Context, sessionID string) (*storage.PageRankGraph, error)