tessl install tessl/pypi-dnspython@1.16.0DNS toolkit for Python supporting almost all record types with high-level and low-level DNS operations
Agent Success
Agent success rate when using this tile
85%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.37x
Baseline
Agent success rate without this tile
62%
{
"context": "Evaluates whether the solution uses dnspython's asynchronous resolver/query APIs with proper backend selection to implement the specified async DNS helper. Checks target use of dns.asyncbackend for choosing asyncio vs trio, async resolver calls for A/AAAA lookups, concurrency expectations, and handling of per-call nameserver overrides.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Backend choice",
"description": "Selects the backend through dns.asyncbackend (e.g., get_backend or get_default_backend) for \"asyncio\" and \"trio\" inputs, passes it into async resolver/query calls, and raises ValueError for unsupported names.",
"max_score": 20
},
{
"name": "Async resolver",
"description": "Creates and uses dns.asyncresolver.Resolver (or dns.asyncresolver.resolve) with awaited calls rather than sync dns.resolver, configuring timeout/lifetime and nameservers on the async resolver instance.",
"max_score": 20
},
{
"name": "A lookup",
"description": "Performs A-record queries via async resolver methods (Resolver.resolve or dns.asyncquery.udp/tcp/https) awaited for results, returning address strings for the target hostname using the configured backend.",
"max_score": 20
},
{
"name": "Dual concurrency",
"description": "Issues A and AAAA lookups concurrently using async primitives (e.g., asyncio.gather with Resolver.resolve calls or trio nursery spawning dns.asyncquery/asyncresolver operations) so both execute in parallel on the selected backend.",
"max_score": 20
},
{
"name": "Nameserver override",
"description": "Supports per-call nameserver overrides by supplying override lists to async resolver calls or temporary Resolver copies, ensuring the default resolver.nameservers remain unchanged after the lookup.",
"max_score": 20
}
]
}