| pendingItems(String, Long, String) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
| markItemRunning(Long, String, Long, String) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| analysisStatus(AnalysisResult) |   | 52% |   | 33% | 3 | 4 | 2 | 5 | 0 | 1 |
| persistSnapshot(Long, String, Long, String, String, String, AnalysisResult, GapAnalysisView, PatternDetectionView, ArchitectureRecommendation, String, String, String, String, String, WorkspaceContext, long) |   | 94% |   | 60% | 3 | 6 | 1 | 32 | 0 | 1 |
| createOrReuseJob(Long, List, String, int, String, String, WorkspaceContext) |   | 93% |   | 57% | 6 | 8 | 2 | 34 | 0 | 1 |
| truncate(String, int) |   | 60% |   | 50% | 2 | 3 | 0 | 3 | 0 | 1 |
| requireCurrentVersion(ProjectRequirement) |   | 77% |   | 50% | 1 | 2 | 2 | 8 | 0 | 1 |
| normalizeIdempotencyKey(String) |   | 73% |   | 50% | 3 | 4 | 1 | 5 | 0 | 1 |
| lambda$requireCurrentVersion$20(ProjectRequirement) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$requireScopedRequirement$19(Long, Long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$createOrReuseJob$1(Long, Long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$requireScopedProject$18(Long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$requireJob$16(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$reviewRelationMapping$13(Long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$reviewElementMapping$12(Long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$diffSnapshots$11(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$diffSnapshots$10(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$getSnapshot$9(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$createOrReuseJob$0(Long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| diffSnapshots(Long, String, String, String, WorkspaceContext) |   | 97% |   | 50% | 3 | 4 | 0 | 34 | 0 | 1 |
| safeFailureMessage(Throwable) |   | 88% |   | 50% | 3 | 4 | 0 | 5 | 0 | 1 |
| requireRequestScope(String, String, WorkspaceContext) |   | 81% |   | 50% | 1 | 2 | 1 | 5 | 0 | 1 |
| requireScope(String) |   | 72% |   | 50% | 2 | 3 | 1 | 3 | 0 | 1 |
| taxonomyRoot(RequirementElementView) |   | 93% |   | 62% | 3 | 5 | 0 | 6 | 0 | 1 |
| mappingOrigin(NodeOrigin) |   | 86% |   | 80% | 1 | 4 | 0 | 5 | 0 | 1 |
| visibleIdempotencyKey(RequirementAnalysisJob) |   | 86% |   | 50% | 2 | 3 | 0 | 4 | 0 | 1 |
| lambda$completeJob$5(RequirementAnalysisJobItem) |   | 75% |   | 50% | 1 | 2 | 0 | 1 | 0 | 1 |
| completeJob(String, Long, String) |  | 100% |  | 100% | 0 | 2 | 0 | 20 | 0 | 1 |
| toSnapshotDetail(RequirementAnalysisSnapshot) |  | 100% | | n/a | 0 | 1 | 0 | 18 | 0 | 1 |
| toJobView(RequirementAnalysisJob) |  | 100% | | n/a | 0 | 1 | 0 | 23 | 0 | 1 |
| prepareFailedItemsForRetry(String, Long, String, WorkspaceContext) |  | 100% |  | 100% | 0 | 3 | 0 | 11 | 0 | 1 |
| reviewElementMapping(Long, Long, PortfolioDtos.ReviewElementMappingRequest, String, WorkspaceContext) |  | 100% |  | 100% | 0 | 2 | 0 | 15 | 0 | 1 |
| toSnapshotSummary(RequirementAnalysisSnapshot) |  | 100% | | n/a | 0 | 1 | 0 | 20 | 0 | 1 |
| reviewRelationMapping(Long, Long, PortfolioDtos.ReviewRelationMappingRequest, String, WorkspaceContext) |  | 100% |  | 100% | 0 | 2 | 0 | 13 | 0 | 1 |
| toElementView(RequirementElementMapping) |  | 100% | | n/a | 0 | 1 | 0 | 19 | 0 | 1 |
| linkHypotheses(String, Long, Long, String, WorkspaceContext) |  | 100% |  | 100% | 0 | 2 | 0 | 11 | 0 | 1 |
| PortfolioAnalysisPersistenceService(ArchitectureProjectRepository, ProjectRequirementRepository, ProjectRequirementVersionRepository, RequirementAnalysisJobRepository, RequirementAnalysisJobItemRepository, RequirementAnalysisSnapshotRepository, RequirementElementMappingRepository, RequirementRelationMappingRepository, RelationHypothesisRepository, PortfolioJsonCodec) |  | 100% | | n/a | 0 | 1 | 0 | 12 | 0 | 1 |
| lambda$persistRelationMappings$15(RequirementAnalysisSnapshot, RequirementRelationshipView) |  | 100% |  | 100% | 0 | 3 | 0 | 12 | 0 | 1 |
| toRelationView(RequirementRelationMapping) |  | 100% | | n/a | 0 | 1 | 0 | 15 | 0 | 1 |
| lambda$persistElementMappings$14(RequirementAnalysisSnapshot, RequirementElementView) |  | 100% |  | 100% | 0 | 2 | 0 | 12 | 0 | 1 |
| toItemView(RequirementAnalysisJobItem) |  | 100% | | n/a | 0 | 1 | 0 | 12 | 0 | 1 |
| getSnapshot(Long, String, String, WorkspaceContext) |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| listRequirementSnapshots(Long, Long, String, WorkspaceContext) |  | 100% | | n/a | 0 | 1 | 0 | 7 | 0 | 1 |
| persistElementMappings(RequirementAnalysisSnapshot, AnalysisResult) |  | 100% |   | 75% | 1 | 3 | 0 | 8 | 0 | 1 |
| persistRelationMappings(RequirementAnalysisSnapshot, AnalysisResult) |  | 100% |   | 75% | 1 | 3 | 0 | 9 | 0 | 1 |
| requireScopedRequirement(Long, Long, String, WorkspaceContext) |  | 100% | | n/a | 0 | 1 | 0 | 5 | 0 | 1 |
| listJobs(Long, String, WorkspaceContext) |  | 100% | | n/a | 0 | 1 | 0 | 7 | 0 | 1 |
| confidence(RequirementElementView) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
| requireItem(Long, String, Long, String) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| requireJob(String, Long, String) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| requireScopedJob(String, Long, String, WorkspaceContext) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| relationSignatures(String, String) |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| failItem(Long, String, Long, String, Throwable) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| requireScopedProject(Long, String, WorkspaceContext) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| difference(Set, Set) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| lambda$createOrReuseJob$2(Long, String, Long) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| lambda$completeJob$7(RequirementAnalysisJobItem) |  | 100% |   | 75% | 1 | 3 | 0 | 1 | 0 | 1 |
| lambda$relationSignatures$21(RequirementRelationMapping) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| getJob(String, Long, String, WorkspaceContext) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$createOrReuseJob$3(RequirementAnalysisJob, ProjectRequirement) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| markJobRunning(String, Long, String) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| lambda$completeJob$6(RequirementAnalysisJobItem) |  | 100% |  | 100% | 0 | 2 | 0 | 1 | 0 | 1 |
| lambda$completeJob$4(RequirementAnalysisJobItem) |  | 100% |  | 100% | 0 | 2 | 0 | 1 | 0 | 1 |
| lambda$completeJob$8(RequirementAnalysisJobItem) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$requireItem$17(Long) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |