Coverage for src/ai_lls_lib/__init__.py: 100%

11 statements  

« prev     ^ index     » next       coverage.py v7.16.2, created at 2026-10-02 17:06 +0000

1"""Core business logic for Landline Scrubber: phone verification, DNC checks, 

2bulk CSV processing, DynamoDB caching, managed API keys, and Stripe credits.""" 

3 

4from ai_lls_lib.apikeys import ( 

5 KeyNotFoundError, 

6 LimitExceededError, 

7 ManagedApiKeyService, 

8 RevokedKeyError, 

9) 

10from ai_lls_lib.common import DecimalEncoder, extract_area_code 

11from ai_lls_lib.core.cache import DynamoDBCache 

12from ai_lls_lib.core.models import ( 

13 BulkJob, 

14 BulkJobStatus, 

15 JobStatus, 

16 LineType, 

17 PhoneVerification, 

18 VerificationResult, 

19 VerificationSource, 

20) 

21from ai_lls_lib.core.processor import BulkProcessor 

22from ai_lls_lib.core.verifier import PhoneVerifier 

23from ai_lls_lib.files import FileService 

24from ai_lls_lib.key_management import ( 

25 compute_key_hash, 

26 generate_key_id, 

27 generate_managed_key, 

28 validate_expiration_days, 

29) 

30from ai_lls_lib.providers.exceptions import ProviderError 

31 

32__version__ = "3.18.4" 

33 

34__all__ = [ 

35 "PhoneVerification", 

36 "BulkJob", 

37 "BulkJobStatus", 

38 "LineType", 

39 "VerificationResult", 

40 "VerificationSource", 

41 "JobStatus", 

42 "PhoneVerifier", 

43 "BulkProcessor", 

44 "DynamoDBCache", 

45 "compute_key_hash", 

46 "generate_key_id", 

47 "generate_managed_key", 

48 "validate_expiration_days", 

49 "DecimalEncoder", 

50 "extract_area_code", 

51 "ManagedApiKeyService", 

52 "KeyNotFoundError", 

53 "RevokedKeyError", 

54 "LimitExceededError", 

55 "ProviderError", 

56 "FileService", 

57]