LICENSE
README.md
pyproject.toml
src/aletheia_probe/__init__.py
src/aletheia_probe/article_retraction_checker.py
src/aletheia_probe/backend_exceptions.py
src/aletheia_probe/batch_assessor.py
src/aletheia_probe/bibtex_parser.py
src/aletheia_probe/cli.py
src/aletheia_probe/confidence_utils.py
src/aletheia_probe/config.py
src/aletheia_probe/constants.py
src/aletheia_probe/data_models.py
src/aletheia_probe/dispatcher.py
src/aletheia_probe/enums.py
src/aletheia_probe/fallback_chain.py
src/aletheia_probe/fallback_executor.py
src/aletheia_probe/logging_config.py
src/aletheia_probe/models.py
src/aletheia_probe/normalizer.py
src/aletheia_probe/openalex.py
src/aletheia_probe/output_formatter.py
src/aletheia_probe/py.typed
src/aletheia_probe/quality_assessment.py
src/aletheia_probe/retry_utils.py
src/aletheia_probe/risk_calculator.py
src/aletheia_probe/validation.py
src/aletheia_probe.egg-info/PKG-INFO
src/aletheia_probe.egg-info/SOURCES.txt
src/aletheia_probe.egg-info/dependency_links.txt
src/aletheia_probe.egg-info/entry_points.txt
src/aletheia_probe.egg-info/requires.txt
src/aletheia_probe.egg-info/top_level.txt
src/aletheia_probe/backends/__init__.py
src/aletheia_probe/backends/algerian_ministry.py
src/aletheia_probe/backends/base.py
src/aletheia_probe/backends/bealls.py
src/aletheia_probe/backends/crossref_analyzer.py
src/aletheia_probe/backends/custom_list.py
src/aletheia_probe/backends/doaj.py
src/aletheia_probe/backends/fallback_mixin.py
src/aletheia_probe/backends/kscien_hijacked_journals.py
src/aletheia_probe/backends/kscien_predatory_conferences.py
src/aletheia_probe/backends/kscien_publishers.py
src/aletheia_probe/backends/kscien_standalone_journals.py
src/aletheia_probe/backends/openalex_analyzer.py
src/aletheia_probe/backends/predatoryjournals.py
src/aletheia_probe/backends/protocols.py
src/aletheia_probe/backends/retraction_watch.py
src/aletheia_probe/backends/scopus.py
src/aletheia_probe/cache/__init__.py
src/aletheia_probe/cache/acronym_cache.py
src/aletheia_probe/cache/assessment_cache.py
src/aletheia_probe/cache/base.py
src/aletheia_probe/cache/connection_utils.py
src/aletheia_probe/cache/custom_list_manager.py
src/aletheia_probe/cache/data_source_manager.py
src/aletheia_probe/cache/journal_cache.py
src/aletheia_probe/cache/openalex_cache.py
src/aletheia_probe/cache/retraction_cache.py
src/aletheia_probe/cache/schema.py
src/aletheia_probe/cache_sync/__init__.py
src/aletheia_probe/cache_sync/cache_cleanup_registry.py
src/aletheia_probe/cache_sync/db_writer.py
src/aletheia_probe/cache_sync/sync_manager.py
src/aletheia_probe/cross_validation/__init__.py
src/aletheia_probe/cross_validation/protocols.py
src/aletheia_probe/cross_validation/registry.py
src/aletheia_probe/cross_validation/validators.py
src/aletheia_probe/updater/__init__.py
src/aletheia_probe/updater/core.py
src/aletheia_probe/updater/py.typed
src/aletheia_probe/updater/sync_utils.py
src/aletheia_probe/updater/utils.py
src/aletheia_probe/updater/sources/__init__.py
src/aletheia_probe/updater/sources/algerian.py
src/aletheia_probe/updater/sources/bealls.py
src/aletheia_probe/updater/sources/custom.py
src/aletheia_probe/updater/sources/kscien_generic.py
src/aletheia_probe/updater/sources/kscien_helpers.py
src/aletheia_probe/updater/sources/kscien_hijacked_journals.py
src/aletheia_probe/updater/sources/kscien_publishers.py
src/aletheia_probe/updater/sources/kscien_standalone_journals.py
src/aletheia_probe/updater/sources/predatoryjournals.py
src/aletheia_probe/updater/sources/retraction_watch.py
src/aletheia_probe/updater/sources/scopus.py
src/aletheia_probe/updater/sources/algerian_helpers/__init__.py
src/aletheia_probe/updater/sources/algerian_helpers/downloader.py
src/aletheia_probe/updater/sources/algerian_helpers/extractor.py
src/aletheia_probe/updater/sources/algerian_helpers/pdf_parser.py
src/aletheia_probe/updater/sources/bealls_helpers/__init__.py
src/aletheia_probe/updater/sources/bealls_helpers/cleaner.py
src/aletheia_probe/updater/sources/bealls_helpers/parser.py
src/aletheia_probe/updater/sources/bealls_helpers/validator.py
src/aletheia_probe/utils/dead_code.py