Currently, this diagnostic fires on system header code that the user has no control over, such as std::lock_guard from <mutex> in both libc++ and libstdc++. I believe the diagnostic should be silenced when the class template exists in a system header, for two reasons: 1) the user can't fix that code anyway, so their only recourse is to disable the diagnostic, 2) system headers (especially STL headers) have had time to add the CTAD guides where necessary, and so the warning is more likely to be a false positive in those cases.
This issue was observed by a customer in Intel's downstream and is also related to Issue #44202.
(Adding libc++ reviewers as an FYI for the diagnostic firing in their headers and as a sounding board for whether they agree we should disable this diagnostic in system headers by default.)
"but do not warn if the type without a deduction guide is in a system..."