diff --git a/crosscheck.py b/crosscheck.py index 1c4e1bc..b61ef76 100644 --- a/crosscheck.py +++ b/crosscheck.py @@ -110,7 +110,7 @@ def check_decisions(ws: Workspace) -> None: # ── topics ─────────────────────────────────────────────────────────────────── -TOPIC = re.compile(r"(?+#*.-]*)*)") +TOPIC = re.compile(r"(?+#*.-]*)*)") # Same shape, not a topic: Flutter platform channel names, systemd directory names. NOT_TOPIC = re.compile(r"MethodChannel\(|EventChannel\(|Directory=") @@ -145,7 +145,8 @@ def check_topics(ws: Workspace) -> None: continue for m in TOPIC.finditer(line): root, rest = m.group(1), m.group(2).rstrip(".") - if root in ws.repos or root in IGNORED_TOPIC_ROOTS: + # Topic levels never contain '-'; repo names (yukart/svc-core) usually do. + if root in ws.repos or "-" in root or root in IGNORED_TOPIC_ROOTS: continue segs = ["yukart", root] + rest.split("/")[1:] if rest == "":