codeflash-internal/tiles/codeflash-internal-skills/evals/scenario-3/criteria.json
2026-02-14 22:25:30 -05:00

31 lines
1.4 KiB
JSON

{
"context": "Tests ability to follow the add-language-support workflow to add Go, including handler registration, router updates, and correct supports_* flags",
"type": "weighted_checklist",
"checklist": [
{
"name": "Correct directory structure",
"description": "Creates core/languages/go/ with __init__.py, optimizer/__init__.py, and optimizer/optimizer.py following the existing language module pattern",
"max_score": 20
},
{
"name": "Handler class with decorator and flags",
"description": "Implements GoHandler with @register_handler('go') decorator, supports_optimizer=True, supports_testgen=False, and all other supports_* flags explicitly set to False",
"max_score": 25
},
{
"name": "Router dispatch with lazy import",
"description": "Adds an 'if data.language == \"go\"' branch to core/shared/optimizer_router.py using a lazy import inside the function body (not at module level)",
"max_score": 25
},
{
"name": "Module registration",
"description": "Adds import of core.languages.go in core/languages/__init__.py so the @register_handler decorator fires on startup",
"max_score": 15
},
{
"name": "Test plan",
"description": "Describes tests for handler registration (registry.get_handler('go')), feature dispatch (get_handler_for_feature), and a mocked end-to-end optimization flow using @pytest.mark.asyncio",
"max_score": 15
}
]
}