google-gemini/gemini-cli · error · ValueError
Invalid or missing 'quality': {metadata.get('quality')}
Error message
Invalid or missing 'quality': {metadata.get('quality')} What it means
Error "Invalid or missing 'quality': {metadata.get('quality')}" thrown in google-gemini/gemini-cli.
Source
Thrown at tools/caretaker-agent/cloudrun/triage-worker/utils/validator.py:51
f"Key '{field_name}' in '{section_name}' must be of type "
f"{expected_type.__name__}"
)
def validate_triage_result(data: dict) -> None:
"""
Validates the structure of the LLM triage result.
Expects an already-parsed dictionary (json.loads is called upstream
by the triage orchestrator before invoking this validator).
Ensures required metadata, effort estimates, and nested schemas
are present when quality is OK.
"""
if "triage_metadata" not in data:
raise ValueError("Missing 'triage_metadata'")
metadata = data["triage_metadata"]
valid_qualities = ["SPAM", "EMPTY", "NEEDS_INFO", "FEATURE", "OK"]
if metadata.get("quality") not in valid_qualities:
raise ValueError(
f"Invalid or missing 'quality': {metadata.get('quality')}"
)
if metadata.get("quality") == "NEEDS_INFO":
comment = metadata.get("comment")
if not isinstance(comment, str) or not comment.strip():
metadata["comment"] = (
"Thank you for opening this issue! Additional information (such as "
"reproduction steps, environment details, or error logs) is required "
"to help us triage and investigate. Please provide any relevant details "
"so we can assist you."
)
if metadata.get("quality") == "OK":
effort = metadata.get("effort_estimate")
if effort not in ["SMALL", "MEDIUM", "LARGE"]:
raise ValueError(
f"Invalid or missing 'effort_estimate': {effort}"View on GitHub (pinned to 5024443c72)
When it happens
Trigger: Thrown at tools/caretaker-agent/cloudrun/triage-worker/utils/validator.py:51 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of google-gemini/gemini-cli@5024443c72 (2026-08-12).
Data as JSON: /api/errors/f60c4bced5af276a.
Report an issue: GitHub.