"""rcjav — internal package split out of rc-jav.py. This file re-exports the names that external callers (tests, fixtures runner, native messaging host, in-tree code in rc-jav.py) expect to find at the top level. Adding a new submodule does not change the public surface — only this file does. """ from rcjav.model import FileEntry # noqa: F401 from rcjav.dupes import ( # noqa: F401 DEFAULT_KEEP_RANKING, set_keep_ranking, get_keep_ranking, decide_keep_with_reason, decide_keep, find_dupes, describe_dupe_risks, find_variant_alerts, ) from rcjav.cache import ( # noqa: F401 CACHE_PATH, CACHE_VERSION, CACHE_STALE_HOURS, load_cache, save_cache, cache_age_hours, fmt_age, ) from rcjav.ids import ( # noqa: F401 PRIMARY_ID_RE, FALLBACK_ID_RE, COMPOUND_ID_RE, RANGE_RE, BUILTIN_PART_RES, PART_RES, configure_part_patterns, detect_part, detect_part_from_stem, part_key, extract_id, normalize_id, describe_id_match, expand_range, )