Coverage for /home/admin/Documents/AI/applications/lexigram-dev/lexigram/experimental/ai/lexigram-ai-session/src/lexigram/ai/session/constants.py: 91%

22 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-25 07:19 +0800

1"""Constants for lexigram-ai-session.""" 

2 

3from __future__ import annotations 

4 

5import importlib.metadata 

6 

7try: 

8 __version__: str = importlib.metadata.version("lexigram-ai-session") 

9except ImportError: 

10 __version__ = "0.0.0" 

11 

12 

13# -- Environment Variable Prefixes ------------------------------------------- 

14 

15ENV_PREFIX: str = "LEX_AI_SESSION__" 

16ENV_NESTED_DELIMITER: str = "__" 

17 

18# -- Session Defaults -------------------------------------------------------- 

19 

20DEFAULT_SESSION_TTL_S: int = 86400 # 24 hours 

21DEFAULT_CLEANUP_INTERVAL_S: int = 600 # 10 minutes 

22DEFAULT_MAX_TURNS: int = 1000 

23DEFAULT_MAX_SESSIONS_PER_USER: int = 100 

24DEFAULT_AUTO_CHECKPOINT_INTERVAL: int = 10 

25DEFAULT_MAX_CHECKPOINTS: int = 50 

26DEFAULT_MAX_BRANCHES: int = 10 

27DEFAULT_MAX_AGENTS: int = 10 

28DEFAULT_TURN_STRATEGY: str = "round_robin" 

29DEFAULT_BACKEND: str = "in_memory" 

30 

31# -- HTTP Defaults ----------------------------------------------------------- 

32 

33DEFAULT_COOKIE_NAME: str = "lexigram_session" 

34DEFAULT_HEADER_NAME: str = "X-Session-ID" 

35 

36# -- Behaviour Defaults ------------------------------------------------------ 

37 

38DEFAULT_CONSOLIDATE_ON_CLOSE: bool = True 

39 

40__all__ = [ 

41 "DEFAULT_AUTO_CHECKPOINT_INTERVAL", 

42 "DEFAULT_BACKEND", 

43 "DEFAULT_CLEANUP_INTERVAL_S", 

44 "DEFAULT_CONSOLIDATE_ON_CLOSE", 

45 "DEFAULT_COOKIE_NAME", 

46 "DEFAULT_HEADER_NAME", 

47 "DEFAULT_MAX_AGENTS", 

48 "DEFAULT_MAX_BRANCHES", 

49 "DEFAULT_MAX_CHECKPOINTS", 

50 "DEFAULT_MAX_SESSIONS_PER_USER", 

51 "DEFAULT_MAX_TURNS", 

52 "DEFAULT_SESSION_TTL_S", 

53 "DEFAULT_TURN_STRATEGY", 

54 "ENV_NESTED_DELIMITER", 

55 "ENV_PREFIX", 

56 "__version__", 

57]