d74af621d8
ci / JVM build + tests (push) Successful in 6m13s
- Remove legacy pw.binom.agentik.messageStore.events.EventStore (EventRecord,
EventType) and all three impls (in-memory, sqlite, ksqlite) + tests + .sq
- Drop :storage-bundle module entirely; ChatAgent / ChatConversation /
ConversationLoop / DebugRoutes now take stores individually
(conversationStore, messageStore, workingMemoryStore, reflectionStore,
eventStore) instead of StorageBundle
- Delete server endpoints /events/replay and /conversations/{id}/events/replay;
Route.agentikAgent no longer takes eventStore param
- Add :client/HttpEventStore implementing :event-store/EventStore over HTTP:
events() -> GET /events/all, agentEvents() -> GET /events,
conversationEvents(convId) -> GET /conversations/{id}/events;
exposed via AgentClient.eventStore
- :event-store: add macosX64/macosArm64/linuxArm64 targets to match :client KMP
- :working-memory-api: drop api dep on :message-store-api (no longer needed)
- :storage-{inmemory,sqlite,ksqlite}: drop deps on :storage-bundle
47 lines
1.5 KiB
Kotlin
47 lines
1.5 KiB
Kotlin
plugins {
|
|
alias(libs.plugins.kotlin.multiplatform)
|
|
alias(libs.plugins.kotlin.serialization)
|
|
alias(libs.plugins.sqldelight)
|
|
}
|
|
|
|
kotlin {
|
|
jvmToolchain(21)
|
|
|
|
// JVM-only: SQLDelight сейчас не имеет KMP-таргетов за пределами JVM/Android.
|
|
// Если в будущем понадобится Native (iOS/macOS), придётся либо подключать
|
|
// platform-native SQLDelight driver (https://github.com/cashapp/sqldelight
|
|
// multiplatform module), либо использовать :storage-inmemory там.
|
|
jvm()
|
|
|
|
sourceSets {
|
|
commonMain.dependencies {
|
|
api(project(":message-store-api"))
|
|
api(project(":message-log-api"))
|
|
api(project(":working-memory-api"))
|
|
api(libs.sqldelight.runtime)
|
|
api(libs.sqldelight.coroutines)
|
|
}
|
|
jvmMain.dependencies {
|
|
implementation(libs.sqldelight.sqlite.driver)
|
|
implementation(libs.kotlin.logging)
|
|
}
|
|
commonTest.dependencies {
|
|
implementation(kotlin("test"))
|
|
implementation(libs.kotlinx.coroutines.test)
|
|
}
|
|
jvmTest.dependencies {
|
|
// SQLDelight JDBC driver — для тестов, которые поднимают in-memory DB
|
|
implementation(libs.sqldelight.sqlite.driver)
|
|
}
|
|
}
|
|
}
|
|
|
|
sqldelight {
|
|
databases {
|
|
create("AgentikDatabase") {
|
|
packageName.set("pw.binom.agentik.storage.sqlite")
|
|
srcDirs.setFrom("src/jvmMain/sqldelight")
|
|
}
|
|
}
|
|
}
|