evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "Evaluates how well the solution uses make-fetch-happen's cache metadata controls to persist selected headers, bypass cache on conditional requests, expose cache status, and invalidate cached entries after non-GET updates.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Cache setup",
"description": "GET/HEAD requests are executed through make-fetch-happen with a configured cachePath so responses are stored and retrievable across calls.",
"max_score": 20
},
{
"name": "Header persistence",
"description": "trackedHeaders are passed to make-fetch-happen via cacheAdditionalHeaders and the returned cached responses surface those header values in the client result without refetching.",
"max_score": 20
},
{
"name": "Conditional bypass",
"description": "Requests containing If-None-Match or If-Modified-Since set cache: 'no-store' (or equivalent) in make-fetch-happen so the cache is neither read nor written and existing entries remain intact.",
"max_score": 20
},
{
"name": "Non-GET invalidation",
"description": "Successful POST/PUT/DELETE calls go through make-fetch-happen with the same cachePath to trigger its automatic invalidation of cached GET/HEAD entries for the URL before the next fetch.",
"max_score": 20
},
{
"name": "Cache metadata surfaced",
"description": "fromCache flags and cachedHeaders are derived from make-fetch-happen response headers (e.g., x-local-cache or x-local-cache-status plus stored header names) so callers see cache hit/miss state and stored metadata.",
"max_score": 20
}
]
}