FAILURE MAP
← Case archive

FA-7401 / DNS resolution / Open access

Dns referral needs authority ns records without terminal answer · case 01

Dns referral needs authority ns records without terminal answer.

Verified by executionVariant 1 · 4 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The faulty implementation uses `bool(ns)` for the dns-referral-needs-authority-ns-records-without-terminal-answer decision.

VERIFIED REPAIR

Apply the explicit dns-referral-needs-authority-ns-records-without-terminal-answer contract, including the tested boundary and negative cases.

Unsuccessful approach: The attempted repair uses `not answer and bool(ns)` and still violates a separate fixture.

Case contract

Bounded offline decision model: dns referral needs authority ns records without terminal answer. Inputs are already validated protocol fields; the explicit fixtures define the supported policy, not a complete protocol implementation.

Why this case matters

This deterministic dns resolution model isolates the dns-referral-needs-authority-ns-records-without-terminal-answer policy at a network component boundary.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import ipaddress
import re
from urllib.parse import urlsplit, urljoin
N = 1
observations = []
def solve(answer, ns, authoritative):
    return bool(ns)
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
_fixtures = ["check('fixture 1', solve([], ['ns'], False), True)", "check('fixture 2', solve(['a'], ['ns'], False), False)", "check('fixture 3', solve([], ['ns'], True), False)", "check('fixture 4', solve([], [], False), False)"]
for _line in _fixtures[N % len(_fixtures):] + _fixtures[:N % len(_fixtures)]:
    exec(_line)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
fixture 2TrueFalseFailed
fixture 3TrueFalseFailed
fixture 4FalseFalsePassed
fixture 1TrueTruePassed

SHA-256 / 39b53a9904012ff2266214e55d4dcad3810370a332bdf444188b297f69a95541

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import ipaddress
import re
from urllib.parse import urlsplit, urljoin
N = 1
observations = []
def solve(answer, ns, authoritative):
    return not answer and bool(ns)
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
_fixtures = ["check('fixture 1', solve([], ['ns'], False), True)", "check('fixture 2', solve(['a'], ['ns'], False), False)", "check('fixture 3', solve([], ['ns'], True), False)", "check('fixture 4', solve([], [], False), False)"]
for _line in _fixtures[N % len(_fixtures):] + _fixtures[:N % len(_fixtures)]:
    exec(_line)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
fixture 2FalseFalsePassed
fixture 3TrueFalseFailed
fixture 4FalseFalsePassed
fixture 1TrueTruePassed

SHA-256 / 6c9d3a7b197b309d96e854bae2e06c95e50c470c7b921469bb7ad094f7f1036f

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
import ipaddress
import re
from urllib.parse import urlsplit, urljoin
N = 1
observations = []
def solve(answer, ns, authoritative):
    return not answer and bool(ns) and not authoritative
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
_fixtures = ["check('fixture 1', solve([], ['ns'], False), True)", "check('fixture 2', solve(['a'], ['ns'], False), False)", "check('fixture 3', solve([], ['ns'], True), False)", "check('fixture 4', solve([], [], False), False)"]
for _line in _fixtures[N % len(_fixtures):] + _fixtures[:N % len(_fixtures)]:
    exec(_line)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
fixture 2FalseFalsePassed
fixture 3FalseFalsePassed
fixture 4FalseFalsePassed
fixture 1TrueTruePassed

SHA-256 / a5d010c11791fe889baa71a4e3af63c97a5b3446351c1700c21e6fce91616909

Verification & scope

Bounded deterministic policy model over validated inputs; not a complete protocol stack or an interoperability claim. The five variants rotate the same explicit fixture set. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.

Observations recorded using Python 3.12.14 at 2026-09-29T14:38:11.504173+00:00.

Case digest / 6bcc631f92d2db12a817c37cb36a9402980a4eb52a9e98db896a3deab80066a5