Skip to content

llms/googleai: return error instead of panicking on system-only message list#1509

Open
SAY-5 wants to merge 1 commit into
tmc:mainfrom
SAY-5:fix-googleai-system-only-panic-v2
Open

llms/googleai: return error instead of panicking on system-only message list#1509
SAY-5 wants to merge 1 commit into
tmc:mainfrom
SAY-5:fix-googleai-system-only-panic-v2

Conversation

@SAY-5

@SAY-5 SAY-5 commented Jun 20, 2026

Copy link
Copy Markdown

Fixes #1507

generateFromMessages builds a history slice from the input messages, skipping any system message (it is routed to model.SystemInstruction). When every message has role system, the slice ends up empty and history[n-1] panics with index out of range [-1].

This guards the empty case and returns a new ErrNoMessageContent error instead of panicking, so a system-only message list (including in stream mode) fails cleanly.

PR Checklist

  • Read the Contributing documentation.
  • Read the Code of conduct documentation.
  • Name your Pull Request title clearly, concisely, and prefixed with the name of the primarily affected package you changed according to Good commit messages (such as memory: add interfaces for X, Y or util: add whizzbang helpers).
  • Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
  • Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. Fixes #123).
  • Describes the source of new concepts.
  • References existing implementations as appropriate.
  • Contains test coverage for new functions.
  • Passes all golangci-lint checks.

…ge list

Signed-off-by: Sai Asish Y <say.apm35@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

googleai: panic on system-only message list in GenerateContent

1 participant