chore(deps): refactor ksqlite dependency to use version catalog
This commit is contained in:
@@ -44,7 +44,7 @@ kotlin {
|
||||
implementation(libs.ktor.server.sse)
|
||||
}
|
||||
jvmTest.dependencies {
|
||||
implementation("junit:junit:4.13.2")
|
||||
implementation(libs.junit)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,9 +21,9 @@ kotlin {
|
||||
|
||||
sourceSets {
|
||||
commonMain.dependencies {
|
||||
// ksqlite 0.1.3 опубликован в Maven Central — обычный
|
||||
// ksqlite живёт в libs.versions.toml (см. catalog) — обычный
|
||||
// `mavenCentral()` в settings.gradle.kts его подтянет.
|
||||
implementation("pw.binom.db:ksqlite:0.1.3")
|
||||
implementation(libs.ksqlite)
|
||||
implementation(libs.kotlinx.serialization.json)
|
||||
|
||||
api(project(":context-api"))
|
||||
|
||||
@@ -16,6 +16,8 @@ logback = "1.5.18"
|
||||
mosaic = "0.18.0"
|
||||
clikt = "5.0.3"
|
||||
kotlinx-cli = "0.3.6"
|
||||
ksqlite = "0.1.3"
|
||||
junit = "4.13.2"
|
||||
|
||||
[plugins]
|
||||
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
|
||||
@@ -96,6 +98,14 @@ kotlinx-io-core = { module = "org.jetbrains.kotlinx:kotlinx-io-core", version.re
|
||||
# --- kMMIO (dev.karmakrafts.kmmio) — резерв под будущую vector-DB, пока не используется ---
|
||||
# kmmio-core = { module = "dev.karmakrafts.kmmio:kmmio-core", version = "2.3.1" }
|
||||
|
||||
# --- ksqlite (pw.binom.db) — KMP SQLite со встроенным sqlite-vec (https://github.com/caffeine-mgn/ksqlite).
|
||||
# Тянется как обычная `implementation(libs.ksqlite)` — Gradle Module Metadata резолвит per-target
|
||||
# variant (ksqlite-jvm / ksqlite-linuxx64 / ksqlite-mingwx64 / ...).
|
||||
ksqlite = { module = "pw.binom.db:ksqlite", version.ref = "ksqlite" }
|
||||
|
||||
# --- JUnit 4 — legacy test framework (используется в :client для совместимости с ktor-server-test-host). ---
|
||||
junit = { module = "junit:junit", version.ref = "junit" }
|
||||
|
||||
# --- JVector (io.github.jbellis) — embedded ANN-индекс для vector-бэкенда памяти. JVM-only. ---
|
||||
jvector = { module = "io.github.jbellis:jvector", version.ref = "jvector" }
|
||||
|
||||
|
||||
@@ -20,9 +20,9 @@ kotlin {
|
||||
|
||||
sourceSets {
|
||||
commonMain.dependencies {
|
||||
// ksqlite 0.1.3 опубликован в Maven Central — обычный
|
||||
// ksqlite живёт в libs.versions.toml (см. catalog) — обычный
|
||||
// `mavenCentral()` в settings.gradle.kts его подтянет.
|
||||
implementation("pw.binom.db:ksqlite:0.1.3")
|
||||
implementation(libs.ksqlite)
|
||||
implementation(libs.kotlinx.serialization.json)
|
||||
|
||||
api(project(":journal-api"))
|
||||
|
||||
@@ -30,9 +30,9 @@ kotlin {
|
||||
|
||||
sourceSets {
|
||||
commonMain.dependencies {
|
||||
// ksqlite 0.1.3 опубликован в Maven Central — обычный
|
||||
// ksqlite живёт в libs.versions.toml (см. catalog) — обычный
|
||||
// `mavenCentral()` в settings.gradle.kts его подтянет.
|
||||
implementation("pw.binom.db:ksqlite:0.1.3")
|
||||
implementation(libs.ksqlite)
|
||||
implementation(libs.kotlinx.coroutines.core)
|
||||
implementation(libs.kotlinx.io.core)
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ plugins {
|
||||
// других ksqlite-модулях; этот модуль не претендует на полную схему агента.
|
||||
//
|
||||
// Цели сборки — jvm() + linuxX64() + mingwX64(); Apple targets auto-disabled
|
||||
// на Linux (ksqlite 0.1.3 не публикует native артефакты для Apple).
|
||||
// на Linux (ksqlite не публикует native артефакты для Apple).
|
||||
|
||||
kotlin {
|
||||
jvmToolchain(21)
|
||||
@@ -20,9 +20,9 @@ kotlin {
|
||||
|
||||
sourceSets {
|
||||
commonMain.dependencies {
|
||||
// ksqlite 0.1.3 опубликован в Maven Central — обычный
|
||||
// ksqlite живёт в libs.versions.toml (см. catalog) — обычный
|
||||
// `mavenCentral()` в settings.gradle.kts его подтянет.
|
||||
implementation("pw.binom.db:ksqlite:0.1.3")
|
||||
implementation(libs.ksqlite)
|
||||
|
||||
api(project(":reflection-api"))
|
||||
// :reflection-api ссылается на :journal-api типы в сигнатурах
|
||||
|
||||
@@ -70,7 +70,7 @@ kotlin {
|
||||
// ksqlite объявлен как `implementation` (не `api`) в каждом
|
||||
// ksqlite-модуле, поэтому SqliteStores здесь использует
|
||||
// SQLiteConnection напрямую — фиксируем зависимость явно.
|
||||
implementation("pw.binom.db:ksqlite:0.1.3")
|
||||
implementation(libs.ksqlite)
|
||||
|
||||
// Bounded-tail live event stream + per-event TTL.
|
||||
implementation(project(":outbox-inmemory"))
|
||||
|
||||
@@ -33,6 +33,7 @@ import pw.binom.agentik.mcp.bridge.McpRegistry
|
||||
import pw.binom.agentik.standalone.persistence.SqliteStores
|
||||
import java.io.File
|
||||
import pw.binom.agentik.skill.mining.SkillMiner
|
||||
|
||||
/**
|
||||
* standalone-контейнер agentik:
|
||||
* - :server (proto): встраиваемый Ktor (CIO), порт AGENTIK_PORT (default 8080)
|
||||
@@ -67,10 +68,12 @@ fun main(args: Array<String>) {
|
||||
runPullModel(args.drop(1))
|
||||
return
|
||||
}
|
||||
|
||||
"--help", "-h", "help" -> {
|
||||
printHelp()
|
||||
return
|
||||
}
|
||||
|
||||
else -> {
|
||||
System.err.println("Unknown subcommand: ${args[0]}")
|
||||
printHelp()
|
||||
@@ -82,11 +85,13 @@ fun main(args: Array<String>) {
|
||||
}
|
||||
|
||||
private fun printHelp() {
|
||||
println("""
|
||||
println(
|
||||
"""
|
||||
agentik standalone — usage:
|
||||
java -jar agentik.jar Start HTTP server (A2A + :proto)
|
||||
java -jar agentik.jar pull-model Download the LiteRT-LM model from static.binom.pw
|
||||
""".trimIndent())
|
||||
""".trimIndent()
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -245,6 +250,7 @@ private fun runServer() {
|
||||
println(" memory: disabled")
|
||||
null
|
||||
}
|
||||
|
||||
MemoryBackend.MD -> {
|
||||
if (rawMemory.equals("off", ignoreCase = true)) {
|
||||
println(" memory: disabled (memoryDir=off)")
|
||||
@@ -256,6 +262,7 @@ private fun runServer() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MemoryBackend.VECTOR -> {
|
||||
val embedding: pw.binom.agentik.memory.TextEmbeddingExecutor = when (config.embedding.backend) {
|
||||
AppConfig.EmbeddingBackend.HTTP -> {
|
||||
@@ -274,6 +281,7 @@ private fun runServer() {
|
||||
dimension = config.embedding.dimension,
|
||||
).asExecutor()
|
||||
}
|
||||
|
||||
AppConfig.EmbeddingBackend.SIGLIP -> {
|
||||
val modelPath = checkNotNull(config.embedding.modelPath) {
|
||||
"AGENTIK_EMBEDDING_BACKEND=siglip требует AGENTIK_EMBEDDING_MODEL_PATH"
|
||||
@@ -291,12 +299,14 @@ private fun runServer() {
|
||||
val backendLabel = when (config.embedding.backend) {
|
||||
AppConfig.EmbeddingBackend.HTTP ->
|
||||
"model=${config.embedding.model}, dim=${config.embedding.dimension}"
|
||||
|
||||
AppConfig.EmbeddingBackend.SIGLIP ->
|
||||
"model=siglip2-base (on-device), dim=${embedding.dimension}"
|
||||
}
|
||||
println(" memory: db=${config.agent.dbPath} (vector-backend, $backendLabel)")
|
||||
}
|
||||
}
|
||||
|
||||
MemoryBackend.HYBRID -> {
|
||||
// Гибрид: .md файлы (single source of truth) + ksqlite vector-кэш.
|
||||
// Нужны embeddings (HTTP/SIGLIP) + путь к vector-БД (по умолчанию рядом с agentik.db).
|
||||
@@ -314,6 +324,7 @@ private fun runServer() {
|
||||
dimension = config.embedding.dimension,
|
||||
).asExecutor()
|
||||
}
|
||||
|
||||
AppConfig.EmbeddingBackend.SIGLIP -> {
|
||||
val modelPath = checkNotNull(config.embedding.modelPath) {
|
||||
"AGENTIK_EMBEDDING_BACKEND=siglip требует AGENTIK_EMBEDDING_MODEL_PATH"
|
||||
|
||||
@@ -7,9 +7,10 @@ plugins {
|
||||
// обычная SQLite БД. Подходит для small-to-medium масштабов (≤10K записей на
|
||||
// embedding ~512d); для больших датасетов — sqlite-vec или JVector.
|
||||
//
|
||||
// Цели сборки — только те, для которых ksqlite 0.1.3 опубликован в Maven Central:
|
||||
// jvm + linuxX64/Arm64 + mingwX64. Apple/iOS/tvOS/watchOS — НЕ публикуются;
|
||||
// для них использовать JVM-only `:vector-index-jvector`.
|
||||
// Цели сборки — только те, для которых ksqlite опубликован в Maven Central
|
||||
// (см. libs.versions.toml): jvm + linuxX64/Arm64 + mingwX64.
|
||||
// Apple/iOS/tvOS/watchOS — НЕ публикуются; для них использовать
|
||||
// JVM-only `:vector-index-jvector`.
|
||||
|
||||
kotlin {
|
||||
jvmToolchain(21)
|
||||
@@ -20,8 +21,8 @@ kotlin {
|
||||
|
||||
sourceSets {
|
||||
commonMain.dependencies {
|
||||
// ksqlite 0.1.3 опубликован в Maven Central.
|
||||
implementation("pw.binom.db:ksqlite:0.1.3")
|
||||
// ksqlite живёт в libs.versions.toml (см. catalog).
|
||||
implementation(libs.ksqlite)
|
||||
api(project(":vector-index-api"))
|
||||
}
|
||||
commonTest.dependencies {
|
||||
|
||||
Reference in New Issue
Block a user