Versions in this module Expand all Collapse all v0 v0.2.0 Jan 26, 2026 Changes in this version + type AggregationMethod string + const AggregationConservative + const AggregationMajority + const AggregationMean + const AggregationMedian + const AggregationWeighted + type Annotation struct + AnnotatorID string + AnnotatorType string + Explanation string + Label string + Name string + Score float64 type EvaluationReport + Judge *JudgeMetadata + Reference *ReferenceData + RubricID string + func (r *EvaluationReport) SetJudge(judge *JudgeMetadata) + func (r *EvaluationReport) SetReference(ref *ReferenceData) + func (r *EvaluationReport) SetRubric(rubricID string) + type JudgeDisagreement struct + Category string + Range float64 + Scores []JudgeScore + StandardDeviation float64 + type JudgeMetadata struct + EvaluatedAt time.Time + JudgeID string + Latency time.Duration + MaxTokens int + Model string + ModelProvider string + ModelVersion string + PromptTemplate string + PromptVersion string + RubricID string + RubricVersion string + SpanID string + SystemPrompt string + Temperature float64 + TokensUsed *TokenUsage + TraceID string + func NewJudgeMetadata(model string) *JudgeMetadata + func (j *JudgeMetadata) SetLatency(d time.Duration) + func (j *JudgeMetadata) WithPrompt(template, version string) *JudgeMetadata + func (j *JudgeMetadata) WithProvider(provider string) *JudgeMetadata + func (j *JudgeMetadata) WithRubric(id, version string) *JudgeMetadata + func (j *JudgeMetadata) WithTemperature(temp float64) *JudgeMetadata + func (j *JudgeMetadata) WithTokenUsage(input, output int) *JudgeMetadata + func (j *JudgeMetadata) WithTrace(traceID, spanID string) *JudgeMetadata + type JudgeScore struct + JudgeID string + Score float64 + type MultiJudgeResult struct + AggregatedScore float64 + AggregationMethod AggregationMethod + Agreement float64 + ConsolidatedDecision Decision + ConsolidatedFindings []Finding + Disagreements []JudgeDisagreement + Evaluations []*EvaluationReport + Judges []*JudgeMetadata + func AggregateEvaluations(evaluations []*EvaluationReport, method AggregationMethod) *MultiJudgeResult + type PairwiseCategoryScore struct + Category string + Margin float64 + Reasoning string + Winner PairwiseWinner + type PairwiseComparison struct + CategoryScores []PairwiseCategoryScore + Confidence float64 + CreatedAt time.Time + ID string + Input string + Judge *JudgeMetadata + Metadata map[string]any + OutputA string + OutputB string + Reasoning string + Winner PairwiseWinner + func NewPairwiseComparison(input, outputA, outputB string) *PairwiseComparison + func (p *PairwiseComparison) AddCategoryScore(category string, winner PairwiseWinner, reasoning string, margin float64) + func (p *PairwiseComparison) SetWinner(winner PairwiseWinner, reasoning string, confidence float64) + func (p *PairwiseComparison) SwappedComparison() *PairwiseComparison + type PairwiseResult struct + Comparisons []PairwiseComparison + Confidence float64 + OverallWinner PairwiseWinner + TieRate float64 + WinRateA float64 + WinRateB float64 + func ComputePairwiseResult(comparisons []PairwiseComparison) *PairwiseResult + type PairwiseWinner string + const WinnerA + const WinnerB + const WinnerTie + const WinnerUncertain + type ReferenceData struct + Annotations []Annotation + Context []string + ExpectedOutput string + ExpectedOutputs []string + ID string + Input string + Metadata map[string]any + Source string + Tags []string + func NewReferenceData(input, expectedOutput string) *ReferenceData + func (r *ReferenceData) WithAnnotation(name string, score float64, annotatorID string) *ReferenceData + func (r *ReferenceData) WithContext(ctx ...string) *ReferenceData + type ReferenceDataset struct + Description string + ID string + Items []ReferenceData + Metadata map[string]any + Name string + Tags []string + Version string + func NewReferenceDataset(id, name string) *ReferenceDataset + func (d *ReferenceDataset) AddItem(item ReferenceData) + func (d *ReferenceDataset) GetByID(id string) *ReferenceData + type Rubric struct + Anchors []ScoreAnchor + Category string + Description string + Examples []RubricExample + func NewRubric(category, description string) *Rubric + func (r *Rubric) AddAnchor(score float64, label, description string, criteria ...string) *Rubric + func (r *Rubric) AddExample(score float64, output, explanation string) *Rubric + func (r *Rubric) AddRangeAnchor(minScore, maxScore float64, label, description string, criteria ...string) *Rubric + func (r *Rubric) GetAnchorForScore(score float64) *ScoreAnchor + type RubricExample struct + Explanation string + Input string + Output string + Score float64 + type RubricSet struct + Description string + ID string + Name string + Rubrics []Rubric + Version string + func DefaultPRDRubricSet() *RubricSet + type ScoreAnchor struct + Criteria []string + Description string + Label string + MaxScore float64 + MinScore float64 + Score float64 + type TokenUsage struct + CacheReadTokens int + CacheWriteTokens int + InputTokens int + OutputTokens int + TotalTokens int v0.1.0 Jan 26, 2026 Changes in this version + type ActionItem struct + Action string + Category string + Effort string + Owner string + Severity Severity + type CategoryScore struct + Category string + Evidence string + Findings []Finding + Justification string + MaxScore float64 + Score float64 + Status ScoreStatus + Weight float64 + func NewCategoryScore(category string, weight, score float64, justification string) CategoryScore + func (c *CategoryScore) ComputeStatus() ScoreStatus + func (c *CategoryScore) ComputeWeightedScore() float64 + type Decision struct + FindingCounts FindingCounts + Passed bool + Rationale string + Status DecisionStatus + WeightedScore float64 + func Evaluate(findings []Finding, weightedScore float64, criteria PassCriteria) Decision + type DecisionStatus string + const DecisionConditional + const DecisionFail + const DecisionHumanReview + const DecisionPass + type EvaluationReport struct + Categories []CategoryScore + Decision Decision + Findings []Finding + Metadata ReportMetadata + NextSteps NextSteps + PassCriteria PassCriteria + ReviewType string + Schema string + Summary string + WeightedScore float64 + func NewEvaluationReport(reviewType, document string) *EvaluationReport + func (r *EvaluationReport) AddCategory(cs CategoryScore) + func (r *EvaluationReport) AddFinding(f Finding) + func (r *EvaluationReport) ComputeWeightedScore() float64 + func (r *EvaluationReport) Evaluate() Decision + func (r *EvaluationReport) Finalize(rerunCommand string) + func (r *EvaluationReport) GenerateNextSteps(rerunCommand string) + func (r *EvaluationReport) GenerateSummary() string + type Finding struct + Category string + Description string + Effort string + Evidence string + ID string + Owner string + Recommendation string + Severity Severity + Title string + func (f *Finding) IsBlocking() bool + type FindingCounts struct + Critical int + High int + Info int + Low int + Medium int + Total int + func CountFindings(findings []Finding) FindingCounts + func (c FindingCounts) BlockingCount() int + func (c FindingCounts) HasBlocking() bool + type NextSteps struct + Immediate []ActionItem + Recommended []ActionItem + RerunCommand string + type PassCriteria struct + MaxCritical int + MaxHigh int + MaxMedium int + MinScore float64 + func DefaultPassCriteria() PassCriteria + func StrictPassCriteria() PassCriteria + type ReportMetadata struct + Document string + DocumentID string + DocumentTitle string + DocumentVersion string + GeneratedAt time.Time + GeneratedBy string + ReviewerID string + type ScoreStatus string + const CategoryNeedsImprovement + const CategoryPending + const ScoreStatusFail + const ScoreStatusPass + const ScoreStatusWarn + func (s ScoreStatus) Icon() string + type Severity string + const SeverityCritical + const SeverityHigh + const SeverityInfo + const SeverityLow + const SeverityMedium + func AllSeverities() []Severity + func (s Severity) Icon() string + func (s Severity) IsBlocking() bool + func (s Severity) Weight() int