From b223fd77dc7379c8fd2f26596cf12502a9354ea3 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 15 Jan 2026 11:40:19 +0100 Subject: pkg/aflow: expect CitationMetadata CitationMetadata may be present in replies sometimes. CitationMetadata is a specific field in the Gemini API's response object that alerts you when the model has directly quoted or closely derived content from a specific source, such as a book, website, or open-source code repository. We've got the following error: syz-agent: unexpected reply fields ({Content:0xc0058eb4a0 CitationMetadata:0xc0094009a8 FinishMessage: TokenCount:0 FinishReason:STOP AvgLogprobs:0 GroundingMetadata: Index:0 LogprobsResult: SafetyRatings:[] URLContextMetadata:}) --- pkg/aflow/llm_agent.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/aflow/llm_agent.go b/pkg/aflow/llm_agent.go index 76661add6..b897643c7 100644 --- a/pkg/aflow/llm_agent.go +++ b/pkg/aflow/llm_agent.go @@ -191,9 +191,9 @@ func (a *LLMAgent) parseResponse(resp *genai.GenerateContentResponse) ( err = fmt.Errorf("%v (%v)", candidate.FinishMessage, candidate.FinishReason) return } - // We don't expect to receive these now. - if candidate.GroundingMetadata != nil || candidate.CitationMetadata != nil || - candidate.LogprobsResult != nil { + // We don't expect to receive these fields now. + // Note: CitationMetadata may be present sometimes, but we don't have uses for it. + if candidate.GroundingMetadata != nil || candidate.LogprobsResult != nil { err = fmt.Errorf("unexpected reply fields (%+v)", *candidate) return } -- cgit mrf-deployment