- idregex_refine=True default across all entry points + CLI - Added --no-idregex-refine flag to CLI - Rewrote _count_optionals from SORE string parser to AST walker - Added _is_pure_bag() helper for bag detection - Updated _should_try_idregex() to trigger on pure Plus(Alt) bags - Updated tests for AST-based _count_optionals - Added RAGSAK v4 experiment results
4338 lines
239 KiB
JSON
4338 lines
239 KiB
JSON
[
|
|
{
|
|
"language": ".kt",
|
|
"conventions": [
|
|
{
|
|
"label": "agents",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"slot\"? (\"defaultCapabilityId\" | \"summarize\")? \"ToolInvocationRequest\"? \"ToolingRequest\"? \"ToolInvocationResult\"? (\"String\" | \"answer\" | \"any\" | \"assertEquals\" | \"capture\" | \"captured\" | \"every\" | \"generateText\" | \"invoke\" | \"invokeTools\" | \"promptRunner\" | \"toolProfile\" | \"verify\")?+ \"prompt\"? \"contains\"?+",
|
|
"mdl_score": 142012,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityHandler",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityInvocationGateway",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import com.embabel.agent.api.common.PromptRunner",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.DEFAULT_TOOL_PROFILE",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationAction",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationRequest",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationResult",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.slot",
|
|
"import io.mockk.verify",
|
|
"import kotlin.test.assertEquals",
|
|
"import org.junit.jupiter.api.Test"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/capability/ports/src/main/kotlin/eu/corentic/springrag/agent/capability",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"AgentExecutionContext\"? \"listCapabilities\"? \"DescribedAgentCapability\"? \"firstOrNull\"?+ \"TransportExposedAgentCapability\"? \"id\"? \"return AgentCapabilityDescriptor(\n id = id,\n capabilityType = capabilityType,\n displayName = describedCapability?.displayName ?: id,\n description = describedCapability?.description,\n exposedOverHttp = exposedCapability?.exposedOverHttp ?: false,\n exposedOverMcp = exposedCapability?.exposedOverMcp ?: false\n )\"? \"AgentCapabilityDescriptor\"? \"displayName\"? \"description\"? \"exposedOverHttp\"? \"exposedOverMcp\"?",
|
|
"mdl_score": 1553,
|
|
"imports": [],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/capability/support/src/main/kotlin/eu/corentic/springrag/agent/capability/support",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"resolve\"?+ \"flatMap\"?+ \"newVirtualThreadPerTaskExecutor\"?+ (\"DefaultAgentCapabilityDirectory\" | \"defaultCapabilityId\")?+ \"capabilityIdSelector\"? \"capabilityDescriptors\"?+ \"asCoroutineDispatcher\"?+ \"authorize\"?+ \"distinctBy\"?+ (\"AgentCapabilityDescriptor\" | \"capabilityType\" | \"compareBy\" | \"id\" | \"sortedWith\" | \"thenBy\")?+ \"return capability.invoke(request)\"? \"invoke\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDirectory",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityRegistry",
|
|
"import kotlinx.coroutines.CoroutineDispatcher",
|
|
"import kotlinx.coroutines.asCoroutineDispatcher",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import java.util.concurrent.Executors",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityHandler",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityInvocationAuthorizer",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityInvocationGateway",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityResolver"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/capability/support/src/test/kotlin/eu/corentic/springrag/agent/capability/support",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"runTest\"? \"TestRequest\"? (\"AgentCapabilityDescriptor\" | \"DefaultAgentCapabilityDirectory\" | \"IllegalStateException\" | \"assertEquals\" | \"assertFailsWith\" | \"authorize\" | \"capabilityDescriptors\" | \"coEvery\" | \"coVerify\" | \"defaultCapabilityId\" | \"every\" | \"id\" | \"invoke\" | \"listOf\" | \"message\" | \"resolve\" | \"verify\")?+ (\"any\" | \"listCapabilities\")?+",
|
|
"mdl_score": 790670,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityRegistry",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityHandler",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityInvocationAuthorizer",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityResolver",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import io.mockk.verify",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import kotlin.test.Test",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertFailsWith"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/examples/simple-rag/src/main/kotlin/eu/corentic/springrag/example/rag/simple",
|
|
"method_count": 9,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"prompt\"?+ \"if\"? \"system\"?+ \"isEmpty\"?+ \"user\"?+ \"call\"?+ \"content\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import org.slf4j.LoggerFactory",
|
|
"import org.springframework.ai.chat.client.ChatClient",
|
|
"import tools.jackson.databind.ObjectMapper",
|
|
"import eu.corentic.springrag.agent.rag.RagAgent",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.rag.support.RagDocumentSupport",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort",
|
|
"import kotlinx.coroutines.CoroutineDispatcher",
|
|
"import kotlinx.coroutines.withContext",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/examples/simple-rag/src/test/kotlin/eu/corentic/springrag/example/rag/simple",
|
|
"method_count": 14,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"runTest\"? (\"ChatClientRequestSpec\" | \"mockk\")?+ \"CallResponseSpec\"? (\"String\" | \"any\" | \"call\" | \"every\" | \"prompt\" | \"system\" | \"user\")?+ \"content\"?+",
|
|
"mdl_score": 3710,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.slot",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.ai.chat.client.ChatClient",
|
|
"import org.springframework.ai.chat.client.ChatClient.CallResponseSpec",
|
|
"import org.springframework.ai.chat.client.ChatClient.ChatClientRequestSpec",
|
|
"import eu.corentic.springrag.agent.rag.RagAgent",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import io.mockk.verify",
|
|
"import kotlinx.coroutines.test.StandardTestDispatcher",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import io.mockk.clearAllMocks",
|
|
"import org.junit.jupiter.api.AfterEach",
|
|
"import org.junit.jupiter.api.Assertions.assertFalse",
|
|
"import tools.jackson.databind.json.JsonMapper",
|
|
"import tools.jackson.module.kotlin.KotlinModule"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/embabel/src/main/kotlin/eu/corentic/springrag/agent/rag/embabel",
|
|
"method_count": 58,
|
|
"imports": [
|
|
"import com.fasterxml.jackson.databind.ObjectMapper",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import com.embabel.agent.api.invocation.AgentInvocation",
|
|
"import com.embabel.agent.core.AgentPlatform",
|
|
"import com.embabel.agent.core.resultOfType",
|
|
"import com.embabel.agent.core.Identities",
|
|
"import com.embabel.agent.core.ProcessOptions",
|
|
"import com.embabel.agent.core.support.InMemoryBlackboard",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.capability.DescribedAgentCapability",
|
|
"import eu.corentic.springrag.agent.capability.TransportExposedAgentCapability",
|
|
"import eu.corentic.springrag.agent.rag.RagAgent",
|
|
"import eu.corentic.springrag.agent.rag.RagInvocation",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import kotlinx.coroutines.CoroutineDispatcher",
|
|
"import kotlinx.coroutines.withContext",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.stereotype.Component",
|
|
"import org.springframework.stereotype.Service",
|
|
"import kotlin.math.max",
|
|
"import eu.corentic.springrag.agent.rag.support.RagDocumentSupport",
|
|
"import eu.corentic.springrag.model.Source",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.ai.chat.memory.ChatMemory",
|
|
"import com.embabel.agent.api.annotation.AchievesGoal",
|
|
"import com.embabel.agent.api.annotation.Action",
|
|
"import com.embabel.agent.api.annotation.Agent",
|
|
"import com.embabel.agent.api.annotation.Condition",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import com.embabel.agent.domain.io.UserInput",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizeRequest",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseQueryPort",
|
|
"import io.micrometer.common.KeyValue",
|
|
"import io.micrometer.common.KeyValues",
|
|
"import org.springframework.ai.chat.client.observation.ChatClientObservationContext",
|
|
"import org.springframework.ai.chat.client.observation.DefaultChatClientObservationConvention",
|
|
"import io.micrometer.observation.ObservationRegistry",
|
|
"import java.util.function.Supplier",
|
|
"import org.springframework.ai.chat.client.ChatClient",
|
|
"import org.springframework.ai.chat.model.ChatModel",
|
|
"import org.springframework.ai.chat.client.advisor.PromptChatMemoryAdvisor",
|
|
"import org.springframework.ai.chat.prompt.ChatOptions",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/embabel/src/main/kotlin/eu/corentic/springrag/agent/rag/embabel/librechat",
|
|
"method_count": 13,
|
|
"imports": [
|
|
"import com.embabel.agent.api.annotation.AchievesGoal",
|
|
"import com.embabel.agent.api.annotation.Action",
|
|
"import com.embabel.agent.api.annotation.Agent",
|
|
"import com.embabel.agent.api.annotation.Condition",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.agent.rag.embabel.ConversationMemoryContext",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelJudgeDecision",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelRagDecisionPolicy",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelWorkflowObservationContext",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelWorkflowObservationConvention",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelWorkflowPromptService",
|
|
"import eu.corentic.springrag.agent.rag.embabel.JudgeOutcome",
|
|
"import eu.corentic.springrag.agent.rag.embabel.RagDecisionState",
|
|
"import eu.corentic.springrag.agent.rag.embabel.RetrievedEvidence",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalRequest",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalResult",
|
|
"import eu.corentic.springrag.agent.rag.support.RagDocumentSupport",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentPort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.stereotype.Service",
|
|
"import com.embabel.agent.core.AgentPlatform",
|
|
"import com.embabel.agent.core.Identities",
|
|
"import com.embabel.agent.core.ProcessOptions",
|
|
"import com.embabel.agent.core.resultOfType",
|
|
"import com.embabel.agent.core.support.InMemoryBlackboard",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalInvoker",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.stereotype.Component"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/embabel/src/test/kotlin/eu/corentic/springrag/agent/rag/embabel",
|
|
"method_count": 36,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"every\"? \"listKnowledgeBases\"?+ \"RagRequest\"? \"checkKnowledgeBase\"?+ \"assertEquals\"? \"of\"?+ \"request\"? \"knowledgeBaseId\"?",
|
|
"mdl_score": 66,
|
|
"imports": [
|
|
"import com.embabel.agent.api.invocation.AgentInvocation",
|
|
"import com.embabel.agent.core.Agent",
|
|
"import com.embabel.agent.core.AgentPlatform",
|
|
"import com.embabel.agent.core.AgentProcess",
|
|
"import com.embabel.agent.core.ProcessOptions",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.rag.RagInvocation",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.mockkObject",
|
|
"import io.mockk.slot",
|
|
"import io.mockk.unmockkAll",
|
|
"import io.mockk.verify",
|
|
"import org.junit.jupiter.api.AfterEach",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNull",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import kotlinx.coroutines.test.StandardTestDispatcher",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import eu.corentic.springrag.model.PageTextElement",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.springframework.ai.chat.memory.ChatMemory",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseListItem",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseQueryPort",
|
|
"import org.springframework.ai.chat.client.ChatClientRequest",
|
|
"import org.springframework.ai.chat.client.observation.ChatClientObservationContext",
|
|
"import org.springframework.ai.chat.prompt.Prompt",
|
|
"import eu.corentic.springrag.testsupport.NoOpCircuitBreakerFactory",
|
|
"import io.micrometer.observation.ObservationRegistry",
|
|
"import org.springframework.ai.chat.memory.InMemoryChatMemoryRepository",
|
|
"import org.springframework.ai.chat.memory.MessageWindowChatMemory",
|
|
"import org.springframework.ai.chat.messages.AssistantMessage",
|
|
"import org.springframework.ai.chat.messages.MessageType",
|
|
"import org.springframework.ai.chat.messages.UserMessage",
|
|
"import org.springframework.ai.chat.model.ChatModel",
|
|
"import org.springframework.ai.chat.model.ChatResponse",
|
|
"import org.springframework.ai.chat.model.Generation",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelJudgeDecision",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelRagDecisionPolicy",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelRagWorkflowAgentProperties",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelWorkflowPromptService",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalRequest",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentPort"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/embabel/src/test/kotlin/eu/corentic/springrag/testsupport",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"Any\" | \"Builder\" | \"get\")+",
|
|
"mdl_score": 15,
|
|
"imports": [
|
|
"import java.util.function.Function",
|
|
"import java.util.function.Supplier",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreaker",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import org.springframework.cloud.client.circuitbreaker.ConfigBuilder"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/ports/src/main/kotlin/eu/corentic/springrag/agent/rag",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"defaultCapabilityId\"? \"answer\"? \"request\"? \"AgentExecutionContext\"? \"RagRequest\"? \"executionContext\"? \"let\"?+ \"KnowledgeBaseId\"?",
|
|
"mdl_score": 242,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapability",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityHandler",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityInvocationGateway"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/ports/src/test/kotlin/eu/corentic/springrag/agent/rag",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"runTest\"? \"return ChatResponse(answer = \\\"ok\\\", sources = emptyList())\"? \"RecordingRagAgent\"? \"ChatResponse\"? \"RagInvocation\"? \"emptyList\"?+ \"RagRequest\"? \"invoke\"?+ (\"answer\" | \"asKnowledgeBaseId\" | \"assertEquals\" | \"conversationId\" | \"knowledgeBaseId\" | \"lastRequest\" | \"message\")?+ \"executionContext\"? \"agentId\"? \"lastContext\"?",
|
|
"mdl_score": 3304,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/ports/src/test/kotlin/eu/corentic/springrag/model",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"ChatResponse\"? (\"Source\" | \"emptyList\" | \"listOf\")?+ \"toMarkdownSummary\"?+ (\"assertTrue\" | \"contains\")?+",
|
|
"mdl_score": 858,
|
|
"imports": [
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/support/src/main/kotlin/eu/corentic/springrag/agent/rag/support",
|
|
"method_count": 13,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"String\" | \"metadata\")+",
|
|
"mdl_score": 62,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.toDescriptor",
|
|
"import eu.corentic.springrag.agent.rag.RagAgent",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentRegistry",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.Source",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/rag/support/src/test/kotlin/eu/corentic/springrag/agent/rag/support",
|
|
"method_count": 11,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"VectorChunk\"? \"mapOf\"?+ (\"every\" | \"id\")?+ \"capabilityType\"? \"DefaultRagAgentRegistry\"? \"listOf\"?+ \"assertEquals\"?",
|
|
"mdl_score": 100,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.rag.RagAgent",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentInvocationAuthorizer",
|
|
"import eu.corentic.springrag.agent.rag.RagInvocation",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentRegistry",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.verify",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.DescribedAgentCapability",
|
|
"import eu.corentic.springrag.agent.capability.TransportExposedAgentCapability",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import org.junit.jupiter.api.Assertions.assertDoesNotThrow",
|
|
"import eu.corentic.springrag.model.PageTextElement",
|
|
"import eu.corentic.springrag.model.SourceImage",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort",
|
|
"import kotlin.test.Test",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertTrue"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/summarizer/embabel/src/main/kotlin/eu/corentic/springrag/agent/summarizer/embabel",
|
|
"method_count": 13,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.toDescriptor",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizerAgent",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizerAgentRegistry",
|
|
"import org.springframework.stereotype.Component",
|
|
"import com.embabel.agent.api.invocation.AgentInvocation",
|
|
"import com.embabel.agent.core.AgentPlatform",
|
|
"import com.embabel.agent.core.Identities",
|
|
"import com.embabel.agent.core.ProcessOptions",
|
|
"import eu.corentic.springrag.agent.capability.DescribedAgentCapability",
|
|
"import eu.corentic.springrag.agent.capability.TransportExposedAgentCapability",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizeRequest",
|
|
"import eu.corentic.springrag.agent.summarizer.SummaryResponse",
|
|
"import kotlinx.coroutines.CoroutineDispatcher",
|
|
"import kotlinx.coroutines.Dispatchers",
|
|
"import kotlinx.coroutines.withContext",
|
|
"import org.springframework.stereotype.Service",
|
|
"import com.embabel.agent.api.annotation.AchievesGoal",
|
|
"import com.embabel.agent.api.annotation.Action",
|
|
"import com.embabel.agent.api.annotation.Agent",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import com.embabel.agent.domain.io.UserInput",
|
|
"import com.embabel.common.ai.model.LlmOptions",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.DEFAULT_TOOL_PROFILE",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationAction",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationRequest",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizerInvocationAuthorizer",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/summarizer/embabel/src/test/kotlin/eu/corentic/springrag/agent/summarizer/embabel",
|
|
"method_count": 14,
|
|
"imports": [
|
|
"import com.embabel.agent.api.invocation.AgentInvocation",
|
|
"import com.embabel.agent.core.AgentPlatform",
|
|
"import com.embabel.agent.core.ProcessOptions",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizeRequest",
|
|
"import eu.corentic.springrag.agent.summarizer.SummaryResponse",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.mockkObject",
|
|
"import io.mockk.slot",
|
|
"import io.mockk.unmockkAll",
|
|
"import io.mockk.verify",
|
|
"import org.junit.jupiter.api.AfterEach",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNull",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizerAgent",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import eu.corentic.springrag.agent.summarizer.SummarizerInvocationAuthorizer",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import kotlinx.coroutines.test.StandardTestDispatcher",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import com.embabel.agent.api.common.Ai",
|
|
"import com.embabel.agent.api.common.PromptRunner",
|
|
"import com.embabel.common.ai.model.LlmOptions",
|
|
"import org.junit.jupiter.api.Assertions.assertDoesNotThrow"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/tooling/agent/src/main/kotlin/eu/corentic/springrag/agent/tooling/agent",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"buildString\" | \"forEachIndexed\" | \"if\" | \"ifBlank\" | \"isEmpty\" | \"response\" | \"return buildString {\n result.toolCalls.forEachIndexed { index, call ->\n if (index > 0) append(\\\"\\\\n\\\\n\\\")\n append(\\\"Tool: \\\").append(call.tool).append(\\\"\\\\n\\\")\n append(\\\"Input: \\\").append(call.input).append(\\\"\\\\n\\\")\n append(\\\"Output:\\\\n\\\").append(call.output)\n }\n }\" | \"return result.response.ifBlank { \\\"No tool results were captured.\\\" }\" | \"toolCalls\")?+ \"ToolingRequest\"? \"goal\"? (\"append\" | \"input\" | \"tool\")?+ \"content\"? \"renderToolResults\"? \"output\"? \"trimIndent\"?+ \"return toolInvocationAction.invoke(\n ToolInvocationRequest(\n prompt = prompt,\n toolProfile = request.toolProfile\n ),\n context\n )\"? \"promptRunner\"?+ \"invoke\"?+ \"LlmOptions\"? \"ToolInvocationRequest\"? \"emptySet\"?+ \"toolProfile\"? \"emptyList\"?+ \"generateText\"?+ \"trim\"?+ \"return ToolingResponse(answer = answer)\"? \"ToolingResponse\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import com.embabel.agent.api.annotation.AchievesGoal",
|
|
"import com.embabel.agent.api.annotation.Action",
|
|
"import com.embabel.agent.api.annotation.Agent",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import com.embabel.agent.domain.io.UserInput",
|
|
"import com.embabel.common.ai.model.LlmOptions",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationAction",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationRequest",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.ToolInvocationResult",
|
|
"import org.springframework.stereotype.Service"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/tooling/embabel/src/main/kotlin/eu/corentic/springrag/agent/tooling/embabel",
|
|
"method_count": 12,
|
|
"imports": [
|
|
"import com.fasterxml.jackson.databind.ObjectMapper",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import com.embabel.agent.api.tool.ToolObject",
|
|
"import com.embabel.agent.api.annotation.Action",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import com.embabel.agent.api.common.ContextualPromptElement",
|
|
"import com.embabel.common.ai.model.LlmOptions",
|
|
"import com.embabel.common.ai.prompt.PromptContributor",
|
|
"import com.embabel.agent.prompt.element.FocusedToolCallControl",
|
|
"import com.embabel.agent.prompt.element.ToolCallControl",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.recording.ToolCallRecord",
|
|
"import eu.corentic.springrag.agent.tooling.embabel.recording.ToolInvocationRecorder",
|
|
"import org.springframework.stereotype.Service",
|
|
"import org.springframework.boot.context.properties.ConfigurationProperties",
|
|
"import org.springaicommunity.agent.tools.FileSystemTools",
|
|
"import org.springaicommunity.agent.tools.GrepTool",
|
|
"import org.springaicommunity.agent.tools.GlobTool",
|
|
"import org.springaicommunity.agent.tools.ShellTools",
|
|
"import org.springaicommunity.agent.tools.SmartWebFetchTool",
|
|
"import org.springframework.ai.chat.client.ChatClient",
|
|
"import org.springframework.boot.context.properties.EnableConfigurationProperties"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/tooling/embabel/src/main/kotlin/eu/corentic/springrag/agent/tooling/embabel/recording",
|
|
"method_count": 11,
|
|
"imports": [
|
|
"import com.embabel.agent.api.event.AgentProcessEvent",
|
|
"import com.embabel.agent.api.event.AgenticEventListener",
|
|
"import com.embabel.agent.api.event.ToolCallResponseEvent",
|
|
"import com.fasterxml.jackson.core.JsonProcessingException",
|
|
"import com.fasterxml.jackson.databind.ObjectMapper",
|
|
"import org.slf4j.LoggerFactory",
|
|
"import java.util.concurrent.ConcurrentHashMap",
|
|
"import com.embabel.agent.api.common.PlatformServices",
|
|
"import com.embabel.agent.api.event.MulticastAgenticEventListener",
|
|
"import org.springframework.beans.factory.config.BeanPostProcessor",
|
|
"import org.springframework.boot.context.properties.EnableConfigurationProperties",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/tooling/embabel/src/test/kotlin/eu/corentic/springrag/agent/tooling/embabel",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"ToolInvocationPolicyProperties\"? (\"AgentProcess\" | \"Any\" | \"PolicyAwareToolInvocationToolProvider\" | \"StaticToolInvocationToolProvider\" | \"ToolInvocationAction\" | \"ToolInvocationRequest\" | \"ToolObject\" | \"ToolProfilePolicy\" | \"addObject\" | \"agent\" | \"agentProcess\" | \"any\" | \"assertEquals\" | \"assertFalse\" | \"assertTrue\" | \"blackboard\" | \"capture\" | \"com\" | \"core\" | \"embabel\" | \"every\" | \"filter\" | \"generateText\" | \"get\" | \"id\" | \"invoke\" | \"listOf\" | \"mapOf\" | \"mockk\" | \"processContext\" | \"promptRunner\" | \"response\" | \"set\" | \"setOf\" | \"single\" | \"slot\" | \"toolObjectsFor\" | \"toolProfile\" | \"verify\" | \"withToolChainingFromAny\")?+ (\"captured\" | \"emptyList\")?+",
|
|
"mdl_score": 16597680,
|
|
"imports": [
|
|
"import com.embabel.agent.api.tool.ToolObject",
|
|
"import kotlin.test.assertFalse",
|
|
"import kotlin.test.assertTrue",
|
|
"import kotlin.test.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import com.embabel.agent.api.common.ActionContext",
|
|
"import com.embabel.agent.api.common.PromptRunner",
|
|
"import com.embabel.agent.core.Blackboard",
|
|
"import com.embabel.agent.core.ProcessContext",
|
|
"import io.mockk.Runs",
|
|
"import io.mockk.every",
|
|
"import io.mockk.just",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.slot",
|
|
"import io.mockk.verify"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/wikipedia/adapters/src/main/kotlin/eu/corentic/springrag/agent/wikipedia",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"values\"? \"debug\"?+ \"when\"? \"sortedBy\"?+ \"topic\"? \"isNullOrBlank\"?+ \"id\"? \"else\"? \"map\"?+ \"error\"?+ \"toDescriptor\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.toDescriptor",
|
|
"import org.springframework.stereotype.Component",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/wikipedia/adapters/src/test/kotlin/eu/corentic/springrag/agent/wikipedia",
|
|
"method_count": 8,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"every\" | \"id\")?+ \"defaultCapabilityId\"?+ \"capabilityType\"? \"DefaultWikipediaLookupAgentRegistry\"? (\"assertEquals\" | \"listOf\")?+ \"AgentCapabilityDescriptor\"? \"capabilityDescriptors\"?+",
|
|
"mdl_score": 32,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.DescribedAgentCapability",
|
|
"import eu.corentic.springrag.agent.capability.TransportExposedAgentCapability",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import io.mockk.verify",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.junit.jupiter.api.Assertions.assertDoesNotThrow"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/wikipedia/static/src/main/kotlin/eu/corentic/springrag/agent/wikipedia",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"WikipediaLookupResponse\" | \"contains\" | \"firstOrNull\" | \"normalize\" | \"return keywordMatch ?: WikipediaLookupResponse(\n topic = request.topic,\n summary = \\\"No static encyclopedia entry was found for \\\\\\\"${request.topic}\\\\\\\". This static capability can later be replaced with a real Wikipedia or MCP-backed lookup agent.\\\",\n wikipediaUrl = null,\n found = false\n )\" | \"topic\")?+ \"trim\"?+ \"lowercase\"?+ \"replace\"?+ \"Regex\"?",
|
|
"mdl_score": 120,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.DescribedAgentCapability",
|
|
"import eu.corentic.springrag.agent.capability.TransportExposedAgentCapability",
|
|
"import org.springframework.stereotype.Component"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "agents/wikipedia/static/src/test/kotlin/eu/corentic/springrag/agent/wikipedia",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"runTest\"? \"invoke\"?+ \"WikipediaLookupRequest\"? \"assertFalse\"? (\"assertEquals\" | \"assertTrue\" | \"contains\" | \"found\" | \"summary\" | \"topic\")?+ \"wikipediaUrl\"?",
|
|
"mdl_score": 8136,
|
|
"imports": [
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertFalse",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"assertTrue\" | \"isRunning\" | \"neo4jContainer\" | \"ollamaContainer\" | \"qdrantContainer\")?+ \"getenv\"?+ \"YamlPropertiesFactoryBean\"? \"activeProfiles\"? \"assertNotNull\"? \"return WebTestClient.bindToServer().baseUrl(baseUrl).build()\"? \"setResources\"?+ \"joinToString\"?+ \"bindToServer\"?+ \"ClassPathResource\"? \"ifBlank\"?+ \"baseUrl\"?+ \"`object`\"? (\"ConfigurableEnvironment\" | \"EnumerablePropertySource\" | \"String\" | \"add\" | \"first\" | \"forEach\" | \"getProperty\" | \"if\" | \"info\" | \"linkedSetOf\" | \"map\" | \"propertyNames\" | \"propertySources\" | \"return\" | \"return if (SECRET_KEY_PATTERNS.any { it.containsMatchIn(key) }) \\\"******\\\" else value\" | \"return value\" | \"size\" | \"sortedBy\" | \"warn\")?+ \"build\"?+ \"emptyMap\"?+ \"any\"?+ \"maskValue\"? (\"assertEquals\" | \"replace\" | \"toString\")?+ \"containsMatchIn\"?+ \"else\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import io.cucumber.spring.CucumberContextConfiguration",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.boot.test.context.TestConfiguration",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Import",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.boot.ApplicationArguments",
|
|
"import org.springframework.boot.ApplicationRunner",
|
|
"import org.springframework.core.env.ConfigurableEnvironment",
|
|
"import org.springframework.core.env.Environment",
|
|
"import org.springframework.core.env.EnumerablePropertySource",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.config.BaseSystemTest",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers",
|
|
"import kotlin.test.assertNotNull",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.boot.webtestclient.autoconfigure.AutoConfigureWebTestClient",
|
|
"import kotlin.test.assertEquals",
|
|
"import org.springframework.beans.factory.config.YamlPropertiesFactoryBean",
|
|
"import org.springframework.core.io.ClassPathResource"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/e2eTest/kotlin/eu/corentic/springrag/e2e/cucumber/steps",
|
|
"method_count": 17,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"exchange\"?+ \"post\"?+ \"expectStatus\"?+ \"uri\"?+ \"contentType\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.e2e.cucumber.config.ScenarioContext",
|
|
"import io.cucumber.java.en.Given",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.http.MediaType",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import java.util.UUID",
|
|
"import io.cucumber.java.en.Then",
|
|
"import io.cucumber.java.en.When",
|
|
"import io.cucumber.java.Before",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import org.awaitility.Awaitility.await",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.springframework.http.client.MultipartBodyBuilder",
|
|
"import org.springframework.web.reactive.function.BodyInserters",
|
|
"import java.io.File",
|
|
"import java.time.Duration"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/integrationTest/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 15,
|
|
"imports": [
|
|
"import org.springframework.batch.core.repository.JobRepository",
|
|
"import org.springframework.batch.test.JobRepositoryTestUtils",
|
|
"import org.springframework.boot.test.context.TestConfiguration",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import eu.corentic.springrag.agent.rag.embabel.EmbabelRagResponseInvoker",
|
|
"import eu.corentic.springrag.agent.summarizer.embabel.EmbabelSummarizerResponseInvoker",
|
|
"import com.embabel.agent.core.AgentPlatform",
|
|
"import io.mockk.mockk",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import org.neo4j.driver.Driver",
|
|
"import org.neo4j.driver.Session",
|
|
"import org.springframework.ai.chat.model.ChatModel",
|
|
"import org.springframework.ai.chat.prompt.ChatOptions",
|
|
"import org.springframework.ai.embedding.EmbeddingModel",
|
|
"import org.springframework.ai.vectorstore.VectorStore",
|
|
"import org.springframework.context.annotation.Primary",
|
|
"import org.springframework.security.authentication.ReactiveAuthenticationManager",
|
|
"import org.springframework.batch.core.launch.JobOperator"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/integrationTest/kotlin/eu/corentic/springrag/controller",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"ByteArray\"? (\"Ok\" | \"ParsedJwt\" | \"SimpleGrantedAuthority\" | \"any\" | \"every\" | \"extractAuthorities\" | \"extractUsername\" | \"listOf\" | \"parseToken\" | \"validateToken\")?+ \"get\"?+ \"generateToken\"?+ \"InputStreamResource\"?+ \"bindToServer\"?+ \"User\"? \"ByteArrayInputStream\"? \"baseUrl\"?+ \"ROLE_ADMIN\"? \"fun\"? \"mutate\"?+ \"Long\"?+ \"defaultHeader\"?+ \"MultipartBodyBuilder\"? \"part\"?+ (\"header\" | \"post\" | \"uri\")?+ \"AUTHORIZATION\"? \"contentType\"?+ \"MULTIPART_FORM_DATA\"? \"body\"?+ \"fromMultipartData\"?+ \"build\"?+ \"exchange\"?+ \"expectStatus\"?+ \"isNotFound\"? \"isOk\"? \"expectBody\"?+ \"jsonPath\"?+ \"isEqualTo\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.IntegrationTestConfig",
|
|
"import eu.corentic.springrag.security.model.Role",
|
|
"import eu.corentic.springrag.security.model.User",
|
|
"import eu.corentic.springrag.security.service.JwtService",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.boot.webtestclient.autoconfigure.AutoConfigureWebTestClient",
|
|
"import org.springframework.context.annotation.Import",
|
|
"import org.springframework.http.HttpHeaders",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import com.ninjasquad.springmockk.MockkBean",
|
|
"import eu.corentic.springrag.common.Outcome",
|
|
"import eu.corentic.springrag.service.job.JobService",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseService",
|
|
"import io.mockk.every",
|
|
"import java.io.ByteArrayInputStream",
|
|
"import org.springframework.core.io.InputStreamResource",
|
|
"import org.springframework.http.HttpStatus",
|
|
"import org.springframework.http.MediaType",
|
|
"import org.springframework.http.client.MultipartBodyBuilder",
|
|
"import org.springframework.security.core.authority.SimpleGrantedAuthority",
|
|
"import org.springframework.web.reactive.function.BodyInserters",
|
|
"import org.springframework.boot.test.web.server.LocalServerPort"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/integrationTest/kotlin/eu/corentic/springrag/service",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"Instant\" | \"JobId\" | \"KnowledgeBaseId\" | \"common\" | \"corentic\" | \"ids\" | \"of\" | \"parse\" | \"randomUUID\" | \"springrag\" | \"time\")?+ \"stream\"?+ \"model\"? (\"Assertions\" | \"anyMatch\" | \"api\" | \"assertTrue\" | \"expected\" | \"java\" | \"junit\" | \"jupiter\")?+ \"KnowledgeBase\"?+ \"simpleName\"? (\"every\" | \"existsById\")?+ \"findById\"?+ \"existsByJobIdAndKnowledgeBaseId\"?+ \"deleteKnowledgeBase\"?+ \"deleteDocument\"?+ \"KnowledgeBaseDeletionRequested\"? \"DocumentDeletionRequested\"? \"assertApplicationEventPublished\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import com.ninjasquad.springmockk.MockkBean",
|
|
"import eu.corentic.springrag.config.IntegrationTestConfig",
|
|
"import eu.corentic.springrag.model.event.DocumentDeletionRequested",
|
|
"import eu.corentic.springrag.model.event.KnowledgeBaseDeletionRequested",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseApplicationService",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBaseDocumentPort",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBasePort",
|
|
"import io.mockk.every",
|
|
"import java.util.UUID",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.context.annotation.Import",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import org.springframework.test.context.event.ApplicationEvents",
|
|
"import org.springframework.test.context.event.RecordApplicationEvents"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/systemTest/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 14,
|
|
"imports": [
|
|
"import eu.corentic.springrag.testcontainers.OllamaModelSupport",
|
|
"import eu.corentic.springrag.testcontainers.QdrantTestSupport",
|
|
"import eu.corentic.springrag.testcontainers.QdrantTestSupport.recreateTestCollection",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers.ContainerType",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import java.time.Duration",
|
|
"import java.time.Instant",
|
|
"import java.util.UUID",
|
|
"import org.junit.jupiter.api.Assumptions",
|
|
"import org.junit.jupiter.api.BeforeAll",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.neo4j.driver.Driver",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.boot.webtestclient.autoconfigure.AutoConfigureWebTestClient",
|
|
"import org.springframework.jdbc.core.JdbcTemplate",
|
|
"import org.springframework.security.crypto.password.PasswordEncoder",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import org.springframework.test.context.DynamicPropertyRegistry",
|
|
"import org.springframework.test.context.DynamicPropertySource",
|
|
"import org.springframework.test.context.TestPropertySource",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import org.testcontainers.junit.jupiter.Testcontainers",
|
|
"import java.sql.Timestamp",
|
|
"import org.springframework.batch.core.repository.JobRepository",
|
|
"import org.springframework.batch.test.JobRepositoryTestUtils",
|
|
"import org.springframework.boot.test.context.TestConfiguration",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.mockito.Mockito",
|
|
"import org.springframework.context.annotation.Primary"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/systemTest/kotlin/eu/corentic/springrag/system",
|
|
"method_count": 46,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.BaseSystemTest",
|
|
"import eu.corentic.springrag.controller.SessionChatRequest",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import java.time.Duration",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.test.web.reactive.server.returnResult",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.repository.VectorRepository",
|
|
"import eu.corentic.springrag.repository.graph.DocumentJobNodeRepository",
|
|
"import eu.corentic.springrag.service.job.JobStatus",
|
|
"import eu.corentic.springrag.service.job.JobStatusType",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import java.io.File",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import java.nio.file.StandardCopyOption",
|
|
"import kotlin.io.path.createDirectory",
|
|
"import org.awaitility.Awaitility.await",
|
|
"import org.junit.jupiter.api.Assertions.assertNotEquals",
|
|
"import org.junit.jupiter.api.io.TempDir",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.core.io.ClassPathResource",
|
|
"import org.springframework.http.MediaType",
|
|
"import org.springframework.http.client.MultipartBodyBuilder",
|
|
"import org.springframework.web.reactive.function.BodyInserters",
|
|
"import io.modelcontextprotocol.client.McpClient",
|
|
"import io.modelcontextprotocol.client.McpSyncClient",
|
|
"import io.modelcontextprotocol.client.transport.WebClientStreamableHttpTransport",
|
|
"import io.modelcontextprotocol.spec.McpSchema",
|
|
"import org.springframework.boot.test.web.server.LocalServerPort",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import org.springframework.web.reactive.function.client.WebClient",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotEquals",
|
|
"import kotlin.test.assertTrue",
|
|
"import org.neo4j.driver.Values",
|
|
"import eu.corentic.springrag.service.job.JobService",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.junit.jupiter.api.assertThrows",
|
|
"import java.util.*",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.testcontainers.QdrantTestSupport",
|
|
"import java.util.stream.Stream",
|
|
"import org.awaitility.core.ConditionTimeoutException",
|
|
"import org.junit.jupiter.api.Assertions.*",
|
|
"import org.junit.jupiter.params.ParameterizedTest",
|
|
"import org.junit.jupiter.params.provider.Arguments",
|
|
"import org.junit.jupiter.params.provider.MethodSource"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/test/kotlin/eu/corentic/springrag/architecture",
|
|
"method_count": 87,
|
|
"imports": [
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import kotlin.io.path.exists",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.fail",
|
|
"import com.lemonappdev.konsist.api.Konsist",
|
|
"import com.lemonappdev.konsist.api.ext.list.withAnnotationOf",
|
|
"import com.lemonappdev.konsist.api.verify.assertTrue",
|
|
"import org.springframework.stereotype.Service",
|
|
"import java.io.IOException",
|
|
"import java.nio.file.FileVisitResult",
|
|
"import java.nio.file.Paths",
|
|
"import java.nio.file.SimpleFileVisitor",
|
|
"import java.nio.file.attribute.BasicFileAttributes"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "app/src/test/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"YamlPropertiesFactoryBean\"? \"loadYaml\"? \"setResources\"?+ \"assertFalse\"? \"ClassPathResource\"? (\"assertEquals\" | \"assertTrue\" | \"containsKey\")?+ \"return factory.`object` ?: emptyMap()\"? \"`object`\"? \"emptyMap\"?+",
|
|
"mdl_score": 480,
|
|
"imports": [
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertFalse",
|
|
"import kotlin.test.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.beans.factory.config.YamlPropertiesFactoryBean",
|
|
"import org.springframework.core.io.ClassPathResource"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "buildSrc/src/main/kotlin",
|
|
"method_count": 8,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"getByType\"+ \"SourceSetContainer\"?",
|
|
"mdl_score": 5,
|
|
"imports": [
|
|
"import org.gradle.api.Project",
|
|
"import org.gradle.api.artifacts.VersionCatalogsExtension",
|
|
"import org.gradle.api.file.SourceDirectorySet",
|
|
"import org.gradle.api.plugins.JavaPluginExtension",
|
|
"import org.gradle.api.tasks.SourceSet",
|
|
"import org.gradle.api.tasks.SourceSetContainer",
|
|
"import org.gradle.api.tasks.TaskProvider",
|
|
"import org.gradle.api.tasks.testing.Test",
|
|
"import org.gradle.jvm.toolchain.JavaLanguageVersion",
|
|
"import org.gradle.kotlin.dsl.get",
|
|
"import org.gradle.kotlin.dsl.getByType",
|
|
"import org.gradle.kotlin.dsl.named",
|
|
"import org.gradle.kotlin.dsl.register",
|
|
"import org.gradle.kotlin.dsl.withType"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "buildSrc/src/test/kotlin",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"build\" | \"builder\" | \"withName\" | \"withParent\")?+ \"withType\"?+ \"configureStandardRepositories\"?+ \"pluginManager\"? \"MavenArtifactRepository\"? \"mavenRepositoryUrls\"?+ \"apply\"?+ \"extensions\"? \"getByType\"?+ \"SourceSetContainer\"? \"java\"? \"create\"?+ \"registerJvmTestTask\"?+ (\"get\" | \"named\" | \"register\" | \"registerStandardAggregateVerificationTasks\" | \"tasks\")?+ (\"URI\" | \"assertEquals\" | \"assertFalse\" | \"assertNotNull\" | \"assertTrue\" | \"classesDirs\" | \"classpath\" | \"contains\" | \"description\" | \"files\" | \"getDependencies\" | \"group\" | \"map\" | \"output\" | \"path\" | \"runtimeClasspath\" | \"setOf\" | \"size\" | \"taskDependencies\" | \"testClassesDirs\" | \"toSet\" | \"url\")?+ \"isEmpty\"?+ \"filter\"? \"isFailOnNoMatchingTests\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import java.net.URI",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertFalse",
|
|
"import kotlin.test.assertNotNull",
|
|
"import kotlin.test.assertTrue",
|
|
"import org.gradle.api.artifacts.repositories.MavenArtifactRepository",
|
|
"import org.gradle.api.tasks.SourceSetContainer",
|
|
"import org.gradle.testfixtures.ProjectBuilder",
|
|
"import org.junit.jupiter.api.Test"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/agent-mcp-server/src/main/kotlin/eu/corentic/springrag/mcp",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"mono\"? \"listCapabilities\"?+ \"filter\"?+ \"AgentCapabilityDescriptor\"? (\"KnowledgeBaseId\" | \"RagInvocation\" | \"RagRequest\" | \"WikipediaLookupRequest\" | \"addTextContent\" | \"builder\" | \"capabilityType\" | \"description\" | \"displayName\" | \"else\" | \"id\" | \"if\" | \"invoke\" | \"isEmpty\" | \"isNullOrBlank\" | \"joinToString\" | \"let\" | \"mapOf\" | \"mcp\" | \"structuredContent\" | \"summary\" | \"toMarkdownSummary\" | \"topic\" | \"wikipediaUrl\")?+ \"found\"? \"build\"?+",
|
|
"mdl_score": 1512,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDirectory",
|
|
"import eu.corentic.springrag.agent.capability.isExposedOverMcp",
|
|
"import io.modelcontextprotocol.spec.McpSchema.CallToolResult",
|
|
"import kotlinx.coroutines.reactor.mono",
|
|
"import org.springaicommunity.mcp.annotation.McpTool",
|
|
"import org.springframework.stereotype.Component",
|
|
"import reactor.core.publisher.Mono",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentInvocationGateway",
|
|
"import eu.corentic.springrag.agent.rag.RagInvocation",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.toMarkdownSummary",
|
|
"import org.springaicommunity.mcp.annotation.McpToolParam",
|
|
"import eu.corentic.springrag.agent.wikipedia.WikipediaLookupInvocationGateway",
|
|
"import eu.corentic.springrag.agent.wikipedia.WikipediaLookupRequest"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/agent-mcp-server/src/test/kotlin/eu/corentic/springrag/mcp",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"AgentCapabilityDescriptor\"?+ \"ChatResponse\"? \"WikipediaLookupResponse\"? \"every\"? (\"Source\" | \"listCapabilities\" | \"listOf\")?+ \"coEvery\"? \"invoke\"?+ \"any\"? (\"ragAnswer\" | \"wikipediaLookup\")?+ \"block\"?+ \"content\"?+ \"first\"?+ \"TextContent\"? (\"assertTrue\" | \"contains\" | \"text\")?+ \"@\"? \"Suppress\"?+ (\"Any\" | \"List\" | \"Map\" | \"String\" | \"assertEquals\" | \"structuredContent\")?+ \"size\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDirectory",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.modelcontextprotocol.spec.McpSchema.TextContent",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentInvocationGateway",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import eu.corentic.springrag.model.Source",
|
|
"import io.mockk.coEvery",
|
|
"import eu.corentic.springrag.agent.wikipedia.WikipediaLookupInvocationGateway",
|
|
"import eu.corentic.springrag.agent.wikipedia.WikipediaLookupResponse"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"defer\"?+ \"addMapping\"?+ \"allowedOriginPatterns\"?+ \"split\"?+ \"map\"?+ \"trim\"?+ (\"contains\" | \"doFinally\" | \"else\" | \"filter\" | \"if\" | \"method\" | \"name\" | \"nanoTime\" | \"path\" | \"pathWithinApplication\" | \"put\" | \"request\" | \"response\" | \"return chain.filter(exchange)\" | \"return chain.filter(exchange)\n .doFinally {\n val tookMs = (System.nanoTime() - startedAt) / 1_000_000\n val status = exchange.response.statusCode?.value() ?: 0\n logger.info { \\\"LIBRECHAT $method $path -> $status (${tookMs}ms)\\\" }\n }\" | \"startsWith\" | \"statusCode\" | \"uri\" | \"value\" | \"when\")?+ \"isNotEmpty\"?+ (\"info\" | \"remove\")?+ \"toTypedArray\"?+ \"allowedMethods\"?+ \"allowedHeaders\"?+ \"allowCredentials\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.springframework.web.reactive.config.CorsRegistry",
|
|
"import org.springframework.web.reactive.config.WebFluxConfigurer",
|
|
"import org.slf4j.MDC",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty",
|
|
"import org.springframework.web.server.ServerWebExchange",
|
|
"import org.springframework.web.server.WebFilter",
|
|
"import org.springframework.web.server.WebFilterChain",
|
|
"import reactor.core.publisher.Mono",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.core.Ordered",
|
|
"import org.springframework.core.annotation.Order",
|
|
"import org.springframework.stereotype.Component"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/controller",
|
|
"method_count": 58,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"warn\"?+ \"message\"? \"status\"?+",
|
|
"mdl_score": 14,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.BatchId",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.service.job.BatchOwnershipService",
|
|
"import eu.corentic.springrag.service.job.JobService",
|
|
"import eu.corentic.springrag.service.job.JobStatus",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseApplicationService",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseNotFoundException",
|
|
"import jakarta.validation.constraints.NotBlank",
|
|
"import jakarta.validation.constraints.Pattern",
|
|
"import org.springframework.http.ResponseEntity",
|
|
"import org.springframework.security.access.prepost.PreAuthorize",
|
|
"import org.springframework.security.core.Authentication",
|
|
"import org.springframework.validation.annotation.Validated",
|
|
"import org.springframework.web.bind.annotation.*",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import eu.corentic.springrag.service.chat.ChatService",
|
|
"import jakarta.validation.Valid",
|
|
"import org.springframework.web.bind.annotation.GetMapping",
|
|
"import org.springframework.web.bind.annotation.PostMapping",
|
|
"import org.springframework.web.bind.annotation.RequestBody",
|
|
"import org.springframework.web.bind.annotation.RequestMapping",
|
|
"import org.springframework.web.bind.annotation.RestController",
|
|
"import kotlinx.coroutines.TimeoutCancellationException",
|
|
"import kotlinx.coroutines.withTimeout",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import java.util.UUID",
|
|
"import eu.corentic.springrag.controller.dto.ErrorResponse",
|
|
"import eu.corentic.springrag.security.service.PasswordPolicyViolationException",
|
|
"import eu.corentic.springrag.security.service.UserAlreadyExistsException",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseAlreadyExistsException",
|
|
"import eu.corentic.springrag.service.knowledgebase.DocumentNotFoundInKnowledgeBaseException",
|
|
"import eu.corentic.springrag.service.knowledgebase.InvalidKnowledgeBaseNameException",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseSizeLimitExceededException",
|
|
"import eu.corentic.springrag.service.job.JobAlreadyCompleteException",
|
|
"import eu.corentic.springrag.service.job.JobAlreadyRunningException",
|
|
"import eu.corentic.springrag.service.job.JobExecutionNotFoundException",
|
|
"import eu.corentic.springrag.service.job.BatchOwnershipException",
|
|
"import eu.corentic.springrag.service.job.BatchNotFoundException",
|
|
"import eu.corentic.springrag.service.job.BatchOwnerRequiredException",
|
|
"import eu.corentic.springrag.service.job.JobInputValidationException",
|
|
"import jakarta.validation.ConstraintViolationException",
|
|
"import org.springframework.http.HttpStatus",
|
|
"import org.springframework.http.converter.HttpMessageNotReadableException",
|
|
"import org.springframework.core.io.buffer.DataBufferLimitException",
|
|
"import org.springframework.web.bind.MethodArgumentNotValidException",
|
|
"import org.springframework.web.bind.annotation.ExceptionHandler",
|
|
"import org.springframework.web.bind.annotation.RestControllerAdvice",
|
|
"import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException",
|
|
"import org.springframework.web.server.ServerWebInputException",
|
|
"import org.springframework.web.server.MissingRequestValueException",
|
|
"import org.springframework.web.bind.support.WebExchangeBindException",
|
|
"import eu.corentic.springrag.service.knowledgebase.*",
|
|
"import io.swagger.v3.oas.annotations.Operation",
|
|
"import io.swagger.v3.oas.annotations.tags.Tag",
|
|
"import io.swagger.v3.oas.annotations.Parameter",
|
|
"import java.security.Principal",
|
|
"import kotlinx.coroutines.reactor.awaitSingle",
|
|
"import org.springframework.http.codec.multipart.FilePart",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.service.job.StagedUploadCleanupService",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import kotlinx.coroutines.reactor.awaitSingleOrNull",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import org.springframework.core.io.buffer.DataBufferUtils",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.security.service.JwtService",
|
|
"import eu.corentic.springrag.security.service.UserService",
|
|
"import org.springframework.security.crypto.password.PasswordEncoder"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/controller/librechat",
|
|
"method_count": 29,
|
|
"imports": [
|
|
"import com.fasterxml.jackson.annotation.JsonProperty",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import eu.corentic.springrag.model.GraphTableElement",
|
|
"import eu.corentic.springrag.model.GraphTextElement",
|
|
"import eu.corentic.springrag.service.document.DocumentIdentity",
|
|
"import eu.corentic.springrag.service.port.DocumentIdPort",
|
|
"import eu.corentic.springrag.service.port.DocumentImagePort",
|
|
"import eu.corentic.springrag.service.port.DocumentParserPort",
|
|
"import eu.corentic.springrag.service.port.DocumentParsingRequest",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentDeletionPort",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentPort",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalInvoker",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalRequest",
|
|
"import eu.corentic.springrag.service.job.JobService",
|
|
"import eu.corentic.springrag.service.job.JobStatusType",
|
|
"import eu.corentic.springrag.service.port.AgentKnowledgeBasePort",
|
|
"import jakarta.validation.Valid",
|
|
"import jakarta.validation.constraints.NotBlank",
|
|
"import jakarta.validation.constraints.NotEmpty",
|
|
"import kotlinx.coroutines.CoroutineDispatcher",
|
|
"import kotlinx.coroutines.withContext",
|
|
"import kotlinx.coroutines.reactor.awaitSingleOrNull",
|
|
"import org.springframework.http.MediaType",
|
|
"import org.springframework.http.ResponseEntity",
|
|
"import org.springframework.http.codec.multipart.FilePart",
|
|
"import org.springframework.web.bind.annotation.*",
|
|
"import org.springframework.core.io.buffer.DataBufferUtils",
|
|
"import kotlin.math.max",
|
|
"import kotlin.math.min",
|
|
"import eu.corentic.springrag.common.ids.BatchId",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.controller.InvalidUploadRequestException",
|
|
"import eu.corentic.springrag.service.job.StagedUploadCleanupService",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import java.util.UUID",
|
|
"import kotlin.time.Duration.Companion.seconds",
|
|
"import kotlinx.coroutines.delay",
|
|
"import org.springframework.stereotype.Component"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/controller/web",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"collectList\"?+ (\"return \\\"chat\\\"\" | \"return \\\"index\\\"\" | \"return \\\"jobs\\\"\" | \"return \\\"knowledge-bases\\\"\" | \"return \\\"upload\\\"\")? \"awaitSingle\"?+ \"try\"? \"handleUpload\"?+ \"name\"? (\"IllegalArgumentException\" | \"InvalidUploadRequestException\" | \"KnowledgeBaseNotFoundException\" | \"RuntimeException\" | \"badRequest\" | \"body\" | \"catch\" | \"internalServerError\" | \"mapOf\" | \"message\" | \"return ResponseEntity.badRequest()\n .body(mapOf(\\\"error\\\" to (e.message ?: \\\"Invalid request\\\")))\" | \"return ResponseEntity.badRequest()\n .body(mapOf(\\\"error\\\" to (e.message ?: \\\"Invalid upload request\\\")))\" | \"return ResponseEntity.badRequest()\n .body(mapOf(\\\"error\\\" to (e.message ?: \\\"Knowledge base not found\\\")))\" | \"return ResponseEntity.internalServerError()\n .body(mapOf(\\\"error\\\" to \\\"Failed to upload files: ${e.message}\\\"))\")?+ \"mutableMapOf\"?+ \"String\"?+ \"Any\"? \"batchId\"? \"fileCount\"? \"files\"? \"if\"? \"jobTriggered\"? \"jobId\"? \"jobError\"? \"let\"?+ \"return ResponseEntity.ok(response)\"? \"ok\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.controller.UploadWorkflow",
|
|
"import eu.corentic.springrag.controller.InvalidUploadRequestException",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseNotFoundException",
|
|
"import java.security.Principal",
|
|
"import kotlinx.coroutines.reactor.awaitSingle",
|
|
"import org.springframework.http.MediaType",
|
|
"import org.springframework.http.ResponseEntity",
|
|
"import org.springframework.http.codec.multipart.FilePart",
|
|
"import org.springframework.stereotype.Controller",
|
|
"import org.springframework.web.bind.annotation.PostMapping",
|
|
"import org.springframework.web.bind.annotation.RequestParam",
|
|
"import org.springframework.web.bind.annotation.RequestPart",
|
|
"import org.springframework.web.bind.annotation.ResponseBody",
|
|
"import reactor.core.publisher.Flux",
|
|
"import org.springframework.web.bind.annotation.GetMapping"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"from\"?+ \"bindToWebHandler\"?+ \"webTestClient\"? \"post\"?+ \"WebHandler\"? (\"OK\" | \"response\" | \"setStatusCode\")?+ \"setComplete\"?+ \"webFilter\"?+ \"build\"?+ (\"AtomicReference\" | \"String\")?+ \"WebFilterChain\"? (\"assertEquals\" | \"assertNull\" | \"block\" | \"empty\" | \"filter\" | \"get\" | \"set\")?+ \"uri\"?+ \"exchange\"?+ \"expectStatus\"?+ \"isOk\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import java.util.concurrent.atomic.AtomicReference",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNull",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.slf4j.MDC",
|
|
"import org.springframework.mock.http.server.reactive.MockServerHttpRequest",
|
|
"import org.springframework.mock.web.server.MockServerWebExchange",
|
|
"import org.springframework.web.server.WebFilterChain",
|
|
"import reactor.core.publisher.Mono",
|
|
"import org.springframework.http.HttpStatus",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import org.springframework.web.server.WebHandler"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller",
|
|
"method_count": 83,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"expectBody\"?+ \"post\"?+ \"jsonPath\"?+ \"uri\"?+ \"isEqualTo\"?+ \"exchange\"?+ \"expectStatus\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.BatchId",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.service.job.BatchOwnershipService",
|
|
"import eu.corentic.springrag.service.job.JobService",
|
|
"import eu.corentic.springrag.service.job.BatchOwnershipException",
|
|
"import eu.corentic.springrag.service.job.JobStatus",
|
|
"import eu.corentic.springrag.service.job.JobStatusType",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseApplicationService",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseResponse",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.verify",
|
|
"import java.nio.file.Path",
|
|
"import java.time.Duration",
|
|
"import java.time.LocalDateTime",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.io.TempDir",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import eu.corentic.springrag.service.job.BatchNotFoundException",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import eu.corentic.springrag.model.Source",
|
|
"import eu.corentic.springrag.service.chat.ChatService",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.springframework.http.codec.json.JacksonJsonDecoder",
|
|
"import org.springframework.http.codec.json.JacksonJsonEncoder",
|
|
"import tools.jackson.databind.json.JsonMapper",
|
|
"import tools.jackson.module.kotlin.KotlinModule",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import eu.corentic.springrag.security.service.PasswordPolicyViolationException",
|
|
"import eu.corentic.springrag.security.service.UserAlreadyExistsException",
|
|
"import eu.corentic.springrag.service.knowledgebase.DocumentNotFoundInKnowledgeBaseException",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseAlreadyExistsException",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseSizeLimitExceededException",
|
|
"import eu.corentic.springrag.service.knowledgebase.InvalidKnowledgeBaseNameException",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseNotFoundException",
|
|
"import eu.corentic.springrag.service.job.JobAlreadyCompleteException",
|
|
"import eu.corentic.springrag.service.job.BatchOwnerRequiredException",
|
|
"import eu.corentic.springrag.service.job.JobAlreadyRunningException",
|
|
"import eu.corentic.springrag.service.job.JobExecutionNotFoundException",
|
|
"import eu.corentic.springrag.service.job.JobInputValidationException",
|
|
"import java.io.ByteArrayInputStream",
|
|
"import kotlin.test.assertEquals",
|
|
"import org.springframework.core.io.buffer.DataBufferLimitException",
|
|
"import org.springframework.core.MethodParameter",
|
|
"import org.springframework.http.HttpHeaders",
|
|
"import org.springframework.http.HttpInputMessage",
|
|
"import org.springframework.http.HttpStatus",
|
|
"import org.springframework.http.converter.HttpMessageNotReadableException",
|
|
"import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException",
|
|
"import eu.corentic.springrag.service.knowledgebase.CreateKnowledgeBaseRequest",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseListItem",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseStatistics",
|
|
"import io.mockk.just",
|
|
"import io.mockk.runs",
|
|
"import java.time.Instant",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.springframework.http.MediaType",
|
|
"import eu.corentic.springrag.service.job.StagedUploadCleanupService",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import io.mockk.slot",
|
|
"import java.io.File",
|
|
"import org.springframework.http.client.MultipartBodyBuilder",
|
|
"import org.springframework.web.reactive.function.BodyInserters"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller/auth",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"CREATED\" | \"LoginRequest\" | \"LoginResponse\" | \"OK\" | \"ROLE_USER\" | \"RegisterRequest\" | \"UNAUTHORIZED\" | \"User\" | \"UserAlreadyExistsException\" | \"assertEquals\" | \"assertThrows\" | \"body\" | \"every\" | \"findByUsername\" | \"generateToken\" | \"login\" | \"matches\" | \"register\" | \"registerUser\" | \"runBlocking\" | \"statusCode\" | \"token\" | \"username\")?+ \"init\"?+ \"Map\"?+ \"name\"? \"AuthController\"? \"assertTrue\"? \"role\"?",
|
|
"mdl_score": 34845,
|
|
"imports": [
|
|
"import eu.corentic.springrag.security.model.Role",
|
|
"import eu.corentic.springrag.security.model.User",
|
|
"import eu.corentic.springrag.security.service.JwtService",
|
|
"import eu.corentic.springrag.security.service.UserAlreadyExistsException",
|
|
"import eu.corentic.springrag.security.service.UserService",
|
|
"import io.mockk.MockKAnnotations",
|
|
"import io.mockk.every",
|
|
"import io.mockk.impl.annotations.MockK",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.assertThrows",
|
|
"import org.springframework.http.HttpStatus",
|
|
"import org.springframework.security.crypto.password.PasswordEncoder"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller/librechat",
|
|
"method_count": 46,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"exchange\"?+ \"every\"? (\"get\" | \"post\")?+ \"expectStatus\"?+ \"uri\"?+ \"isOk\"? \"contentType\"?+ \"expectBody\"?+ \"jsonPath\"?+ \"isEqualTo\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalInvoker",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalRequest",
|
|
"import eu.corentic.springrag.agent.rag.librechat.LibreChatRetrievalResult",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import eu.corentic.springrag.controller.GlobalExceptionHandler",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.GraphTableElement",
|
|
"import eu.corentic.springrag.model.GraphTextElement",
|
|
"import eu.corentic.springrag.model.ParsedDocument",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.service.job.JobService",
|
|
"import eu.corentic.springrag.service.job.JobStatus",
|
|
"import eu.corentic.springrag.service.job.JobStatusType",
|
|
"import eu.corentic.springrag.service.port.AgentKnowledgeBasePort",
|
|
"import eu.corentic.springrag.service.port.DocumentIdPort",
|
|
"import eu.corentic.springrag.service.port.DocumentImageInfo",
|
|
"import eu.corentic.springrag.service.port.DocumentImagePort",
|
|
"import eu.corentic.springrag.service.port.DocumentParserPort",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentDeletionPort",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentPort",
|
|
"import kotlinx.coroutines.CoroutineDispatcher",
|
|
"import kotlinx.coroutines.test.UnconfinedTestDispatcher",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.slot",
|
|
"import io.mockk.verify",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.http.HttpMethod",
|
|
"import org.springframework.http.MediaType",
|
|
"import org.springframework.http.client.MultipartBodyBuilder",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import org.springframework.web.reactive.function.BodyInserters",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotNull",
|
|
"import kotlin.test.assertTrue",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.controller.InvalidUploadRequestException",
|
|
"import eu.corentic.springrag.service.job.StagedUploadCleanupService",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.springframework.core.io.buffer.DefaultDataBufferFactory",
|
|
"import org.springframework.http.HttpHeaders",
|
|
"import org.springframework.http.codec.multipart.FilePart",
|
|
"import reactor.core.publisher.Flux",
|
|
"import kotlin.test.assertContains",
|
|
"import kotlin.test.assertFailsWith"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller/web",
|
|
"method_count": 10,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"verify\"? \"RuntimeException\"? \"runBlocking\"? \"handleFileUpload\"?+ \"controller\"? \"just\"?+ (\"every\" | \"knowledgeBaseExists\")?+ \"filePart\"? \"startBulkJob\"?+ (\"OK\" | \"assertEquals\" | \"statusCode\")?+ \"any\"?+ \"body\"? \"get\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.controller.UploadWorkflow",
|
|
"import eu.corentic.springrag.service.job.BatchOwnershipService",
|
|
"import eu.corentic.springrag.service.job.JobService",
|
|
"import eu.corentic.springrag.service.job.StagedUploadCleanupService",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseApplicationService",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import eu.corentic.springrag.service.knowledgebase.KnowledgeBaseResponse",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.verify",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import java.time.Duration",
|
|
"import java.time.Instant",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertFalse",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.io.TempDir",
|
|
"import org.springframework.http.HttpHeaders",
|
|
"import org.springframework.http.HttpStatus",
|
|
"import org.springframework.http.codec.multipart.FilePart",
|
|
"import reactor.core.publisher.Flux",
|
|
"import reactor.core.publisher.Mono"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"return CommandLineRunner {\n try {\n driver.session().use { session ->\n logger.info { \\\"[NEO4J] Initializing schema constraints...\\\" }\n\n session.run(\n \\\"CREATE CONSTRAINT document_id_unique IF NOT EXISTS FOR (d:Document) REQUIRE d.id IS UNIQUE\\\"\n )\n session.run(\n \\\"CREATE CONSTRAINT page_id_unique IF NOT EXISTS FOR (p:Page) REQUIRE p.id IS UNIQUE\\\"\n )\n session.run(\n \\\"CREATE CONSTRAINT image_id_unique IF NOT EXISTS FOR (i:ImageData) REQUIRE i.id IS UNIQUE\\\"\n )\n session.run(\n \\\"CREATE CONSTRAINT text_id_unique IF NOT EXISTS FOR (t:TextElement) REQUIRE t.id IS UNIQUE\\\"\n )\n session.run(\n \\\"CREATE CONSTRAINT table_id_unique IF NOT EXISTS FOR (t:TableElement) REQUIRE t.id IS UNIQUE\\\"\n )\n session.run(\n \\\"CREATE CONSTRAINT header_id_unique IF NOT EXISTS FOR (h:SectionHeaderElement) REQUIRE h.id IS UNIQUE\\\"\n )\n session.run(\n \\\"CREATE CONSTRAINT picture_id_unique IF NOT EXISTS FOR (p:PictureElement) REQUIRE p.id IS UNIQUE\\\"\n )\n session.run(\n \\\"CREATE CONSTRAINT knowledge_base_id_unique IF NOT EXISTS FOR (kb:KnowledgeBase) REQUIRE kb.id IS UNIQUE\\\"\n )\n\n session.run(\\\"MATCH (d:Document) WHERE d.version IS NULL SET d.version = 0\\\")\n session.run(\\\"MATCH (p:Page) WHERE p.version IS NULL SET p.version = 0\\\")\n session.run(\\\"MATCH (i:ImageData) WHERE i.version IS NULL SET i.version = 0\\\")\n session.run(\\\"MATCH (t:TextElement) WHERE t.version IS NULL SET t.version = 0\\\")\n session.run(\\\"MATCH (t:TableElement) WHERE t.version IS NULL SET t.version = 0\\\")\n session.run(\\\"MATCH (p:PictureElement) WHERE p.version IS NULL SET p.version = 0\\\")\n session.run(\\\"MATCH (h:SectionHeaderElement) WHERE h.version IS NULL SET h.version = 0\\\")\n session.run(\\\"MATCH (k:KnowledgeBase) WHERE k.version IS NULL SET k.version = 0\\\")\n\n logger.info { \\\"[NEO4J] All unique constraints verified/created\\\" }\n }\n } catch (e: RuntimeException) {\n logger.error(e) { \\\"[NEO4J] Failed to initialize schema\\\" }\n throw e\n }\n }\"? \"return Neo4jTransactionManager(driver)\"? \"builder\"?+ \"CommandLineRunner\"? \"Neo4jTransactionManager\"? \"chatMemoryRepository\"?+ \"try\"? \"maxMessages\"?+ \"session\"?+ \"build\"?+ \"use\"?+ (\"info\" | \"run\")?+ \"catch\"? \"RuntimeException\"? \"error\"?+ \"throw e\"? \"throw\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import org.springframework.ai.chat.memory.ChatMemory",
|
|
"import org.springframework.ai.chat.memory.ChatMemoryRepository",
|
|
"import org.springframework.ai.chat.memory.MessageWindowChatMemory",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.neo4j.driver.Driver",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty",
|
|
"import org.springframework.context.annotation.Primary",
|
|
"import org.springframework.data.neo4j.core.transaction.Neo4jTransactionManager",
|
|
"import org.springframework.transaction.PlatformTransactionManager",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.boot.CommandLineRunner"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/ai-provider/src/main/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"timeout\"? \"connectTimeout\"? (\"region\" | \"writeValueAsString\")?+ \"read\"? \"toMillis\"?+ \"coerceAtMost\"?+ \"MAX_VALUE\"? \"toLong\"?+ \"toInt\"?+ (\"CONNECT_TIMEOUT_MILLIS\" | \"END\" | \"InputType\" | \"LoggingCohereEmbeddingBedrockApi\" | \"ReactorClientHttpRequestFactory\" | \"ReadTimeoutHandler\" | \"SEARCH_DOCUMENT\" | \"SECONDS\" | \"Truncate\" | \"WriteTimeoutHandler\" | \"addHandlerLast\" | \"baseUrl\" | \"build\" | \"builder\" | \"create\" | \"debug\" | \"doOnConnected\" | \"embedding\" | \"embeddings\" | \"firstOrNull\" | \"getModelId\" | \"info\" | \"inputType\" | \"ofSeconds\" | \"option\" | \"readTimeout\" | \"requestFactory\" | \"responseTimeout\" | \"restClientBuilder\" | \"return OllamaApi.builder()\n .baseUrl(properties.baseUrl)\n .restClientBuilder(restClientBuilder)\n .build()\" | \"return ReactorClientHttpRequestFactory(httpClient)\" | \"return try {\n val response = super.embedding(request)\n logger.debug { \\\"Cohere embedding success: ${response.embeddings().size} embeddings\\\" }\n response\n } catch (e: Exception) {\n logger.error(e) { \\\"Cohere embedding failed: ${e.message}\\\" }\n throw e\n }\" | \"seconds\" | \"size\" | \"take\" | \"texts\" | \"trace\" | \"truncate\" | \"try\" | \"writeTimeout\")?+ \"catch\"? \"return BedrockCohereEmbeddingModel(api, options)\"? \"Exception\"? \"BedrockCohereEmbeddingModel\"? \"error\"?+ \"message\"? \"throw e\"? \"throw\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import io.netty.channel.ChannelOption",
|
|
"import io.netty.handler.timeout.ReadTimeoutHandler",
|
|
"import io.netty.handler.timeout.WriteTimeoutHandler",
|
|
"import java.util.concurrent.TimeUnit",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.springframework.http.client.ClientHttpRequestFactory",
|
|
"import org.springframework.http.client.ReactorClientHttpRequestFactory",
|
|
"import reactor.netty.http.client.HttpClient",
|
|
"import com.fasterxml.jackson.databind.ObjectMapper",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.ai.bedrock.cohere.BedrockCohereEmbeddingModel",
|
|
"import org.springframework.ai.bedrock.cohere.BedrockCohereEmbeddingOptions",
|
|
"import org.springframework.ai.bedrock.cohere.api.CohereEmbeddingBedrockApi",
|
|
"import org.springframework.ai.bedrock.cohere.api.CohereEmbeddingBedrockApi.CohereEmbeddingRequest",
|
|
"import org.springframework.ai.bedrock.cohere.api.CohereEmbeddingBedrockApi.CohereEmbeddingResponse",
|
|
"import org.springframework.ai.embedding.EmbeddingModel",
|
|
"import org.springframework.beans.factory.annotation.Qualifier",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty",
|
|
"import org.springframework.context.annotation.Primary",
|
|
"import software.amazon.awssdk.auth.credentials.AwsCredentialsProvider",
|
|
"import software.amazon.awssdk.regions.providers.AwsRegionProvider",
|
|
"import java.time.Duration",
|
|
"import org.springframework.ai.ollama.api.OllamaApi",
|
|
"import org.springframework.context.annotation.Profile",
|
|
"import org.springframework.web.client.RestClient"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/ai-provider/src/main/kotlin/eu/corentic/springrag/health",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"run\"?+ \"fromCallable\"?+ \"Supplier\"? \"runWithCircuitBreaker\"? \"action\"? \"listModels\"?+ \"throw throwable ?: IllegalStateException(\\\"Ollama circuit breaker fallback\\\")\"? \"models\"?+ \"throw\"? \"subscribeOn\"?+ \"IllegalStateException\"? \"boundedElastic\"?+ \"map\"?+ \"mapNotNull\"?+ \"name\"?+ \"listOf\"?+ \"filterNot\"?+ \"any\"?+ \"modelMatches\"? \"if\"? \"isEmpty\"?+ \"return true\"? \"up\"?+ \"substringBefore\"?+ (\"build\" | \"down\" | \"else\" | \"just\" | \"onErrorResume\" | \"withDetail\")?+ \"return normalizedRequired == normalizedAvailable\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import org.springframework.ai.ollama.api.OllamaApi",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.boot.health.contributor.Health",
|
|
"import org.springframework.boot.health.contributor.ReactiveHealthIndicator",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import org.springframework.context.annotation.Profile",
|
|
"import org.springframework.stereotype.Component",
|
|
"import java.util.function.Supplier",
|
|
"import reactor.core.publisher.Mono",
|
|
"import reactor.core.scheduler.Schedulers"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"assertThrows\"? \"IllegalArgumentException\"? \"java\"? \"OllamaClientProperties\"? \"EmbabelAiHttpClientProperties\"? \"Timeout\"?+ (\"assertEquals\" | \"baseUrl\" | \"ofSeconds\" | \"readTimeout\" | \"writeTimeout\")?+ \"timeout\"? \"connectTimeout\"? \"read\"?",
|
|
"mdl_score": 12825,
|
|
"imports": [
|
|
"import java.time.Duration",
|
|
"import kotlin.test.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import org.junit.jupiter.api.Test"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/health",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"`when`\"? \"listModels\"?+ \"thenThrow\"?+ \"thenReturn\"?+ \"RuntimeException\"? \"ListModelResponse\"?+ \"listOf\"?+ (\"Model\" | \"now\")?+ \"requireNotNull\"?+ \"OllamaHealthIndicator\"? \"NoOpCircuitBreakerFactory\"? \"health\"?+ \"block\"?+ \"assertEquals\"? \"status\"? \"code\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import java.time.Instant",
|
|
"import eu.corentic.springrag.testsupport.NoOpCircuitBreakerFactory",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.mockito.Mockito.mock",
|
|
"import org.mockito.Mockito.`when`",
|
|
"import org.springframework.ai.ollama.api.OllamaApi"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/service/embedding",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"builder\"?+ (\"BedrockCohereEmbeddingModel\" | \"CapturingCohereApi\" | \"CohereEmbeddingResponse\" | \"EmbeddingRequest\" | \"FloatArray\" | \"InputType\" | \"NONE\" | \"SEARCH_DOCUMENT\" | \"Truncate\" | \"assertEquals\" | \"assertNotNull\" | \"build\" | \"call\" | \"capturedRequest\" | \"embed\" | \"inputType\" | \"listOf\" | \"map\" | \"println\" | \"readTree\" | \"return CohereEmbeddingResponse(\n \\\"test-id\\\",\n fakeEmbeddings,\n request.texts(),\n \\\"embeddings_floats\\\",\n null\n )\" | \"texts\" | \"truncate\" | \"writeValueAsString\")?+",
|
|
"mdl_score": 1027200,
|
|
"imports": [
|
|
"import com.fasterxml.jackson.databind.ObjectMapper",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.ai.bedrock.cohere.BedrockCohereEmbeddingModel",
|
|
"import org.springframework.ai.bedrock.cohere.BedrockCohereEmbeddingOptions",
|
|
"import org.springframework.ai.bedrock.cohere.api.CohereEmbeddingBedrockApi",
|
|
"import org.springframework.ai.bedrock.cohere.api.CohereEmbeddingBedrockApi.CohereEmbeddingRequest",
|
|
"import org.springframework.ai.bedrock.cohere.api.CohereEmbeddingBedrockApi.CohereEmbeddingResponse",
|
|
"import org.springframework.ai.embedding.EmbeddingRequest",
|
|
"import software.amazon.awssdk.auth.credentials.AnonymousCredentialsProvider",
|
|
"import software.amazon.awssdk.regions.Region",
|
|
"import java.time.Duration"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/testsupport",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"Any\" | \"Builder\" | \"get\")+",
|
|
"mdl_score": 15,
|
|
"imports": [
|
|
"import java.util.function.Function",
|
|
"import java.util.function.Supplier",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreaker",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import org.springframework.cloud.client.circuitbreaker.ConfigBuilder"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/chat-memory/src/test/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"Message\"? \"ChatMemoryConfig\"? (\"Any\" | \"MutableMap\" | \"String\" | \"fun\" | \"mutableMapOf\")?+ \"chatMemory\"?+ \"MessageType\"? \"repeat\"?+ \"USER\"? (\"add\" | \"makeMessage\")?+ (\"assertEquals\" | \"get\" | \"size\" | \"text\")?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.ai.chat.memory.InMemoryChatMemoryRepository",
|
|
"import org.springframework.ai.chat.messages.Message",
|
|
"import org.springframework.ai.chat.messages.MessageType"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"fromCallable\"?+ (\"File\" | \"builder\")?+ \"health\"?+ \"subscribeOn\"?+ \"boundedElastic\"?+ (\"ByteArray\" | \"DocumentParsingRequest\" | \"GraphDocument\" | \"absolutePath\" | \"asDocumentId\" | \"asFilename\" | \"asJobId\" | \"asLogicalDocumentId\" | \"assertTrue\" | \"build\" | \"content\" | \"convertDocument\" | \"doTableStructure\" | \"down\" | \"else\" | \"emptyList\" | \"every\" | \"exists\" | \"filename\" | \"generatePageImages\" | \"getStatus\" | \"if\" | \"imagesScale\" | \"just\" | \"let\" | \"map\" | \"name\" | \"onErrorResume\" | \"options\" | \"readBytes\" | \"requireNotNull\" | \"up\" | \"value\" | \"withDetail\")?+ \"tables\"? \"jobId\"? \"isNotEmpty\"?+ \"return ParsedDocument(graphDocument = graphDocument)\"? \"parse\"?+ \"assertEquals\"? \"assertNull\"? \"ParsedDocument\"? \"graphDocument\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import org.springframework.boot.health.contributor.Health",
|
|
"import org.springframework.boot.health.contributor.ReactiveHealthIndicator",
|
|
"import org.springframework.stereotype.Component",
|
|
"import reactor.core.publisher.Mono",
|
|
"import reactor.core.scheduler.Schedulers",
|
|
"import eu.corentic.springrag.service.docling.DoclingGraphDocumentMapper",
|
|
"import eu.corentic.springrag.service.docling.DoclingService",
|
|
"import eu.corentic.springrag.service.port.DocumentParserPort",
|
|
"import eu.corentic.springrag.service.port.DocumentParsingRequest",
|
|
"import eu.corentic.springrag.model.ParsedDocument",
|
|
"import eu.corentic.springrag.config.BaseSystemTest",
|
|
"import eu.corentic.springrag.config.DoclingConfig",
|
|
"import java.io.File",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.core.io.ClassPathResource",
|
|
"import org.springframework.test.context.TestPropertySource",
|
|
"import ai.docling.core.DoclingDocument",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNull"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src/main/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"IllegalStateException\" | \"bucket\" | \"error\" | \"generatePageImages\" | \"generatePictureImages\" | \"if\" | \"imageExportMode\" | \"includeImages\" | \"info\" | \"isBlank\" | \"s3Target\" | \"setOf\" | \"throw\" | \"throw IllegalStateException(errorMsg)\" | \"toFormats\" | \"useS3Target\")?+ \"Method\"? \"validateCriticalSettings\"? (\"DoclingServeJackson3Client\" | \"getDeclaredMethod\" | \"invoke\" | \"isAccessible\" | \"java\")?+ \"Builder\"? \"return builder\n .baseUrl(URI.create(config.baseUrl))\n .asyncPollInterval(Duration.ofMillis(config.pollIntervalMillis))\n .asyncTimeout(Duration.ofSeconds(config.timeoutSeconds))\n .build()\"? (\"baseUrl\" | \"create\")?+ \"asyncPollInterval\"?+ \"ofMillis\"?+ \"pollIntervalMillis\"? \"asyncTimeout\"?+ \"ofSeconds\"?+ \"timeoutSeconds\"? \"build\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import ai.docling.serve.client.DoclingServeJackson3Client",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import java.lang.reflect.Method",
|
|
"import java.net.URI",
|
|
"import java.time.Duration",
|
|
"import jakarta.validation.constraints.Min",
|
|
"import jakarta.validation.constraints.NotBlank",
|
|
"import jakarta.annotation.PostConstruct",
|
|
"import org.slf4j.LoggerFactory",
|
|
"import org.springframework.boot.context.properties.ConfigurationProperties",
|
|
"import org.springframework.validation.annotation.Validated"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src/main/kotlin/eu/corentic/springrag/service/docling",
|
|
"method_count": 21,
|
|
"imports": [
|
|
"import com.google.auth.oauth2.GoogleCredentials",
|
|
"import com.google.auth.oauth2.IdTokenCredentials",
|
|
"import com.google.auth.oauth2.IdTokenProvider",
|
|
"import ai.docling.core.DoclingDocument",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.GraphImagePayload",
|
|
"import eu.corentic.springrag.model.GraphPage",
|
|
"import eu.corentic.springrag.model.GraphPictureElement",
|
|
"import eu.corentic.springrag.model.GraphTableElement",
|
|
"import eu.corentic.springrag.model.GraphTextElement",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.stereotype.Component",
|
|
"import java.util.Base64",
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import ai.docling.serve.api.convert.request.options.ConvertDocumentOptions",
|
|
"import ai.docling.serve.api.convert.request.options.ImageRefMode",
|
|
"import ai.docling.serve.api.convert.request.options.OcrEngine",
|
|
"import ai.docling.serve.api.convert.request.options.PdfBackend",
|
|
"import ai.docling.serve.api.convert.request.options.ProcessingPipeline",
|
|
"import ai.docling.serve.api.convert.request.options.OutputFormat",
|
|
"import ai.docling.serve.api.convert.request.source.FileSource",
|
|
"import ai.docling.serve.api.convert.request.target.InBodyTarget",
|
|
"import ai.docling.serve.api.convert.request.target.S3Target",
|
|
"import eu.corentic.springrag.config.DoclingConfig",
|
|
"import java.util.function.Supplier",
|
|
"import java.time.Duration",
|
|
"import jakarta.annotation.PostConstruct",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import org.springframework.stereotype.Service"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src/systemTest/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"assumeTrue\"?+ \"return try {\n buildWithNoArgFactory(config)\n } catch (_: NoSuchMethodException) {\n buildWithClassLoaderFactory(config)\n }\"? \"registerProperties\"?+ \"DoclingServeClientBuilderFactory\"? \"corentic\"? \"try\"? \"springrag\"? (\"ClassLoader\" | \"String\" | \"baseUrl\" | \"getMethod\" | \"invoke\" | \"java\" | \"javaClass\" | \"return buildMethod.invoke(configuredBuilder) as DoclingServeApi\")?+ \"buildWithNoArgFactory\"? \"testcontainers\"? \"classLoader\"? \"DoclingServeApi\"? \"GpuSupport\"? \"return configureAndBuild(builder, config)\"? (\"ClassCastException\" | \"IllegalAccessException\" | \"IllegalStateException\" | \"InvocationTargetException\" | \"NoSuchMethodException\" | \"catch\" | \"cause\" | \"throw\" | \"throw IllegalStateException(\\\"Docling test client builder API is incompatible\\\", e)\" | \"throw IllegalStateException(\\\"Docling test client builder API is not accessible\\\", e)\" | \"throw IllegalStateException(\\\"Docling test client builder invocation failed\\\", e.cause ?: e)\" | \"throw IllegalStateException(\\\"Docling test client builder returned an unexpected type\\\", e)\")?+ \"isDockerAvailable\"?+ \"configureAndBuild\"? \"buildWithClassLoaderFactory\"? \"start\"?+ \"pullAndWarmup\"?+ \"ollamaContainer\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.testcontainers.OllamaModelSupport",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers.ContainerType",
|
|
"import org.junit.jupiter.api.Assumptions",
|
|
"import org.junit.jupiter.api.BeforeAll",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import org.springframework.test.context.DynamicPropertyRegistry",
|
|
"import org.springframework.test.context.DynamicPropertySource",
|
|
"import org.testcontainers.junit.jupiter.Testcontainers",
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import ai.docling.serve.client.DoclingServeClientBuilderFactory",
|
|
"import java.lang.reflect.InvocationTargetException",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 12,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"DoclingConfig\"? \"assertThatThrownBy\"? \"baseUrl\"? \"validateCriticalSettings\"?+ (\"includeImages\" | \"options\")?+ \"isInstanceOf\"?+ \"imageExportMode\"? \"IllegalStateException\"? \"java\"? \"hasMessageContaining\"?+",
|
|
"mdl_score": 18,
|
|
"imports": [
|
|
"import kotlin.test.assertNotNull",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.assertj.core.api.Assertions.assertThat",
|
|
"import org.assertj.core.api.Assertions.assertThatThrownBy",
|
|
"import org.junit.jupiter.api.Assertions.assertNull"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/health",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"`when`\"? (\"DoclingHealthIndicator\" | \"IllegalStateException\" | \"RuntimeException\" | \"assertEquals\" | \"block\" | \"build\" | \"builder\" | \"health\" | \"requireNotNull\" | \"status\" | \"thenReturn\" | \"thenThrow\")?+ \"code\"?",
|
|
"mdl_score": 685824,
|
|
"imports": [
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import ai.docling.serve.api.health.HealthCheckResponse",
|
|
"import kotlin.test.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.mockito.Mockito.mock",
|
|
"import org.mockito.Mockito.`when`"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/service/docling",
|
|
"method_count": 10,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"options\"? \"mockk\"? \"DoclingDocument\"? (\"builder\" | \"document\")?+ \"jsonContent\"?+ (\"build\" | \"status\")?+ \"slot\"? \"ConvertDocumentRequest\"? \"every\"? \"convertSourceAsync\"?+ \"capture\"? \"completedFuture\"?+ \"convertDocument\"?+ \"toByteArray\"?+ \"captured\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import ai.docling.core.DoclingDocument",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import java.util.Base64",
|
|
"import org.junit.jupiter.api.Assertions.assertArrayEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import ai.docling.serve.api.convert.request.ConvertDocumentRequest",
|
|
"import ai.docling.serve.api.convert.request.options.ImageRefMode",
|
|
"import ai.docling.serve.api.convert.request.options.OcrEngine",
|
|
"import ai.docling.serve.api.convert.request.options.OutputFormat",
|
|
"import ai.docling.serve.api.convert.request.options.PdfBackend",
|
|
"import ai.docling.serve.api.convert.request.options.ProcessingPipeline",
|
|
"import ai.docling.serve.api.convert.response.InBodyConvertDocumentResponse",
|
|
"import ai.docling.serve.api.convert.response.DocumentResponse",
|
|
"import eu.corentic.springrag.config.DoclingConfig",
|
|
"import eu.corentic.springrag.config.PipelineOptions",
|
|
"import eu.corentic.springrag.testsupport.NoOpCircuitBreakerFactory",
|
|
"import io.mockk.clearAllMocks",
|
|
"import tools.jackson.databind.ObjectMapper",
|
|
"import ai.docling.serve.api.convert.request.target.S3Target",
|
|
"import ai.docling.serve.api.convert.request.target.InBodyTarget",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.slot",
|
|
"import io.mockk.verify",
|
|
"import java.util.concurrent.CompletableFuture",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotNull",
|
|
"import kotlin.test.assertTrue",
|
|
"import org.junit.jupiter.api.AfterEach",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.assertThrows"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/testsupport",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"Any\" | \"Builder\" | \"get\")+",
|
|
"mdl_score": 15,
|
|
"imports": [
|
|
"import java.util.function.Function",
|
|
"import java.util.function.Supplier",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreaker",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import org.springframework.cloud.client.circuitbreaker.ConfigBuilder"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/health",
|
|
"method_count": 7,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"withDetail\"?+ \"build\"?+ \"onErrorResume\"?+ \"just\"?+",
|
|
"mdl_score": 4,
|
|
"imports": [
|
|
"import org.neo4j.driver.Driver",
|
|
"import java.time.Duration",
|
|
"import org.springframework.boot.health.contributor.Health",
|
|
"import org.springframework.boot.health.contributor.ReactiveHealthIndicator",
|
|
"import org.springframework.stereotype.Component",
|
|
"import reactor.core.publisher.Mono",
|
|
"import com.google.common.util.concurrent.FutureCallback",
|
|
"import com.google.common.util.concurrent.Futures",
|
|
"import com.google.common.util.concurrent.ListenableFuture",
|
|
"import com.google.common.util.concurrent.MoreExecutors",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import java.util.concurrent.ExecutionException",
|
|
"import java.util.concurrent.TimeoutException",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.context.annotation.Profile"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/model/graph",
|
|
"method_count": 9,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"id\" | \"if\" | \"jobId\" | \"pageNo\" | \"return false\" | \"return true\")?+ \"hashCode\"?+ \"return result\"?",
|
|
"mdl_score": 2568,
|
|
"imports": [
|
|
"import java.time.Instant",
|
|
"import org.springframework.data.annotation.Version",
|
|
"import org.springframework.data.neo4j.core.schema.Id",
|
|
"import org.springframework.data.neo4j.core.schema.Node",
|
|
"import org.springframework.data.neo4j.core.schema.Relationship",
|
|
"import org.springframework.data.neo4j.core.schema.Property"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/repository",
|
|
"method_count": 24,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"builder\"?+ \"build\"?+ \"query\"?+ \"return runWithCircuitBreaker { vectorStore.similaritySearch(request).map { it.toVectorChunk() } }\"? \"topK\"?+ \"runWithCircuitBreaker\"? \"filterExpression\"?+ \"similaritySearch\"?+ \"map\"?+ \"toVectorChunk\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import org.springframework.ai.document.Document",
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import java.util.function.Supplier",
|
|
"import org.springframework.ai.vectorstore.SearchRequest",
|
|
"import org.springframework.ai.vectorstore.VectorStore",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.stereotype.Repository"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/agent",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"return try {\n val existingId = agentRepository.findKnowledgeBaseIdByAgentId(agentId)\n if (existingId != null) return existingId\n doCreate(agentId)\n } catch (e: Exception) {\n // Concurrent thread created the agent+KB first \u2014 read and return their result.\n agentRepository.findKnowledgeBaseIdByAgentId(agentId) ?: throw e\n }\"? \"now\"?+ \"return agentRepository.findKnowledgeBaseIdByAgentId(agentId)\"? \"try\"? (\"KnowledgeBaseNode\" | \"save\")?+ (\"Exception\" | \"catch\" | \"doCreate\" | \"findKnowledgeBaseIdByAgentId\" | \"if\" | \"return existingId\")?+ \"AgentNode\"? \"throw e\"? \"return kbId\"? \"throw\"?",
|
|
"mdl_score": 3132,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.graph.AgentNode",
|
|
"import eu.corentic.springrag.model.graph.KnowledgeBaseNode",
|
|
"import eu.corentic.springrag.repository.graph.AgentRepository",
|
|
"import eu.corentic.springrag.repository.graph.KnowledgeBaseRepository",
|
|
"import eu.corentic.springrag.service.port.AgentKnowledgeBasePort",
|
|
"import org.springframework.stereotype.Service",
|
|
"import org.springframework.transaction.annotation.Transactional",
|
|
"import java.time.Instant"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/cleanup",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"info\"?+ (\"deleteByJobId\" | \"deleteByKnowledgeBaseId\" | \"jobId\" | \"knowledgeBaseId\" | \"value\")?+",
|
|
"mdl_score": 1685,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.event.DocumentDeletionRequested",
|
|
"import eu.corentic.springrag.service.graph.GraphIngestionOrchestrator",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty",
|
|
"import org.springframework.modulith.events.ApplicationModuleListener",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.model.event.KnowledgeBaseDeletionRequested",
|
|
"import eu.corentic.springrag.repository.VectorRepository"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/graph",
|
|
"method_count": 12,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.model.DocumentGraphJob",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.GraphImagePayload",
|
|
"import eu.corentic.springrag.model.GraphPictureElement",
|
|
"import eu.corentic.springrag.model.GraphTableElement",
|
|
"import eu.corentic.springrag.model.GraphTextElement",
|
|
"import eu.corentic.springrag.model.graph.DocumentJobNode",
|
|
"import eu.corentic.springrag.model.graph.ImageData",
|
|
"import eu.corentic.springrag.model.graph.PageNode",
|
|
"import eu.corentic.springrag.model.graph.PictureElement",
|
|
"import eu.corentic.springrag.model.graph.TableElement",
|
|
"import eu.corentic.springrag.model.graph.TextElement",
|
|
"import eu.corentic.springrag.service.port.DocumentGraphJobPort",
|
|
"import eu.corentic.springrag.service.port.GraphIndexPort",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBasePort",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import java.util.function.Supplier",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import org.springframework.stereotype.Component",
|
|
"import org.springframework.transaction.annotation.Propagation",
|
|
"import org.springframework.transaction.annotation.Transactional",
|
|
"import java.time.Instant",
|
|
"import java.util.concurrent.CompletableFuture",
|
|
"import java.util.concurrent.Executors"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/port/adapter",
|
|
"method_count": 45,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.model.PageTextElement",
|
|
"import eu.corentic.springrag.model.SourceImage",
|
|
"import eu.corentic.springrag.repository.graph.ImageDataRepository",
|
|
"import eu.corentic.springrag.repository.graph.TextElementRepository",
|
|
"import eu.corentic.springrag.repository.graph.TableElementRepository",
|
|
"import eu.corentic.springrag.service.port.ChatGraphLookupPort",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import java.util.Base64",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import eu.corentic.springrag.model.DocumentGraphJob",
|
|
"import eu.corentic.springrag.model.graph.DocumentJobNode",
|
|
"import eu.corentic.springrag.repository.graph.DocumentJobNodeRepository",
|
|
"import eu.corentic.springrag.service.port.DocumentGraphJobPort",
|
|
"import java.time.Instant",
|
|
"import eu.corentic.springrag.service.port.DocumentIdPort",
|
|
"import eu.corentic.springrag.service.port.DocumentImageInfo",
|
|
"import eu.corentic.springrag.service.port.DocumentImagePort",
|
|
"import eu.corentic.springrag.repository.graph.GraphMaintenanceRepository",
|
|
"import eu.corentic.springrag.service.graph.GraphDeletePort",
|
|
"import eu.corentic.springrag.service.graph.GraphStorePort",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBaseDocumentPort",
|
|
"import eu.corentic.springrag.model.KnowledgeBase",
|
|
"import eu.corentic.springrag.model.KnowledgeBaseStats",
|
|
"import eu.corentic.springrag.model.graph.KnowledgeBaseNode",
|
|
"import eu.corentic.springrag.repository.graph.KnowledgeBaseRepository",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBasePort",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.repository.VectorRepository",
|
|
"import eu.corentic.springrag.service.port.ChunkIndexPort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentDeletionPort",
|
|
"import eu.corentic.springrag.service.port.VectorDocumentPort",
|
|
"import eu.corentic.springrag.service.port.RetrievalPort"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/storage",
|
|
"method_count": 40,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.config.ObjectStorageProperties",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty",
|
|
"import org.springframework.stereotype.Component",
|
|
"import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider",
|
|
"import software.amazon.awssdk.regions.Region",
|
|
"import software.amazon.awssdk.services.s3.S3Client",
|
|
"import software.amazon.awssdk.services.s3.model.Delete",
|
|
"import software.amazon.awssdk.services.s3.model.DeleteObjectRequest",
|
|
"import software.amazon.awssdk.services.s3.model.DeleteObjectsRequest",
|
|
"import software.amazon.awssdk.services.s3.model.HeadObjectRequest",
|
|
"import software.amazon.awssdk.services.s3.model.ListObjectsV2Request",
|
|
"import software.amazon.awssdk.services.s3.model.NoSuchBucketException",
|
|
"import software.amazon.awssdk.services.s3.model.PutObjectRequest",
|
|
"import software.amazon.awssdk.services.s3.model.S3Exception",
|
|
"import software.amazon.awssdk.core.sync.RequestBody",
|
|
"import com.google.cloud.storage.BlobId",
|
|
"import com.google.cloud.storage.BlobInfo",
|
|
"import com.google.cloud.storage.Storage",
|
|
"import com.google.cloud.storage.StorageOptions",
|
|
"import java.net.URI",
|
|
"import software.amazon.awssdk.auth.credentials.AwsBasicCredentials",
|
|
"import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider",
|
|
"import software.amazon.awssdk.services.s3.S3Configuration",
|
|
"import software.amazon.awssdk.services.s3.model.CreateBucketRequest",
|
|
"import software.amazon.awssdk.services.s3.model.HeadBucketRequest"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/systemTest/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"run\"?+ \"assumeTrue\"?+ (\"recreateTestCollection\" | \"registerProperties\")?+ \"collectionPointCount\"?+ \"corentic\"? \"springrag\"? \"testcontainers\"? \"GpuSupport\"? \"isDockerAvailable\"?+ \"start\"?+ \"pullAndWarmup\"?+ \"ollamaContainer\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.testcontainers.OllamaModelSupport",
|
|
"import eu.corentic.springrag.testcontainers.QdrantTestSupport",
|
|
"import eu.corentic.springrag.testcontainers.QdrantTestSupport.recreateTestCollection",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers.ContainerType",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import org.junit.jupiter.api.Assumptions",
|
|
"import org.junit.jupiter.api.BeforeAll",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import org.springframework.test.context.DynamicPropertyRegistry",
|
|
"import org.springframework.test.context.DynamicPropertySource",
|
|
"import org.springframework.test.context.TestPropertySource",
|
|
"import org.testcontainers.junit.jupiter.Testcontainers"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/systemTest/kotlin/eu/corentic/springrag/repository/graph",
|
|
"method_count": 23,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"findById\"?+ \"saveAll\"?+ (\"parse\" | \"runBlocking\")?+ \"orElseThrow\"?+ \"listOf\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.BaseSystemTest",
|
|
"import eu.corentic.springrag.model.graph.DocumentJobNode",
|
|
"import eu.corentic.springrag.model.graph.ImageData",
|
|
"import eu.corentic.springrag.model.graph.KnowledgeBaseNode",
|
|
"import eu.corentic.springrag.model.graph.PageNode",
|
|
"import eu.corentic.springrag.model.graph.TextElement",
|
|
"import java.time.Instant",
|
|
"import org.junit.jupiter.api.Assertions.*",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.test.annotation.DirtiesContext",
|
|
"import org.springframework.test.annotation.DirtiesContext.ClassMode.BEFORE_EACH_TEST_METHOD",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.junit.jupiter.api.AfterEach",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import eu.corentic.springrag.model.graph.TableElement",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.springframework.context.annotation.Import"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/systemTest/kotlin/eu/corentic/springrag/system",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"setupTestCollection\"? \"runBlocking\"? \"listOf\"?+ (\"VectorChunk\" | \"mapOf\")?+ \"addChunks\"?+ \"searchSimilar\"?+ (\"any\" | \"asJobId\" | \"assertEquals\" | \"assertTrue\" | \"contains\" | \"deleteByJobId\" | \"fetchByJobId\" | \"isNotEmpty\" | \"metadata\" | \"single\" | \"size\" | \"text\")?+ \"isEmpty\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.config.BaseSystemTest",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.repository.VectorRepository",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.test.annotation.DirtiesContext",
|
|
"import org.springframework.test.annotation.DirtiesContext.ClassMode.BEFORE_CLASS"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"IllegalStateException\" | \"`when`\" | \"anyString\" | \"assertThrows\" | \"atLeastOnce\" | \"contains\" | \"java\" | \"neo4jSchemaInitializer\" | \"run\" | \"session\" | \"thenReturn\" | \"thenThrow\" | \"times\" | \"verify\")?+ \"mockk\"? \"close\"?+ \"Driver\"? \"Neo4jConfig\"? \"transactionManager\"?+ \"assertTrue\"? \"Neo4jTransactionManager\"?",
|
|
"mdl_score": 13300,
|
|
"imports": [
|
|
"import io.mockk.mockk",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.neo4j.driver.Driver",
|
|
"import org.springframework.data.neo4j.core.transaction.Neo4jTransactionManager",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import org.mockito.ArgumentMatchers.anyString",
|
|
"import org.mockito.ArgumentMatchers.contains",
|
|
"import org.mockito.Mockito.mock",
|
|
"import org.mockito.Mockito.times",
|
|
"import org.mockito.Mockito.atLeastOnce",
|
|
"import org.mockito.Mockito.verify",
|
|
"import org.mockito.Mockito.`when`",
|
|
"import org.neo4j.driver.Result",
|
|
"import org.neo4j.driver.Session"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/health",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"HealthCheckReply\" | \"`when`\" | \"collectionExistsAsync\" | \"getDefaultInstance\" | \"healthCheckAsync\" | \"immediateFuture\" | \"thenReturn\" | \"verifyConnectivityAsync\")?+ \"completedFuture\"?+ \"failedFuture\"?+ \"immediateFailedFuture\"?+ \"IllegalStateException\"? (\"InterruptedException\" | \"TimeoutException\")? (\"Neo4jDriverHealthIndicator\" | \"QdrantVectorStoreHealthIndicator\" | \"assertEquals\" | \"assertTrue\" | \"block\" | \"code\" | \"currentThread\" | \"health\" | \"interrupted\" | \"isInterrupted\" | \"requireNotNull\" | \"status\")?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import java.util.concurrent.CompletableFuture",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.mockito.Mockito.mock",
|
|
"import org.neo4j.driver.Driver",
|
|
"import org.mockito.Mockito.`when`",
|
|
"import com.google.common.util.concurrent.Futures",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import io.qdrant.client.grpc.QdrantOuterClass",
|
|
"import java.util.concurrent.TimeoutException",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertTrue"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/model/graph",
|
|
"method_count": 7,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"assertEquals\"?+ \"ImageData\"? \"hashCode\"?+ \"copy\"?+ \"assertNotEquals\"?",
|
|
"mdl_score": 21,
|
|
"imports": [
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNotEquals"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/repository",
|
|
"method_count": 19,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"assertEquals\"? \"every\"? \"listOf\"?+ \"map\"?+ \"text\"? \"verify\"? \"delete\"?+ \"similaritySearch\"?+ \"any\"? \"match\"? \"String\"?+ \"SearchRequest\"? (\"contains\" | \"filterExpression\" | \"toString\")?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.testsupport.NoOpCircuitBreakerFactory",
|
|
"import io.mockk.every",
|
|
"import io.mockk.just",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.runs",
|
|
"import io.mockk.verify",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.ai.document.Document",
|
|
"import org.springframework.ai.vectorstore.SearchRequest",
|
|
"import org.springframework.ai.vectorstore.VectorStore",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertTrue"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/cleanup",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"DocumentDeletionRequested\" | \"KnowledgeBaseDeletionRequested\" | \"asJobId\" | \"asKnowledgeBaseId\" | \"deleteByJobId\" | \"deleteByKnowledgeBaseId\" | \"every\" | \"onDocumentDeletionRequested\" | \"onKnowledgeBaseDeletionRequested\" | \"verify\")+",
|
|
"mdl_score": 388660,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.event.DocumentDeletionRequested",
|
|
"import eu.corentic.springrag.service.graph.GraphIngestionOrchestrator",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import io.mockk.every",
|
|
"import io.mockk.just",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.runs",
|
|
"import io.mockk.verify",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.model.event.KnowledgeBaseDeletionRequested",
|
|
"import eu.corentic.springrag.repository.VectorRepository"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/graph",
|
|
"method_count": 30,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"asJobId\"?+ \"asDocumentId\"?+ \"every\"? \"asLogicalDocumentId\"?+ \"findOrCreateInactive\"?+ \"asFilename\"?+ \"any\"?+ \"stubDocumentGraphJob\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.DocumentGraphJob",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.GraphImagePayload",
|
|
"import eu.corentic.springrag.model.GraphPage",
|
|
"import eu.corentic.springrag.model.GraphPictureElement",
|
|
"import eu.corentic.springrag.model.GraphTableElement",
|
|
"import eu.corentic.springrag.model.GraphTextElement",
|
|
"import eu.corentic.springrag.service.port.DocumentGraphJobPort",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBasePort",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import eu.corentic.springrag.testsupport.NoOpCircuitBreakerFactory",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import io.mockk.*",
|
|
"import io.mockk.impl.annotations.MockK",
|
|
"import io.mockk.junit5.MockKExtension",
|
|
"import org.junit.jupiter.api.Assertions.*",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.extension.ExtendWith"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/port/adapter",
|
|
"method_count": 28,
|
|
"imports": [
|
|
"import eu.corentic.springrag.model.graph.ImageData",
|
|
"import eu.corentic.springrag.model.graph.TableElement",
|
|
"import eu.corentic.springrag.model.graph.TextElement",
|
|
"import eu.corentic.springrag.repository.graph.ImageDataRepository",
|
|
"import eu.corentic.springrag.repository.graph.TableElementRepository",
|
|
"import eu.corentic.springrag.repository.graph.TextElementRepository",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.verify",
|
|
"import java.util.Optional",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNull",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.model.DocumentGraphJob",
|
|
"import eu.corentic.springrag.model.graph.DocumentJobNode",
|
|
"import eu.corentic.springrag.model.graph.KnowledgeBaseNode",
|
|
"import eu.corentic.springrag.repository.graph.DocumentJobNodeRepository",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import java.time.Instant",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import eu.corentic.springrag.repository.graph.GraphMaintenanceRepository",
|
|
"import io.mockk.just",
|
|
"import io.mockk.runs",
|
|
"import eu.corentic.springrag.model.KnowledgeBase",
|
|
"import eu.corentic.springrag.repository.graph.KnowledgeBaseRepository",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.repository.VectorRepository"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/storage",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"assertNull\"? \"parseS3Location\"? \"error\"?+ (\"assertEquals\" | \"bucket\")?+ \"key\"?",
|
|
"mdl_score": 182,
|
|
"imports": [
|
|
"import kotlin.test.Test",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNull"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/testsupport",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"Any\" | \"Builder\" | \"get\")+",
|
|
"mdl_score": 15,
|
|
"imports": [
|
|
"import java.util.function.Function",
|
|
"import java.util.function.Supplier",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreaker",
|
|
"import org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory",
|
|
"import org.springframework.cloud.client.circuitbreaker.ConfigBuilder"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/chat/src/integrationTest/kotlin/eu/corentic/springrag/service/chat",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"runBlocking\"? \"ChatService\"? \"mockk\"? \"ChatResponse\"? \"every\"? \"listCapabilities\"? \"defaultAgentId\"? \"emptyList\"?+ \"RagInvocation\"? \"RagRequest\"? \"of\"?+ \"http\"?+ \"coEvery\"? (\"answer\" | \"assertEquals\" | \"chatWithSources\" | \"coVerify\" | \"invoke\")?+",
|
|
"mdl_score": 95,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDirectory",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentInvocationGateway",
|
|
"import org.springframework.boot.SpringBootConfiguration",
|
|
"import org.springframework.boot.autoconfigure.EnableAutoConfiguration",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.rag.RagInvocation",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import io.mockk.every",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import io.mockk.mockk",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.boot.test.context.TestConfiguration",
|
|
"import org.springframework.test.context.ActiveProfiles"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/chat/src/main/kotlin/eu/corentic/springrag/service/chat",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"let\"?+ \"info\"?+ \"KnowledgeBaseId\"? \"defaultAgentId\"?+ (\"RagInvocation\" | \"RagRequest\" | \"invoke\" | \"return ragAgentInvocationGateway.invoke(\n RagInvocation(\n request = request,\n executionContext = AgentExecutionContext.http()\n )\n )\" | \"return ragAgentInvocationGateway.invoke(\n RagInvocation(\n request = request,\n executionContext = AgentExecutionContext.http(contextId = conversationId)\n )\n )\")?+ \"listCapabilities\"?+ \"http\"?+ \"filter\"?+ \"map\"?+ \"AgentCapabilityDescriptor\"? \"id\"?",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDirectory",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.capability.isExposedOverHttp",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentInvocationGateway",
|
|
"import eu.corentic.springrag.agent.rag.RagInvocation",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import jakarta.annotation.PostConstruct",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.stereotype.Service"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/chat/src/systemTest/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 15,
|
|
"imports": [
|
|
"import eu.corentic.springrag.testcontainers.OllamaModelSupport",
|
|
"import eu.corentic.springrag.testcontainers.QdrantTestSupport",
|
|
"import eu.corentic.springrag.testcontainers.QdrantTestSupport.recreateTestCollection",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers",
|
|
"import eu.corentic.springrag.testcontainers.SharedContainers.ContainerType",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import java.time.Duration",
|
|
"import java.time.Instant",
|
|
"import java.util.UUID",
|
|
"import org.junit.jupiter.api.Assumptions",
|
|
"import org.junit.jupiter.api.BeforeAll",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.neo4j.driver.Driver",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.boot.webtestclient.autoconfigure.AutoConfigureWebTestClient",
|
|
"import org.springframework.jdbc.core.JdbcTemplate",
|
|
"import org.springframework.security.crypto.password.PasswordEncoder",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import org.springframework.test.context.DynamicPropertyRegistry",
|
|
"import org.springframework.test.context.DynamicPropertySource",
|
|
"import org.springframework.test.context.TestPropertySource",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import org.testcontainers.junit.jupiter.Testcontainers",
|
|
"import java.sql.Timestamp",
|
|
"import org.springframework.ai.chat.memory.ChatMemory",
|
|
"import org.springframework.ai.chat.memory.ChatMemoryRepository",
|
|
"import org.springframework.ai.chat.memory.MessageWindowChatMemory",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.springframework.boot.SpringBootConfiguration",
|
|
"import org.springframework.boot.autoconfigure.EnableAutoConfiguration",
|
|
"import org.springframework.boot.context.properties.ConfigurationPropertiesScan",
|
|
"import org.springframework.context.annotation.ComponentScan",
|
|
"import org.springframework.data.neo4j.repository.config.EnableNeo4jRepositories",
|
|
"import org.springframework.data.jdbc.repository.config.EnableJdbcRepositories",
|
|
"import org.springframework.jdbc.datasource.DataSourceTransactionManager",
|
|
"import org.springframework.transaction.PlatformTransactionManager",
|
|
"import javax.sql.DataSource",
|
|
"import ai.docling.serve.api.DoclingServeApi",
|
|
"import ai.docling.serve.client.DoclingServeClientBuilderFactory",
|
|
"import java.lang.reflect.InvocationTargetException"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/chat/src/systemTest/kotlin/eu/corentic/springrag/system",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"runBlocking\"? \"setupTestCollection\"? \"addChunks\"?+ \"listOf\"?+ \"VectorChunk\"? \"mapOf\"?+ (\"ChatResponse\" | \"SessionChatRequest\" | \"String\" | \"adminClient\" | \"answer\" | \"any\" | \"assertEquals\" | \"assertNotNull\" | \"assertTrue\" | \"atMost\" | \"await\" | \"blockFirst\" | \"bodyValue\" | \"contains\" | \"conversationId\" | \"exchange\" | \"expectBody\" | \"expectStatus\" | \"get\" | \"isEqualTo\" | \"isNotBlank\" | \"isOk\" | \"jsonPath\" | \"lowercase\" | \"ofSeconds\" | \"post\" | \"responseBody\" | \"returnResult\" | \"text\" | \"untilAsserted\" | \"uri\" | \"value\")?+ \"isEmpty\"?",
|
|
"mdl_score": 3008,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.BaseSystemTest",
|
|
"import eu.corentic.springrag.controller.SessionChatRequest",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.repository.VectorRepository",
|
|
"import java.time.Duration",
|
|
"import kotlinx.coroutines.runBlocking",
|
|
"import org.awaitility.Awaitility.await",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.ai.chat.memory.ChatMemory",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.webtestclient.autoconfigure.AutoConfigureWebTestClient",
|
|
"import org.springframework.test.web.reactive.server.WebTestClient",
|
|
"import org.springframework.test.web.reactive.server.returnResult"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/chat/src/test/kotlin/eu/corentic/springrag/service/chat",
|
|
"method_count": 8,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"assertEquals\"? \"runTest\"? \"answer\"? \"coVerify\"? (\"ChatResponse\" | \"RagInvocation\" | \"RagRequest\" | \"asKnowledgeBaseId\" | \"coEvery\" | \"defaultAgentId\" | \"emptyList\" | \"every\" | \"http\" | \"invoke\" | \"listCapabilities\")?+ \"ChatService\"?",
|
|
"mdl_score": 639936,
|
|
"imports": [
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDirectory",
|
|
"import eu.corentic.springrag.agent.capability.AgentExecutionContext",
|
|
"import eu.corentic.springrag.agent.rag.RagAgentInvocationGateway",
|
|
"import eu.corentic.springrag.agent.rag.RagInvocation",
|
|
"import eu.corentic.springrag.agent.rag.RagRequest",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.ChatResponse",
|
|
"import io.mockk.coEvery",
|
|
"import io.mockk.coVerify",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import kotlinx.coroutines.test.StandardTestDispatcher",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.agent.capability.AgentCapabilityDescriptor",
|
|
"import org.junit.jupiter.api.BeforeEach"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/common/src/main/kotlin/eu/corentic/springrag/common",
|
|
"method_count": 7,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"when\" \"Ok\"? \"Err\"?",
|
|
"mdl_score": 4,
|
|
"imports": [],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/common/src/main/kotlin/eu/corentic/springrag/common/ids",
|
|
"method_count": 18,
|
|
"imports": [],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/common/src/test/kotlin/eu/corentic/springrag/common/ids",
|
|
"method_count": 8,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"assertEquals\"? (\"IllegalArgumentException\" | \"assertFailsWith\" | \"of\" | \"value\")?+",
|
|
"mdl_score": 2768,
|
|
"imports": [
|
|
"import kotlin.test.Test",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertFailsWith"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/integrationTest/kotlin/eu/corentic/springrag/service/job",
|
|
"method_count": 34,
|
|
"imports": [
|
|
"import com.ninjasquad.springmockk.MockkBean",
|
|
"import eu.corentic.springrag.batch.DocumentIngestionJobConfig",
|
|
"import eu.corentic.springrag.batch.model.DocumentInput",
|
|
"import eu.corentic.springrag.batch.model.ProcessedDocument",
|
|
"import eu.corentic.springrag.batch.processor.DocumentProcessingItemProcessor",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.service.port.DocumentParserPort",
|
|
"import eu.corentic.springrag.service.port.ChunkIndexPort",
|
|
"import eu.corentic.springrag.service.port.GraphIndexPort",
|
|
"import io.mockk.clearMocks",
|
|
"import io.mockk.every",
|
|
"import java.io.File",
|
|
"import java.time.Duration",
|
|
"import org.awaitility.Awaitility.await",
|
|
"import org.junit.jupiter.api.Assertions",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.AfterEach",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.beans.factory.annotation.Autowired",
|
|
"import org.springframework.boot.test.context.SpringBootTest",
|
|
"import org.springframework.test.context.ActiveProfiles",
|
|
"import eu.corentic.springrag.batch.model.ProcessingError",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import org.springframework.jdbc.core.JdbcTemplate",
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import eu.corentic.springrag.batch.listener.BatchJobListener",
|
|
"import eu.corentic.springrag.batch.listener.SimpleDocumentTrackingListener",
|
|
"import eu.corentic.springrag.batch.partition.DocumentPartitioner",
|
|
"import eu.corentic.springrag.batch.reader.FileBasedDocumentItemReader",
|
|
"import eu.corentic.springrag.batch.writer.GraphStoreItemWriter",
|
|
"import java.nio.file.Files",
|
|
"import java.util.concurrent.CountDownLatch",
|
|
"import java.util.concurrent.TimeUnit",
|
|
"import java.util.concurrent.atomic.AtomicLong",
|
|
"import org.springframework.batch.core.job.Job",
|
|
"import org.springframework.batch.core.job.JobExecution",
|
|
"import org.springframework.batch.core.job.JobInstance",
|
|
"import org.springframework.batch.core.job.parameters.JobParameters",
|
|
"import org.springframework.batch.core.launch.JobOperator",
|
|
"import org.junit.jupiter.api.Assertions.assertNull",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import java.util.concurrent.ConcurrentHashMap",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.springframework.context.annotation.Profile"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch",
|
|
"method_count": 16,
|
|
"imports": [
|
|
"import eu.corentic.springrag.batch.listener.BatchJobListener",
|
|
"import eu.corentic.springrag.batch.listener.DocumentActivationWriteListener",
|
|
"import eu.corentic.springrag.batch.listener.DocumentIngestionStageWriteListener",
|
|
"import eu.corentic.springrag.batch.listener.SimpleDocumentTrackingListener",
|
|
"import eu.corentic.springrag.batch.model.DocumentInput",
|
|
"import eu.corentic.springrag.batch.model.ProcessedDocument",
|
|
"import eu.corentic.springrag.batch.partition.DocumentPartitioner",
|
|
"import eu.corentic.springrag.batch.processor.DocumentProcessingItemProcessor",
|
|
"import eu.corentic.springrag.batch.reader.FileBasedDocumentItemReader",
|
|
"import eu.corentic.springrag.batch.writer.DocumentActivationWriter",
|
|
"import eu.corentic.springrag.batch.writer.DocumentIngestionStageWriter",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentState",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentStateRepository",
|
|
"import eu.corentic.springrag.config.BatchProperties",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import javax.sql.DataSource",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.batch.core.configuration.annotation.StepScope",
|
|
"import org.springframework.batch.core.job.Job",
|
|
"import org.springframework.batch.core.job.builder.JobBuilder",
|
|
"import org.springframework.batch.core.repository.JobRepository",
|
|
"import org.springframework.batch.core.partition.PartitionHandler",
|
|
"import org.springframework.batch.core.partition.support.TaskExecutorPartitionHandler",
|
|
"import org.springframework.batch.core.step.Step",
|
|
"import org.springframework.batch.core.step.builder.StepBuilder",
|
|
"import org.springframework.batch.core.step.skip.SkipPolicy",
|
|
"import org.springframework.batch.core.listener.SkipListener",
|
|
"import org.springframework.batch.infrastructure.item.database.JdbcCursorItemReader",
|
|
"import org.springframework.batch.infrastructure.item.database.builder.JdbcCursorItemReaderBuilder",
|
|
"import org.springframework.beans.factory.annotation.Qualifier",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.springframework.core.task.TaskExecutor",
|
|
"import org.springframework.core.retry.RetryPolicy",
|
|
"import org.springframework.dao.TransientDataAccessException",
|
|
"import org.springframework.transaction.PlatformTransactionManager",
|
|
"import org.springframework.util.backoff.FixedBackOff",
|
|
"import java.io.IOException",
|
|
"import eu.corentic.springrag.service.chunk.DocumentChunkService",
|
|
"import eu.corentic.springrag.service.port.DocumentParserPort",
|
|
"import eu.corentic.springrag.service.port.DocumentParsingRequest",
|
|
"import org.springframework.batch.infrastructure.item.ItemProcessor",
|
|
"import org.springframework.stereotype.Component"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/listener",
|
|
"method_count": 16,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"filename\" | \"jobId\" | \"recordFailure\")?+ \"forEach\"?+ \"markFailed\"?+ \"documentId\"?",
|
|
"mdl_score": 93,
|
|
"imports": [
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.batch.core.BatchStatus",
|
|
"import org.springframework.batch.core.job.JobExecution",
|
|
"import org.springframework.batch.core.listener.JobExecutionListener",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.service.job.StagedUploadCleanupService",
|
|
"import eu.corentic.springrag.service.job.DocumentTrackingRepository",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentState",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentStateRepository",
|
|
"import org.springframework.batch.core.listener.ItemWriteListener",
|
|
"import org.springframework.batch.core.listener.SkipListener",
|
|
"import org.springframework.batch.infrastructure.item.Chunk",
|
|
"import eu.corentic.springrag.batch.model.ProcessedDocument",
|
|
"import eu.corentic.springrag.batch.model.ProcessingError",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.batch.model.DocumentInput",
|
|
"import org.springframework.batch.core.listener.ItemProcessListener"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/model",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"DocumentInput\" | \"content\" | \"contentEquals\" | \"documentId\" | \"fileStorageUri\" | \"filename\" | \"if\" | \"javaClass\" | \"jobId\" | \"knowledgeBaseId\" | \"logicalDocumentId\" | \"return false\" | \"return true\" | \"submittedBy\")?+ \"entries\"? (\"contentHashCode\" | \"hashCode\")?+ \"filter\"?+ \"return result\"? (\"key\" | \"startsWith\")?+ \"endsWith\"?+ \"mapNotNull\"?+ \"value\"? (\"Boolean\" | \"DocumentParsingError\" | \"ERROR\" | \"GenericError\" | \"Int\" | \"Long\" | \"NetworkTimeoutError\" | \"String\" | \"ValidationError\" | \"WARNING\" | \"else\" | \"let\" | \"return when (errorType) {\n \\\"DocumentParsingError\\\" -> ProcessingError.DocumentParsingError(\n filename = this[\\\"document.doc${index}.error.filename\\\"] as? String ?: \\\"unknown\\\",\n line = this[\\\"document.doc${index}.error.line\\\"] as? Int,\n message = message ?: \\\"Unknown parsing error\\\",\n retryable = retryable,\n severity = severity?.let { ErrorSeverity.valueOf(it) } ?: ErrorSeverity.ERROR\n )\n \\\"NetworkTimeoutError\\\" -> ProcessingError.NetworkTimeoutError(\n timeoutMs = this[\\\"document.doc${index}.error.timeoutMs\\\"] as? Long ?: 30000,\n message = message ?: \\\"Unknown timeout error\\\",\n retryable = retryable,\n severity = severity?.let { ErrorSeverity.valueOf(it) } ?: ErrorSeverity.WARNING\n )\n \\\"ValidationError\\\" -> ProcessingError.ValidationError(\n field = this[\\\"document.doc${index}.error.field\\\"] as? String ?: \\\"unknown\\\",\n value = this[\\\"document.doc${index}.error.value\\\"] as? String ?: \\\"unknown\\\",\n message = message ?: \\\"Unknown validation error\\\",\n retryable = retryable,\n severity = severity?.let { ErrorSeverity.valueOf(it) } ?: ErrorSeverity.ERROR\n )\n else -> ProcessingError.GenericError(\n exceptionType = errorType ?: \\\"UnknownError\\\",\n message = message ?: \\\"Unknown error\\\",\n retryable = retryable,\n severity = severity?.let { ErrorSeverity.valueOf(it) } ?: ErrorSeverity.ERROR\n )\n }\" | \"valueOf\" | \"when\")?+ \"return ErrorSummary(\n totalErrors = errors.size,\n retryableErrors = errors.count { it.contains(\\\"timeout\\\") || it.contains(\\\"retryable\\\") },\n firstError = errors.firstOrNull()\n )\"? \"ErrorSummary\"? \"size\"? \"count\"?+ \"contains\"?+ \"firstOrNull\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import java.time.Instant"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/partition",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"values\"? \"mutableMapOf\"?+ \"firstOrNull\"?+ \"getString\"?+ (\"Exception\" | \"ExecutionContext\" | \"Filename\" | \"IllegalStateException\" | \"List\" | \"String\" | \"UUID\" | \"appendPath\" | \"catch\" | \"compareTo\" | \"createEmptyPartitions\" | \"else\" | \"error\" | \"exists\" | \"fileName\" | \"filenameFromUri\" | \"filter\" | \"for\" | \"forEachIndexed\" | \"getDefault\" | \"getPathMatcher\" | \"if\" | \"info\" | \"isDirectory\" | \"isEmpty\" | \"isNotEmpty\" | \"isObjectStorageUri\" | \"isRegularFile\" | \"list\" | \"listObjects\" | \"listOf\" | \"listTrackedFilenames\" | \"logPartitioningInfo\" | \"map\" | \"mapNotNull\" | \"matches\" | \"message\" | \"of\" | \"put\" | \"putInt\" | \"putString\" | \"queueDocuments\" | \"randomUUID\" | \"removeSuffix\" | \"resolveFiles\" | \"resolvePath\" | \"return Files.list(rootPath).use { stream ->\n stream\n .filter { Files.isRegularFile(it) }\n .filter { matcher.matches(it.fileName) }\n .filter { Files.size(it) > 0L }\n .sorted { a, b -> a.fileName.toString().compareTo(b.fileName.toString()) }\n .toList()\n }\" | \"return createEmptyPartitions(gridSize, \\\"ERROR: No inputPath provided\\\")\" | \"return partitions\" | \"size\" | \"sorted\" | \"throw\" | \"throw IllegalStateException(\\\"Input path does not exist: $rootPath\\\")\" | \"throw IllegalStateException(\\\"Input path is not a directory: $rootPath\\\")\" | \"throw IllegalStateException(\\\"Invalid inputPath: $normalizedInputPath\\\")\" | \"toString\" | \"toUri\" | \"try\" | \"use\" | \"util\" | \"value\" | \"warn\")?+ \"toList\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.service.job.DocumentTrackingRepository",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import java.nio.file.FileSystems",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import kotlin.streams.toList",
|
|
"import org.springframework.batch.core.configuration.annotation.StepScope",
|
|
"import org.springframework.batch.core.partition.Partitioner",
|
|
"import org.springframework.batch.infrastructure.item.ExecutionContext",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.stereotype.Component"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/reader",
|
|
"method_count": 4,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"poll\"?+ (\"DocumentInput\" | \"IllegalStateException\" | \"KnowledgeBaseId\" | \"List\" | \"String\" | \"containsKey\" | \"debug\" | \"documentVersionId\" | \"else\" | \"error\" | \"exists\" | \"filenameFromUri\" | \"forEach\" | \"get\" | \"getResource\" | \"identityHashCode\" | \"if\" | \"info\" | \"inputStream\" | \"isNotEmpty\" | \"isObjectStorageUri\" | \"isReadable\" | \"it\" | \"java\" | \"let\" | \"loadObject\" | \"logicalDocumentId\" | \"mapNotNull\" | \"name\" | \"objectExists\" | \"of\" | \"offer\" | \"partitionedFiles\" | \"readBytes\" | \"requireNotNull\" | \"return\" | \"return DocumentInput(\n jobId = resolvedJobId,\n documentId = documentId,\n logicalDocumentId = logicalDocumentId,\n filename = resolvedFilename,\n content = content,\n fileStorageUri = StorageUri.of(uri),\n knowledgeBaseId = resolvedKnowledgeBaseId,\n submittedBy = submittedBy\n )\" | \"return null\" | \"size\" | \"throw\" | \"throw IllegalStateException(\\\"Object not found at $uri\\\")\" | \"throw IllegalStateException(\\\"Resource not readable: $uri\\\")\" | \"use\" | \"value\" | \"warn\" | \"when\")?+ (\"clear\" | \"initialize\")?+",
|
|
"mdl_score": 532496,
|
|
"imports": [
|
|
"import eu.corentic.springrag.batch.model.DocumentInput",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.service.document.DocumentIdentity",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.batch.infrastructure.item.ExecutionContext",
|
|
"import org.springframework.batch.infrastructure.item.ItemStreamReader",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.core.io.ResourceLoader",
|
|
"import java.util.concurrent.ConcurrentLinkedQueue"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/writer",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"items\"? \"forEach\"?+ (\"addChunks\" | \"chunks\" | \"content\" | \"debug\" | \"documentId\" | \"else\" | \"enforce\" | \"fileStorageUri\" | \"filename\" | \"graphDocument\" | \"if\" | \"input\" | \"isEmpty\" | \"jobId\" | \"knowledgeBaseId\" | \"let\" | \"logicalDocumentId\" | \"pictures\" | \"size\" | \"stageDocumentGraph\" | \"submittedBy\" | \"tables\" | \"texts\" | \"toLong\" | \"upsertStaging\" | \"value\" | \"warn\")?+ \"activate\"?+",
|
|
"mdl_score": 71388,
|
|
"imports": [
|
|
"import eu.corentic.springrag.service.job.DocumentActivationService",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentState",
|
|
"import org.springframework.batch.infrastructure.item.Chunk",
|
|
"import org.springframework.batch.infrastructure.item.ItemWriter",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.batch.model.ProcessedDocument",
|
|
"import eu.corentic.springrag.service.chunk.EmbeddingInputGuard",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentStateRepository",
|
|
"import eu.corentic.springrag.service.port.ChunkIndexPort",
|
|
"import eu.corentic.springrag.service.port.GraphIndexPort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/config",
|
|
"method_count": 26,
|
|
"imports": [
|
|
"import javax.sql.DataSource",
|
|
"import org.springframework.batch.core.configuration.support.JdbcDefaultBatchConfiguration",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.springframework.core.task.TaskDecorator",
|
|
"import org.springframework.core.task.TaskExecutor",
|
|
"import org.springframework.core.task.VirtualThreadTaskExecutor",
|
|
"import org.springframework.core.task.support.TaskExecutorAdapter",
|
|
"import org.springframework.jdbc.datasource.DataSourceTransactionManager",
|
|
"import org.springframework.transaction.PlatformTransactionManager",
|
|
"import org.springframework.transaction.annotation.Isolation",
|
|
"import eu.corentic.springrag.common.ids.BatchId",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import jakarta.annotation.PostConstruct",
|
|
"import jakarta.validation.constraints.NotBlank",
|
|
"import java.net.URI",
|
|
"import java.nio.file.Path",
|
|
"import java.time.Duration",
|
|
"import org.slf4j.LoggerFactory",
|
|
"import org.springframework.boot.context.properties.ConfigurationProperties",
|
|
"import org.springframework.validation.annotation.Validated"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/service/chunk",
|
|
"method_count": 18,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"trim\"?+ \"if\" \"isBlank\"?+",
|
|
"mdl_score": 4,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.HybridChunkingConfig",
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.GraphTableElement",
|
|
"import eu.corentic.springrag.model.GraphTextElement",
|
|
"import eu.corentic.springrag.model.ParsedDocument",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import org.springframework.stereotype.Service",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.config.EmbabelModelProperties",
|
|
"import kotlin.math.min",
|
|
"import com.knuddels.jtokkit.Encodings",
|
|
"import com.knuddels.jtokkit.api.Encoding",
|
|
"import com.knuddels.jtokkit.api.EncodingType"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/service/document",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"lowercase\" | \"trim\" | \"value\")?+ \"joinToString\"? \"getInstance\"?+ \"format\"?+ \"digest\"?+ \"toByteArray\"?+ \"toHex\"?+ (\"return DocumentId.of(\\\"doc-$hex\\\")\" | \"return LogicalDocumentId.of(\\\"ldoc-$hex\\\")\")? \"of\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import java.security.MessageDigest"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/service/job",
|
|
"method_count": 62,
|
|
"imports": [
|
|
"import java.sql.Timestamp",
|
|
"import java.time.Instant",
|
|
"import org.springframework.jdbc.core.JdbcTemplate",
|
|
"import org.springframework.stereotype.Component",
|
|
"from ingestion_batch_ownership",
|
|
"import eu.corentic.springrag.common.DomainException",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.stereotype.Service",
|
|
"import eu.corentic.springrag.model.event.DocumentActivationFailed",
|
|
"import eu.corentic.springrag.service.port.ChunkIndexPort",
|
|
"import org.springframework.modulith.events.ApplicationModuleListener",
|
|
"import eu.corentic.springrag.service.port.GraphIndexPort",
|
|
"import org.springframework.context.ApplicationEventPublisher",
|
|
"import eu.corentic.springrag.model.event.DocumentDeletionRequested",
|
|
"import eu.corentic.springrag.batch.model.ErrorSeverity",
|
|
"import eu.corentic.springrag.batch.model.ProcessingError",
|
|
"import eu.corentic.springrag.common.ids.Filename",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import java.sql.ResultSet",
|
|
"import org.springframework.transaction.annotation.Transactional",
|
|
"from ingestion_document_tracking",
|
|
"import eu.corentic.springrag.common.ids.DocumentId",
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.LogicalDocumentId",
|
|
"import org.springframework.jdbc.core.RowMapper",
|
|
"from ingestion_document_state",
|
|
"import org.springframework.batch.core.job.JobExecution",
|
|
"import org.springframework.batch.core.job.JobInstance",
|
|
"import org.springframework.batch.core.repository.JobRepository",
|
|
"import eu.corentic.springrag.common.ids.StorageUri",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import org.springframework.core.io.ResourceLoader",
|
|
"import org.springframework.batch.core.job.Job",
|
|
"import org.springframework.batch.core.job.parameters.JobParameters",
|
|
"import org.springframework.batch.core.launch.JobOperator",
|
|
"import java.util.UUID",
|
|
"import org.springframework.batch.core.job.parameters.JobParametersBuilder",
|
|
"import java.io.File",
|
|
"import java.util.*",
|
|
"import org.springframework.batch.core.launch.JobExecutionAlreadyRunningException",
|
|
"import org.springframework.batch.core.launch.JobInstanceAlreadyCompleteException",
|
|
"import eu.corentic.springrag.batch.DocumentIngestionJobConfig",
|
|
"import org.springframework.batch.core.launch.NoSuchJobException",
|
|
"import eu.corentic.springrag.batch.model.ErrorSummary",
|
|
"import org.springframework.batch.core.BatchStatus",
|
|
"import eu.corentic.springrag.model.event.KnowledgeBaseDeletionRequested",
|
|
"import java.net.URI",
|
|
"import java.nio.file.Path",
|
|
"import org.springframework.scheduling.annotation.Scheduled",
|
|
"import org.springframework.util.FileSystemUtils"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch",
|
|
"method_count": 17,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.BatchProperties",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentStateRepository",
|
|
"import io.mockk.mockk",
|
|
"import kotlin.test.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder",
|
|
"import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType",
|
|
"import java.io.IOException",
|
|
"import kotlin.test.assertFalse",
|
|
"import kotlin.test.assertTrue",
|
|
"import org.springframework.core.retry.RetryPolicy",
|
|
"import org.springframework.dao.TransientDataAccessResourceException",
|
|
"import org.springframework.util.backoff.FixedBackOff",
|
|
"import org.springframework.batch.core.step.skip.SkipPolicy",
|
|
"import kotlin.test.assertNotNull",
|
|
"import org.springframework.batch.core.listener.ItemProcessListener",
|
|
"import org.springframework.batch.core.listener.JobExecutionListener"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/listener",
|
|
"method_count": 34,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import java.io.IOException",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import java.time.Duration",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.io.TempDir",
|
|
"import org.springframework.batch.core.BatchStatus",
|
|
"import org.springframework.batch.core.job.JobExecution",
|
|
"import org.springframework.batch.core.job.JobInstance",
|
|
"import org.springframework.batch.core.job.parameters.JobParameters",
|
|
"import org.springframework.batch.core.job.parameters.JobParametersBuilder",
|
|
"import org.springframework.batch.test.MetaDataInstanceFactory",
|
|
"import eu.corentic.springrag.service.job.StagedUploadCleanupService",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import io.mockk.mockk",
|
|
"import eu.corentic.springrag.service.job.DocumentTrackingRepository",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentState",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentStateRepository",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import io.mockk.every",
|
|
"import io.mockk.just",
|
|
"import io.mockk.runs",
|
|
"import io.mockk.verify",
|
|
"import org.springframework.batch.infrastructure.item.Chunk",
|
|
"import eu.corentic.springrag.batch.model.DocumentInput",
|
|
"import eu.corentic.springrag.batch.model.ProcessedDocument",
|
|
"import eu.corentic.springrag.batch.model.ProcessingError",
|
|
"import java.io.EOFException",
|
|
"import java.net.SocketTimeoutException",
|
|
"import javax.net.ssl.SSLException",
|
|
"import kotlin.test.assertEquals",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import io.mockk.slot"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/model",
|
|
"method_count": 8,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"mapOf\"?+ \"DocumentInput\"? (\"assertNotEquals\" | \"severity\")? \"String\"?+ \"asJobId\"?+ \"Any\"? \"asDocumentId\"?+ \"requireNotNull\"?+ \"asLogicalDocumentId\"?+ \"getDocumentError\"?+ \"asFilename\"?+ \"assertTrue\"? \"byteArrayOf\"?+ \"ProcessingError\"? \"asStorageUri\"?+ \"asKnowledgeBaseId\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/partition",
|
|
"method_count": 7,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"resolve\" | \"writeString\")?+ \"mockk\"? \"DocumentTrackingRepository\"? (\"any\" | \"asJobId\" | \"assertEquals\" | \"assertTrue\" | \"containsAll\" | \"emptyList\" | \"every\" | \"getString\" | \"listOf\" | \"listTrackedFilenames\" | \"map\" | \"match\" | \"partition\" | \"partitioner\" | \"queueDocuments\" | \"size\" | \"sorted\" | \"value\" | \"values\" | \"verify\")?+ \"all\"?+ \"error\"?+ \"getInt\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.service.job.DocumentTrackingRepository",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import io.mockk.every",
|
|
"import io.mockk.just",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.runs",
|
|
"import io.mockk.verify",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.io.TempDir"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/processor",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"clearAllMocks\"? \"DocumentInput\"? (\"DocumentParsingRequest\" | \"GraphDocument\" | \"ParsedDocument\" | \"RuntimeException\" | \"VectorChunk\" | \"any\" | \"asDocumentId\" | \"asFilename\" | \"asJobId\" | \"asKnowledgeBaseId\" | \"asLogicalDocumentId\" | \"assertEquals\" | \"assertNotNull\" | \"assertThrows\" | \"byteArrayOf\" | \"content\" | \"createChunks\" | \"documentId\" | \"emptyList\" | \"every\" | \"filename\" | \"graphDocument\" | \"input\" | \"jobId\" | \"listOf\" | \"logicalDocumentId\" | \"parse\" | \"process\" | \"toList\" | \"verify\" | \"withArg\")?+ (\"chunks\" | \"knowledgeBaseId\")?",
|
|
"mdl_score": 86178481,
|
|
"imports": [
|
|
"import eu.corentic.springrag.batch.model.DocumentInput",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.ParsedDocument",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.service.chunk.DocumentChunkService",
|
|
"import eu.corentic.springrag.service.port.DocumentParserPort",
|
|
"import eu.corentic.springrag.service.port.DocumentParsingRequest",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import io.mockk.clearAllMocks",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.verify",
|
|
"import java.util.UUID",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotNull",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.assertThrows"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/reader",
|
|
"method_count": 12,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"DefaultResourceLoader\" | \"File\" | \"FileBasedDocumentItemReader\" | \"absolutePath\" | \"byteArrayOf\" | \"core\" | \"io\" | \"open\" | \"springframework\" | \"writeBytes\")?+ \"batch\"? \"infrastructure\"? \"item\"? \"ExecutionContext\"?+ \"read\"?+ \"assertNull\"? \"assertNotNull\"? \"assertEquals\"? \"filename\"? \"value\"?",
|
|
"mdl_score": 5820,
|
|
"imports": [
|
|
"import eu.corentic.springrag.service.document.DocumentIdentity",
|
|
"import java.io.File",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import io.mockk.mockk",
|
|
"import org.junit.jupiter.api.Assertions.*",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.junit.jupiter.api.io.TempDir"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/writer",
|
|
"method_count": 14,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"write\"?+ \"ProcessedDocument\"? \"runTest\"? \"emptyList\"?+ \"coVerify\"? \"DocumentInput\"? \"Chunk\"? \"stageDocumentGraph\"?+ \"asJobId\"?+ \"listOf\"?+ \"any\"?+ \"asDocumentId\"?+ \"asLogicalDocumentId\"?+ \"asFilename\"?+ \"byteArrayOf\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.service.job.DocumentActivationService",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentState",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import io.mockk.every",
|
|
"import io.mockk.just",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.runs",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.batch.infrastructure.item.Chunk",
|
|
"import kotlin.test.assertFailsWith",
|
|
"import eu.corentic.springrag.batch.model.DocumentInput",
|
|
"import eu.corentic.springrag.batch.model.ProcessedDocument",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.VectorChunk",
|
|
"import eu.corentic.springrag.service.chunk.EmbeddingInputGuard",
|
|
"import eu.corentic.springrag.service.chunk.EmbeddingInputTooLargeException",
|
|
"import eu.corentic.springrag.service.job.IngestionDocumentStateRepository",
|
|
"import eu.corentic.springrag.service.port.ChunkIndexPort",
|
|
"import eu.corentic.springrag.service.port.GraphIndexPort",
|
|
"import io.mockk.verify",
|
|
"import io.mockk.*",
|
|
"import io.mockk.impl.annotations.MockK",
|
|
"import io.mockk.junit5.MockKExtension",
|
|
"import kotlinx.coroutines.test.runTest",
|
|
"import org.junit.jupiter.api.AfterEach",
|
|
"import org.junit.jupiter.api.Assertions.*",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.junit.jupiter.api.extension.ExtendWith"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/service/chunk",
|
|
"method_count": 8,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"HybridChunkingConfig\"? \"service\"? \"GraphDocument\"? \"listOf\"?+ (\"GraphTableElement\" | \"GraphTextElement\")? \"createChunks\"?+ \"asJobId\"?+ \"asDocumentId\"?+ \"asLogicalDocumentId\"?+ \"asFilename\"?+ \"ParsedDocument\"? (\"assertEquals\" | \"size\")?+ \"assertTrue\"? \"all\"?+ \"metadata\"? \"Int\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.config.HybridChunkingConfig",
|
|
"import eu.corentic.springrag.config.EmbabelModelProperties",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import eu.corentic.springrag.model.GraphDocument",
|
|
"import eu.corentic.springrag.model.GraphTableElement",
|
|
"import eu.corentic.springrag.model.GraphTextElement",
|
|
"import eu.corentic.springrag.model.ParsedDocument",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotNull",
|
|
"import kotlin.test.assertTrue",
|
|
"import org.junit.jupiter.api.Test"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/service/job",
|
|
"method_count": 49,
|
|
"imports": [
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.verify",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertFailsWith",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.model.event.DocumentActivationFailed",
|
|
"import eu.corentic.springrag.service.port.ChunkIndexPort",
|
|
"import eu.corentic.springrag.common.ids.asDocumentId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import eu.corentic.springrag.common.ids.asLogicalDocumentId",
|
|
"import io.mockk.just",
|
|
"import io.mockk.runs",
|
|
"import eu.corentic.springrag.service.port.GraphIndexPort",
|
|
"import eu.corentic.springrag.common.ids.asFilename",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import org.springframework.context.ApplicationEventPublisher",
|
|
"import eu.corentic.springrag.model.event.DocumentDeletionRequested",
|
|
"import java.time.LocalDateTime",
|
|
"import kotlin.test.assertNull",
|
|
"import org.springframework.batch.core.job.JobExecution",
|
|
"import org.springframework.batch.core.job.JobInstance",
|
|
"import org.springframework.batch.core.job.parameters.JobParametersBuilder",
|
|
"import org.springframework.batch.core.repository.JobRepository",
|
|
"import java.io.File",
|
|
"import eu.corentic.springrag.common.ids.asStorageUri",
|
|
"import eu.corentic.springrag.service.port.ObjectStoragePort",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import org.springframework.core.io.DefaultResourceLoader",
|
|
"import org.junit.jupiter.api.Assertions.assertNull",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertSame",
|
|
"import org.junit.jupiter.api.assertThrows",
|
|
"import org.slf4j.MDC",
|
|
"import org.springframework.batch.core.job.Job",
|
|
"import org.springframework.batch.core.launch.JobOperator",
|
|
"import kotlin.test.assertNotNull",
|
|
"import io.mockk.slot",
|
|
"import org.junit.jupiter.api.Assertions.assertNotEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.springframework.batch.core.BatchStatus",
|
|
"import org.springframework.batch.core.launch.JobExecutionAlreadyRunningException",
|
|
"import org.springframework.batch.core.launch.JobInstanceAlreadyCompleteException",
|
|
"import org.springframework.batch.core.job.parameters.JobParameters",
|
|
"import org.springframework.batch.test.MetaDataInstanceFactory",
|
|
"import kotlin.test.assertTrue",
|
|
"import eu.corentic.springrag.model.event.KnowledgeBaseDeletionRequested",
|
|
"import eu.corentic.springrag.config.StorageProperties",
|
|
"import java.nio.file.Files",
|
|
"import java.nio.file.Path",
|
|
"import java.time.Duration",
|
|
"import java.time.Instant",
|
|
"import org.junit.jupiter.api.Assertions.assertFalse",
|
|
"import org.junit.jupiter.api.io.TempDir"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/knowledgebase/ports/src/main/kotlin/eu/corentic/springrag/model",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"return sizeInBytes + additionalBytes <= sizeLimitBytes\"? \"return stats.canAcceptMoreContent(additionalBytes, sizeLimitBytes)\"? (\"return copy(\n stats = stats.applySizeDelta(sizeDelta),\n updatedAt = Instant.now()\n )\" | \"return copy(sizeInBytes = sizeInBytes + sizeDelta)\" | \"return copy(updatedAt = Instant.now())\")? \"canAcceptMoreContent\"?+ \"copy\"? \"applySizeDelta\"?+ \"now\"?+",
|
|
"mdl_score": 39,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import java.time.Instant"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/knowledgebase/src/main/kotlin/eu/corentic/springrag/service/knowledgebase",
|
|
"method_count": 11,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"of\"?+ \"stats\"? (\"debug\" | \"info\")?+ \"findById\"?+ \"documentCount\"? \"throw KnowledgeBaseNotFoundException(kbId)\"? \"toInt\"?+ \"throw\"? \"KnowledgeBaseNotFoundException\"?",
|
|
"mdl_score": 10,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.ids.KnowledgeBaseId",
|
|
"import eu.corentic.springrag.model.KnowledgeBase",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBasePort",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.beans.factory.annotation.Value",
|
|
"import org.springframework.boot.CommandLineRunner",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import java.time.Instant",
|
|
"import eu.corentic.springrag.common.ids.JobId",
|
|
"import eu.corentic.springrag.model.event.DocumentDeletionRequested",
|
|
"import eu.corentic.springrag.model.event.KnowledgeBaseDeletionRequested",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBaseDocumentPort",
|
|
"import org.springframework.context.ApplicationEventPublisher",
|
|
"import org.springframework.stereotype.Service",
|
|
"import org.springframework.transaction.annotation.Transactional",
|
|
"import java.util.*"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/knowledgebase/src/test/kotlin/eu/corentic/springrag/service/knowledgebase",
|
|
"method_count": 16,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"parse\"?+ \"corentic\"? \"springrag\"? \"model\"? \"KnowledgeBase\"?+ (\"asKnowledgeBaseId\" | \"every\" | \"findById\")?+",
|
|
"mdl_score": 267,
|
|
"imports": [
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import jakarta.validation.Validation",
|
|
"import kotlin.test.assertFalse",
|
|
"import kotlin.test.assertTrue",
|
|
"import eu.corentic.springrag.model.event.DocumentDeletionRequested",
|
|
"import eu.corentic.springrag.model.event.KnowledgeBaseDeletionRequested",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBasePort",
|
|
"import eu.corentic.springrag.service.port.KnowledgeBaseDocumentPort",
|
|
"import eu.corentic.springrag.common.ids.asJobId",
|
|
"import eu.corentic.springrag.common.ids.asKnowledgeBaseId",
|
|
"import io.mockk.every",
|
|
"import io.mockk.just",
|
|
"import io.mockk.mockk",
|
|
"import io.mockk.runs",
|
|
"import io.mockk.slot",
|
|
"import io.mockk.verify",
|
|
"import java.time.Instant",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertNotNull",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import org.springframework.context.ApplicationEventPublisher"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/security/src/main/kotlin/eu/corentic/springrag/security/config",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"request\"? \"UserDetailsRepositoryReactiveAuthenticationManager\"? (\"Boolean\" | \"getProperty\" | \"java\")?+ \"CommandLineRunner\"? \"BCryptPasswordEncoder\"? \"headers\"? \"setPasswordEncoder\"?+ \"acceptsProfiles\"?+ \"getFirst\"?+ \"return manager\"? \"of\"?+ \"AUTHORIZATION\"? \"activeProfiles\"? \"isEmpty\"?+ \"return http\n // Temporary: Thymeleaf pages may post forms; keep CSRF for browser endpoints.\n // Long-term: JWT-only API (no cookie auth), so this can be revisited.\n .csrf {\n it.csrfTokenRepository(CookieServerCsrfTokenRepository.withHttpOnlyFalse())\n it.requireCsrfProtectionMatcher(\n AndServerWebExchangeMatcher(\n CsrfWebFilter.DEFAULT_CSRF_MATCHER,\n NegatedServerWebExchangeMatcher(\n // CSRF is only relevant for browser cookie-based interactions.\n // LibreChat calls our /librechat/** endpoints server-to-server and won't send CSRF tokens.\n ServerWebExchangeMatchers.pathMatchers(\\\"/api/**\\\", \\\"/mcp/**\\\", \\\"/librechat/**\\\")\n )\n )\n )\n }\n .httpBasic { it.disable() }\n .formLogin {\n if (!enableFormLogin) {\n it.disable()\n }\n }\n .logout { it.disable() }\n .authenticationManager(authenticationManager)\n .authorizeExchange { exchange ->\n if (permitAll) {\n exchange.anyExchange().permitAll()\n } else {\n exchange\n // Public assets and auth endpoints\n .pathMatchers(\\\"/api/auth/**\\\", \\\"/login\\\", \\\"/logout\\\", \\\"/librechat/**\\\").permitAll()\n .pathMatchers(\\\"/actuator/health/**\\\", \\\"/mcp/**\\\").permitAll()\n .apply {\n if (permitLibreChat) {\n pathMatchers(\\\"/librechat/**\\\").permitAll()\n } else {\n pathMatchers(\\\"/librechat/**\\\").authenticated()\n }\n }\n .pathMatchers(\\\"/css/**\\\", \\\"/js/**\\\", \\\"/images/**\\\", \\\"/webjars/**\\\").permitAll()\n .pathMatchers(\\\"/\\\", \\\"/upload\\\", \\\"/jobs\\\", \\\"/chat\\\", \\\"/knowledge-bases\\\", \\\"/web/**\\\")\n .hasAnyAuthority(\\\"ROLE_USER\\\", \\\"ROLE_ADMIN\\\")\n .anyExchange().authenticated()\n }\n }\n .addFilterAt(jwtAuthenticationFilter, SecurityWebFiltersOrder.AUTHENTICATION)\n .build()\"? \"csrf\"?+ \"csrfTokenRepository\"?+ \"withHttpOnlyFalse\"?+ \"requireCsrfProtectionMatcher\"?+ \"AndServerWebExchangeMatcher\"? \"DEFAULT_CSRF_MATCHER\"? \"NegatedServerWebExchangeMatcher\"? (\"ROLE_ADMIN\" | \"anyExchange\" | \"apply\" | \"authenticated\" | \"authenticationManager\" | \"authorizeExchange\" | \"disable\" | \"else\" | \"findByUsername\" | \"formLogin\" | \"hasAnyAuthority\" | \"httpBasic\" | \"if\" | \"info\" | \"logout\" | \"pathMatchers\" | \"permitAll\" | \"registerUser\")?+ \"startsWith\"?+ \"addFilterAt\"?+ \"ROLE_USER\"? \"substring\"?+ \"AUTHENTICATION\"? \"when\"? \"build\"?+ \"parseToken\"?+ (\"Err\" | \"Ok\" | \"Outcome\" | \"UsernamePasswordAuthenticationToken\" | \"authorities\" | \"contextWrite\" | \"filter\" | \"return chain.filter(exchange)\" | \"return chain.filter(exchange)\n .contextWrite(ReactiveSecurityContextHolder.withAuthentication(authentication))\" | \"username\" | \"value\" | \"withAuthentication\")?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.Outcome",
|
|
"import eu.corentic.springrag.security.service.JwtService",
|
|
"import org.springframework.http.HttpHeaders",
|
|
"import org.springframework.security.authentication.UsernamePasswordAuthenticationToken",
|
|
"import org.springframework.security.core.context.ReactiveSecurityContextHolder",
|
|
"import org.springframework.stereotype.Component",
|
|
"import org.springframework.web.server.ServerWebExchange",
|
|
"import org.springframework.web.server.WebFilter",
|
|
"import org.springframework.web.server.WebFilterChain",
|
|
"import reactor.core.publisher.Mono",
|
|
"import org.springframework.context.annotation.Bean",
|
|
"import org.springframework.context.annotation.Configuration",
|
|
"import org.springframework.security.config.annotation.method.configuration.EnableReactiveMethodSecurity",
|
|
"import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity",
|
|
"import org.springframework.security.config.web.server.SecurityWebFiltersOrder",
|
|
"import org.springframework.security.config.web.server.ServerHttpSecurity",
|
|
"import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder",
|
|
"import org.springframework.security.crypto.password.PasswordEncoder",
|
|
"import org.springframework.security.web.server.SecurityWebFilterChain",
|
|
"import org.springframework.security.authentication.ReactiveAuthenticationManager",
|
|
"import org.springframework.security.core.userdetails.ReactiveUserDetailsService",
|
|
"import org.springframework.security.authentication.UserDetailsRepositoryReactiveAuthenticationManager",
|
|
"import org.springframework.security.web.server.csrf.CookieServerCsrfTokenRepository",
|
|
"import org.springframework.security.web.server.csrf.CsrfWebFilter",
|
|
"import org.springframework.security.web.server.util.matcher.AndServerWebExchangeMatcher",
|
|
"import org.springframework.security.web.server.util.matcher.NegatedServerWebExchangeMatcher",
|
|
"import org.springframework.security.web.server.util.matcher.ServerWebExchangeMatchers",
|
|
"import org.springframework.core.env.Environment",
|
|
"import org.springframework.core.env.Profiles",
|
|
"import eu.corentic.springrag.security.model.Role",
|
|
"import eu.corentic.springrag.security.service.UserService",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.boot.CommandLineRunner",
|
|
"import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/security/src/main/kotlin/eu/corentic/springrag/security/service",
|
|
"method_count": 10,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"parser\"?+ \"if\"? \"verifyWith\"?+ \"build\"?+ \"parseSignedClaims\"?+ \"payload\"?",
|
|
"mdl_score": 6,
|
|
"imports": [
|
|
"import eu.corentic.springrag.security.repository.UserRepository",
|
|
"import org.springframework.security.core.userdetails.ReactiveUserDetailsService",
|
|
"import org.springframework.security.core.userdetails.User",
|
|
"import org.springframework.security.core.userdetails.UserDetails",
|
|
"import org.springframework.stereotype.Service",
|
|
"import reactor.core.publisher.Mono",
|
|
"import reactor.core.scheduler.Schedulers",
|
|
"import eu.corentic.springrag.common.DomainException",
|
|
"import eu.corentic.springrag.common.Outcome",
|
|
"import eu.corentic.springrag.security.model.User",
|
|
"import io.jsonwebtoken.ExpiredJwtException",
|
|
"import io.jsonwebtoken.Jwts",
|
|
"import io.jsonwebtoken.MalformedJwtException",
|
|
"import io.jsonwebtoken.UnsupportedJwtException",
|
|
"import io.jsonwebtoken.security.Keys",
|
|
"import io.jsonwebtoken.security.SecurityException",
|
|
"import java.nio.charset.StandardCharsets",
|
|
"import java.util.*",
|
|
"import javax.crypto.SecretKey",
|
|
"import eu.corentic.springrag.security.config.JwtProperties",
|
|
"import org.springframework.security.core.GrantedAuthority",
|
|
"import org.springframework.security.core.authority.SimpleGrantedAuthority",
|
|
"import java.util.UUID",
|
|
"import org.springframework.data.relational.core.mapping.event.BeforeConvertCallback",
|
|
"import org.springframework.stereotype.Component",
|
|
"import eu.corentic.springrag.security.model.Role",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import org.springframework.security.crypto.password.PasswordEncoder",
|
|
"import org.springframework.transaction.annotation.Transactional"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/security/src/test/kotlin/eu/corentic/springrag/security/config",
|
|
"method_count": 6,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"http\"?+ \"passwordEncoder\"?+ \"ReactiveAuthenticationManager\"? \"assertTrue\"? \"empty\"?+ \"BCryptPasswordEncoder\"? (\"ROLE_ADMIN\" | \"any\" | \"every\" | \"findByUsername\" | \"mockk\" | \"registerUser\" | \"run\" | \"seedUsers\" | \"verify\")?+ \"parseToken\"?+ \"ROLE_USER\"? \"JwtService\"? \"Err\"?+ \"Ok\"?+ \"JwtAuthenticationFilter\"? \"Malformed\"?+ \"ParsedJwt\"?+ \"springSecurityFilterChain\"?+ (\"AUTHORIZATION\" | \"AtomicReference\" | \"Authentication\" | \"SimpleGrantedAuthority\" | \"WebFilterChain\" | \"assertEquals\" | \"assertNull\" | \"authentication\" | \"block\" | \"build\" | \"doOnNext\" | \"filter\" | \"from\" | \"get\" | \"getContext\" | \"header\" | \"listOf\" | \"name\" | \"requireNotNull\" | \"set\" | \"then\")?+ \"assertNotNull\"? \"authorities\"? \"toList\"?+",
|
|
"mdl_score": 0,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.Outcome",
|
|
"import eu.corentic.springrag.security.service.JwtService",
|
|
"import eu.corentic.springrag.security.service.JwtValidationError",
|
|
"import io.mockk.every",
|
|
"import io.mockk.mockk",
|
|
"import java.util.concurrent.atomic.AtomicReference",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertNull",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.springframework.http.HttpHeaders",
|
|
"import org.springframework.mock.http.server.reactive.MockServerHttpRequest",
|
|
"import org.springframework.mock.web.server.MockServerWebExchange",
|
|
"import org.springframework.security.core.Authentication",
|
|
"import org.springframework.security.core.authority.SimpleGrantedAuthority",
|
|
"import org.springframework.security.core.context.ReactiveSecurityContextHolder",
|
|
"import org.springframework.web.server.WebFilterChain",
|
|
"import org.junit.jupiter.api.Assertions.assertNotNull",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.springframework.mock.env.MockEnvironment",
|
|
"import org.springframework.security.authentication.ReactiveAuthenticationManager",
|
|
"import org.springframework.security.config.web.server.ServerHttpSecurity",
|
|
"import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder",
|
|
"import reactor.core.publisher.Mono",
|
|
"import eu.corentic.springrag.security.model.Role",
|
|
"import eu.corentic.springrag.security.service.UserService",
|
|
"import io.mockk.just",
|
|
"import io.mockk.runs",
|
|
"import io.mockk.verify"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "modules/security/src/test/kotlin/eu/corentic/springrag/security/service",
|
|
"method_count": 15,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"JwtService\"? \"every\"? \"JwtProperties\"? \"existsByUsername\"?+ \"any\"? \"assertThrows\"? \"PasswordPolicyViolationException\"? \"java\"? \"registerUser\"?+ \"assertEquals\"? \"errorCode\"?",
|
|
"mdl_score": 481,
|
|
"imports": [
|
|
"import eu.corentic.springrag.common.Outcome",
|
|
"import eu.corentic.springrag.security.model.Role",
|
|
"import eu.corentic.springrag.security.model.User",
|
|
"import eu.corentic.springrag.security.config.JwtProperties",
|
|
"import io.jsonwebtoken.Jwts",
|
|
"import io.jsonwebtoken.security.Keys",
|
|
"import java.nio.charset.StandardCharsets",
|
|
"import java.util.UUID",
|
|
"import java.util.Date",
|
|
"import org.junit.jupiter.api.Assertions.assertEquals",
|
|
"import org.junit.jupiter.api.Assertions.assertFalse",
|
|
"import org.junit.jupiter.api.Assertions.assertTrue",
|
|
"import org.junit.jupiter.api.Test",
|
|
"import eu.corentic.springrag.security.repository.UserRepository",
|
|
"import io.mockk.MockKAnnotations",
|
|
"import io.mockk.every",
|
|
"import io.mockk.impl.annotations.MockK",
|
|
"import io.mockk.verify",
|
|
"import org.junit.jupiter.api.Assertions.assertThrows",
|
|
"import org.junit.jupiter.api.BeforeEach",
|
|
"import org.springframework.security.crypto.password.PasswordEncoder"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "platform/test-support/src/main/kotlin/eu/corentic/springrag/testcontainers",
|
|
"method_count": 13,
|
|
"imports": [
|
|
"import com.github.dockerjava.api.model.DeviceRequest",
|
|
"import org.testcontainers.DockerClientFactory",
|
|
"import org.testcontainers.containers.GenericContainer",
|
|
"import io.github.oshai.kotlinlogging.KotlinLogging",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import io.qdrant.client.grpc.Collections.Distance",
|
|
"import io.qdrant.client.grpc.Collections.VectorParams",
|
|
"import java.util.concurrent.ExecutionException",
|
|
"import eu.corentic.springrag.testcontainers.GpuSupport.withGpuIfAvailable",
|
|
"import java.io.File",
|
|
"import java.time.Duration",
|
|
"import org.testcontainers.containers.BindMode",
|
|
"import org.testcontainers.containers.Neo4jContainer",
|
|
"import org.testcontainers.containers.PostgreSQLContainer",
|
|
"import org.testcontainers.containers.wait.strategy.Wait",
|
|
"import org.testcontainers.junit.jupiter.Container"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "platform/test-support/src/test/kotlin/eu/corentic/springrag/testcontainers",
|
|
"method_count": 5,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= \"@\"? \"Suppress\"?+ (\"ArgumentMatchers\" | \"CollectionConfig\" | \"CollectionInfo\" | \"CollectionOperationResponse\" | \"CollectionParams\" | \"Collections\" | \"Cosine\" | \"Distance\" | \"ExecResult\" | \"GenericContainer\" | \"IllegalStateException\" | \"InterruptedException\" | \"ListenableFuture\" | \"Mockito\" | \"RuntimeException\" | \"VectorParams\" | \"VectorsConfig\" | \"`when`\" | \"any\" | \"anyString\" | \"apply\" | \"assertEquals\" | \"assertThrows\" | \"assertTrue\" | \"build\" | \"collectionPointCount\" | \"createCollectionAsync\" | \"currentThread\" | \"deleteCollectionAsync\" | \"eq\" | \"execInContainer\" | \"get\" | \"getCollectionInfoAsync\" | \"getDefaultInstance\" | \"immediateFailedFuture\" | \"immediateFuture\" | \"interrupted\" | \"isInterrupted\" | \"java\" | \"mock\" | \"mockito\" | \"newBuilder\" | \"pullAndWarmup\" | \"recreateTestCollection\" | \"setConfig\" | \"setDistance\" | \"setParams\" | \"setSize\" | \"setVectorsConfig\" | \"thenReturn\" | \"thenThrow\" | \"times\" | \"verify\" | \"with\")?+ \"message\"? \"contains\"?+",
|
|
"mdl_score": 473418,
|
|
"imports": [
|
|
"import org.junit.jupiter.api.Test",
|
|
"import org.mockito.Mockito.mock",
|
|
"import org.mockito.Mockito.times",
|
|
"import org.mockito.Mockito.verify",
|
|
"import org.testcontainers.containers.Container",
|
|
"import org.testcontainers.containers.GenericContainer",
|
|
"import com.google.common.util.concurrent.Futures",
|
|
"import com.google.common.util.concurrent.ListenableFuture",
|
|
"import io.qdrant.client.QdrantClient",
|
|
"import io.qdrant.client.grpc.Collections",
|
|
"import org.junit.jupiter.api.assertThrows",
|
|
"import org.mockito.ArgumentMatchers.any",
|
|
"import org.mockito.Mockito.`when`",
|
|
"import kotlin.test.assertEquals",
|
|
"import kotlin.test.assertTrue"
|
|
],
|
|
"arg_patterns": {}
|
|
},
|
|
{
|
|
"label": "(other)",
|
|
"method_count": 6,
|
|
"imports": [],
|
|
"arg_patterns": {}
|
|
}
|
|
],
|
|
"total_methods": 1609
|
|
},
|
|
{
|
|
"language": ".js",
|
|
"conventions": [
|
|
{
|
|
"label": "compose/patches",
|
|
"method_count": 17,
|
|
"imports": [],
|
|
"arg_patterns": {
|
|
"require": {
|
|
"occurrences": 24,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 24,
|
|
"args": 1,
|
|
"types": [
|
|
"lit"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"getFiles": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 3,
|
|
"max": 3,
|
|
"common": 3
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 3,
|
|
"types": [
|
|
"other",
|
|
"lit",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"tool": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 2,
|
|
"types": [
|
|
"other",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Set": {
|
|
"occurrences": 3,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 3,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"generateShortLivedToken": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"filterFilesByAgentAccess": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"new": {
|
|
"occurrences": 3,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 1,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
},
|
|
{
|
|
"count": 1,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Map": {
|
|
"occurrences": 3,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 3,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
},
|
|
"clearTimeout": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"setTimeout": {
|
|
"occurrences": 4,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 4,
|
|
"args": 2,
|
|
"types": [
|
|
"other",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"EmbeddingPollerImpl": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "testing/steps",
|
|
"method_count": 68,
|
|
"imports": [
|
|
"import { Given, When, Then } from '@cucumber/cucumber';",
|
|
"import { expect } from '@playwright/test';",
|
|
"import { BeforeAll, AfterAll, Before, After, setDefaultTimeout } from '@cucumber/cucumber';"
|
|
],
|
|
"arg_patterns": {
|
|
"fetch": {
|
|
"occurrences": 6,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 6,
|
|
"args": 1,
|
|
"types": [
|
|
"lit"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"expect": {
|
|
"occurrences": 40,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 16,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
},
|
|
{
|
|
"count": 14,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
},
|
|
{
|
|
"count": 10,
|
|
"args": 1,
|
|
"types": [
|
|
"call"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Then": {
|
|
"occurrences": 40,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 40,
|
|
"args": 2,
|
|
"types": [
|
|
"lit",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Given": {
|
|
"occurrences": 24,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 24,
|
|
"args": 2,
|
|
"types": [
|
|
"lit",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"When": {
|
|
"occurrences": 54,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 54,
|
|
"args": 2,
|
|
"types": [
|
|
"lit",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"setDefaultTimeout": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"lit"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Before": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"After": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"createAgent": {
|
|
"occurrences": 4,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 4,
|
|
"args": 2,
|
|
"types": [
|
|
"lit",
|
|
"lit"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "testing/support",
|
|
"method_count": 3,
|
|
"algorithm": "CRX",
|
|
"grammar": "root ::= (\"await\" | \"catch\" | \"chromium\" | \"close\" | \"launch\" | \"newContext\" | \"process\")?+ \"return\"? \"newPage\"? \"Date\"?+ \"now\"? \"toString\"?",
|
|
"mdl_score": 7112,
|
|
"imports": [
|
|
"import { chromium } from '@playwright/test';",
|
|
"import { setWorldConstructor } from '@cucumber/cucumber';"
|
|
],
|
|
"arg_patterns": {
|
|
"setWorldConstructor": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "(other)",
|
|
"method_count": 1,
|
|
"imports": [],
|
|
"arg_patterns": {}
|
|
}
|
|
],
|
|
"total_methods": 89
|
|
},
|
|
{
|
|
"language": ".java",
|
|
"conventions": [],
|
|
"total_methods": 0
|
|
},
|
|
{
|
|
"language": ".go",
|
|
"conventions": [
|
|
{
|
|
"label": "tools/setup-ui",
|
|
"method_count": 44,
|
|
"imports": [
|
|
"import ("
|
|
],
|
|
"arg_patterns": {
|
|
"initialModel": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
},
|
|
"runStart": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
},
|
|
"buildSteps": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
},
|
|
"errorStyle": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"summarizeConfig": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"expr"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"len": {
|
|
"occurrences": 42,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 30,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
},
|
|
{
|
|
"count": 12,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"accent": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"muted": {
|
|
"occurrences": 8,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 4,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
},
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
},
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"expr"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"banner": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
},
|
|
"sectionTitle": {
|
|
"occurrences": 10,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 10,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"make": {
|
|
"occurrences": 9,
|
|
"arg_count": {
|
|
"min": 3,
|
|
"max": 3,
|
|
"common": 3
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 9,
|
|
"args": 3,
|
|
"types": [
|
|
"other",
|
|
"other",
|
|
"call"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"repoRoot": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
},
|
|
"append": {
|
|
"occurrences": 51,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 24,
|
|
"args": 2,
|
|
"types": [
|
|
"var",
|
|
"call"
|
|
]
|
|
},
|
|
{
|
|
"count": 9,
|
|
"args": 2,
|
|
"types": [
|
|
"var",
|
|
"var"
|
|
]
|
|
},
|
|
{
|
|
"count": 6,
|
|
"args": 2,
|
|
"types": [
|
|
"var",
|
|
"other"
|
|
]
|
|
},
|
|
{
|
|
"count": 6,
|
|
"args": 2,
|
|
"types": [
|
|
"other",
|
|
"other"
|
|
]
|
|
},
|
|
{
|
|
"count": 3,
|
|
"args": 2,
|
|
"types": [
|
|
"other",
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"string": {
|
|
"occurrences": 4,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 4,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"writeEnvFile": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"float64": {
|
|
"occurrences": 4,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"call"
|
|
]
|
|
},
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"expr"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"sortedKeys": {
|
|
"occurrences": 4,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 4,
|
|
"args": 1,
|
|
"types": [
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"isSensitiveKey": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"writeExport": {
|
|
"occurrences": 8,
|
|
"arg_count": {
|
|
"min": 3,
|
|
"max": 3,
|
|
"common": 3
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 4,
|
|
"args": 3,
|
|
"types": [
|
|
"var",
|
|
"other",
|
|
"call"
|
|
]
|
|
},
|
|
{
|
|
"count": 2,
|
|
"args": 3,
|
|
"types": [
|
|
"var",
|
|
"other",
|
|
"other"
|
|
]
|
|
},
|
|
{
|
|
"count": 2,
|
|
"args": 3,
|
|
"types": [
|
|
"var",
|
|
"var",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"removeString": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 2,
|
|
"max": 2,
|
|
"common": 2
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 2,
|
|
"types": [
|
|
"other",
|
|
"other"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"shellEscape": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 1,
|
|
"max": 1,
|
|
"common": 1
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 1,
|
|
"types": [
|
|
"var"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"newConfig": {
|
|
"occurrences": 2,
|
|
"arg_count": {
|
|
"min": 0,
|
|
"max": 0,
|
|
"common": 0
|
|
},
|
|
"patterns": [
|
|
{
|
|
"count": 2,
|
|
"args": 0,
|
|
"types": []
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"total_methods": 44
|
|
}
|
|
]
|