f191387e99
release / Publish KMP libraries → caffeine Nexus (release) Successful in 1m18s
ksqlite 0.1.3 опубликован в Maven Central — POM/module-metadata/jar все
на месте. Поднят в шести модулях (vector-index-ksqlite, journal-ksqlite,
context-ksqlite, reflection-ksqlite, standalone, memory-md-vector);
комментарии про 0.1.2 в build.gradle.kts обновлены.
Расширение :journal-api: добавлены два count-метода (total + count after
cursor) в интерфейс JournalStore — реализованы в :journal-ksqlite /
:journal-inmemory. Над ними добавлены HTTP-endpoint'ы
GET /journal/conversations/{id}/count
GET /journal/conversations/{id}/count?after=
(объединены в один маршрут с опциональным параметром) и HTTP-клиент
HttpJournalStore.count/concount. Сервер-фасад расширен тестом
JournalRoutesCountTest (5 кейсов через embedded CIO + реальный
InMemoryJournalStore).
:server:jvmTest 10/0, :standalone:jvmTest 129/0, :journal-ksqlite:jvmTest 25/0,
:journal-inmemory:jvmTest 19/0. jvmTest агрегат 425/0/0.
44 lines
1.8 KiB
Kotlin
44 lines
1.8 KiB
Kotlin
plugins {
|
|
alias(libs.plugins.kotlin.multiplatform)
|
|
alias(libs.plugins.kotlin.serialization)
|
|
}
|
|
|
|
// KMP-реализация :context-api (ContextStore) поверх ksqlite.
|
|
// Минимальная — только таблица `working_memory` + 2 индекса по ней.
|
|
// Остальные таблицы (`conversation`, `message`, `reflection`) живут в
|
|
// других ksqlite-модулях; этот модуль не претендует на полную схему
|
|
// агента.
|
|
//
|
|
// Цели сборки — jvm() + linuxX64() + mingwX64(); Apple targets auto-disabled
|
|
// на Linux (ksqlite не публикует macOS / iOS native артефакты на Maven Central).
|
|
|
|
kotlin {
|
|
jvmToolchain(21)
|
|
|
|
jvm()
|
|
linuxX64()
|
|
mingwX64()
|
|
|
|
sourceSets {
|
|
commonMain.dependencies {
|
|
// ksqlite 0.1.3 опубликован в Maven Central — обычный
|
|
// `mavenCentral()` в settings.gradle.kts его подтянет.
|
|
implementation("pw.binom.db:ksqlite:0.1.3")
|
|
implementation(libs.kotlinx.serialization.json)
|
|
|
|
api(project(":context-api"))
|
|
api(project(":journal-api"))
|
|
api(project(":reflection-api"))
|
|
// :context-api ссылается на Content / MessageContext из
|
|
// :message-log-api (старый canonical). Транзитивно через api,
|
|
// но фиксируем явно чтобы тестовый код видел Content без
|
|
// обхода через :context-api.
|
|
// api(project(":message-log-api"))
|
|
}
|
|
commonTest.dependencies {
|
|
implementation(kotlin("test"))
|
|
implementation(libs.kotlinx.coroutines.test)
|
|
}
|
|
}
|
|
}
|