tessl install tessl/pypi-dnslib@0.9.0Simple library to encode/decode DNS wire-format packets
Agent Success
Agent success rate when using this tile
97%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.76x
Baseline
Agent success rate without this tile
55%
{
"context": "This criteria evaluates how well the engineer uses dnslib's zone file format parsing capabilities to solve the DNS record parsing problem. The focus is on utilizing the library's RR.fromZone() method, understanding zone file directives, and properly handling zone format conventions.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Uses RR.fromZone()",
"description": "Implementation uses dnslib's RR.fromZone() method to parse zone-formatted strings into resource record objects, rather than implementing manual parsing logic.",
"max_score": 35
},
{
"name": "Handles $ORIGIN directive",
"description": "Correctly uses the origin parameter with RR.fromZone() to handle $ORIGIN directives and properly expand relative domain names according to the zone file specification.",
"max_score": 15
},
{
"name": "Handles $TTL directive",
"description": "Correctly uses the ttl parameter with RR.fromZone() to handle $TTL directives, applying default TTL values to records that don't specify their own TTL.",
"max_score": 15
},
{
"name": "Extracts record data",
"description": "Properly extracts data from dnslib RR objects, accessing attributes like rname, rtype, ttl, and rdata to build the structured dictionary output required by the specification.",
"max_score": 20
},
{
"name": "Handles multiple record types",
"description": "Correctly parses different DNS record types (A, CNAME, MX) from zone format using RR.fromZone(), demonstrating understanding that the method works across record types.",
"max_score": 10
},
{
"name": "Error handling",
"description": "Appropriately catches and handles exceptions from dnslib zone parsing (such as DNSError or parsing failures) and re-raises them as ValueError with clear messages as specified in the API.",
"max_score": 5
}
]
}