From 8da74ae5b7845b51f48f5759a675ad300abec3e5 Mon Sep 17 00:00:00 2001 From: elhoim Date: Mon, 31 Aug 2026 00:12:42 +0000 Subject: [PATCH] Warn when --verbose-types is passed without a --list-* flag Finding #45 (verbose-types-inert): --verbose-types is accepted in every mode but only consumed by list_supported_types/list_active_modules. In the normal query path it silently forces the describeTypes fetch condition true with no effect and no warning, misleading users into thinking it changed behavior. Fix: emit a stderr warning when --verbose-types is passed without --list-supported-types or --list-active-modules, so the inert flag is no longer silent. --- bin/cli.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bin/cli.py b/bin/cli.py index 92267b1..817e68c 100644 --- a/bin/cli.py +++ b/bin/cli.py @@ -834,6 +834,12 @@ def main() -> int: args = parser.parse_args() suppress_standard_json_output = args.markdown_output is not None + if args.verbose_types and not (args.list_supported_types or args.list_active_modules): + print( + "[!] --verbose-types has no effect without --list-supported-types or --list-active-modules", + file=sys.stderr, + ) + if args.cache_ttl_seconds < 0: print("[!] --cache-ttl-seconds must be >= 0", file=sys.stderr) return 1