Coverage for app\schemas\trust.py: 100%

33 statements  

« prev     ^ index     » next       coverage.py v7.3.2, created at 2026-01-15 13:39 +0300

1from pydantic import BaseModel 

2from typing import Optional, Dict, Any, List 

3from datetime import datetime 

4 

5class InferenceLogBase(BaseModel): 

6 school_id: str 

7 module_id: Optional[str] = None 

8 video_id: Optional[str] = None 

9 frame_timestamp: Optional[float] = None 

10 confidence: float 

11 is_valid: bool 

12 keypoints: Optional[Dict[str, Any]] = None 

13 metadata_json: Optional[Dict[str, Any]] = None 

14 

15class InferenceLogCreate(InferenceLogBase): 

16 pass 

17 

18class InferenceLog(InferenceLogBase): 

19 id: str 

20 timestamp: datetime 

21 created_at: datetime 

22 

23 class Config: 

24 from_attributes = True 

25 

26class JudgementReviewBase(BaseModel): 

27 inference_id: str 

28 original_verdict: str 

29 corrected_verdict: str 

30 correction_reason: Optional[str] = None 

31 

32class JudgementReviewCreate(JudgementReviewBase): 

33 pass 

34 

35class JudgementReview(JudgementReviewBase): 

36 id: str 

37 reviewer_id: str 

38 reviewed_at: datetime 

39 

40 class Config: 

41 from_attributes = True