Address PR review: rename package to pw.binom.agui, add native KMP targets, fix native event serialization
- Rename module package com.agui -> pw.binom.agui (dirs + code + root group) - Expand KMP targets on all modules: jvm + macOS/ios/Linux/mingw (no Android) - Server native via ktor-server-cio; client native via ktor-client-cio - Annotate sealed interface BaseEvent with @Serializable so the sealed serializer resolves without reflection on Kotlin/Native (was reflection-only on JVM, so native tests failed with 'Serializer for class BaseEvent not found')
This commit is contained in:
@@ -6,6 +6,14 @@ plugins {
|
||||
kotlin {
|
||||
jvmToolchain(21)
|
||||
jvm()
|
||||
macosX64()
|
||||
macosArm64()
|
||||
iosX64()
|
||||
iosArm64()
|
||||
iosSimulatorArm64()
|
||||
linuxX64()
|
||||
linuxArm64()
|
||||
mingwX64()
|
||||
|
||||
sourceSets {
|
||||
commonMain.dependencies {
|
||||
@@ -17,6 +25,9 @@ kotlin {
|
||||
jvmMain.dependencies {
|
||||
implementation(libs.ktor.client.cio)
|
||||
}
|
||||
nativeMain.dependencies {
|
||||
implementation(libs.ktor.client.cio)
|
||||
}
|
||||
commonTest.dependencies {
|
||||
implementation(kotlin("test"))
|
||||
}
|
||||
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package com.agui.client
|
||||
package pw.binom.agui.client
|
||||
|
||||
import com.agui.api.agent.Agent
|
||||
import com.agui.api.event.BaseEvent
|
||||
import com.agui.api.run.RunAgentInput
|
||||
import com.agui.api.serialization.AguiJson
|
||||
import pw.binom.agui.api.agent.Agent
|
||||
import pw.binom.agui.api.event.BaseEvent
|
||||
import pw.binom.agui.api.run.RunAgentInput
|
||||
import pw.binom.agui.api.serialization.AguiJson
|
||||
import io.ktor.client.HttpClient
|
||||
import io.ktor.client.plugins.sse.sse
|
||||
import io.ktor.client.request.setBody
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.agui.client
|
||||
package pw.binom.agui.client
|
||||
|
||||
import io.ktor.client.HttpClient
|
||||
import io.ktor.client.HttpClientConfig
|
||||
+12
-12
@@ -1,15 +1,15 @@
|
||||
package com.agui.client
|
||||
package pw.binom.agui.client
|
||||
|
||||
import com.agui.api.agent.Agent
|
||||
import com.agui.api.event.RunFinishedEvent
|
||||
import com.agui.api.event.RunStartedEvent
|
||||
import com.agui.api.event.TextMessageContentEvent
|
||||
import com.agui.api.event.TextMessageEndEvent
|
||||
import com.agui.api.event.TextMessageStartEvent
|
||||
import com.agui.api.message.Message
|
||||
import com.agui.api.message.MessageRole
|
||||
import com.agui.api.run.RunAgentInput
|
||||
import com.agui.server.agui
|
||||
import pw.binom.agui.api.agent.Agent
|
||||
import pw.binom.agui.api.event.RunFinishedEvent
|
||||
import pw.binom.agui.api.event.RunStartedEvent
|
||||
import pw.binom.agui.api.event.TextMessageContentEvent
|
||||
import pw.binom.agui.api.event.TextMessageEndEvent
|
||||
import pw.binom.agui.api.event.TextMessageStartEvent
|
||||
import pw.binom.agui.api.message.Message
|
||||
import pw.binom.agui.api.message.MessageRole
|
||||
import pw.binom.agui.api.run.RunAgentInput
|
||||
import pw.binom.agui.server.agui
|
||||
import io.ktor.client.plugins.sse.SSE
|
||||
import io.ktor.server.application.application
|
||||
import io.ktor.server.testing.testApplication
|
||||
@@ -21,7 +21,7 @@ import kotlin.test.assertEquals
|
||||
import kotlin.test.assertIs
|
||||
|
||||
/**
|
||||
* Exercises [HttpAgent] against the real AG-UI endpoint exposed by [com.agui.server.agui],
|
||||
* Exercises [HttpAgent] against the real AG-UI endpoint exposed by [pw.binom.agui.server.agui],
|
||||
* using the Ktor test host so the SSE transport is exercised end-to-end over HTTP.
|
||||
*/
|
||||
class HttpAgentTest {
|
||||
Reference in New Issue
Block a user