evals
scenario-1
scenario-10
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "This criteria evaluates how effectively the engineer uses nuqs package features for type-safe state management with TypeScript inference. The focus is on proper parser selection, type inference utilization, and default value handling to achieve compile-time type safety.",
"type": "weighted_checklist",
"checklist": [
{
"name": "useQueryState usage",
"description": "Uses useQueryState or useQueryStates hook from nuqs to manage URL query parameter state",
"max_score": 15
},
{
"name": "String enum parser",
"description": "Uses parseAsStringEnum or parseAsStringLiteral for the category filter to restrict values to 'electronics', 'clothing', 'books', or 'home'",
"max_score": 20
},
{
"name": "Integer parser",
"description": "Uses parseAsInteger for the price minimum and maximum values to ensure type-safe integer parsing",
"max_score": 15
},
{
"name": "Boolean parser",
"description": "Uses parseAsBoolean for the in-stock filter to handle boolean query parameter state",
"max_score": 15
},
{
"name": "String literal parser",
"description": "Uses parseAsStringLiteral for the sort order to restrict values to 'asc' or 'desc'",
"max_score": 15
},
{
"name": "Default values",
"description": "Uses withDefault() method on parsers to set default values for category ('electronics'), in-stock (true), and sort order ('asc'), making these values non-nullable",
"max_score": 15
},
{
"name": "Type inference",
"description": "Leverages TypeScript type inference from parsers without manual type annotations for state values, demonstrating that nuqs automatically infers correct types",
"max_score": 5
}
]
}