Inconsistent ip address resolution with local DNS provisioning

In pihole I provisioned the FQDN of a device on my local network with its local static ip address using the "Local DNS" page under the "Tools" menu. The provisioning succeeded. I see the provisioned key-value pair in /etc/pihole/custom.list. I then flushed the cache and restarted DNS. In /var/log/pihole.log, I see the resolver sometimes using custom.list to retrieve the desired ip address, but sometimes it forwards the request to the upstream server(s). In the "Query Log" of the web interface I see the requests for the local device going to the upstream servers. The requests come from multiple clients on my network.

Debug token https://tricorder.pi-hole.net/TnVpuy0M/
(The local device is "family-room-apple-tv.openthread.thread.home.arpa")

Expected Behaviour:

Resolution should default to local DNS first, and iff that fails go to upstream

Details about my system:
RPi
Linux pihole 5.10.63-v7+ #1488 SMP Thu Nov 18 16:14:44 GMT 2021 armv7l GNU/Linux

Anyone?

Sorry, your debug log expired. Please create a new one.

Done. Thanks for looking!

https://tricorder.pi-hole.net/L1zgAOiW/

-rw-r--r-- 1 root root 63 Jan 11 10:51 /etc/pihole/custom.list
   192.168.2.249 family-room-apple-tv.openthread.thread.home.arpa

   Jan 14 08:38:33 dnsmasq[12398]: query[A] Family-Room-Apple-TV.openthread.thread.home.arpa from 192.168.2.111
   Jan 14 08:38:33 dnsmasq[12398]: /etc/pihole/custom.list Family-Room-Apple-TV.openthread.thread.home.arpa is 192.168.2.249
   Jan 14 08:38:33 dnsmasq[12398]: query[AAAA] Family-Room-Apple-TV.openthread.thread.home.arpa from 192.168.2.111
   Jan 14 08:38:33 dnsmasq[12398]: forwarded Family-Room-Apple-TV.openthread.thread.home.arpa to 9.9.9.9

With custom.list you create a A record. However, your clients request an AAAA record, which your Pi-hole can't answer from custom.list that why it gets forwarded upstream.

Ah thanks! How could I prevent this? The local device does not have an IPv6 address assigned to it.

You could create a blacklist regex filtering only this request as an AAAA type.

family-room-apple-tv.openthread.thread.home.arpa;querytype=AAAA

Looks like that works. I now see the AAAA requests blocked