CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-josepy

JOSE protocol implementation in Python with support for JSON Web Algorithms, Keys, and Signatures

73

1.15x
Overview
Eval results
Files

rubric.jsonevals/scenario-10/

{
  "context": "Evaluates how well the solution uses josepy's typed JSON utilities to model and dispatch messages via a type field, including serialization helpers and type registration. Focus is on leveraging the library's registry-driven deserialization and field descriptors rather than manual dict handling.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Typed base",
      "description": "Message derives from josepy.TypedJSONObjectWithFields, sets type_field_name to \"type\", and registers Message.TYPES entries mapping \"error\" to ErrorMessage and \"info\" to InfoMessage so dispatch happens through josepy.",
      "max_score": 25
    },
    {
      "name": "Field descriptors",
      "description": "Message and its subclasses declare content, code, detail, and level using josepy.field or Field descriptors so JSON field mapping is handled by josepy rather than manual key access.",
      "max_score": 20
    },
    {
      "name": "Registry deserialization",
      "description": "Message.from_json delegates to TypedJSONObjectWithFields.from_json so josepy performs type lookups; known types instantiate the registered subclass, and missing or unknown types trigger josepy's validation errors.",
      "max_score": 20
    },
    {
      "name": "Type emission",
      "description": "to_json (or equivalent) relies on JSONObjectWithFields helpers such as to_partial_json or json_dumps to emit dictionaries that include the josepy-managed \"type\" field instead of manually assembling dicts.",
      "max_score": 20
    },
    {
      "name": "Roundtrip fidelity",
      "description": "An InfoMessage roundtrip uses josepy serialization/deserialization paths and retains the type marker and subclass-specific fields without custom parsing shortcuts.",
      "max_score": 15
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/pypi-josepy

tile.json