2026-07-21 11:39:53.696 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:39:53.840 [Test worker] INFO io.ktor.server.Application - Application started in 0.306 seconds. 2026-07-21 11:39:53.911 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41665 2026-07-21 11:39:54.805 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41665/resources/index.json 2026-07-21 11:39:54.805 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41665/resources/index.json. 2026-07-21 11:39:54.805 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41665/resources/index.json 2026-07-21 11:39:55.006 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-07-21 11:39:55.147 [DefaultDispatcher-worker-2 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 153ms 2026-07-21 11:39:55.162 [DefaultDispatcher-worker-4 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41665/resources/index.json 2026-07-21 11:39:55.165 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41665/resources/index.json 2026-07-21 11:39:55.165 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41665/resources/index.json 2026-07-21 11:39:55.194 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:41665/resources/index.json. 2026-07-21 11:39:55.265 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41665/resources/index.json 2026-07-21 11:39:55.265 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41665/resources/index.json. 2026-07-21 11:39:55.265 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41665/resources/index.json 2026-07-21 11:39:55.279 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-07-21 11:39:55.288 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 11ms 2026-07-21 11:39:55.291 [DefaultDispatcher-worker-5 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41665/resources/index.json 2026-07-21 11:39:55.291 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41665/resources/index.json 2026-07-21 11:39:55.291 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41665/resources/index.json 2026-07-21 11:39:57.371 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:39:57.373 [Test worker] INFO io.ktor.server.Application - Application started in 0.002 seconds. 2026-07-21 11:39:57.376 [DefaultDispatcher-worker-5 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41355 2026-07-21 11:39:57.421 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41355/resources/index.json 2026-07-21 11:39:57.422 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41355/resources/index.json. 2026-07-21 11:39:57.422 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41355/resources/index.json 2026-07-21 11:39:57.426 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-07-21 11:39:57.428 [DefaultDispatcher-worker-6 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 2ms 2026-07-21 11:39:57.431 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41355/resources/index.json 2026-07-21 11:39:57.431 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41355/resources/index.json 2026-07-21 11:39:57.431 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41355/resources/index.json 2026-07-21 11:39:57.433 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:41355/resources/index.json. 2026-07-21 11:39:57.441 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41355/resources/index.json 2026-07-21 11:39:57.442 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41355/resources/index.json. 2026-07-21 11:39:57.442 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41355/resources/index.json 2026-07-21 11:39:57.444 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-07-21 11:39:57.444 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-07-21 11:39:57.445 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41355/resources/index.json 2026-07-21 11:39:57.445 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41355/resources/index.json 2026-07-21 11:39:57.445 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41355/resources/index.json 2026-07-21 11:39:59.455 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:39:59.456 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-07-21 11:39:59.457 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41843 2026-07-21 11:39:59.462 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41843/resources/lesson001.json 2026-07-21 11:39:59.463 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41843/resources/lesson001.json. 2026-07-21 11:39:59.463 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41843/resources/lesson001.json 2026-07-21 11:39:59.466 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-07-21 11:39:59.467 [DefaultDispatcher-worker-2 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-07-21 11:39:59.468 [DefaultDispatcher-worker-6 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41843/resources/lesson001.json 2026-07-21 11:39:59.468 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41843/resources/lesson001.json 2026-07-21 11:39:59.468 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41843/resources/lesson001.json 2026-07-21 11:39:59.471 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:41843/resources/lesson001.json. 2026-07-21 11:40:01.744 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:01.753 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.136 seconds. 2026-07-21 11:40:01.756 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34267 2026-07-21 11:40:01.765 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34267/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:01.765 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34267/api/school/respect/schoolpermissiongrant. 2026-07-21 11:40:01.766 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34267/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:01.771 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-07-21 11:40:01.794 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34267/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:01.794 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34267/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:01.794 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34267/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:01.797 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34267/api/school/respect/schoolpermissiongrant. 2026-07-21 11:40:01.884 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.886 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34267/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:01.886 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.888 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:01.919 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.920 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.920 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.922 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34267/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:01.932 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.935 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34267/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:01.935 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.939 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:01.942 [DefaultDispatcher-worker-2 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-07-21 11:40:01.943 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.944 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:01.944 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34267/api/school/respect/person?includeRelated=false 2026-07-21 11:40:04.112 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:04.113 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.063 seconds. 2026-07-21 11:40:04.122 [DefaultDispatcher-worker-2 @coroutine#102] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39843 2026-07-21 11:40:04.124 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39843/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:04.124 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39843/api/school/respect/schoolpermissiongrant. 2026-07-21 11:40:04.124 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39843/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:04.143 [eventLoopGroupProxy-16-1 @call-handler#106] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-07-21 11:40:04.150 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39843/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:04.154 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39843/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:04.154 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39843/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:04.155 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39843/api/school/respect/schoolpermissiongrant. 2026-07-21 11:40:04.238 [DefaultDispatcher-worker-6 @coroutine#112] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39843/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-07-21 11:40:04.239 [DefaultDispatcher-worker-6 @coroutine#112] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39843/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-07-21 11:40:04.239 [DefaultDispatcher-worker-6 @coroutine#112] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39843/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-07-21 11:40:04.243 [eventLoopGroupProxy-16-1 @call-handler#116] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:04.253 [DefaultDispatcher-worker-2 @coroutine#112] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39843/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-07-21 11:40:04.256 [DefaultDispatcher-worker-2 @coroutine#112] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39843/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-07-21 11:40:04.256 [DefaultDispatcher-worker-2 @coroutine#112] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39843/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-07-21 11:40:04.265 [DefaultDispatcher-worker-2 @coroutine#112] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39843/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-07-21 11:40:06.464 [Test worker @coroutine#121] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:06.465 [Test worker @coroutine#121] INFO io.ktor.server.Application - Application started in 0.055 seconds. 2026-07-21 11:40:06.466 [DefaultDispatcher-worker-1 @coroutine#130] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41237 2026-07-21 11:40:06.469 [Test worker @coroutine#121] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41237/api/school/respect/person?includeRelated=false 2026-07-21 11:40:06.469 [Test worker @coroutine#121] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41237/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:06.469 [Test worker @coroutine#121] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41237/api/school/respect/person?includeRelated=false 2026-07-21 11:40:06.472 [eventLoopGroupProxy-19-1 @call-handler#135] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:06.477 [Test worker @coroutine#121] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41237/api/school/respect/person?includeRelated=false 2026-07-21 11:40:06.477 [Test worker @coroutine#121] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41237/api/school/respect/person?includeRelated=false 2026-07-21 11:40:06.477 [Test worker @coroutine#121] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41237/api/school/respect/person?includeRelated=false 2026-07-21 11:40:06.478 [Test worker @coroutine#121] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41237/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:06.533 [Test worker @coroutine#121] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41237/api/school/respect/person?since=2026-07-21T07%3A40%3A06.473401080Z&includeRelated=false 2026-07-21 11:40:06.533 [Test worker @coroutine#121] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41237/api/school/respect/person?since=2026-07-21T07%3A40%3A06.473401080Z&includeRelated=false. 2026-07-21 11:40:06.533 [Test worker @coroutine#121] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41237/api/school/respect/person?since=2026-07-21T07%3A40%3A06.473401080Z&includeRelated=false 2026-07-21 11:40:06.535 [eventLoopGroupProxy-19-1 @call-handler#141] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:06.538 [Test worker @coroutine#121] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41237/api/school/respect/person?since=2026-07-21T07%3A40%3A06.473401080Z&includeRelated=false 2026-07-21 11:40:06.539 [Test worker @coroutine#121] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41237/api/school/respect/person?since=2026-07-21T07%3A40%3A06.473401080Z&includeRelated=false 2026-07-21 11:40:06.539 [Test worker @coroutine#121] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41237/api/school/respect/person?since=2026-07-21T07%3A40%3A06.473401080Z&includeRelated=false 2026-07-21 11:40:06.539 [Test worker @coroutine#121] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41237/api/school/respect/person?since=2026-07-21T07%3A40%3A06.473401080Z&includeRelated=false. 2026-07-21 11:40:08.669 [Test worker @coroutine#147] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:08.669 [Test worker @coroutine#147] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-07-21 11:40:08.671 [DefaultDispatcher-worker-6 @coroutine#156] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45769 2026-07-21 11:40:08.725 [DefaultDispatcher-worker-6 @coroutine#154] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45769/api/school/respect/person 2026-07-21 11:40:08.726 [DefaultDispatcher-worker-6 @coroutine#154] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@56b485e7 for http://localhost:45769/api/school/respect/person 2026-07-21 11:40:08.726 [DefaultDispatcher-worker-6 @coroutine#154] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45769/api/school/respect/person 2026-07-21 11:40:08.726 [DefaultDispatcher-worker-6 @coroutine#154] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45769/api/school/respect/person from class io.ktor.http.content.TextContent 2026-07-21 11:40:08.729 [eventLoopGroupProxy-22-1 @call-handler#166] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-07-21 11:40:08.740 [eventLoopGroupProxy-22-1 @call-handler#166] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlinx.serialization.json.JsonElement) for call /api/school/respect/person 2026-07-21 11:40:08.743 [DefaultDispatcher-worker-6 @call-handler#166] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-07-21 11:40:08.744 [DefaultDispatcher-worker-1 @coroutine#154] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45769/api/school/respect/person 2026-07-21 11:40:08.745 [DefaultDispatcher-worker-1 @coroutine#154] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45769/api/school/respect/person 2026-07-21 11:40:08.745 [DefaultDispatcher-worker-1 @coroutine#154] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45769/api/school/respect/person 2026-07-21 11:40:10.916 [Test worker @coroutine#171] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:10.917 [Test worker @coroutine#171] INFO io.ktor.server.Application - Application started in 0.053 seconds. 2026-07-21 11:40:10.925 [DefaultDispatcher-worker-6 @coroutine#180] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44975 2026-07-21 11:40:10.926 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44975/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:10.927 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44975/api/school/respect/schoolpermissiongrant. 2026-07-21 11:40:10.927 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44975/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:10.937 [eventLoopGroupProxy-25-1 @call-handler#184] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-07-21 11:40:10.944 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44975/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:10.945 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44975/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:10.945 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44975/api/school/respect/schoolpermissiongrant 2026-07-21 11:40:10.945 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44975/api/school/respect/schoolpermissiongrant. 2026-07-21 11:40:11.008 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:11.008 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44975/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:11.008 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:11.012 [eventLoopGroupProxy-25-1 @call-handler#190] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:11.032 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:11.032 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:11.032 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:11.033 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44975/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:13.065 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:13.068 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44975/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:13.069 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:13.079 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:13.091 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:13.092 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:13.092 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44975/api/school/respect/person?includeRelated=false 2026-07-21 11:40:13.094 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44975/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:15.306 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:15.307 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.058 seconds. 2026-07-21 11:40:15.313 [DefaultDispatcher-worker-7 @coroutine#212] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42607 2026-07-21 11:40:15.319 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42607/api/school/respect/person?includeRelated=false 2026-07-21 11:40:15.320 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42607/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:15.320 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42607/api/school/respect/person?includeRelated=false 2026-07-21 11:40:15.337 [eventLoopGroupProxy-28-1 @call-handler#217] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:15.346 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42607/api/school/respect/person?includeRelated=false 2026-07-21 11:40:15.347 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42607/api/school/respect/person?includeRelated=false 2026-07-21 11:40:15.347 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42607/api/school/respect/person?includeRelated=false 2026-07-21 11:40:15.357 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42607/api/school/respect/person?includeRelated=false. 2026-07-21 11:40:15.417 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42607/api/school/respect/person?since=2026-07-21T07%3A40%3A15.337823127Z&includeRelated=false 2026-07-21 11:40:15.417 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42607/api/school/respect/person?since=2026-07-21T07%3A40%3A15.337823127Z&includeRelated=false. 2026-07-21 11:40:15.417 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42607/api/school/respect/person?since=2026-07-21T07%3A40%3A15.337823127Z&includeRelated=false 2026-07-21 11:40:15.418 [eventLoopGroupProxy-28-1 @call-handler#225] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-07-21 11:40:15.421 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42607/api/school/respect/person?since=2026-07-21T07%3A40%3A15.337823127Z&includeRelated=false 2026-07-21 11:40:15.421 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42607/api/school/respect/person?since=2026-07-21T07%3A40%3A15.337823127Z&includeRelated=false 2026-07-21 11:40:15.421 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42607/api/school/respect/person?since=2026-07-21T07%3A40%3A15.337823127Z&includeRelated=false 2026-07-21 11:40:15.422 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42607/api/school/respect/person?since=2026-07-21T07%3A40%3A15.337823127Z&includeRelated=false. 2026-07-21 11:40:17.630 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:17.633 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.059 seconds. 2026-07-21 11:40:17.637 [DefaultDispatcher-worker-2 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45689 2026-07-21 11:40:17.639 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45689/playlist/d6c3f29c-ff86-4cbd-9d33-7671649c6c0f 2026-07-21 11:40:17.640 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45689/playlist/d6c3f29c-ff86-4cbd-9d33-7671649c6c0f. 2026-07-21 11:40:17.640 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45689/playlist/d6c3f29c-ff86-4cbd-9d33-7671649c6c0f 2026-07-21 11:40:17.642 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, d6c3f29c-ff86-4cbd-9d33-7671649c6c0f] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[d6c3f29c-ff86-4cbd-9d33-7671649c6c0f]] @ /playlist/{uuid} /playlist/{uuid}/(method:GET), segment:2 -> SUCCESS @ /playlist/{uuid}/(method:GET) /playlist/{uuid}/(method:POST), segment:2 -> FAILURE "Selector didn't match" @ /playlist/{uuid}/(method:POST) Matched routes: "" -> "playlist" -> "{uuid}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [uuid=[d6c3f29c-ff86-4cbd-9d33-7671649c6c0f]] @ /playlist/{uuid}/(method:GET) 2026-07-21 11:40:17.648 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45689/playlist/d6c3f29c-ff86-4cbd-9d33-7671649c6c0f 2026-07-21 11:40:17.648 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45689/playlist/d6c3f29c-ff86-4cbd-9d33-7671649c6c0f 2026-07-21 11:40:17.648 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45689/playlist/d6c3f29c-ff86-4cbd-9d33-7671649c6c0f 2026-07-21 11:40:17.649 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:45689/playlist/d6c3f29c-ff86-4cbd-9d33-7671649c6c0f. 2026-07-21 11:40:19.844 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-07-21 11:40:19.845 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-07-21 11:40:19.846 [DefaultDispatcher-worker-6 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42315 2026-07-21 11:40:19.922 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42315/playlist/3244a9d1-e067-4d13-9119-30f15678859c 2026-07-21 11:40:19.926 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3afb1c17 for http://localhost:42315/playlist/3244a9d1-e067-4d13-9119-30f15678859c 2026-07-21 11:40:19.927 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42315/playlist/3244a9d1-e067-4d13-9119-30f15678859c 2026-07-21 11:40:19.927 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42315/playlist/3244a9d1-e067-4d13-9119-30f15678859c from class io.ktor.http.content.TextContent 2026-07-21 11:40:19.945 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 3244a9d1-e067-4d13-9119-30f15678859c] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[3244a9d1-e067-4d13-9119-30f15678859c]] @ /playlist/{uuid} /playlist/{uuid}/(method:GET), segment:2 -> FAILURE "Selector didn't match" @ /playlist/{uuid}/(method:GET) /playlist/{uuid}/(method:POST), segment:2 -> SUCCESS @ /playlist/{uuid}/(method:POST) Matched routes: "" -> "playlist" -> "{uuid}" -> "(method:POST)" Routing resolve result: SUCCESS; Parameters [uuid=[3244a9d1-e067-4d13-9119-30f15678859c]] @ /playlist/{uuid}/(method:POST) 2026-07-21 11:40:19.949 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(world.respect.lib.opds.model.OpdsFeed) for call /playlist/3244a9d1-e067-4d13-9119-30f15678859c 2026-07-21 11:40:19.950 [DefaultDispatcher-worker-8 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/3244a9d1-e067-4d13-9119-30f15678859c request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-07-21 11:40:19.951 [DefaultDispatcher-worker-8 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42315/playlist/3244a9d1-e067-4d13-9119-30f15678859c 2026-07-21 11:40:19.951 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42315/playlist/3244a9d1-e067-4d13-9119-30f15678859c 2026-07-21 11:40:19.951 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42315/playlist/3244a9d1-e067-4d13-9119-30f15678859c