or run

tessl search
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-3/

{
  "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
    }
  ]
}