tessl install tessl/pypi-josepy@2.1.0JOSE protocol implementation in Python with support for JSON Web Algorithms, Keys, and Signatures
Agent Success
Agent success rate when using this tile
73%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.16x
Baseline
Agent success rate without this tile
63%
{
"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
}
]
}