google-gemini/gemini-cli · error · ValueError
Key '{field_name}' in '{section_name}' must be of type {expe
Error message
Key '{field_name}' in '{section_name}' must be of type {expected_type.__name__} What it means
Error "Key '{field_name}' in '{section_name}' must be of type {expected_type.__name__}" thrown in google-gemini/gemini-cli.
Source
Thrown at tools/caretaker-agent/cloudrun/triage-worker/utils/validator.py:32
)
for field_name, expected_type in expected_schema.items():
if field_name not in section:
raise ValueError(f"Missing '{section_name}' key: {field_name}")
field_value = section[field_name]
if isinstance(expected_type, list):
element_type = expected_type[0]
valid_list = isinstance(field_value, list) and all(
isinstance(item, element_type) for item in field_value
)
if not valid_list:
raise ValueError(
f"Key '{field_name}' in '{section_name}' must be a list of "
f"{element_type.__name__}"
)
elif not isinstance(field_value, expected_type):
raise ValueError(
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:View on GitHub (pinned to 5024443c72)
When it happens
Trigger: Thrown at tools/caretaker-agent/cloudrun/triage-worker/utils/validator.py:32 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/86569fcf3127da82.
Report an issue: GitHub.