| LlmService |   | 33% |   | 25% | 114 | 149 | 339 | 527 | 13 | 37 | 0 | 1 |
| OpenAiCompatibleGateway |   | 52% |   | 43% | 18 | 29 | 50 | 112 | 0 | 7 | 0 | 1 |
| LlmProviderConfig |   | 59% |   | 39% | 71 | 83 | 35 | 81 | 4 | 15 | 0 | 1 |
| LlmRecordReplayService |   | 78% |   | 66% | 15 | 39 | 27 | 127 | 3 | 15 | 0 | 1 |
| GeminiGateway |   | 80% |   | 61% | 18 | 33 | 22 | 114 | 0 | 7 | 0 | 1 |
| LlmService.ScoreParseResult |  | 25% |  | 0% | 3 | 4 | 5 | 6 | 2 | 3 | 0 | 1 |
| AnalysisRelationGenerator |  | 95% |   | 80% | 8 | 24 | 3 | 68 | 2 | 6 | 0 | 1 |
| LlmResponseParser |  | 98% |   | 92% | 4 | 40 | 3 | 108 | 0 | 13 | 0 | 1 |
| LlmTimeoutException | | 55% | | n/a | 1 | 2 | 2 | 4 | 1 | 2 | 0 | 1 |
| SavedAnalysisService |  | 98% |  | 95% | 1 | 19 | 0 | 44 | 0 | 7 | 0 | 1 |
| LlmGatewayRegistry |  | 100% |  | 100% | 0 | 4 | 0 | 16 | 0 | 3 | 0 | 1 |
| LlmProvider |  | 100% | | n/a | 0 | 1 | 0 | 8 | 0 | 1 | 0 | 1 |
| AnalysisFacade |  | 100% | | n/a | 0 | 3 | 0 | 7 | 0 | 3 | 0 | 1 |
| LlmRecordingEntry |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
| AnalysisRelationGenerator.ScoredNode | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
| LlmRecordReplayService.ManifestData | | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 0 | 1 |
| LlmRateLimitException | | 100% | | n/a | 0 | 2 | 0 | 4 | 0 | 2 | 0 | 1 |
| LlmResponseParser.new TypeReference() {...} | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
| LlmResponseParser.new TypeReference() {...} | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
| LlmResponseParser.new TypeReference() {...} | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
| LlmRecordReplayService.ManifestEntry | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |