Coverage for src/lilbee/runtime/progress/callbacks.py: 100%

5 statements  

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

1"""Progress callback protocol and no-op default.""" 

2 

3from collections.abc import Callable 

4 

5from lilbee.runtime.progress.types import ( 

6 BatchProgressEvent, 

7 CrawlDoneEvent, 

8 CrawlPageEvent, 

9 CrawlPageFailedEvent, 

10 CrawlStartEvent, 

11 EmbedEvent, 

12 EventType, 

13 ExtractEvent, 

14 FileDoneEvent, 

15 FileStartEvent, 

16 SetupDoneEvent, 

17 SetupProgressEvent, 

18 SetupStartEvent, 

19 SyncDoneEvent, 

20 WikiPageEvent, 

21 WikiPhaseEvent, 

22) 

23 

24ProgressEvent = ( 

25 FileStartEvent 

26 | FileDoneEvent 

27 | BatchProgressEvent 

28 | ExtractEvent 

29 | EmbedEvent 

30 | SyncDoneEvent 

31 | CrawlStartEvent 

32 | CrawlPageEvent 

33 | CrawlPageFailedEvent 

34 | CrawlDoneEvent 

35 | SetupStartEvent 

36 | SetupProgressEvent 

37 | SetupDoneEvent 

38 | WikiPhaseEvent 

39 | WikiPageEvent 

40) 

41 

42DetailedProgressCallback = Callable[[EventType, ProgressEvent], None] 

43 

44 

45def noop_callback(event_type: EventType, data: ProgressEvent) -> None: 

46 """Default no-op callback: discards all events."""