Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CandidateStatistic ¶
type CandidateStatistic struct {
Name string `json:"name"`
Value float32 `json:"value"`
Unit string `json:"unit"`
Source string `json:"source"`
SourceURL string `json:"source_url"`
Excerpt string `json:"excerpt"`
}
CandidateStatistic represents an unverified statistic from research
type OrchestrationRequest ¶
type OrchestrationRequest struct {
Topic string `json:"topic"`
MinVerifiedStats int `json:"min_verified_stats"` // Minimum verified statistics required
MaxCandidates int `json:"max_candidates"` // Maximum candidates to research
ReputableOnly bool `json:"reputable_only"`
}
OrchestrationRequest represents the main request to the orchestrator
type OrchestrationResponse ¶
type OrchestrationResponse struct {
Topic string `json:"topic"`
Statistics []Statistic `json:"statistics"`
TotalCandidates int `json:"total_candidates"`
VerifiedCount int `json:"verified_count"`
FailedCount int `json:"failed_count"`
Timestamp time.Time `json:"timestamp"`
Partial bool `json:"partial"` // True if target not met
TargetCount int `json:"target_count"` // The minimum requested
ContinuationID string `json:"continuation_id,omitempty"` // ID for continuing the search
}
OrchestrationResponse represents the final response
type ResearchRequest ¶
type ResearchRequest struct {
Topic string `json:"topic"`
MinStatistics int `json:"min_statistics"` // Minimum number of statistics to find
MaxStatistics int `json:"max_statistics"` // Maximum number of statistics to find
ReputableOnly bool `json:"reputable_only"` // Only search reputable sources
}
ResearchRequest represents a request to find statistics
type ResearchResponse ¶
type ResearchResponse struct {
Topic string `json:"topic"`
Candidates []CandidateStatistic `json:"candidates"`
Timestamp time.Time `json:"timestamp"`
}
ResearchResponse represents the response from research agent
type SearchResult ¶
type SearchResult struct {
URL string `json:"url"`
Title string `json:"title"`
Snippet string `json:"snippet"`
Domain string `json:"domain"`
Position int `json:"position,omitempty"`
}
SearchResult represents a source URL from research agent
type Statistic ¶
type Statistic struct {
Name string `json:"name"` // Name/description of the statistic
Value float32 `json:"value"` // Numerical value
Unit string `json:"unit"` // Unit of measurement (e.g., "°C", "%", "million")
Source string `json:"source"` // Name of the source (e.g., "Pew Research Center")
SourceURL string `json:"source_url"` // URL to the source
Excerpt string `json:"excerpt"` // Verbatim quote containing the statistic
Verified bool `json:"verified"` // Whether this has been verified by verification agent
DateFound time.Time `json:"date_found"` // When this statistic was found
}
Statistic represents a verified statistic with its source
type SynthesisRequest ¶
type SynthesisRequest struct {
Topic string `json:"topic"`
SearchResults []SearchResult `json:"search_results"`
MinStatistics int `json:"min_statistics"`
MaxStatistics int `json:"max_statistics"`
}
SynthesisRequest is the request to synthesis agent
type SynthesisResponse ¶
type SynthesisResponse struct {
Topic string `json:"topic"`
Candidates []CandidateStatistic `json:"candidates"`
SourcesAnalyzed int `json:"sources_analyzed"`
Timestamp time.Time `json:"timestamp"`
}
SynthesisResponse is the response from synthesis agent
type VerificationRequest ¶
type VerificationRequest struct {
Candidates []CandidateStatistic `json:"candidates"`
}
VerificationRequest represents a request to verify statistics
type VerificationResponse ¶
type VerificationResponse struct {
Results []VerificationResult `json:"results"`
Verified int `json:"verified_count"`
Failed int `json:"failed_count"`
Timestamp time.Time `json:"timestamp"`
}
VerificationResponse represents the response from verification agent
type VerificationResult ¶
type VerificationResult struct {
Statistic *Statistic `json:"statistic"`
Verified bool `json:"verified"`
Reason string `json:"reason,omitempty"` // Why verification failed (if applicable)
}
VerificationResult represents the result of verifying a statistic