Skip to content

Bug: Case-sensitive parsing in LLMChecker causes 100% failure rate with gpt-5-mini judge #29

Description

@bhavishya-pohani

Bug

LLMChecker uses case-sensitive parsing ("[[True]]" in response), but gpt-5-mini outputs [[true]] (lowercase). This causes 100% failure rate on ambiguity benchmarks.

Location

are/simulation/validation/utils/llm_utils.py lines 146-149

Fix

response_lower = response.lower()
if self.success_str.lower() in response_lower:
    votes.append(True)
elif self.failure_str.lower() in response_lower:
    votes.append(False)

Minimal Reproducible Test

# Before fix: "lowercase" test FAILS
# After fix: all tests PASS

success_str = "[[True]]"
test_responses = [
    ("[[True]]", True),   # uppercase - works
    ("[[true]]", True),   # lowercase - FAILS without fix
]

for response, expected in test_responses:
    # Current code (case-sensitive):
    result = success_str in response
    print(f"'{response}': {result} (expected: {expected})")

Output before fix:

'[[True]]': True (expected: True)
'[[true]]': False (expected: True)  ← BUG

Author

Bhavishya Pohani (@bhavishya-pohani)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions