plugins {
    id 'java-library'
    id 'org.jetbrains.kotlin.jvm'
    id 'org.jetbrains.kotlin.plugin.serialization'
}

dependencies {
    implementation project(":core:tools")
    implementation project(":core:events")
    implementation project(":core:router")
    implementation project(":core:inference")
    implementation project(":core:approvals")
    implementation project(":core:sessions")
    implementation project(":core:config")
    implementation project(":infrastructure:inference")
    implementation project(":infrastructure:inference:commons")
    implementation project(":infrastructure:inference:llama_cpp")
    implementation project(":infrastructure:persistence")
    implementation project(":infrastructure:router:turbovec")
    implementation project(":infrastructure:tools")
    implementation project(":infrastructure:tools:filesystem")
    implementation project(":infrastructure:workflow")
    implementation project(":core:artifacts")
    implementation project(":core:artifacts-store")
    implementation(project(":core:journal"))
    implementation project(":infrastructure:artifacts-cas")
    implementation "io.ktor:ktor-client-core:$ktor_version"
    implementation "io.ktor:ktor-client-cio:$ktor_version"
    implementation "io.ktor:ktor-client-content-negotiation:$ktor_version"
    implementation "io.ktor:ktor-serialization-kotlinx-json:$ktor_version"
    implementation "org.slf4j:slf4j-api:2.0.16"
    testImplementation "io.ktor:ktor-client-mock:$ktor_version"
    testImplementation "org.jetbrains.kotlin:kotlin-test"
}

tasks.named("koverVerify").configure { enabled = false }
