2026-05-11 01:21:29.609 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:29.758 [Test worker] INFO io.ktor.server.Application - Application started in 0.343 seconds. 2026-05-11 01:21:29.863 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44619 2026-05-11 01:21:30.756 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44619/resources/index.json 2026-05-11 01:21:30.760 [DefaultDispatcher-worker-1 @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:44619/resources/index.json. 2026-05-11 01:21:30.761 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44619/resources/index.json 2026-05-11 01:21:31.059 [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-05-11 01:21:31.144 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 96ms 2026-05-11 01:21:31.151 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44619/resources/index.json 2026-05-11 01:21:31.154 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44619/resources/index.json 2026-05-11 01:21:31.154 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44619/resources/index.json 2026-05-11 01:21:31.179 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:44619/resources/index.json. 2026-05-11 01:21:31.221 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44619/resources/index.json 2026-05-11 01:21:31.221 [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:44619/resources/index.json. 2026-05-11 01:21:31.221 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44619/resources/index.json 2026-05-11 01:21:31.224 [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-05-11 01:21:31.227 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-05-11 01:21:31.231 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44619/resources/index.json 2026-05-11 01:21:31.232 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44619/resources/index.json 2026-05-11 01:21:31.232 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44619/resources/index.json 2026-05-11 01:21:33.250 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:33.251 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 01:21:33.252 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34587 2026-05-11 01:21:33.305 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34587/resources/index.json 2026-05-11 01:21:33.305 [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:34587/resources/index.json. 2026-05-11 01:21:33.305 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34587/resources/index.json 2026-05-11 01:21:33.309 [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-05-11 01:21:33.310 [DefaultDispatcher-worker-4 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 01:21:33.311 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34587/resources/index.json 2026-05-11 01:21:33.311 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34587/resources/index.json 2026-05-11 01:21:33.311 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34587/resources/index.json 2026-05-11 01:21:33.311 [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:34587/resources/index.json. 2026-05-11 01:21:33.316 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34587/resources/index.json 2026-05-11 01:21:33.317 [DefaultDispatcher-worker-1 @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:34587/resources/index.json. 2026-05-11 01:21:33.317 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34587/resources/index.json 2026-05-11 01:21:33.318 [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-05-11 01:21:33.319 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 01:21:33.320 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34587/resources/index.json 2026-05-11 01:21:33.320 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34587/resources/index.json 2026-05-11 01:21:33.320 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34587/resources/index.json 2026-05-11 01:21:35.339 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:35.340 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 01:21:35.341 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39437 2026-05-11 01:21:35.347 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39437/resources/lesson001.json 2026-05-11 01:21:35.348 [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:39437/resources/lesson001.json. 2026-05-11 01:21:35.348 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39437/resources/lesson001.json 2026-05-11 01:21:35.351 [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-05-11 01:21:35.353 [DefaultDispatcher-worker-4 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-05-11 01:21:35.353 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39437/resources/lesson001.json 2026-05-11 01:21:35.354 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39437/resources/lesson001.json 2026-05-11 01:21:35.354 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39437/resources/lesson001.json 2026-05-11 01:21:35.357 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:39437/resources/lesson001.json. 2026-05-11 01:21:37.738 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:37.748 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.176 seconds. 2026-05-11 01:21:37.759 [DefaultDispatcher-worker-3 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39597 2026-05-11 01:21:37.789 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39597/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:37.789 [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:39597/api/school/respect/schoolpermissiongrant. 2026-05-11 01:21:37.789 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39597/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:37.824 [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-05-11 01:21:37.872 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39597/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:37.872 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39597/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:37.872 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39597/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:37.874 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39597/api/school/respect/schoolpermissiongrant. 2026-05-11 01:21:37.969 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:37.969 [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:39597/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:37.969 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:37.974 [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-05-11 01:21:38.007 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:38.008 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:38.008 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:38.009 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39597/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:38.021 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:38.022 [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:39597/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:38.022 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:38.027 [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-05-11 01:21:38.032 [DefaultDispatcher-worker-4 @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-05-11 01:21:38.035 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:38.036 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:38.036 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39597/api/school/respect/person?includeRelated=false 2026-05-11 01:21:40.176 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:40.177 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-11 01:21:40.178 [DefaultDispatcher-worker-6 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33817 2026-05-11 01:21:40.179 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33817/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:40.180 [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:33817/api/school/respect/schoolpermissiongrant. 2026-05-11 01:21:40.180 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33817/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:40.182 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 01:21:40.184 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33817/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:40.184 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33817/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:40.184 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33817/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:40.185 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33817/api/school/respect/schoolpermissiongrant. 2026-05-11 01:21:40.232 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33817/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 01:21:40.232 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33817/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 01:21:40.232 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33817/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 01:21:40.234 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 01:21:40.236 [DefaultDispatcher-worker-7 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33817/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 01:21:40.237 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33817/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 01:21:40.237 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33817/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 01:21:40.237 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33817/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 01:21:42.403 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:42.406 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.055 seconds. 2026-05-11 01:21:42.409 [DefaultDispatcher-worker-4 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34047 2026-05-11 01:21:42.420 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34047/api/school/respect/person?includeRelated=false 2026-05-11 01:21:42.420 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34047/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:42.420 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34047/api/school/respect/person?includeRelated=false 2026-05-11 01:21:42.446 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 01:21:42.457 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34047/api/school/respect/person?includeRelated=false 2026-05-11 01:21:42.458 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34047/api/school/respect/person?includeRelated=false 2026-05-11 01:21:42.458 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34047/api/school/respect/person?includeRelated=false 2026-05-11 01:21:42.459 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34047/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:42.559 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34047/api/school/respect/person?since=2026-05-10T21%3A21%3A42.449268933Z&includeRelated=false 2026-05-11 01:21:42.560 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34047/api/school/respect/person?since=2026-05-10T21%3A21%3A42.449268933Z&includeRelated=false. 2026-05-11 01:21:42.560 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34047/api/school/respect/person?since=2026-05-10T21%3A21%3A42.449268933Z&includeRelated=false 2026-05-11 01:21:42.571 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 01:21:42.582 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34047/api/school/respect/person?since=2026-05-10T21%3A21%3A42.449268933Z&includeRelated=false 2026-05-11 01:21:42.583 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34047/api/school/respect/person?since=2026-05-10T21%3A21%3A42.449268933Z&includeRelated=false 2026-05-11 01:21:42.583 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34047/api/school/respect/person?since=2026-05-10T21%3A21%3A42.449268933Z&includeRelated=false 2026-05-11 01:21:42.584 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34047/api/school/respect/person?since=2026-05-10T21%3A21%3A42.449268933Z&includeRelated=false. 2026-05-11 01:21:44.825 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:44.826 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.062 seconds. 2026-05-11 01:21:44.842 [DefaultDispatcher-worker-5 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37673 2026-05-11 01:21:44.908 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37673/api/school/respect/person 2026-05-11 01:21:44.909 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@710adc34 for http://localhost:37673/api/school/respect/person 2026-05-11 01:21:44.910 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37673/api/school/respect/person 2026-05-11 01:21:44.910 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:37673/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 01:21:44.922 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 01:21:44.946 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 01:21:44.951 [DefaultDispatcher-worker-2 @call-handler#167] 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-05-11 01:21:44.957 [DefaultDispatcher-worker-8 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37673/api/school/respect/person 2026-05-11 01:21:44.957 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37673/api/school/respect/person 2026-05-11 01:21:44.957 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37673/api/school/respect/person 2026-05-11 01:21:47.129 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:47.136 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.049 seconds. 2026-05-11 01:21:47.143 [DefaultDispatcher-worker-5 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38769 2026-05-11 01:21:47.146 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38769/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:47.146 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38769/api/school/respect/schoolpermissiongrant. 2026-05-11 01:21:47.146 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38769/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:47.158 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 01:21:47.160 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38769/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:47.161 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38769/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:47.161 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38769/api/school/respect/schoolpermissiongrant 2026-05-11 01:21:47.161 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38769/api/school/respect/schoolpermissiongrant. 2026-05-11 01:21:47.224 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:47.224 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38769/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:47.224 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:47.236 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 01:21:47.252 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:47.253 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:47.253 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:47.254 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38769/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:49.267 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:49.267 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38769/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:49.267 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:49.269 [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-05-11 01:21:49.273 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:49.274 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:49.274 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38769/api/school/respect/person?includeRelated=false 2026-05-11 01:21:49.275 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38769/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:51.436 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:51.438 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.061 seconds. 2026-05-11 01:21:51.440 [DefaultDispatcher-worker-11 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38181 2026-05-11 01:21:51.444 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38181/api/school/respect/person?includeRelated=false 2026-05-11 01:21:51.444 [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:38181/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:51.444 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38181/api/school/respect/person?includeRelated=false 2026-05-11 01:21:51.448 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 01:21:51.453 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38181/api/school/respect/person?includeRelated=false 2026-05-11 01:21:51.453 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38181/api/school/respect/person?includeRelated=false 2026-05-11 01:21:51.453 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38181/api/school/respect/person?includeRelated=false 2026-05-11 01:21:51.454 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38181/api/school/respect/person?includeRelated=false. 2026-05-11 01:21:51.524 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38181/api/school/respect/person?since=2026-05-10T21%3A21%3A51.449135456Z&includeRelated=false 2026-05-11 01:21:51.524 [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:38181/api/school/respect/person?since=2026-05-10T21%3A21%3A51.449135456Z&includeRelated=false. 2026-05-11 01:21:51.524 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38181/api/school/respect/person?since=2026-05-10T21%3A21%3A51.449135456Z&includeRelated=false 2026-05-11 01:21:51.534 [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-05-11 01:21:51.545 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38181/api/school/respect/person?since=2026-05-10T21%3A21%3A51.449135456Z&includeRelated=false 2026-05-11 01:21:51.545 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38181/api/school/respect/person?since=2026-05-10T21%3A21%3A51.449135456Z&includeRelated=false 2026-05-11 01:21:51.545 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38181/api/school/respect/person?since=2026-05-10T21%3A21%3A51.449135456Z&includeRelated=false 2026-05-11 01:21:51.546 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38181/api/school/respect/person?since=2026-05-10T21%3A21%3A51.449135456Z&includeRelated=false. 2026-05-11 01:21:53.686 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:53.688 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-05-11 01:21:53.689 [DefaultDispatcher-worker-11 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35025 2026-05-11 01:21:53.690 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35025/playlist/8ac57f3e-e955-4fcd-b705-08f220e4431b 2026-05-11 01:21:53.691 [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:35025/playlist/8ac57f3e-e955-4fcd-b705-08f220e4431b. 2026-05-11 01:21:53.691 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35025/playlist/8ac57f3e-e955-4fcd-b705-08f220e4431b 2026-05-11 01:21:53.693 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 8ac57f3e-e955-4fcd-b705-08f220e4431b] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[8ac57f3e-e955-4fcd-b705-08f220e4431b]] @ /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=[8ac57f3e-e955-4fcd-b705-08f220e4431b]] @ /playlist/{uuid}/(method:GET) 2026-05-11 01:21:53.699 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35025/playlist/8ac57f3e-e955-4fcd-b705-08f220e4431b 2026-05-11 01:21:53.699 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35025/playlist/8ac57f3e-e955-4fcd-b705-08f220e4431b 2026-05-11 01:21:53.699 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35025/playlist/8ac57f3e-e955-4fcd-b705-08f220e4431b 2026-05-11 01:21:53.700 [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:35025/playlist/8ac57f3e-e955-4fcd-b705-08f220e4431b. 2026-05-11 01:21:55.946 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 01:21:55.947 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.092 seconds. 2026-05-11 01:21:55.948 [DefaultDispatcher-worker-4 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44435 2026-05-11 01:21:56.059 [DefaultDispatcher-worker-11 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44435/playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 2026-05-11 01:21:56.059 [DefaultDispatcher-worker-11 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@7ac35dfa for http://localhost:44435/playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 2026-05-11 01:21:56.059 [DefaultDispatcher-worker-11 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44435/playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 2026-05-11 01:21:56.059 [DefaultDispatcher-worker-11 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:44435/playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 from class io.ktor.http.content.TextContent 2026-05-11 01:21:56.062 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 5075aa01-c5aa-4691-bada-5ea82b0537f6] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[5075aa01-c5aa-4691-bada-5ea82b0537f6]] @ /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=[5075aa01-c5aa-4691-bada-5ea82b0537f6]] @ /playlist/{uuid}/(method:POST) 2026-05-11 01:21:56.062 [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/5075aa01-c5aa-4691-bada-5ea82b0537f6 2026-05-11 01:21:56.063 [DefaultDispatcher-worker-11 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 01:21:56.064 [DefaultDispatcher-worker-10 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44435/playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 2026-05-11 01:21:56.064 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44435/playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 2026-05-11 01:21:56.064 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44435/playlist/5075aa01-c5aa-4691-bada-5ea82b0537f6 2026-05-11 11:18:14.488 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:14.621 [Test worker] INFO io.ktor.server.Application - Application started in 0.317 seconds. 2026-05-11 11:18:14.721 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36793 2026-05-11 11:18:15.899 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36793/resources/index.json 2026-05-11 11:18:15.900 [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:36793/resources/index.json. 2026-05-11 11:18:15.900 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36793/resources/index.json 2026-05-11 11:18:16.067 [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-05-11 11:18:16.133 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 72ms 2026-05-11 11:18:16.135 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36793/resources/index.json 2026-05-11 11:18:16.138 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36793/resources/index.json 2026-05-11 11:18:16.139 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36793/resources/index.json 2026-05-11 11:18:16.169 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:36793/resources/index.json. 2026-05-11 11:18:16.214 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36793/resources/index.json 2026-05-11 11:18:16.214 [DefaultDispatcher-worker-4 @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:36793/resources/index.json. 2026-05-11 11:18:16.214 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36793/resources/index.json 2026-05-11 11:18:16.219 [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-05-11 11:18:16.221 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-11 11:18:16.223 [DefaultDispatcher-worker-3 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36793/resources/index.json 2026-05-11 11:18:16.224 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36793/resources/index.json 2026-05-11 11:18:16.224 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36793/resources/index.json 2026-05-11 11:18:17.239 [eventLoopGroupProxy-3-1] WARN i.n.u.c.AbstractEventExecutor - A task raised an exception. Task: io.netty.channel.AbstractChannel$AbstractUnsafe$8@2197c5a8 java.util.concurrent.RejectedExecutionException: event executor terminated at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:1005) at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:388) at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:381) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:907) at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:873) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:863) at io.netty.channel.DefaultChannelPipeline.destroyUp(DefaultChannelPipeline.java:816) at io.netty.channel.DefaultChannelPipeline.destroy(DefaultChannelPipeline.java:801) at io.netty.channel.DefaultChannelPipeline.access$700(DefaultChannelPipeline.java:45) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelUnregistered(DefaultChannelPipeline.java:1411) at io.netty.channel.DefaultChannelPipeline.fireChannelUnregistered(DefaultChannelPipeline.java:780) at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:692) at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:148) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:141) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:507) at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:183) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1073) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:1583) 2026-05-11 11:18:18.250 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:18.251 [Test worker] INFO io.ktor.server.Application - Application started in 0.002 seconds. 2026-05-11 11:18:18.253 [DefaultDispatcher-worker-3 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44377 2026-05-11 11:18:18.319 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44377/resources/index.json 2026-05-11 11:18:18.319 [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:44377/resources/index.json. 2026-05-11 11:18:18.320 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44377/resources/index.json 2026-05-11 11:18:18.323 [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-05-11 11:18:18.324 [DefaultDispatcher-worker-2 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 2ms 2026-05-11 11:18:18.324 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44377/resources/index.json 2026-05-11 11:18:18.324 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44377/resources/index.json 2026-05-11 11:18:18.324 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44377/resources/index.json 2026-05-11 11:18:18.325 [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:44377/resources/index.json. 2026-05-11 11:18:18.330 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44377/resources/index.json 2026-05-11 11:18:18.330 [DefaultDispatcher-worker-4 @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:44377/resources/index.json. 2026-05-11 11:18:18.330 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44377/resources/index.json 2026-05-11 11:18:18.331 [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-05-11 11:18:18.332 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 11:18:18.332 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44377/resources/index.json 2026-05-11 11:18:18.332 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44377/resources/index.json 2026-05-11 11:18:18.332 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44377/resources/index.json 2026-05-11 11:18:20.344 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:20.344 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 11:18:20.348 [DefaultDispatcher-worker-2 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40809 2026-05-11 11:18:20.358 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40809/resources/lesson001.json 2026-05-11 11:18:20.358 [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:40809/resources/lesson001.json. 2026-05-11 11:18:20.358 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40809/resources/lesson001.json 2026-05-11 11:18:20.372 [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-05-11 11:18:20.386 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40809/resources/lesson001.json 2026-05-11 11:18:20.386 [DefaultDispatcher-worker-6 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 15ms 2026-05-11 11:18:20.389 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40809/resources/lesson001.json 2026-05-11 11:18:20.390 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40809/resources/lesson001.json 2026-05-11 11:18:20.397 [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:40809/resources/lesson001.json. 2026-05-11 11:18:22.733 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:22.743 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.135 seconds. 2026-05-11 11:18:22.748 [DefaultDispatcher-worker-6 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39717 2026-05-11 11:18:22.763 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39717/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:22.763 [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:39717/api/school/respect/schoolpermissiongrant. 2026-05-11 11:18:22.764 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39717/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:22.776 [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-05-11 11:18:22.808 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39717/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:22.808 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39717/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:22.808 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39717/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:22.812 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39717/api/school/respect/schoolpermissiongrant. 2026-05-11 11:18:22.905 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.905 [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:39717/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:22.905 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.907 [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-05-11 11:18:22.928 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.929 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.929 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.930 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39717/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:22.939 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.939 [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:39717/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:22.939 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.941 [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-05-11 11:18:22.944 [DefaultDispatcher-worker-10 @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-05-11 11:18:22.946 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.946 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:22.946 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39717/api/school/respect/person?includeRelated=false 2026-05-11 11:18:25.233 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:25.234 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.11 seconds. 2026-05-11 11:18:25.238 [DefaultDispatcher-worker-8 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43553 2026-05-11 11:18:25.242 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43553/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:25.242 [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:43553/api/school/respect/schoolpermissiongrant. 2026-05-11 11:18:25.242 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43553/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:25.261 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 11:18:25.271 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43553/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:25.273 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43553/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:25.273 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43553/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:25.274 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43553/api/school/respect/schoolpermissiongrant. 2026-05-11 11:18:25.374 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43553/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 11:18:25.375 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43553/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 11:18:25.375 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43553/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 11:18:25.386 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 11:18:25.397 [DefaultDispatcher-worker-8 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43553/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 11:18:25.398 [DefaultDispatcher-worker-8 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43553/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 11:18:25.398 [DefaultDispatcher-worker-8 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43553/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 11:18:25.401 [DefaultDispatcher-worker-8 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43553/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 11:18:27.630 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:27.632 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.065 seconds. 2026-05-11 11:18:27.644 [DefaultDispatcher-worker-8 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33357 2026-05-11 11:18:27.656 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33357/api/school/respect/person?includeRelated=false 2026-05-11 11:18:27.657 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33357/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:27.657 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33357/api/school/respect/person?includeRelated=false 2026-05-11 11:18:27.686 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 11:18:27.694 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33357/api/school/respect/person?includeRelated=false 2026-05-11 11:18:27.694 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33357/api/school/respect/person?includeRelated=false 2026-05-11 11:18:27.695 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33357/api/school/respect/person?includeRelated=false 2026-05-11 11:18:27.699 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33357/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:27.807 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33357/api/school/respect/person?since=2026-05-11T07%3A18%3A27.687361708Z&includeRelated=false 2026-05-11 11:18:27.807 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33357/api/school/respect/person?since=2026-05-11T07%3A18%3A27.687361708Z&includeRelated=false. 2026-05-11 11:18:27.808 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33357/api/school/respect/person?since=2026-05-11T07%3A18%3A27.687361708Z&includeRelated=false 2026-05-11 11:18:27.812 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 11:18:27.816 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33357/api/school/respect/person?since=2026-05-11T07%3A18%3A27.687361708Z&includeRelated=false 2026-05-11 11:18:27.816 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33357/api/school/respect/person?since=2026-05-11T07%3A18%3A27.687361708Z&includeRelated=false 2026-05-11 11:18:27.816 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33357/api/school/respect/person?since=2026-05-11T07%3A18%3A27.687361708Z&includeRelated=false 2026-05-11 11:18:27.817 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33357/api/school/respect/person?since=2026-05-11T07%3A18%3A27.687361708Z&includeRelated=false. 2026-05-11 11:18:30.020 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:30.021 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.05 seconds. 2026-05-11 11:18:30.022 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40735 2026-05-11 11:18:30.096 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40735/api/school/respect/person 2026-05-11 11:18:30.097 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@2a634b00 for http://localhost:40735/api/school/respect/person 2026-05-11 11:18:30.097 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40735/api/school/respect/person 2026-05-11 11:18:30.097 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40735/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 11:18:30.102 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 11:18:30.111 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 11:18:30.114 [DefaultDispatcher-worker-2 @call-handler#167] 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-05-11 11:18:30.116 [DefaultDispatcher-worker-6 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40735/api/school/respect/person 2026-05-11 11:18:30.116 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40735/api/school/respect/person 2026-05-11 11:18:30.116 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40735/api/school/respect/person 2026-05-11 11:18:32.271 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:32.272 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-05-11 11:18:32.273 [DefaultDispatcher-worker-4 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35031 2026-05-11 11:18:32.275 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35031/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:32.275 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35031/api/school/respect/schoolpermissiongrant. 2026-05-11 11:18:32.275 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35031/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:32.279 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 11:18:32.284 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35031/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:32.285 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35031/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:32.285 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35031/api/school/respect/schoolpermissiongrant 2026-05-11 11:18:32.286 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35031/api/school/respect/schoolpermissiongrant. 2026-05-11 11:18:32.341 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:32.342 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35031/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:32.342 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:32.345 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 11:18:32.352 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:32.352 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:32.352 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:32.353 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35031/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:34.360 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:34.360 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35031/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:34.360 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:34.361 [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-05-11 11:18:34.364 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:34.365 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:34.365 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35031/api/school/respect/person?includeRelated=false 2026-05-11 11:18:34.365 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35031/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:36.473 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:36.474 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-11 11:18:36.475 [DefaultDispatcher-worker-10 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39599 2026-05-11 11:18:36.477 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39599/api/school/respect/person?includeRelated=false 2026-05-11 11:18:36.477 [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:39599/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:36.478 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39599/api/school/respect/person?includeRelated=false 2026-05-11 11:18:36.480 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 11:18:36.483 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39599/api/school/respect/person?includeRelated=false 2026-05-11 11:18:36.483 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39599/api/school/respect/person?includeRelated=false 2026-05-11 11:18:36.483 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39599/api/school/respect/person?includeRelated=false 2026-05-11 11:18:36.483 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39599/api/school/respect/person?includeRelated=false. 2026-05-11 11:18:36.524 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39599/api/school/respect/person?since=2026-05-11T07%3A18%3A36.480330221Z&includeRelated=false 2026-05-11 11:18:36.524 [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:39599/api/school/respect/person?since=2026-05-11T07%3A18%3A36.480330221Z&includeRelated=false. 2026-05-11 11:18:36.524 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39599/api/school/respect/person?since=2026-05-11T07%3A18%3A36.480330221Z&includeRelated=false 2026-05-11 11:18:36.525 [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-05-11 11:18:36.528 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39599/api/school/respect/person?since=2026-05-11T07%3A18%3A36.480330221Z&includeRelated=false 2026-05-11 11:18:36.528 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39599/api/school/respect/person?since=2026-05-11T07%3A18%3A36.480330221Z&includeRelated=false 2026-05-11 11:18:36.528 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39599/api/school/respect/person?since=2026-05-11T07%3A18%3A36.480330221Z&includeRelated=false 2026-05-11 11:18:36.528 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39599/api/school/respect/person?since=2026-05-11T07%3A18%3A36.480330221Z&includeRelated=false. 2026-05-11 11:18:38.665 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:38.667 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.055 seconds. 2026-05-11 11:18:38.668 [DefaultDispatcher-worker-9 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37957 2026-05-11 11:18:38.670 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37957/playlist/4393d595-6b10-4d05-8cab-ad61919ffb05 2026-05-11 11:18:38.670 [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:37957/playlist/4393d595-6b10-4d05-8cab-ad61919ffb05. 2026-05-11 11:18:38.671 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37957/playlist/4393d595-6b10-4d05-8cab-ad61919ffb05 2026-05-11 11:18:38.674 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 4393d595-6b10-4d05-8cab-ad61919ffb05] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[4393d595-6b10-4d05-8cab-ad61919ffb05]] @ /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=[4393d595-6b10-4d05-8cab-ad61919ffb05]] @ /playlist/{uuid}/(method:GET) 2026-05-11 11:18:38.680 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37957/playlist/4393d595-6b10-4d05-8cab-ad61919ffb05 2026-05-11 11:18:38.681 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37957/playlist/4393d595-6b10-4d05-8cab-ad61919ffb05 2026-05-11 11:18:38.681 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37957/playlist/4393d595-6b10-4d05-8cab-ad61919ffb05 2026-05-11 11:18:38.681 [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:37957/playlist/4393d595-6b10-4d05-8cab-ad61919ffb05. 2026-05-11 11:18:40.883 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 11:18:40.885 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.054 seconds. 2026-05-11 11:18:40.892 [DefaultDispatcher-worker-9 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35217 2026-05-11 11:18:40.973 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35217/playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 2026-05-11 11:18:40.974 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@4202180f for http://localhost:35217/playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 2026-05-11 11:18:40.974 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35217/playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 2026-05-11 11:18:40.974 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35217/playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 from class io.ktor.http.content.TextContent 2026-05-11 11:18:40.981 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, ebd7ad67-7fa7-4e58-b10b-209da3d11dc2] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[ebd7ad67-7fa7-4e58-b10b-209da3d11dc2]] @ /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=[ebd7ad67-7fa7-4e58-b10b-209da3d11dc2]] @ /playlist/{uuid}/(method:POST) 2026-05-11 11:18:40.982 [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/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 2026-05-11 11:18:40.983 [DefaultDispatcher-worker-2 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 11:18:40.984 [DefaultDispatcher-worker-3 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35217/playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 2026-05-11 11:18:40.985 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35217/playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 2026-05-11 11:18:40.985 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35217/playlist/ebd7ad67-7fa7-4e58-b10b-209da3d11dc2 2026-05-11 13:20:51.261 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:20:51.346 [Test worker] INFO io.ktor.server.Application - Application started in 0.21 seconds. 2026-05-11 13:20:51.421 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40007 2026-05-11 13:20:52.258 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40007/resources/index.json 2026-05-11 13:20:52.259 [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:40007/resources/index.json. 2026-05-11 13:20:52.259 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40007/resources/index.json 2026-05-11 13:20:52.414 [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-05-11 13:20:52.478 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 70ms 2026-05-11 13:20:52.482 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40007/resources/index.json 2026-05-11 13:20:52.484 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40007/resources/index.json 2026-05-11 13:20:52.485 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40007/resources/index.json 2026-05-11 13:20:52.507 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:40007/resources/index.json. 2026-05-11 13:20:52.545 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40007/resources/index.json 2026-05-11 13:20:52.545 [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:40007/resources/index.json. 2026-05-11 13:20:52.545 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40007/resources/index.json 2026-05-11 13:20:52.548 [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-05-11 13:20:52.550 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-11 13:20:52.551 [DefaultDispatcher-worker-5 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40007/resources/index.json 2026-05-11 13:20:52.552 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40007/resources/index.json 2026-05-11 13:20:52.552 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40007/resources/index.json 2026-05-11 13:20:54.565 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:20:54.565 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 13:20:54.566 [DefaultDispatcher-worker-5 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44879 2026-05-11 13:20:54.638 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44879/resources/index.json 2026-05-11 13:20:54.638 [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:44879/resources/index.json. 2026-05-11 13:20:54.638 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44879/resources/index.json 2026-05-11 13:20:54.641 [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-05-11 13:20:54.642 [DefaultDispatcher-worker-2 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 13:20:54.643 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44879/resources/index.json 2026-05-11 13:20:54.643 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44879/resources/index.json 2026-05-11 13:20:54.643 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44879/resources/index.json 2026-05-11 13:20:54.643 [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:44879/resources/index.json. 2026-05-11 13:20:54.647 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44879/resources/index.json 2026-05-11 13:20:54.647 [DefaultDispatcher-worker-5 @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:44879/resources/index.json. 2026-05-11 13:20:54.647 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44879/resources/index.json 2026-05-11 13:20:54.649 [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-05-11 13:20:54.649 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 0ms 2026-05-11 13:20:54.650 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44879/resources/index.json 2026-05-11 13:20:54.650 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44879/resources/index.json 2026-05-11 13:20:54.650 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44879/resources/index.json 2026-05-11 13:20:56.658 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:20:56.658 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 13:20:56.659 [DefaultDispatcher-worker-2 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43713 2026-05-11 13:20:56.663 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43713/resources/lesson001.json 2026-05-11 13:20:56.663 [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:43713/resources/lesson001.json. 2026-05-11 13:20:56.663 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43713/resources/lesson001.json 2026-05-11 13:20:56.666 [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-05-11 13:20:56.667 [DefaultDispatcher-worker-5 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-05-11 13:20:56.667 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43713/resources/lesson001.json 2026-05-11 13:20:56.668 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43713/resources/lesson001.json 2026-05-11 13:20:56.668 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43713/resources/lesson001.json 2026-05-11 13:20:56.670 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:43713/resources/lesson001.json. 2026-05-11 13:20:58.924 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:20:58.930 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.113 seconds. 2026-05-11 13:20:58.932 [DefaultDispatcher-worker-1 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43879 2026-05-11 13:20:58.941 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43879/api/school/respect/schoolpermissiongrant 2026-05-11 13:20:58.941 [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:43879/api/school/respect/schoolpermissiongrant. 2026-05-11 13:20:58.941 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43879/api/school/respect/schoolpermissiongrant 2026-05-11 13:20:58.945 [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-05-11 13:20:58.958 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43879/api/school/respect/schoolpermissiongrant 2026-05-11 13:20:58.959 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43879/api/school/respect/schoolpermissiongrant 2026-05-11 13:20:58.959 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43879/api/school/respect/schoolpermissiongrant 2026-05-11 13:20:58.960 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43879/api/school/respect/schoolpermissiongrant. 2026-05-11 13:20:59.033 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.034 [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:43879/api/school/respect/person?includeRelated=false. 2026-05-11 13:20:59.034 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.037 [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-05-11 13:20:59.057 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.057 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.057 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.059 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43879/api/school/respect/person?includeRelated=false. 2026-05-11 13:20:59.065 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.065 [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:43879/api/school/respect/person?includeRelated=false. 2026-05-11 13:20:59.065 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.067 [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-05-11 13:20:59.069 [DefaultDispatcher-worker-1 @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-05-11 13:20:59.070 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.070 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:20:59.070 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43879/api/school/respect/person?includeRelated=false 2026-05-11 13:21:01.163 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:21:01.164 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-11 13:21:01.165 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36167 2026-05-11 13:21:01.166 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36167/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:01.166 [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:36167/api/school/respect/schoolpermissiongrant. 2026-05-11 13:21:01.166 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36167/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:01.169 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 13:21:01.171 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36167/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:01.171 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36167/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:01.171 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36167/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:01.171 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36167/api/school/respect/schoolpermissiongrant. 2026-05-11 13:21:01.218 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36167/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 13:21:01.218 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36167/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 13:21:01.218 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36167/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 13:21:01.220 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 13:21:01.223 [DefaultDispatcher-worker-2 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36167/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 13:21:01.223 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36167/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 13:21:01.223 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36167/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 13:21:01.224 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36167/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 13:21:03.343 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:21:03.343 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 13:21:03.344 [DefaultDispatcher-worker-2 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42733 2026-05-11 13:21:03.347 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42733/api/school/respect/person?includeRelated=false 2026-05-11 13:21:03.347 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42733/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:03.347 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42733/api/school/respect/person?includeRelated=false 2026-05-11 13:21:03.349 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 13:21:03.353 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42733/api/school/respect/person?includeRelated=false 2026-05-11 13:21:03.353 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42733/api/school/respect/person?includeRelated=false 2026-05-11 13:21:03.353 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42733/api/school/respect/person?includeRelated=false 2026-05-11 13:21:03.354 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42733/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:03.405 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42733/api/school/respect/person?since=2026-05-11T09%3A21%3A03.349963628Z&includeRelated=false 2026-05-11 13:21:03.405 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42733/api/school/respect/person?since=2026-05-11T09%3A21%3A03.349963628Z&includeRelated=false. 2026-05-11 13:21:03.406 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42733/api/school/respect/person?since=2026-05-11T09%3A21%3A03.349963628Z&includeRelated=false 2026-05-11 13:21:03.407 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 13:21:03.410 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42733/api/school/respect/person?since=2026-05-11T09%3A21%3A03.349963628Z&includeRelated=false 2026-05-11 13:21:03.411 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42733/api/school/respect/person?since=2026-05-11T09%3A21%3A03.349963628Z&includeRelated=false 2026-05-11 13:21:03.411 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42733/api/school/respect/person?since=2026-05-11T09%3A21%3A03.349963628Z&includeRelated=false 2026-05-11 13:21:03.412 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42733/api/school/respect/person?since=2026-05-11T09%3A21%3A03.349963628Z&includeRelated=false. 2026-05-11 13:21:05.517 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:21:05.518 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 13:21:05.519 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42359 2026-05-11 13:21:05.565 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42359/api/school/respect/person 2026-05-11 13:21:05.566 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3eef07dd for http://localhost:42359/api/school/respect/person 2026-05-11 13:21:05.566 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42359/api/school/respect/person 2026-05-11 13:21:05.566 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42359/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 13:21:05.569 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 13:21:05.575 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 13:21:05.577 [DefaultDispatcher-worker-6 @call-handler#167] 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-05-11 13:21:05.577 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42359/api/school/respect/person 2026-05-11 13:21:05.578 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42359/api/school/respect/person 2026-05-11 13:21:05.578 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42359/api/school/respect/person 2026-05-11 13:21:07.699 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:21:07.700 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-11 13:21:07.701 [DefaultDispatcher-worker-4 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42663 2026-05-11 13:21:07.702 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42663/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:07.702 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42663/api/school/respect/schoolpermissiongrant. 2026-05-11 13:21:07.702 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42663/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:07.706 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 13:21:07.708 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42663/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:07.708 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42663/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:07.708 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42663/api/school/respect/schoolpermissiongrant 2026-05-11 13:21:07.708 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42663/api/school/respect/schoolpermissiongrant. 2026-05-11 13:21:07.756 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:07.756 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42663/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:07.756 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:07.757 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 13:21:07.764 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:07.764 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:07.764 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:07.765 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42663/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:09.770 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:09.770 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42663/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:09.770 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:09.772 [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-05-11 13:21:09.774 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:09.775 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:09.775 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42663/api/school/respect/person?includeRelated=false 2026-05-11 13:21:09.775 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42663/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:11.900 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:21:11.901 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-05-11 13:21:11.902 [DefaultDispatcher-worker-1 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42523 2026-05-11 13:21:11.905 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42523/api/school/respect/person?includeRelated=false 2026-05-11 13:21:11.905 [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:42523/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:11.905 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42523/api/school/respect/person?includeRelated=false 2026-05-11 13:21:11.907 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 13:21:11.911 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42523/api/school/respect/person?includeRelated=false 2026-05-11 13:21:11.911 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42523/api/school/respect/person?includeRelated=false 2026-05-11 13:21:11.911 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42523/api/school/respect/person?includeRelated=false 2026-05-11 13:21:11.912 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42523/api/school/respect/person?includeRelated=false. 2026-05-11 13:21:11.967 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42523/api/school/respect/person?since=2026-05-11T09%3A21%3A11.907821502Z&includeRelated=false 2026-05-11 13:21:11.967 [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:42523/api/school/respect/person?since=2026-05-11T09%3A21%3A11.907821502Z&includeRelated=false. 2026-05-11 13:21:11.967 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42523/api/school/respect/person?since=2026-05-11T09%3A21%3A11.907821502Z&includeRelated=false 2026-05-11 13:21:11.969 [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-05-11 13:21:11.971 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42523/api/school/respect/person?since=2026-05-11T09%3A21%3A11.907821502Z&includeRelated=false 2026-05-11 13:21:11.972 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42523/api/school/respect/person?since=2026-05-11T09%3A21%3A11.907821502Z&includeRelated=false 2026-05-11 13:21:11.972 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42523/api/school/respect/person?since=2026-05-11T09%3A21%3A11.907821502Z&includeRelated=false 2026-05-11 13:21:11.972 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42523/api/school/respect/person?since=2026-05-11T09%3A21%3A11.907821502Z&includeRelated=false. 2026-05-11 13:21:14.093 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:21:14.094 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-05-11 13:21:14.095 [DefaultDispatcher-worker-2 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38689 2026-05-11 13:21:14.097 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38689/playlist/8c18a052-3100-4d9b-9424-18ea5770e655 2026-05-11 13:21:14.097 [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:38689/playlist/8c18a052-3100-4d9b-9424-18ea5770e655. 2026-05-11 13:21:14.097 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38689/playlist/8c18a052-3100-4d9b-9424-18ea5770e655 2026-05-11 13:21:14.100 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 8c18a052-3100-4d9b-9424-18ea5770e655] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[8c18a052-3100-4d9b-9424-18ea5770e655]] @ /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=[8c18a052-3100-4d9b-9424-18ea5770e655]] @ /playlist/{uuid}/(method:GET) 2026-05-11 13:21:14.105 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38689/playlist/8c18a052-3100-4d9b-9424-18ea5770e655 2026-05-11 13:21:14.105 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38689/playlist/8c18a052-3100-4d9b-9424-18ea5770e655 2026-05-11 13:21:14.105 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38689/playlist/8c18a052-3100-4d9b-9424-18ea5770e655 2026-05-11 13:21:14.106 [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:38689/playlist/8c18a052-3100-4d9b-9424-18ea5770e655. 2026-05-11 13:21:16.277 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 13:21:16.278 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-05-11 13:21:16.279 [DefaultDispatcher-worker-4 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40339 2026-05-11 13:21:16.335 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40339/playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 2026-05-11 13:21:16.335 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@449eecbb for http://localhost:40339/playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 2026-05-11 13:21:16.335 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40339/playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 2026-05-11 13:21:16.335 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40339/playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 from class io.ktor.http.content.TextContent 2026-05-11 13:21:16.338 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 07fdf9af-3763-4cdc-8e65-0f20df053551] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[07fdf9af-3763-4cdc-8e65-0f20df053551]] @ /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=[07fdf9af-3763-4cdc-8e65-0f20df053551]] @ /playlist/{uuid}/(method:POST) 2026-05-11 13:21:16.338 [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/07fdf9af-3763-4cdc-8e65-0f20df053551 2026-05-11 13:21:16.339 [DefaultDispatcher-worker-2 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 13:21:16.340 [DefaultDispatcher-worker-2 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40339/playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 2026-05-11 13:21:16.340 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40339/playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 2026-05-11 13:21:16.340 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40339/playlist/07fdf9af-3763-4cdc-8e65-0f20df053551 2026-05-11 15:45:45.634 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:45:45.725 [Test worker] INFO io.ktor.server.Application - Application started in 0.222 seconds. 2026-05-11 15:45:45.799 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45873 2026-05-11 15:45:46.566 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45873/resources/index.json 2026-05-11 15:45:46.567 [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:45873/resources/index.json. 2026-05-11 15:45:46.567 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45873/resources/index.json 2026-05-11 15:45:46.726 [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-05-11 15:45:46.780 [DefaultDispatcher-worker-2 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 60ms 2026-05-11 15:45:46.787 [DefaultDispatcher-worker-3 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45873/resources/index.json 2026-05-11 15:45:46.789 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45873/resources/index.json 2026-05-11 15:45:46.789 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45873/resources/index.json 2026-05-11 15:45:46.814 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:45873/resources/index.json. 2026-05-11 15:45:46.857 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45873/resources/index.json 2026-05-11 15:45:46.857 [DefaultDispatcher-worker-2 @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:45873/resources/index.json. 2026-05-11 15:45:46.857 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45873/resources/index.json 2026-05-11 15:45:46.864 [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-05-11 15:45:46.866 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-05-11 15:45:46.868 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45873/resources/index.json 2026-05-11 15:45:46.868 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45873/resources/index.json 2026-05-11 15:45:46.868 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45873/resources/index.json 2026-05-11 15:45:47.877 [eventLoopGroupProxy-3-1] WARN i.n.u.c.AbstractEventExecutor - A task raised an exception. Task: io.netty.channel.AbstractChannel$AbstractUnsafe$8@5449bb0a java.util.concurrent.RejectedExecutionException: event executor terminated at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:1005) at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:388) at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:381) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:907) at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:873) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:863) at io.netty.channel.DefaultChannelPipeline.destroyUp(DefaultChannelPipeline.java:816) at io.netty.channel.DefaultChannelPipeline.destroy(DefaultChannelPipeline.java:801) at io.netty.channel.DefaultChannelPipeline.access$700(DefaultChannelPipeline.java:45) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelUnregistered(DefaultChannelPipeline.java:1411) at io.netty.channel.DefaultChannelPipeline.fireChannelUnregistered(DefaultChannelPipeline.java:780) at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:692) at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:148) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:141) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:507) at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:183) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1073) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:1583) 2026-05-11 15:45:48.884 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:45:48.885 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 15:45:48.886 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37495 2026-05-11 15:45:48.945 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37495/resources/index.json 2026-05-11 15:45:48.945 [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:37495/resources/index.json. 2026-05-11 15:45:48.945 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37495/resources/index.json 2026-05-11 15:45:48.948 [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-05-11 15:45:48.949 [DefaultDispatcher-worker-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 15:45:48.950 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37495/resources/index.json 2026-05-11 15:45:48.950 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37495/resources/index.json 2026-05-11 15:45:48.950 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37495/resources/index.json 2026-05-11 15:45:48.950 [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:37495/resources/index.json. 2026-05-11 15:45:48.955 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37495/resources/index.json 2026-05-11 15:45:48.955 [DefaultDispatcher-worker-3 @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:37495/resources/index.json. 2026-05-11 15:45:48.955 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37495/resources/index.json 2026-05-11 15:45:48.956 [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-05-11 15:45:48.957 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 15:45:48.957 [DefaultDispatcher-worker-4 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37495/resources/index.json 2026-05-11 15:45:48.957 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37495/resources/index.json 2026-05-11 15:45:48.957 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37495/resources/index.json 2026-05-11 15:45:50.963 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:45:50.963 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 15:45:50.964 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38797 2026-05-11 15:45:50.969 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38797/resources/lesson001.json 2026-05-11 15:45:50.969 [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:38797/resources/lesson001.json. 2026-05-11 15:45:50.969 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38797/resources/lesson001.json 2026-05-11 15:45:50.971 [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-05-11 15:45:50.973 [DefaultDispatcher-worker-4 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-05-11 15:45:50.973 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38797/resources/lesson001.json 2026-05-11 15:45:50.973 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38797/resources/lesson001.json 2026-05-11 15:45:50.973 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38797/resources/lesson001.json 2026-05-11 15:45:50.976 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:38797/resources/lesson001.json. 2026-05-11 15:45:53.215 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:45:53.221 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.1 seconds. 2026-05-11 15:45:53.222 [DefaultDispatcher-worker-3 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35285 2026-05-11 15:45:53.230 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35285/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:53.230 [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:35285/api/school/respect/schoolpermissiongrant. 2026-05-11 15:45:53.230 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35285/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:53.234 [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-05-11 15:45:53.246 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35285/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:53.246 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35285/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:53.246 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35285/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:53.248 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35285/api/school/respect/schoolpermissiongrant. 2026-05-11 15:45:53.306 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.306 [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:35285/api/school/respect/person?includeRelated=false. 2026-05-11 15:45:53.306 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.308 [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-05-11 15:45:53.324 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.324 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.324 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.325 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35285/api/school/respect/person?includeRelated=false. 2026-05-11 15:45:53.330 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.330 [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:35285/api/school/respect/person?includeRelated=false. 2026-05-11 15:45:53.330 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.332 [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-05-11 15:45:53.334 [DefaultDispatcher-worker-1 @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-05-11 15:45:53.334 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.335 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:53.335 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35285/api/school/respect/person?includeRelated=false 2026-05-11 15:45:55.438 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:45:55.438 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-05-11 15:45:55.439 [DefaultDispatcher-worker-4 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41899 2026-05-11 15:45:55.440 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41899/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:55.440 [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:41899/api/school/respect/schoolpermissiongrant. 2026-05-11 15:45:55.440 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41899/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:55.443 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 15:45:55.444 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41899/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:55.444 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41899/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:55.444 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41899/api/school/respect/schoolpermissiongrant 2026-05-11 15:45:55.445 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41899/api/school/respect/schoolpermissiongrant. 2026-05-11 15:45:55.491 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41899/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 15:45:55.492 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41899/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 15:45:55.492 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41899/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 15:45:55.493 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 15:45:55.496 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41899/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 15:45:55.496 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41899/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 15:45:55.496 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41899/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 15:45:55.497 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41899/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 15:45:57.585 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:45:57.586 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 15:45:57.587 [DefaultDispatcher-worker-5 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42529 2026-05-11 15:45:57.589 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42529/api/school/respect/person?includeRelated=false 2026-05-11 15:45:57.589 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42529/api/school/respect/person?includeRelated=false. 2026-05-11 15:45:57.589 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42529/api/school/respect/person?includeRelated=false 2026-05-11 15:45:57.592 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 15:45:57.595 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42529/api/school/respect/person?includeRelated=false 2026-05-11 15:45:57.595 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42529/api/school/respect/person?includeRelated=false 2026-05-11 15:45:57.595 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42529/api/school/respect/person?includeRelated=false 2026-05-11 15:45:57.596 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42529/api/school/respect/person?includeRelated=false. 2026-05-11 15:45:57.644 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42529/api/school/respect/person?since=2026-05-11T11%3A45%3A57.592364572Z&includeRelated=false 2026-05-11 15:45:57.644 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42529/api/school/respect/person?since=2026-05-11T11%3A45%3A57.592364572Z&includeRelated=false. 2026-05-11 15:45:57.644 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42529/api/school/respect/person?since=2026-05-11T11%3A45%3A57.592364572Z&includeRelated=false 2026-05-11 15:45:57.646 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 15:45:57.649 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42529/api/school/respect/person?since=2026-05-11T11%3A45%3A57.592364572Z&includeRelated=false 2026-05-11 15:45:57.649 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42529/api/school/respect/person?since=2026-05-11T11%3A45%3A57.592364572Z&includeRelated=false 2026-05-11 15:45:57.649 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42529/api/school/respect/person?since=2026-05-11T11%3A45%3A57.592364572Z&includeRelated=false 2026-05-11 15:45:57.649 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42529/api/school/respect/person?since=2026-05-11T11%3A45%3A57.592364572Z&includeRelated=false. 2026-05-11 15:45:59.756 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:45:59.756 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-05-11 15:45:59.757 [DefaultDispatcher-worker-4 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36543 2026-05-11 15:45:59.808 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36543/api/school/respect/person 2026-05-11 15:45:59.809 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@71dd6115 for http://localhost:36543/api/school/respect/person 2026-05-11 15:45:59.809 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36543/api/school/respect/person 2026-05-11 15:45:59.809 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36543/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 15:45:59.814 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 15:45:59.819 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 15:45:59.821 [DefaultDispatcher-worker-2 @call-handler#167] 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-05-11 15:45:59.822 [DefaultDispatcher-worker-12 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36543/api/school/respect/person 2026-05-11 15:45:59.823 [DefaultDispatcher-worker-12 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36543/api/school/respect/person 2026-05-11 15:45:59.823 [DefaultDispatcher-worker-12 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36543/api/school/respect/person 2026-05-11 15:46:01.935 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:46:01.935 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-05-11 15:46:01.936 [DefaultDispatcher-worker-12 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43583 2026-05-11 15:46:01.937 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43583/api/school/respect/schoolpermissiongrant 2026-05-11 15:46:01.937 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43583/api/school/respect/schoolpermissiongrant. 2026-05-11 15:46:01.937 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43583/api/school/respect/schoolpermissiongrant 2026-05-11 15:46:01.940 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 15:46:01.941 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43583/api/school/respect/schoolpermissiongrant 2026-05-11 15:46:01.941 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43583/api/school/respect/schoolpermissiongrant 2026-05-11 15:46:01.941 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43583/api/school/respect/schoolpermissiongrant 2026-05-11 15:46:01.942 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43583/api/school/respect/schoolpermissiongrant. 2026-05-11 15:46:01.990 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:01.990 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43583/api/school/respect/person?includeRelated=false. 2026-05-11 15:46:01.990 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:01.991 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 15:46:01.995 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:01.995 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:01.996 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:01.996 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43583/api/school/respect/person?includeRelated=false. 2026-05-11 15:46:04.001 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:04.001 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43583/api/school/respect/person?includeRelated=false. 2026-05-11 15:46:04.001 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:04.003 [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-05-11 15:46:04.006 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:04.006 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:04.006 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43583/api/school/respect/person?includeRelated=false 2026-05-11 15:46:04.007 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43583/api/school/respect/person?includeRelated=false. 2026-05-11 15:46:06.114 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:46:06.115 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 15:46:06.116 [DefaultDispatcher-worker-12 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43493 2026-05-11 15:46:06.118 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43493/api/school/respect/person?includeRelated=false 2026-05-11 15:46:06.118 [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:43493/api/school/respect/person?includeRelated=false. 2026-05-11 15:46:06.118 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43493/api/school/respect/person?includeRelated=false 2026-05-11 15:46:06.120 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 15:46:06.124 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43493/api/school/respect/person?includeRelated=false 2026-05-11 15:46:06.124 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43493/api/school/respect/person?includeRelated=false 2026-05-11 15:46:06.124 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43493/api/school/respect/person?includeRelated=false 2026-05-11 15:46:06.124 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43493/api/school/respect/person?includeRelated=false. 2026-05-11 15:46:06.173 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43493/api/school/respect/person?since=2026-05-11T11%3A46%3A06.121013934Z&includeRelated=false 2026-05-11 15:46:06.173 [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:43493/api/school/respect/person?since=2026-05-11T11%3A46%3A06.121013934Z&includeRelated=false. 2026-05-11 15:46:06.173 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43493/api/school/respect/person?since=2026-05-11T11%3A46%3A06.121013934Z&includeRelated=false 2026-05-11 15:46:06.174 [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-05-11 15:46:06.177 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43493/api/school/respect/person?since=2026-05-11T11%3A46%3A06.121013934Z&includeRelated=false 2026-05-11 15:46:06.177 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43493/api/school/respect/person?since=2026-05-11T11%3A46%3A06.121013934Z&includeRelated=false 2026-05-11 15:46:06.177 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43493/api/school/respect/person?since=2026-05-11T11%3A46%3A06.121013934Z&includeRelated=false 2026-05-11 15:46:06.178 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43493/api/school/respect/person?since=2026-05-11T11%3A46%3A06.121013934Z&includeRelated=false. 2026-05-11 15:46:08.278 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:46:08.279 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-05-11 15:46:08.280 [DefaultDispatcher-worker-12 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41413 2026-05-11 15:46:08.282 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41413/playlist/109475d9-e0a0-450b-a27c-2c2157cc2db5 2026-05-11 15:46:08.282 [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:41413/playlist/109475d9-e0a0-450b-a27c-2c2157cc2db5. 2026-05-11 15:46:08.282 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41413/playlist/109475d9-e0a0-450b-a27c-2c2157cc2db5 2026-05-11 15:46:08.284 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 109475d9-e0a0-450b-a27c-2c2157cc2db5] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[109475d9-e0a0-450b-a27c-2c2157cc2db5]] @ /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=[109475d9-e0a0-450b-a27c-2c2157cc2db5]] @ /playlist/{uuid}/(method:GET) 2026-05-11 15:46:08.290 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41413/playlist/109475d9-e0a0-450b-a27c-2c2157cc2db5 2026-05-11 15:46:08.290 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41413/playlist/109475d9-e0a0-450b-a27c-2c2157cc2db5 2026-05-11 15:46:08.290 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41413/playlist/109475d9-e0a0-450b-a27c-2c2157cc2db5 2026-05-11 15:46:08.290 [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:41413/playlist/109475d9-e0a0-450b-a27c-2c2157cc2db5. 2026-05-11 15:46:10.444 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 15:46:10.444 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.037 seconds. 2026-05-11 15:46:10.445 [DefaultDispatcher-worker-14 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45501 2026-05-11 15:46:10.484 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45501/playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e 2026-05-11 15:46:10.485 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@64e53248 for http://localhost:45501/playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e 2026-05-11 15:46:10.485 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45501/playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e 2026-05-11 15:46:10.485 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45501/playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e from class io.ktor.http.content.TextContent 2026-05-11 15:46:10.487 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 0c3b548f-65c5-42f7-89c2-9a2563c7965e] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[0c3b548f-65c5-42f7-89c2-9a2563c7965e]] @ /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=[0c3b548f-65c5-42f7-89c2-9a2563c7965e]] @ /playlist/{uuid}/(method:POST) 2026-05-11 15:46:10.488 [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/0c3b548f-65c5-42f7-89c2-9a2563c7965e 2026-05-11 15:46:10.489 [DefaultDispatcher-worker-10 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 15:46:10.490 [DefaultDispatcher-worker-10 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45501/playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e 2026-05-11 15:46:10.490 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45501/playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e 2026-05-11 15:46:10.490 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45501/playlist/0c3b548f-65c5-42f7-89c2-9a2563c7965e 2026-05-11 16:38:11.735 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:11.810 [Test worker] INFO io.ktor.server.Application - Application started in 0.187 seconds. 2026-05-11 16:38:11.882 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36893 2026-05-11 16:38:12.597 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36893/resources/index.json 2026-05-11 16:38:12.598 [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:36893/resources/index.json. 2026-05-11 16:38:12.598 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36893/resources/index.json 2026-05-11 16:38:12.747 [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-05-11 16:38:12.822 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36893/resources/index.json 2026-05-11 16:38:12.824 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36893/resources/index.json 2026-05-11 16:38:12.824 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36893/resources/index.json 2026-05-11 16:38:12.829 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 89ms 2026-05-11 16:38:12.852 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:36893/resources/index.json. 2026-05-11 16:38:12.892 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36893/resources/index.json 2026-05-11 16:38:12.893 [DefaultDispatcher-worker-4 @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:36893/resources/index.json. 2026-05-11 16:38:12.893 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36893/resources/index.json 2026-05-11 16:38:12.895 [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-05-11 16:38:12.897 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-11 16:38:12.899 [DefaultDispatcher-worker-6 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36893/resources/index.json 2026-05-11 16:38:12.899 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36893/resources/index.json 2026-05-11 16:38:12.900 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36893/resources/index.json 2026-05-11 16:38:14.964 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:14.969 [Test worker] INFO io.ktor.server.Application - Application started in 0.005 seconds. 2026-05-11 16:38:14.977 [DefaultDispatcher-worker-6 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37273 2026-05-11 16:38:15.056 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37273/resources/index.json 2026-05-11 16:38:15.057 [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:37273/resources/index.json. 2026-05-11 16:38:15.057 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37273/resources/index.json 2026-05-11 16:38:15.075 [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-05-11 16:38:15.087 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 13ms 2026-05-11 16:38:15.088 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37273/resources/index.json 2026-05-11 16:38:15.088 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37273/resources/index.json 2026-05-11 16:38:15.088 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37273/resources/index.json 2026-05-11 16:38:15.092 [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:37273/resources/index.json. 2026-05-11 16:38:15.106 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37273/resources/index.json 2026-05-11 16:38:15.106 [DefaultDispatcher-worker-3 @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:37273/resources/index.json. 2026-05-11 16:38:15.106 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37273/resources/index.json 2026-05-11 16:38:15.108 [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-05-11 16:38:15.109 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 16:38:15.110 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37273/resources/index.json 2026-05-11 16:38:15.110 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37273/resources/index.json 2026-05-11 16:38:15.110 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37273/resources/index.json 2026-05-11 16:38:17.128 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:17.128 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 16:38:17.129 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39053 2026-05-11 16:38:17.134 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39053/resources/lesson001.json 2026-05-11 16:38:17.134 [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:39053/resources/lesson001.json. 2026-05-11 16:38:17.134 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39053/resources/lesson001.json 2026-05-11 16:38:17.137 [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-05-11 16:38:17.138 [DefaultDispatcher-worker-6 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-05-11 16:38:17.138 [DefaultDispatcher-worker-6 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39053/resources/lesson001.json 2026-05-11 16:38:17.139 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39053/resources/lesson001.json 2026-05-11 16:38:17.139 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39053/resources/lesson001.json 2026-05-11 16:38:17.141 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:39053/resources/lesson001.json. 2026-05-11 16:38:19.597 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:19.628 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.305 seconds. 2026-05-11 16:38:19.645 [DefaultDispatcher-worker-6 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37075 2026-05-11 16:38:19.683 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37075/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:19.684 [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:37075/api/school/respect/schoolpermissiongrant. 2026-05-11 16:38:19.684 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37075/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:19.704 [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-05-11 16:38:19.754 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37075/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:19.757 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37075/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:19.757 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37075/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:19.764 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37075/api/school/respect/schoolpermissiongrant. 2026-05-11 16:38:19.939 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:19.939 [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:37075/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:19.940 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:19.949 [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-05-11 16:38:20.007 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:20.008 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:20.008 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:20.009 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37075/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:20.040 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:20.040 [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:37075/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:20.044 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:20.061 [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-05-11 16:38:20.068 [DefaultDispatcher-worker-3 @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-05-11 16:38:20.078 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:20.078 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:20.078 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37075/api/school/respect/person?includeRelated=false 2026-05-11 16:38:22.374 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:22.374 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.096 seconds. 2026-05-11 16:38:22.376 [DefaultDispatcher-worker-5 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33925 2026-05-11 16:38:22.378 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33925/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:22.378 [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:33925/api/school/respect/schoolpermissiongrant. 2026-05-11 16:38:22.378 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33925/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:22.381 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 16:38:22.383 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33925/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:22.383 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33925/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:22.383 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33925/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:22.383 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33925/api/school/respect/schoolpermissiongrant. 2026-05-11 16:38:22.554 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33925/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 16:38:22.554 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33925/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 16:38:22.554 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33925/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 16:38:22.573 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 16:38:22.579 [DefaultDispatcher-worker-1 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33925/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 16:38:22.582 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33925/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 16:38:22.582 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33925/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 16:38:22.588 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33925/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 16:38:24.808 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:24.809 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-11 16:38:24.810 [DefaultDispatcher-worker-1 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35483 2026-05-11 16:38:24.813 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35483/api/school/respect/person?includeRelated=false 2026-05-11 16:38:24.813 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35483/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:24.813 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35483/api/school/respect/person?includeRelated=false 2026-05-11 16:38:24.816 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 16:38:24.820 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35483/api/school/respect/person?includeRelated=false 2026-05-11 16:38:24.820 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35483/api/school/respect/person?includeRelated=false 2026-05-11 16:38:24.821 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35483/api/school/respect/person?includeRelated=false 2026-05-11 16:38:24.822 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35483/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:24.896 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35483/api/school/respect/person?since=2026-05-11T12%3A38%3A24.816983049Z&includeRelated=false 2026-05-11 16:38:24.896 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35483/api/school/respect/person?since=2026-05-11T12%3A38%3A24.816983049Z&includeRelated=false. 2026-05-11 16:38:24.896 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35483/api/school/respect/person?since=2026-05-11T12%3A38%3A24.816983049Z&includeRelated=false 2026-05-11 16:38:24.898 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 16:38:24.901 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35483/api/school/respect/person?since=2026-05-11T12%3A38%3A24.816983049Z&includeRelated=false 2026-05-11 16:38:24.901 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35483/api/school/respect/person?since=2026-05-11T12%3A38%3A24.816983049Z&includeRelated=false 2026-05-11 16:38:24.901 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35483/api/school/respect/person?since=2026-05-11T12%3A38%3A24.816983049Z&includeRelated=false 2026-05-11 16:38:24.902 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35483/api/school/respect/person?since=2026-05-11T12%3A38%3A24.816983049Z&includeRelated=false. 2026-05-11 16:38:27.049 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:27.056 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.069 seconds. 2026-05-11 16:38:27.060 [DefaultDispatcher-worker-1 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33619 2026-05-11 16:38:27.127 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33619/api/school/respect/person 2026-05-11 16:38:27.127 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@301f9877 for http://localhost:33619/api/school/respect/person 2026-05-11 16:38:27.127 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33619/api/school/respect/person 2026-05-11 16:38:27.127 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33619/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 16:38:27.156 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 16:38:27.162 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 16:38:27.164 [DefaultDispatcher-worker-8 @call-handler#167] 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-05-11 16:38:27.165 [DefaultDispatcher-worker-1 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33619/api/school/respect/person 2026-05-11 16:38:27.165 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33619/api/school/respect/person 2026-05-11 16:38:27.165 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33619/api/school/respect/person 2026-05-11 16:38:29.310 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:29.311 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-11 16:38:29.312 [DefaultDispatcher-worker-1 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44675 2026-05-11 16:38:29.313 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44675/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:29.313 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44675/api/school/respect/schoolpermissiongrant. 2026-05-11 16:38:29.313 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44675/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:29.316 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 16:38:29.317 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44675/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:29.317 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44675/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:29.317 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44675/api/school/respect/schoolpermissiongrant 2026-05-11 16:38:29.318 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44675/api/school/respect/schoolpermissiongrant. 2026-05-11 16:38:29.371 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:29.372 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44675/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:29.372 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:29.373 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 16:38:29.378 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:29.378 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:29.378 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:29.379 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44675/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:31.384 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:31.384 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44675/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:31.384 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:31.385 [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-05-11 16:38:31.388 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:31.388 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:31.389 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44675/api/school/respect/person?includeRelated=false 2026-05-11 16:38:31.389 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44675/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:33.539 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:33.542 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.052 seconds. 2026-05-11 16:38:33.549 [DefaultDispatcher-worker-3 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34457 2026-05-11 16:38:33.562 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34457/api/school/respect/person?includeRelated=false 2026-05-11 16:38:33.562 [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:34457/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:33.562 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34457/api/school/respect/person?includeRelated=false 2026-05-11 16:38:33.566 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 16:38:33.578 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34457/api/school/respect/person?includeRelated=false 2026-05-11 16:38:33.579 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34457/api/school/respect/person?includeRelated=false 2026-05-11 16:38:33.579 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34457/api/school/respect/person?includeRelated=false 2026-05-11 16:38:33.582 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34457/api/school/respect/person?includeRelated=false. 2026-05-11 16:38:33.636 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34457/api/school/respect/person?since=2026-05-11T12%3A38%3A33.567075744Z&includeRelated=false 2026-05-11 16:38:33.640 [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:34457/api/school/respect/person?since=2026-05-11T12%3A38%3A33.567075744Z&includeRelated=false. 2026-05-11 16:38:33.640 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34457/api/school/respect/person?since=2026-05-11T12%3A38%3A33.567075744Z&includeRelated=false 2026-05-11 16:38:33.646 [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-05-11 16:38:33.652 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34457/api/school/respect/person?since=2026-05-11T12%3A38%3A33.567075744Z&includeRelated=false 2026-05-11 16:38:33.653 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34457/api/school/respect/person?since=2026-05-11T12%3A38%3A33.567075744Z&includeRelated=false 2026-05-11 16:38:33.653 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34457/api/school/respect/person?since=2026-05-11T12%3A38%3A33.567075744Z&includeRelated=false 2026-05-11 16:38:33.655 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34457/api/school/respect/person?since=2026-05-11T12%3A38%3A33.567075744Z&includeRelated=false. 2026-05-11 16:38:35.838 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:35.840 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.069 seconds. 2026-05-11 16:38:35.841 [DefaultDispatcher-worker-10 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43885 2026-05-11 16:38:35.843 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43885/playlist/df9913e0-6557-444f-a85b-932b41c637bf 2026-05-11 16:38:35.843 [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:43885/playlist/df9913e0-6557-444f-a85b-932b41c637bf. 2026-05-11 16:38:35.843 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43885/playlist/df9913e0-6557-444f-a85b-932b41c637bf 2026-05-11 16:38:35.845 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, df9913e0-6557-444f-a85b-932b41c637bf] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[df9913e0-6557-444f-a85b-932b41c637bf]] @ /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=[df9913e0-6557-444f-a85b-932b41c637bf]] @ /playlist/{uuid}/(method:GET) 2026-05-11 16:38:35.855 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43885/playlist/df9913e0-6557-444f-a85b-932b41c637bf 2026-05-11 16:38:35.856 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43885/playlist/df9913e0-6557-444f-a85b-932b41c637bf 2026-05-11 16:38:35.856 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43885/playlist/df9913e0-6557-444f-a85b-932b41c637bf 2026-05-11 16:38:35.860 [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:43885/playlist/df9913e0-6557-444f-a85b-932b41c637bf. 2026-05-11 16:38:37.993 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 16:38:37.994 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-11 16:38:37.995 [DefaultDispatcher-worker-3 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34389 2026-05-11 16:38:38.053 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34389/playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a 2026-05-11 16:38:38.053 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@68b34d42 for http://localhost:34389/playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a 2026-05-11 16:38:38.053 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34389/playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a 2026-05-11 16:38:38.054 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:34389/playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a from class io.ktor.http.content.TextContent 2026-05-11 16:38:38.056 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 7be0b45b-d706-485e-b5cd-26097ba9fe8a] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[7be0b45b-d706-485e-b5cd-26097ba9fe8a]] @ /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=[7be0b45b-d706-485e-b5cd-26097ba9fe8a]] @ /playlist/{uuid}/(method:POST) 2026-05-11 16:38:38.056 [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/7be0b45b-d706-485e-b5cd-26097ba9fe8a 2026-05-11 16:38:38.057 [DefaultDispatcher-worker-10 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 16:38:38.058 [DefaultDispatcher-worker-7 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34389/playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a 2026-05-11 16:38:38.058 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34389/playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a 2026-05-11 16:38:38.058 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34389/playlist/7be0b45b-d706-485e-b5cd-26097ba9fe8a 2026-05-11 18:29:47.966 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:29:48.118 [Test worker] INFO io.ktor.server.Application - Application started in 0.365 seconds. 2026-05-11 18:29:48.196 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43273 2026-05-11 18:29:49.057 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43273/resources/index.json 2026-05-11 18:29:49.058 [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:43273/resources/index.json. 2026-05-11 18:29:49.062 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43273/resources/index.json 2026-05-11 18:29:49.429 [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-05-11 18:29:49.602 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 191ms 2026-05-11 18:29:49.610 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43273/resources/index.json 2026-05-11 18:29:49.614 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43273/resources/index.json 2026-05-11 18:29:49.614 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43273/resources/index.json 2026-05-11 18:29:49.653 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:43273/resources/index.json. 2026-05-11 18:29:49.712 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43273/resources/index.json 2026-05-11 18:29:49.712 [DefaultDispatcher-worker-3 @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:43273/resources/index.json. 2026-05-11 18:29:49.713 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43273/resources/index.json 2026-05-11 18:29:49.722 [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-05-11 18:29:49.725 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 4ms 2026-05-11 18:29:49.729 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43273/resources/index.json 2026-05-11 18:29:49.729 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43273/resources/index.json 2026-05-11 18:29:49.729 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43273/resources/index.json 2026-05-11 18:29:50.742 [eventLoopGroupProxy-3-1] WARN i.n.u.c.AbstractEventExecutor - A task raised an exception. Task: io.netty.channel.AbstractChannel$AbstractUnsafe$8@4a5fee33 java.util.concurrent.RejectedExecutionException: event executor terminated at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:1005) at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:388) at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:381) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:907) at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:873) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:863) at io.netty.channel.DefaultChannelPipeline.destroyUp(DefaultChannelPipeline.java:816) at io.netty.channel.DefaultChannelPipeline.destroy(DefaultChannelPipeline.java:801) at io.netty.channel.DefaultChannelPipeline.access$700(DefaultChannelPipeline.java:45) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelUnregistered(DefaultChannelPipeline.java:1411) at io.netty.channel.DefaultChannelPipeline.fireChannelUnregistered(DefaultChannelPipeline.java:780) at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:692) at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:148) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:141) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:507) at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:183) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1073) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:1583) 2026-05-11 18:29:51.753 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:29:51.754 [Test worker] INFO io.ktor.server.Application - Application started in 0.002 seconds. 2026-05-11 18:29:51.757 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37321 2026-05-11 18:29:51.817 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37321/resources/index.json 2026-05-11 18:29:51.817 [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:37321/resources/index.json. 2026-05-11 18:29:51.817 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37321/resources/index.json 2026-05-11 18:29:51.821 [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-05-11 18:29:51.822 [DefaultDispatcher-worker-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 18:29:51.824 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37321/resources/index.json 2026-05-11 18:29:51.824 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37321/resources/index.json 2026-05-11 18:29:51.824 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37321/resources/index.json 2026-05-11 18:29:51.825 [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:37321/resources/index.json. 2026-05-11 18:29:51.831 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37321/resources/index.json 2026-05-11 18:29:51.831 [DefaultDispatcher-worker-5 @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:37321/resources/index.json. 2026-05-11 18:29:51.831 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37321/resources/index.json 2026-05-11 18:29:51.833 [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-05-11 18:29:51.834 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 18:29:51.834 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37321/resources/index.json 2026-05-11 18:29:51.834 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37321/resources/index.json 2026-05-11 18:29:51.834 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37321/resources/index.json 2026-05-11 18:29:53.846 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:29:53.846 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 18:29:53.848 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43821 2026-05-11 18:29:53.854 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43821/resources/lesson001.json 2026-05-11 18:29:53.854 [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:43821/resources/lesson001.json. 2026-05-11 18:29:53.854 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43821/resources/lesson001.json 2026-05-11 18:29:53.858 [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-05-11 18:29:53.859 [DefaultDispatcher-worker-2 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-05-11 18:29:53.860 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43821/resources/lesson001.json 2026-05-11 18:29:53.860 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43821/resources/lesson001.json 2026-05-11 18:29:53.860 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43821/resources/lesson001.json 2026-05-11 18:29:53.863 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:43821/resources/lesson001.json. 2026-05-11 18:29:56.285 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:29:56.308 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.259 seconds. 2026-05-11 18:29:56.319 [DefaultDispatcher-worker-6 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37545 2026-05-11 18:29:56.350 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37545/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:56.350 [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:37545/api/school/respect/schoolpermissiongrant. 2026-05-11 18:29:56.350 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37545/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:56.381 [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-05-11 18:29:56.465 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37545/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:56.465 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37545/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:56.466 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37545/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:56.474 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37545/api/school/respect/schoolpermissiongrant. 2026-05-11 18:29:56.697 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.698 [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:37545/api/school/respect/person?includeRelated=false. 2026-05-11 18:29:56.698 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.708 [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-05-11 18:29:56.790 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.790 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.791 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.797 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37545/api/school/respect/person?includeRelated=false. 2026-05-11 18:29:56.827 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.827 [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:37545/api/school/respect/person?includeRelated=false. 2026-05-11 18:29:56.827 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.833 [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-05-11 18:29:56.839 [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-05-11 18:29:56.841 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.842 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:56.842 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37545/api/school/respect/person?includeRelated=false 2026-05-11 18:29:59.007 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:29:59.008 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.052 seconds. 2026-05-11 18:29:59.009 [DefaultDispatcher-worker-3 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36161 2026-05-11 18:29:59.011 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36161/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:59.011 [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:36161/api/school/respect/schoolpermissiongrant. 2026-05-11 18:29:59.011 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36161/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:59.013 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 18:29:59.016 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36161/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:59.016 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36161/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:59.016 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36161/api/school/respect/schoolpermissiongrant 2026-05-11 18:29:59.017 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36161/api/school/respect/schoolpermissiongrant. 2026-05-11 18:29:59.081 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36161/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 18:29:59.081 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36161/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 18:29:59.081 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36161/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 18:29:59.086 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 18:29:59.093 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36161/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 18:29:59.094 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36161/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 18:29:59.094 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36161/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 18:29:59.096 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36161/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 18:30:01.295 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:30:01.299 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.059 seconds. 2026-05-11 18:30:01.302 [DefaultDispatcher-worker-6 @coroutine#130] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39887 2026-05-11 18:30:01.306 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39887/api/school/respect/person?includeRelated=false 2026-05-11 18:30:01.306 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39887/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:01.306 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39887/api/school/respect/person?includeRelated=false 2026-05-11 18:30:01.318 [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-05-11 18:30:01.327 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39887/api/school/respect/person?includeRelated=false 2026-05-11 18:30:01.327 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39887/api/school/respect/person?includeRelated=false 2026-05-11 18:30:01.327 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39887/api/school/respect/person?includeRelated=false 2026-05-11 18:30:01.329 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39887/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:01.421 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39887/api/school/respect/person?since=2026-05-11T14%3A30%3A01.319139628Z&includeRelated=false 2026-05-11 18:30:01.422 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39887/api/school/respect/person?since=2026-05-11T14%3A30%3A01.319139628Z&includeRelated=false. 2026-05-11 18:30:01.422 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39887/api/school/respect/person?since=2026-05-11T14%3A30%3A01.319139628Z&includeRelated=false 2026-05-11 18:30:01.435 [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-05-11 18:30:01.442 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39887/api/school/respect/person?since=2026-05-11T14%3A30%3A01.319139628Z&includeRelated=false 2026-05-11 18:30:01.443 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39887/api/school/respect/person?since=2026-05-11T14%3A30%3A01.319139628Z&includeRelated=false 2026-05-11 18:30:01.443 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39887/api/school/respect/person?since=2026-05-11T14%3A30%3A01.319139628Z&includeRelated=false 2026-05-11 18:30:01.444 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39887/api/school/respect/person?since=2026-05-11T14%3A30%3A01.319139628Z&includeRelated=false. 2026-05-11 18:30:03.647 [Test worker @coroutine#147] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:30:03.650 [Test worker @coroutine#147] INFO io.ktor.server.Application - Application started in 0.063 seconds. 2026-05-11 18:30:03.671 [DefaultDispatcher-worker-3 @coroutine#156] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44315 2026-05-11 18:30:03.716 [DefaultDispatcher-worker-5 @coroutine#154] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44315/api/school/respect/person 2026-05-11 18:30:03.716 [DefaultDispatcher-worker-5 @coroutine#154] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@11a36986 for http://localhost:44315/api/school/respect/person 2026-05-11 18:30:03.716 [DefaultDispatcher-worker-5 @coroutine#154] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44315/api/school/respect/person 2026-05-11 18:30:03.716 [DefaultDispatcher-worker-5 @coroutine#154] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:44315/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 18:30:03.720 [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-05-11 18:30:03.727 [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(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 18:30:03.730 [DefaultDispatcher-worker-5 @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-05-11 18:30:03.731 [DefaultDispatcher-worker-4 @coroutine#154] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44315/api/school/respect/person 2026-05-11 18:30:03.732 [DefaultDispatcher-worker-4 @coroutine#154] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44315/api/school/respect/person 2026-05-11 18:30:03.732 [DefaultDispatcher-worker-4 @coroutine#154] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44315/api/school/respect/person 2026-05-11 18:30:05.943 [Test worker @coroutine#171] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:30:05.952 [Test worker @coroutine#171] INFO io.ktor.server.Application - Application started in 0.066 seconds. 2026-05-11 18:30:05.964 [DefaultDispatcher-worker-5 @coroutine#180] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35169 2026-05-11 18:30:05.965 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35169/api/school/respect/schoolpermissiongrant 2026-05-11 18:30:05.965 [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:35169/api/school/respect/schoolpermissiongrant. 2026-05-11 18:30:05.965 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35169/api/school/respect/schoolpermissiongrant 2026-05-11 18:30:05.973 [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-05-11 18:30:05.984 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35169/api/school/respect/schoolpermissiongrant 2026-05-11 18:30:05.984 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35169/api/school/respect/schoolpermissiongrant 2026-05-11 18:30:05.984 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35169/api/school/respect/schoolpermissiongrant 2026-05-11 18:30:05.985 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35169/api/school/respect/schoolpermissiongrant. 2026-05-11 18:30:06.035 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:06.035 [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:35169/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:06.035 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:06.037 [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-05-11 18:30:06.043 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:06.044 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:06.044 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:06.045 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35169/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:08.050 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:08.051 [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:35169/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:08.051 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:08.052 [eventLoopGroupProxy-25-1 @call-handler#197] 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-05-11 18:30:08.056 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:08.056 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:08.056 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35169/api/school/respect/person?includeRelated=false 2026-05-11 18:30:08.057 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35169/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:10.202 [Test worker @coroutine#203] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:30:10.203 [Test worker @coroutine#203] INFO io.ktor.server.Application - Application started in 0.052 seconds. 2026-05-11 18:30:10.204 [DefaultDispatcher-worker-4 @coroutine#212] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37605 2026-05-11 18:30:10.207 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37605/api/school/respect/person?includeRelated=false 2026-05-11 18:30:10.207 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:37605/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:10.207 [Test worker @coroutine#203] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37605/api/school/respect/person?includeRelated=false 2026-05-11 18:30:10.211 [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-05-11 18:30:10.218 [Test worker @coroutine#203] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37605/api/school/respect/person?includeRelated=false 2026-05-11 18:30:10.218 [Test worker @coroutine#203] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37605/api/school/respect/person?includeRelated=false 2026-05-11 18:30:10.218 [Test worker @coroutine#203] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37605/api/school/respect/person?includeRelated=false 2026-05-11 18:30:10.220 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37605/api/school/respect/person?includeRelated=false. 2026-05-11 18:30:10.275 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37605/api/school/respect/person?since=2026-05-11T14%3A30%3A10.211885195Z&includeRelated=false 2026-05-11 18:30:10.275 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:37605/api/school/respect/person?since=2026-05-11T14%3A30%3A10.211885195Z&includeRelated=false. 2026-05-11 18:30:10.275 [Test worker @coroutine#203] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37605/api/school/respect/person?since=2026-05-11T14%3A30%3A10.211885195Z&includeRelated=false 2026-05-11 18:30:10.276 [eventLoopGroupProxy-28-1 @call-handler#224] 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-05-11 18:30:10.281 [Test worker @coroutine#203] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37605/api/school/respect/person?since=2026-05-11T14%3A30%3A10.211885195Z&includeRelated=false 2026-05-11 18:30:10.281 [Test worker @coroutine#203] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37605/api/school/respect/person?since=2026-05-11T14%3A30%3A10.211885195Z&includeRelated=false 2026-05-11 18:30:10.281 [Test worker @coroutine#203] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37605/api/school/respect/person?since=2026-05-11T14%3A30%3A10.211885195Z&includeRelated=false 2026-05-11 18:30:10.286 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37605/api/school/respect/person?since=2026-05-11T14%3A30%3A10.211885195Z&includeRelated=false. 2026-05-11 18:30:12.434 [Test worker @coroutine#230] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:30:12.435 [Test worker @coroutine#230] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-11 18:30:12.436 [DefaultDispatcher-worker-2 @coroutine#240] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40793 2026-05-11 18:30:12.438 [Test worker @coroutine#230] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40793/playlist/212ee021-3a17-4c33-ada0-bbd22b8f9b61 2026-05-11 18:30:12.438 [Test worker @coroutine#230] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40793/playlist/212ee021-3a17-4c33-ada0-bbd22b8f9b61. 2026-05-11 18:30:12.438 [Test worker @coroutine#230] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40793/playlist/212ee021-3a17-4c33-ada0-bbd22b8f9b61 2026-05-11 18:30:12.441 [eventLoopGroupProxy-31-1 @call-handler#244] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 212ee021-3a17-4c33-ada0-bbd22b8f9b61] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[212ee021-3a17-4c33-ada0-bbd22b8f9b61]] @ /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=[212ee021-3a17-4c33-ada0-bbd22b8f9b61]] @ /playlist/{uuid}/(method:GET) 2026-05-11 18:30:12.447 [Test worker @coroutine#230] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40793/playlist/212ee021-3a17-4c33-ada0-bbd22b8f9b61 2026-05-11 18:30:12.447 [Test worker @coroutine#230] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40793/playlist/212ee021-3a17-4c33-ada0-bbd22b8f9b61 2026-05-11 18:30:12.447 [Test worker @coroutine#230] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40793/playlist/212ee021-3a17-4c33-ada0-bbd22b8f9b61 2026-05-11 18:30:12.447 [Test worker @coroutine#230] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:40793/playlist/212ee021-3a17-4c33-ada0-bbd22b8f9b61. 2026-05-11 18:30:14.605 [Test worker @coroutine#248] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 18:30:14.606 [Test worker @coroutine#248] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-05-11 18:30:14.607 [DefaultDispatcher-worker-2 @coroutine#257] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38021 2026-05-11 18:30:14.648 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38021/playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc 2026-05-11 18:30:14.648 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@621a7e5d for http://localhost:38021/playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc 2026-05-11 18:30:14.648 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38021/playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc 2026-05-11 18:30:14.648 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38021/playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc from class io.ktor.http.content.TextContent 2026-05-11 18:30:14.656 [eventLoopGroupProxy-34-1 @call-handler#265] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 96b715b3-7bdd-4403-b4f0-1d803d0b17bc] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[96b715b3-7bdd-4403-b4f0-1d803d0b17bc]] @ /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=[96b715b3-7bdd-4403-b4f0-1d803d0b17bc]] @ /playlist/{uuid}/(method:POST) 2026-05-11 18:30:14.657 [eventLoopGroupProxy-34-1 @call-handler#265] 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/96b715b3-7bdd-4403-b4f0-1d803d0b17bc 2026-05-11 18:30:14.659 [DefaultDispatcher-worker-5 @call-handler#265] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 18:30:14.660 [DefaultDispatcher-worker-7 @coroutine#255] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38021/playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc 2026-05-11 18:30:14.660 [DefaultDispatcher-worker-7 @coroutine#255] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38021/playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc 2026-05-11 18:30:14.660 [DefaultDispatcher-worker-7 @coroutine#255] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38021/playlist/96b715b3-7bdd-4403-b4f0-1d803d0b17bc 2026-05-11 19:04:52.743 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:04:52.870 [Test worker] INFO io.ktor.server.Application - Application started in 0.324 seconds. 2026-05-11 19:04:52.955 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36471 2026-05-11 19:04:53.801 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36471/resources/index.json 2026-05-11 19:04:53.802 [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:36471/resources/index.json. 2026-05-11 19:04:53.802 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36471/resources/index.json 2026-05-11 19:04:54.135 [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-05-11 19:04:54.230 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 107ms 2026-05-11 19:04:54.238 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36471/resources/index.json 2026-05-11 19:04:54.240 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36471/resources/index.json 2026-05-11 19:04:54.241 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36471/resources/index.json 2026-05-11 19:04:54.270 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:36471/resources/index.json. 2026-05-11 19:04:54.322 [Test worker @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36471/resources/index.json 2026-05-11 19:04:54.322 [Test worker @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:36471/resources/index.json. 2026-05-11 19:04:54.322 [Test worker @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36471/resources/index.json 2026-05-11 19:04:54.326 [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-05-11 19:04:54.328 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-11 19:04:54.330 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36471/resources/index.json 2026-05-11 19:04:54.330 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36471/resources/index.json 2026-05-11 19:04:54.330 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36471/resources/index.json 2026-05-11 19:04:56.356 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:04:56.357 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 19:04:56.358 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37145 2026-05-11 19:04:56.428 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37145/resources/index.json 2026-05-11 19:04:56.428 [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:37145/resources/index.json. 2026-05-11 19:04:56.428 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37145/resources/index.json 2026-05-11 19:04:56.431 [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-05-11 19:04:56.432 [DefaultDispatcher-worker-4 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 19:04:56.433 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37145/resources/index.json 2026-05-11 19:04:56.433 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37145/resources/index.json 2026-05-11 19:04:56.433 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37145/resources/index.json 2026-05-11 19:04:56.434 [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:37145/resources/index.json. 2026-05-11 19:04:56.438 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37145/resources/index.json 2026-05-11 19:04:56.438 [DefaultDispatcher-worker-5 @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:37145/resources/index.json. 2026-05-11 19:04:56.438 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37145/resources/index.json 2026-05-11 19:04:56.439 [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-05-11 19:04:56.440 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 19:04:56.440 [DefaultDispatcher-worker-6 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37145/resources/index.json 2026-05-11 19:04:56.440 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37145/resources/index.json 2026-05-11 19:04:56.441 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37145/resources/index.json 2026-05-11 19:04:58.451 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:04:58.451 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 19:04:58.452 [DefaultDispatcher-worker-6 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43067 2026-05-11 19:04:58.457 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43067/resources/lesson001.json 2026-05-11 19:04:58.457 [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:43067/resources/lesson001.json. 2026-05-11 19:04:58.457 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43067/resources/lesson001.json 2026-05-11 19:04:58.460 [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-05-11 19:04:58.461 [DefaultDispatcher-worker-5 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-05-11 19:04:58.462 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43067/resources/lesson001.json 2026-05-11 19:04:58.462 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43067/resources/lesson001.json 2026-05-11 19:04:58.462 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43067/resources/lesson001.json 2026-05-11 19:04:58.464 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:43067/resources/lesson001.json. 2026-05-11 19:05:00.925 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:00.951 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.229 seconds. 2026-05-11 19:05:00.965 [DefaultDispatcher-worker-6 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46617 2026-05-11 19:05:00.987 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46617/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:00.987 [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:46617/api/school/respect/schoolpermissiongrant. 2026-05-11 19:05:00.987 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46617/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:01.009 [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-05-11 19:05:01.032 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46617/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:01.036 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46617/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:01.036 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46617/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:01.042 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46617/api/school/respect/schoolpermissiongrant. 2026-05-11 19:05:01.130 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.130 [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:46617/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:01.130 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.133 [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-05-11 19:05:01.154 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.154 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.154 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.155 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46617/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:01.162 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.162 [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:46617/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:01.162 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.164 [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-05-11 19:05:01.167 [DefaultDispatcher-worker-6 @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-05-11 19:05:01.168 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.168 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:01.168 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46617/api/school/respect/person?includeRelated=false 2026-05-11 19:05:03.315 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:03.316 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.05 seconds. 2026-05-11 19:05:03.318 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46487 2026-05-11 19:05:03.319 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46487/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:03.319 [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:46487/api/school/respect/schoolpermissiongrant. 2026-05-11 19:05:03.319 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46487/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:03.322 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 19:05:03.324 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46487/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:03.324 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46487/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:03.324 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46487/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:03.324 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46487/api/school/respect/schoolpermissiongrant. 2026-05-11 19:05:03.377 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46487/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:05:03.378 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46487/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 19:05:03.378 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46487/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:05:03.379 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 19:05:03.382 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46487/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:05:03.382 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46487/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:05:03.382 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46487/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:05:03.383 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46487/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 19:05:05.564 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:05.571 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.061 seconds. 2026-05-11 19:05:05.575 [DefaultDispatcher-worker-2 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43445 2026-05-11 19:05:05.585 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43445/api/school/respect/person?includeRelated=false 2026-05-11 19:05:05.586 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43445/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:05.586 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43445/api/school/respect/person?includeRelated=false 2026-05-11 19:05:05.605 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 19:05:05.612 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43445/api/school/respect/person?includeRelated=false 2026-05-11 19:05:05.613 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43445/api/school/respect/person?includeRelated=false 2026-05-11 19:05:05.613 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43445/api/school/respect/person?includeRelated=false 2026-05-11 19:05:05.616 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43445/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:05.699 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43445/api/school/respect/person?since=2026-05-11T15%3A05%3A05.606403198Z&includeRelated=false 2026-05-11 19:05:05.699 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43445/api/school/respect/person?since=2026-05-11T15%3A05%3A05.606403198Z&includeRelated=false. 2026-05-11 19:05:05.700 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43445/api/school/respect/person?since=2026-05-11T15%3A05%3A05.606403198Z&includeRelated=false 2026-05-11 19:05:05.703 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 19:05:05.710 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43445/api/school/respect/person?since=2026-05-11T15%3A05%3A05.606403198Z&includeRelated=false 2026-05-11 19:05:05.710 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43445/api/school/respect/person?since=2026-05-11T15%3A05%3A05.606403198Z&includeRelated=false 2026-05-11 19:05:05.711 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43445/api/school/respect/person?since=2026-05-11T15%3A05%3A05.606403198Z&includeRelated=false 2026-05-11 19:05:05.712 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43445/api/school/respect/person?since=2026-05-11T15%3A05%3A05.606403198Z&includeRelated=false. 2026-05-11 19:05:07.900 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:07.909 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.057 seconds. 2026-05-11 19:05:07.917 [DefaultDispatcher-worker-6 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38951 2026-05-11 19:05:07.974 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38951/api/school/respect/person 2026-05-11 19:05:07.981 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@58226fc8 for http://localhost:38951/api/school/respect/person 2026-05-11 19:05:07.981 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38951/api/school/respect/person 2026-05-11 19:05:07.981 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38951/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 19:05:08.004 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 19:05:08.030 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 19:05:08.037 [DefaultDispatcher-worker-2 @call-handler#167] 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-05-11 19:05:08.040 [DefaultDispatcher-worker-5 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38951/api/school/respect/person 2026-05-11 19:05:08.040 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38951/api/school/respect/person 2026-05-11 19:05:08.040 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38951/api/school/respect/person 2026-05-11 19:05:10.243 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:10.244 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.065 seconds. 2026-05-11 19:05:10.250 [DefaultDispatcher-worker-9 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42803 2026-05-11 19:05:10.252 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42803/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:10.252 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42803/api/school/respect/schoolpermissiongrant. 2026-05-11 19:05:10.252 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42803/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:10.283 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 19:05:10.287 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42803/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:10.288 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42803/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:10.288 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42803/api/school/respect/schoolpermissiongrant 2026-05-11 19:05:10.291 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42803/api/school/respect/schoolpermissiongrant. 2026-05-11 19:05:10.359 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:10.359 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42803/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:10.359 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:10.361 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 19:05:10.371 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:10.371 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:10.371 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:10.375 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42803/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:12.382 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:12.382 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42803/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:12.382 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:12.384 [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-05-11 19:05:12.399 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:12.400 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:12.400 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42803/api/school/respect/person?includeRelated=false 2026-05-11 19:05:12.401 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42803/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:14.746 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:14.758 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.141 seconds. 2026-05-11 19:05:14.765 [DefaultDispatcher-worker-6 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40747 2026-05-11 19:05:14.772 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40747/api/school/respect/person?includeRelated=false 2026-05-11 19:05:14.772 [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:40747/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:14.772 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40747/api/school/respect/person?includeRelated=false 2026-05-11 19:05:14.778 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 19:05:14.788 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40747/api/school/respect/person?includeRelated=false 2026-05-11 19:05:14.788 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40747/api/school/respect/person?includeRelated=false 2026-05-11 19:05:14.788 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40747/api/school/respect/person?includeRelated=false 2026-05-11 19:05:14.790 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40747/api/school/respect/person?includeRelated=false. 2026-05-11 19:05:14.844 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40747/api/school/respect/person?since=2026-05-11T15%3A05%3A14.780740268Z&includeRelated=false 2026-05-11 19:05:14.846 [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:40747/api/school/respect/person?since=2026-05-11T15%3A05%3A14.780740268Z&includeRelated=false. 2026-05-11 19:05:14.846 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40747/api/school/respect/person?since=2026-05-11T15%3A05%3A14.780740268Z&includeRelated=false 2026-05-11 19:05:14.859 [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-05-11 19:05:14.868 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40747/api/school/respect/person?since=2026-05-11T15%3A05%3A14.780740268Z&includeRelated=false 2026-05-11 19:05:14.868 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40747/api/school/respect/person?since=2026-05-11T15%3A05%3A14.780740268Z&includeRelated=false 2026-05-11 19:05:14.868 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40747/api/school/respect/person?since=2026-05-11T15%3A05%3A14.780740268Z&includeRelated=false 2026-05-11 19:05:14.870 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40747/api/school/respect/person?since=2026-05-11T15%3A05%3A14.780740268Z&includeRelated=false. 2026-05-11 19:05:17.062 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:17.063 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.066 seconds. 2026-05-11 19:05:17.065 [DefaultDispatcher-worker-9 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40021 2026-05-11 19:05:17.067 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40021/playlist/ea2feb53-f7ec-4037-bc77-c67f287d96d4 2026-05-11 19:05:17.067 [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:40021/playlist/ea2feb53-f7ec-4037-bc77-c67f287d96d4. 2026-05-11 19:05:17.067 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40021/playlist/ea2feb53-f7ec-4037-bc77-c67f287d96d4 2026-05-11 19:05:17.070 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, ea2feb53-f7ec-4037-bc77-c67f287d96d4] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[ea2feb53-f7ec-4037-bc77-c67f287d96d4]] @ /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=[ea2feb53-f7ec-4037-bc77-c67f287d96d4]] @ /playlist/{uuid}/(method:GET) 2026-05-11 19:05:17.081 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40021/playlist/ea2feb53-f7ec-4037-bc77-c67f287d96d4 2026-05-11 19:05:17.081 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40021/playlist/ea2feb53-f7ec-4037-bc77-c67f287d96d4 2026-05-11 19:05:17.081 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40021/playlist/ea2feb53-f7ec-4037-bc77-c67f287d96d4 2026-05-11 19:05:17.081 [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:40021/playlist/ea2feb53-f7ec-4037-bc77-c67f287d96d4. 2026-05-11 19:05:19.239 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:05:19.239 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.057 seconds. 2026-05-11 19:05:19.240 [DefaultDispatcher-worker-8 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38745 2026-05-11 19:05:19.288 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38745/playlist/a90d388d-4964-47a9-b744-3211937f189a 2026-05-11 19:05:19.289 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@372c3a56 for http://localhost:38745/playlist/a90d388d-4964-47a9-b744-3211937f189a 2026-05-11 19:05:19.289 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38745/playlist/a90d388d-4964-47a9-b744-3211937f189a 2026-05-11 19:05:19.289 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38745/playlist/a90d388d-4964-47a9-b744-3211937f189a from class io.ktor.http.content.TextContent 2026-05-11 19:05:19.291 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, a90d388d-4964-47a9-b744-3211937f189a] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[a90d388d-4964-47a9-b744-3211937f189a]] @ /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=[a90d388d-4964-47a9-b744-3211937f189a]] @ /playlist/{uuid}/(method:POST) 2026-05-11 19:05:19.292 [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/a90d388d-4964-47a9-b744-3211937f189a 2026-05-11 19:05:19.293 [DefaultDispatcher-worker-2 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/a90d388d-4964-47a9-b744-3211937f189a request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 19:05:19.293 [DefaultDispatcher-worker-5 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38745/playlist/a90d388d-4964-47a9-b744-3211937f189a 2026-05-11 19:05:19.294 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38745/playlist/a90d388d-4964-47a9-b744-3211937f189a 2026-05-11 19:05:19.294 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38745/playlist/a90d388d-4964-47a9-b744-3211937f189a 2026-05-11 19:45:31.869 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:31.992 [Test worker] INFO io.ktor.server.Application - Application started in 0.31 seconds. 2026-05-11 19:45:32.102 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35491 2026-05-11 19:45:33.400 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35491/resources/index.json 2026-05-11 19:45:33.401 [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:35491/resources/index.json. 2026-05-11 19:45:33.401 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35491/resources/index.json 2026-05-11 19:45:33.581 [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-05-11 19:45:33.666 [DefaultDispatcher-worker-4 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 93ms 2026-05-11 19:45:33.670 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35491/resources/index.json 2026-05-11 19:45:33.673 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35491/resources/index.json 2026-05-11 19:45:33.673 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35491/resources/index.json 2026-05-11 19:45:33.704 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:35491/resources/index.json. 2026-05-11 19:45:33.757 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35491/resources/index.json 2026-05-11 19:45:33.757 [DefaultDispatcher-worker-2 @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:35491/resources/index.json. 2026-05-11 19:45:33.757 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35491/resources/index.json 2026-05-11 19:45:33.764 [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-05-11 19:45:33.767 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 4ms 2026-05-11 19:45:33.770 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35491/resources/index.json 2026-05-11 19:45:33.770 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35491/resources/index.json 2026-05-11 19:45:33.770 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35491/resources/index.json 2026-05-11 19:45:35.797 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:35.798 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 19:45:35.801 [DefaultDispatcher-worker-2 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:32847 2026-05-11 19:45:35.848 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32847/resources/index.json 2026-05-11 19:45:35.848 [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:32847/resources/index.json. 2026-05-11 19:45:35.848 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32847/resources/index.json 2026-05-11 19:45:35.852 [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-05-11 19:45:35.853 [DefaultDispatcher-worker-3 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 2ms 2026-05-11 19:45:35.854 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32847/resources/index.json 2026-05-11 19:45:35.854 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32847/resources/index.json 2026-05-11 19:45:35.854 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32847/resources/index.json 2026-05-11 19:45:35.854 [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:32847/resources/index.json. 2026-05-11 19:45:35.860 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32847/resources/index.json 2026-05-11 19:45:35.860 [DefaultDispatcher-worker-3 @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:32847/resources/index.json. 2026-05-11 19:45:35.860 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32847/resources/index.json 2026-05-11 19:45:35.862 [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-05-11 19:45:35.863 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 19:45:35.863 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32847/resources/index.json 2026-05-11 19:45:35.864 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32847/resources/index.json 2026-05-11 19:45:35.864 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32847/resources/index.json 2026-05-11 19:45:37.870 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:37.871 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 19:45:37.872 [DefaultDispatcher-worker-6 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44305 2026-05-11 19:45:37.877 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44305/resources/lesson001.json 2026-05-11 19:45:37.877 [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:44305/resources/lesson001.json. 2026-05-11 19:45:37.877 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44305/resources/lesson001.json 2026-05-11 19:45:37.880 [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-05-11 19:45:37.881 [DefaultDispatcher-worker-3 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-05-11 19:45:37.881 [DefaultDispatcher-worker-3 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44305/resources/lesson001.json 2026-05-11 19:45:37.882 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44305/resources/lesson001.json 2026-05-11 19:45:37.882 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44305/resources/lesson001.json 2026-05-11 19:45:37.884 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:44305/resources/lesson001.json. 2026-05-11 19:45:40.596 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:40.618 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.452 seconds. 2026-05-11 19:45:40.629 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42331 2026-05-11 19:45:40.659 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42331/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:40.659 [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:42331/api/school/respect/schoolpermissiongrant. 2026-05-11 19:45:40.659 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42331/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:40.688 [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-05-11 19:45:40.724 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42331/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:40.725 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42331/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:40.725 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42331/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:40.727 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42331/api/school/respect/schoolpermissiongrant. 2026-05-11 19:45:40.943 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:40.944 [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:42331/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:40.944 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:40.949 [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-05-11 19:45:40.983 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:40.984 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:40.984 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:40.985 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42331/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:40.999 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:40.999 [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:42331/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:40.999 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:41.002 [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-05-11 19:45:41.006 [DefaultDispatcher-worker-7 @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-05-11 19:45:41.007 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:41.007 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:41.007 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42331/api/school/respect/person?includeRelated=false 2026-05-11 19:45:43.189 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:43.191 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.061 seconds. 2026-05-11 19:45:43.192 [DefaultDispatcher-worker-5 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44919 2026-05-11 19:45:43.194 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44919/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:43.194 [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:44919/api/school/respect/schoolpermissiongrant. 2026-05-11 19:45:43.194 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44919/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:43.198 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 19:45:43.204 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44919/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:43.204 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44919/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:43.204 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44919/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:43.205 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44919/api/school/respect/schoolpermissiongrant. 2026-05-11 19:45:43.253 [DefaultDispatcher-worker-9 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44919/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:45:43.253 [DefaultDispatcher-worker-9 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44919/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 19:45:43.253 [DefaultDispatcher-worker-9 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44919/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:45:43.255 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 19:45:43.258 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44919/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:45:43.258 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44919/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:45:43.258 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44919/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:45:43.259 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44919/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 19:45:45.399 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:45.405 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.052 seconds. 2026-05-11 19:45:45.412 [DefaultDispatcher-worker-2 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34087 2026-05-11 19:45:45.425 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34087/api/school/respect/person?includeRelated=false 2026-05-11 19:45:45.425 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34087/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:45.425 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34087/api/school/respect/person?includeRelated=false 2026-05-11 19:45:45.438 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 19:45:45.443 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34087/api/school/respect/person?includeRelated=false 2026-05-11 19:45:45.443 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34087/api/school/respect/person?includeRelated=false 2026-05-11 19:45:45.443 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34087/api/school/respect/person?includeRelated=false 2026-05-11 19:45:45.445 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34087/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:45.511 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34087/api/school/respect/person?since=2026-05-11T15%3A45%3A45.439414191Z&includeRelated=false 2026-05-11 19:45:45.511 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34087/api/school/respect/person?since=2026-05-11T15%3A45%3A45.439414191Z&includeRelated=false. 2026-05-11 19:45:45.511 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34087/api/school/respect/person?since=2026-05-11T15%3A45%3A45.439414191Z&includeRelated=false 2026-05-11 19:45:45.514 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 19:45:45.519 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34087/api/school/respect/person?since=2026-05-11T15%3A45%3A45.439414191Z&includeRelated=false 2026-05-11 19:45:45.520 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34087/api/school/respect/person?since=2026-05-11T15%3A45%3A45.439414191Z&includeRelated=false 2026-05-11 19:45:45.520 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34087/api/school/respect/person?since=2026-05-11T15%3A45%3A45.439414191Z&includeRelated=false 2026-05-11 19:45:45.521 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34087/api/school/respect/person?since=2026-05-11T15%3A45%3A45.439414191Z&includeRelated=false. 2026-05-11 19:45:47.702 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:47.703 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-05-11 19:45:47.705 [DefaultDispatcher-worker-3 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43219 2026-05-11 19:45:47.751 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43219/api/school/respect/person 2026-05-11 19:45:47.751 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@6cc4b375 for http://localhost:43219/api/school/respect/person 2026-05-11 19:45:47.752 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43219/api/school/respect/person 2026-05-11 19:45:47.752 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43219/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 19:45:47.756 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 19:45:47.763 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 19:45:47.766 [DefaultDispatcher-worker-3 @call-handler#167] 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-05-11 19:45:47.767 [DefaultDispatcher-worker-3 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43219/api/school/respect/person 2026-05-11 19:45:47.767 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43219/api/school/respect/person 2026-05-11 19:45:47.767 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43219/api/school/respect/person 2026-05-11 19:45:49.950 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:49.952 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.063 seconds. 2026-05-11 19:45:49.954 [DefaultDispatcher-worker-3 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33389 2026-05-11 19:45:49.955 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33389/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:49.955 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33389/api/school/respect/schoolpermissiongrant. 2026-05-11 19:45:49.955 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33389/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:49.961 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 19:45:49.964 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33389/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:49.965 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33389/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:49.965 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33389/api/school/respect/schoolpermissiongrant 2026-05-11 19:45:49.966 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33389/api/school/respect/schoolpermissiongrant. 2026-05-11 19:45:50.016 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:50.016 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33389/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:50.016 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:50.042 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 19:45:50.088 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:50.089 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:50.089 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:50.092 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33389/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:52.102 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:52.102 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33389/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:52.102 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:52.104 [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-05-11 19:45:52.108 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:52.108 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:52.108 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33389/api/school/respect/person?includeRelated=false 2026-05-11 19:45:52.110 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33389/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:54.366 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:54.367 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.082 seconds. 2026-05-11 19:45:54.368 [DefaultDispatcher-worker-9 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37479 2026-05-11 19:45:54.371 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37479/api/school/respect/person?includeRelated=false 2026-05-11 19:45:54.371 [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:37479/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:54.371 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37479/api/school/respect/person?includeRelated=false 2026-05-11 19:45:54.374 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 19:45:54.379 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37479/api/school/respect/person?includeRelated=false 2026-05-11 19:45:54.379 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37479/api/school/respect/person?includeRelated=false 2026-05-11 19:45:54.379 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37479/api/school/respect/person?includeRelated=false 2026-05-11 19:45:54.380 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37479/api/school/respect/person?includeRelated=false. 2026-05-11 19:45:54.527 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37479/api/school/respect/person?since=2026-05-11T15%3A45%3A54.375205487Z&includeRelated=false 2026-05-11 19:45:54.527 [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:37479/api/school/respect/person?since=2026-05-11T15%3A45%3A54.375205487Z&includeRelated=false. 2026-05-11 19:45:54.527 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37479/api/school/respect/person?since=2026-05-11T15%3A45%3A54.375205487Z&includeRelated=false 2026-05-11 19:45:54.528 [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-05-11 19:45:54.531 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37479/api/school/respect/person?since=2026-05-11T15%3A45%3A54.375205487Z&includeRelated=false 2026-05-11 19:45:54.532 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37479/api/school/respect/person?since=2026-05-11T15%3A45%3A54.375205487Z&includeRelated=false 2026-05-11 19:45:54.532 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37479/api/school/respect/person?since=2026-05-11T15%3A45%3A54.375205487Z&includeRelated=false 2026-05-11 19:45:54.532 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37479/api/school/respect/person?since=2026-05-11T15%3A45%3A54.375205487Z&includeRelated=false. 2026-05-11 19:45:56.667 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:56.668 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.054 seconds. 2026-05-11 19:45:56.669 [DefaultDispatcher-worker-5 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44809 2026-05-11 19:45:56.671 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44809/playlist/349c396b-f6e3-4eb6-b64d-1069e7aa14d1 2026-05-11 19:45:56.671 [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:44809/playlist/349c396b-f6e3-4eb6-b64d-1069e7aa14d1. 2026-05-11 19:45:56.671 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44809/playlist/349c396b-f6e3-4eb6-b64d-1069e7aa14d1 2026-05-11 19:45:56.673 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 349c396b-f6e3-4eb6-b64d-1069e7aa14d1] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[349c396b-f6e3-4eb6-b64d-1069e7aa14d1]] @ /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=[349c396b-f6e3-4eb6-b64d-1069e7aa14d1]] @ /playlist/{uuid}/(method:GET) 2026-05-11 19:45:56.679 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44809/playlist/349c396b-f6e3-4eb6-b64d-1069e7aa14d1 2026-05-11 19:45:56.679 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44809/playlist/349c396b-f6e3-4eb6-b64d-1069e7aa14d1 2026-05-11 19:45:56.679 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44809/playlist/349c396b-f6e3-4eb6-b64d-1069e7aa14d1 2026-05-11 19:45:56.680 [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:44809/playlist/349c396b-f6e3-4eb6-b64d-1069e7aa14d1. 2026-05-11 19:45:58.848 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:45:58.849 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-05-11 19:45:58.850 [DefaultDispatcher-worker-7 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37053 2026-05-11 19:45:58.896 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37053/playlist/a9097530-3875-4636-9f76-9693bcafca9c 2026-05-11 19:45:58.896 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@26f3f38 for http://localhost:37053/playlist/a9097530-3875-4636-9f76-9693bcafca9c 2026-05-11 19:45:58.896 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37053/playlist/a9097530-3875-4636-9f76-9693bcafca9c 2026-05-11 19:45:58.897 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:37053/playlist/a9097530-3875-4636-9f76-9693bcafca9c from class io.ktor.http.content.TextContent 2026-05-11 19:45:58.899 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, a9097530-3875-4636-9f76-9693bcafca9c] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[a9097530-3875-4636-9f76-9693bcafca9c]] @ /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=[a9097530-3875-4636-9f76-9693bcafca9c]] @ /playlist/{uuid}/(method:POST) 2026-05-11 19:45:58.899 [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/a9097530-3875-4636-9f76-9693bcafca9c 2026-05-11 19:45:58.901 [DefaultDispatcher-worker-7 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/a9097530-3875-4636-9f76-9693bcafca9c request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 19:45:58.901 [DefaultDispatcher-worker-4 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37053/playlist/a9097530-3875-4636-9f76-9693bcafca9c 2026-05-11 19:45:58.901 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37053/playlist/a9097530-3875-4636-9f76-9693bcafca9c 2026-05-11 19:45:58.901 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37053/playlist/a9097530-3875-4636-9f76-9693bcafca9c 2026-05-11 19:56:01.165 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:01.251 [Test worker] INFO io.ktor.server.Application - Application started in 0.223 seconds. 2026-05-11 19:56:01.340 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37383 2026-05-11 19:56:02.197 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37383/resources/index.json 2026-05-11 19:56:02.197 [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:37383/resources/index.json. 2026-05-11 19:56:02.198 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37383/resources/index.json 2026-05-11 19:56:02.321 [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-05-11 19:56:02.375 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 59ms 2026-05-11 19:56:02.381 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37383/resources/index.json 2026-05-11 19:56:02.384 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37383/resources/index.json 2026-05-11 19:56:02.384 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37383/resources/index.json 2026-05-11 19:56:02.411 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:37383/resources/index.json. 2026-05-11 19:56:02.447 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37383/resources/index.json 2026-05-11 19:56:02.447 [DefaultDispatcher-worker-3 @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:37383/resources/index.json. 2026-05-11 19:56:02.447 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37383/resources/index.json 2026-05-11 19:56:02.450 [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-05-11 19:56:02.452 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-11 19:56:02.454 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37383/resources/index.json 2026-05-11 19:56:02.454 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37383/resources/index.json 2026-05-11 19:56:02.454 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37383/resources/index.json 2026-05-11 19:56:04.467 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:04.468 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 19:56:04.469 [DefaultDispatcher-worker-1 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34189 2026-05-11 19:56:04.551 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34189/resources/index.json 2026-05-11 19:56:04.551 [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:34189/resources/index.json. 2026-05-11 19:56:04.551 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34189/resources/index.json 2026-05-11 19:56:04.554 [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-05-11 19:56:04.555 [DefaultDispatcher-worker-4 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 19:56:04.556 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34189/resources/index.json 2026-05-11 19:56:04.556 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34189/resources/index.json 2026-05-11 19:56:04.556 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34189/resources/index.json 2026-05-11 19:56:04.556 [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:34189/resources/index.json. 2026-05-11 19:56:04.560 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34189/resources/index.json 2026-05-11 19:56:04.560 [DefaultDispatcher-worker-3 @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:34189/resources/index.json. 2026-05-11 19:56:04.560 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34189/resources/index.json 2026-05-11 19:56:04.561 [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-05-11 19:56:04.562 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 19:56:04.562 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34189/resources/index.json 2026-05-11 19:56:04.562 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34189/resources/index.json 2026-05-11 19:56:04.562 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34189/resources/index.json 2026-05-11 19:56:06.570 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:06.571 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 19:56:06.572 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44255 2026-05-11 19:56:06.577 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44255/resources/lesson001.json 2026-05-11 19:56:06.577 [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:44255/resources/lesson001.json. 2026-05-11 19:56:06.577 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44255/resources/lesson001.json 2026-05-11 19:56:06.580 [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-05-11 19:56:06.581 [DefaultDispatcher-worker-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-05-11 19:56:06.582 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44255/resources/lesson001.json 2026-05-11 19:56:06.582 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44255/resources/lesson001.json 2026-05-11 19:56:06.582 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44255/resources/lesson001.json 2026-05-11 19:56:06.585 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:44255/resources/lesson001.json. 2026-05-11 19:56:08.810 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:08.816 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.107 seconds. 2026-05-11 19:56:08.818 [DefaultDispatcher-worker-1 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37627 2026-05-11 19:56:08.825 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37627/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:08.825 [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:37627/api/school/respect/schoolpermissiongrant. 2026-05-11 19:56:08.825 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37627/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:08.830 [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-05-11 19:56:08.842 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37627/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:08.842 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37627/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:08.842 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37627/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:08.844 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37627/api/school/respect/schoolpermissiongrant. 2026-05-11 19:56:08.911 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.911 [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:37627/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:08.911 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.913 [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-05-11 19:56:08.931 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.931 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.932 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.933 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37627/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:08.939 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.939 [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:37627/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:08.939 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.941 [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-05-11 19:56:08.943 [DefaultDispatcher-worker-1 @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-05-11 19:56:08.945 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.945 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:08.945 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37627/api/school/respect/person?includeRelated=false 2026-05-11 19:56:11.068 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:11.069 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 19:56:11.070 [DefaultDispatcher-worker-4 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33499 2026-05-11 19:56:11.071 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33499/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:11.071 [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:33499/api/school/respect/schoolpermissiongrant. 2026-05-11 19:56:11.071 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33499/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:11.074 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 19:56:11.076 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33499/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:11.076 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33499/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:11.076 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33499/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:11.076 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33499/api/school/respect/schoolpermissiongrant. 2026-05-11 19:56:11.131 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33499/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:56:11.131 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33499/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 19:56:11.131 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33499/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:56:11.132 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 19:56:11.135 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33499/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:56:11.135 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33499/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:56:11.135 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33499/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 19:56:11.136 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33499/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 19:56:13.325 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:13.326 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 19:56:13.327 [DefaultDispatcher-worker-3 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39085 2026-05-11 19:56:13.329 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39085/api/school/respect/person?includeRelated=false 2026-05-11 19:56:13.329 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39085/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:13.329 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39085/api/school/respect/person?includeRelated=false 2026-05-11 19:56:13.332 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 19:56:13.335 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39085/api/school/respect/person?includeRelated=false 2026-05-11 19:56:13.335 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39085/api/school/respect/person?includeRelated=false 2026-05-11 19:56:13.335 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39085/api/school/respect/person?includeRelated=false 2026-05-11 19:56:13.336 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39085/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:13.386 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39085/api/school/respect/person?since=2026-05-11T15%3A56%3A13.332468572Z&includeRelated=false 2026-05-11 19:56:13.386 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39085/api/school/respect/person?since=2026-05-11T15%3A56%3A13.332468572Z&includeRelated=false. 2026-05-11 19:56:13.387 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39085/api/school/respect/person?since=2026-05-11T15%3A56%3A13.332468572Z&includeRelated=false 2026-05-11 19:56:13.388 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 19:56:13.391 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39085/api/school/respect/person?since=2026-05-11T15%3A56%3A13.332468572Z&includeRelated=false 2026-05-11 19:56:13.391 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39085/api/school/respect/person?since=2026-05-11T15%3A56%3A13.332468572Z&includeRelated=false 2026-05-11 19:56:13.391 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39085/api/school/respect/person?since=2026-05-11T15%3A56%3A13.332468572Z&includeRelated=false 2026-05-11 19:56:13.392 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39085/api/school/respect/person?since=2026-05-11T15%3A56%3A13.332468572Z&includeRelated=false. 2026-05-11 19:56:15.537 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:15.537 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.054 seconds. 2026-05-11 19:56:15.539 [DefaultDispatcher-worker-4 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42123 2026-05-11 19:56:15.580 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42123/api/school/respect/person 2026-05-11 19:56:15.581 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3ca7b9fb for http://localhost:42123/api/school/respect/person 2026-05-11 19:56:15.581 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42123/api/school/respect/person 2026-05-11 19:56:15.581 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42123/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 19:56:15.584 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 19:56:15.590 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 19:56:15.591 [DefaultDispatcher-worker-4 @call-handler#167] 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-05-11 19:56:15.592 [DefaultDispatcher-worker-5 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42123/api/school/respect/person 2026-05-11 19:56:15.592 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42123/api/school/respect/person 2026-05-11 19:56:15.592 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42123/api/school/respect/person 2026-05-11 19:56:17.707 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:17.707 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-05-11 19:56:17.708 [DefaultDispatcher-worker-5 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43841 2026-05-11 19:56:17.709 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43841/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:17.709 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43841/api/school/respect/schoolpermissiongrant. 2026-05-11 19:56:17.709 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43841/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:17.712 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 19:56:17.713 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43841/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:17.713 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43841/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:17.713 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43841/api/school/respect/schoolpermissiongrant 2026-05-11 19:56:17.714 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43841/api/school/respect/schoolpermissiongrant. 2026-05-11 19:56:17.753 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:17.753 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43841/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:17.753 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:17.754 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 19:56:17.759 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:17.759 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:17.760 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:17.760 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43841/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:19.765 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:19.765 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43841/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:19.766 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:19.767 [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-05-11 19:56:19.770 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:19.770 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:19.770 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43841/api/school/respect/person?includeRelated=false 2026-05-11 19:56:19.771 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43841/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:21.884 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:21.885 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-05-11 19:56:21.886 [DefaultDispatcher-worker-3 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39105 2026-05-11 19:56:21.888 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39105/api/school/respect/person?includeRelated=false 2026-05-11 19:56:21.888 [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:39105/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:21.888 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39105/api/school/respect/person?includeRelated=false 2026-05-11 19:56:21.891 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 19:56:21.894 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39105/api/school/respect/person?includeRelated=false 2026-05-11 19:56:21.894 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39105/api/school/respect/person?includeRelated=false 2026-05-11 19:56:21.894 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39105/api/school/respect/person?includeRelated=false 2026-05-11 19:56:21.895 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39105/api/school/respect/person?includeRelated=false. 2026-05-11 19:56:21.947 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39105/api/school/respect/person?since=2026-05-11T15%3A56%3A21.891549403Z&includeRelated=false 2026-05-11 19:56:21.947 [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:39105/api/school/respect/person?since=2026-05-11T15%3A56%3A21.891549403Z&includeRelated=false. 2026-05-11 19:56:21.947 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39105/api/school/respect/person?since=2026-05-11T15%3A56%3A21.891549403Z&includeRelated=false 2026-05-11 19:56:21.948 [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-05-11 19:56:21.951 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39105/api/school/respect/person?since=2026-05-11T15%3A56%3A21.891549403Z&includeRelated=false 2026-05-11 19:56:21.951 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39105/api/school/respect/person?since=2026-05-11T15%3A56%3A21.891549403Z&includeRelated=false 2026-05-11 19:56:21.951 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39105/api/school/respect/person?since=2026-05-11T15%3A56%3A21.891549403Z&includeRelated=false 2026-05-11 19:56:21.952 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39105/api/school/respect/person?since=2026-05-11T15%3A56%3A21.891549403Z&includeRelated=false. 2026-05-11 19:56:24.179 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:24.180 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.137 seconds. 2026-05-11 19:56:24.181 [DefaultDispatcher-worker-2 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38305 2026-05-11 19:56:24.183 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38305/playlist/ad4d9b76-90bc-41cb-9623-0781aca55708 2026-05-11 19:56:24.183 [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:38305/playlist/ad4d9b76-90bc-41cb-9623-0781aca55708. 2026-05-11 19:56:24.183 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38305/playlist/ad4d9b76-90bc-41cb-9623-0781aca55708 2026-05-11 19:56:24.186 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, ad4d9b76-90bc-41cb-9623-0781aca55708] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[ad4d9b76-90bc-41cb-9623-0781aca55708]] @ /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=[ad4d9b76-90bc-41cb-9623-0781aca55708]] @ /playlist/{uuid}/(method:GET) 2026-05-11 19:56:24.192 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38305/playlist/ad4d9b76-90bc-41cb-9623-0781aca55708 2026-05-11 19:56:24.192 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38305/playlist/ad4d9b76-90bc-41cb-9623-0781aca55708 2026-05-11 19:56:24.192 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38305/playlist/ad4d9b76-90bc-41cb-9623-0781aca55708 2026-05-11 19:56:24.192 [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:38305/playlist/ad4d9b76-90bc-41cb-9623-0781aca55708. 2026-05-11 19:56:26.416 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 19:56:26.416 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 19:56:26.417 [DefaultDispatcher-worker-3 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42047 2026-05-11 19:56:26.467 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42047/playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a 2026-05-11 19:56:26.468 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@37b6f966 for http://localhost:42047/playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a 2026-05-11 19:56:26.468 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42047/playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a 2026-05-11 19:56:26.468 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42047/playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a from class io.ktor.http.content.TextContent 2026-05-11 19:56:26.470 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 55b75b6e-bbbd-4004-afe4-da4e876e315a] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[55b75b6e-bbbd-4004-afe4-da4e876e315a]] @ /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=[55b75b6e-bbbd-4004-afe4-da4e876e315a]] @ /playlist/{uuid}/(method:POST) 2026-05-11 19:56:26.471 [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/55b75b6e-bbbd-4004-afe4-da4e876e315a 2026-05-11 19:56:26.472 [DefaultDispatcher-worker-5 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 19:56:26.472 [DefaultDispatcher-worker-8 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42047/playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a 2026-05-11 19:56:26.473 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42047/playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a 2026-05-11 19:56:26.473 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42047/playlist/55b75b6e-bbbd-4004-afe4-da4e876e315a 2026-05-11 20:07:35.279 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:35.359 [Test worker] INFO io.ktor.server.Application - Application started in 0.188 seconds. 2026-05-11 20:07:35.429 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38023 2026-05-11 20:07:36.032 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38023/resources/index.json 2026-05-11 20:07:36.032 [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:38023/resources/index.json. 2026-05-11 20:07:36.032 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38023/resources/index.json 2026-05-11 20:07:36.123 [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-05-11 20:07:36.160 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 41ms 2026-05-11 20:07:36.163 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38023/resources/index.json 2026-05-11 20:07:36.165 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38023/resources/index.json 2026-05-11 20:07:36.165 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38023/resources/index.json 2026-05-11 20:07:36.183 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:38023/resources/index.json. 2026-05-11 20:07:36.210 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38023/resources/index.json 2026-05-11 20:07:36.211 [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:38023/resources/index.json. 2026-05-11 20:07:36.211 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38023/resources/index.json 2026-05-11 20:07:36.213 [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-05-11 20:07:36.214 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 20:07:36.215 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38023/resources/index.json 2026-05-11 20:07:36.215 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38023/resources/index.json 2026-05-11 20:07:36.215 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38023/resources/index.json 2026-05-11 20:07:38.230 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:38.230 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 20:07:38.231 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45261 2026-05-11 20:07:38.303 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45261/resources/index.json 2026-05-11 20:07:38.304 [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:45261/resources/index.json. 2026-05-11 20:07:38.304 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45261/resources/index.json 2026-05-11 20:07:38.307 [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-05-11 20:07:38.308 [DefaultDispatcher-worker-2 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 20:07:38.308 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45261/resources/index.json 2026-05-11 20:07:38.308 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45261/resources/index.json 2026-05-11 20:07:38.308 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45261/resources/index.json 2026-05-11 20:07:38.309 [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:45261/resources/index.json. 2026-05-11 20:07:38.313 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45261/resources/index.json 2026-05-11 20:07:38.313 [DefaultDispatcher-worker-4 @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:45261/resources/index.json. 2026-05-11 20:07:38.313 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45261/resources/index.json 2026-05-11 20:07:38.314 [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-05-11 20:07:38.315 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 20:07:38.315 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45261/resources/index.json 2026-05-11 20:07:38.315 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45261/resources/index.json 2026-05-11 20:07:38.315 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45261/resources/index.json 2026-05-11 20:07:40.324 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:40.324 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 20:07:40.325 [DefaultDispatcher-worker-1 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46355 2026-05-11 20:07:40.330 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46355/resources/lesson001.json 2026-05-11 20:07:40.330 [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:46355/resources/lesson001.json. 2026-05-11 20:07:40.331 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46355/resources/lesson001.json 2026-05-11 20:07:40.333 [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-05-11 20:07:40.334 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-05-11 20:07:40.335 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46355/resources/lesson001.json 2026-05-11 20:07:40.335 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46355/resources/lesson001.json 2026-05-11 20:07:40.335 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46355/resources/lesson001.json 2026-05-11 20:07:40.337 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:46355/resources/lesson001.json. 2026-05-11 20:07:42.578 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:42.584 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.099 seconds. 2026-05-11 20:07:42.586 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35943 2026-05-11 20:07:42.593 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35943/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:42.594 [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:35943/api/school/respect/schoolpermissiongrant. 2026-05-11 20:07:42.594 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35943/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:42.598 [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-05-11 20:07:42.613 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35943/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:42.613 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35943/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:42.614 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35943/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:42.616 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35943/api/school/respect/schoolpermissiongrant. 2026-05-11 20:07:42.688 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.688 [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:35943/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:42.688 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.690 [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-05-11 20:07:42.712 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.712 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.712 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.714 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35943/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:42.721 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.721 [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:35943/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:42.722 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.724 [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-05-11 20:07:42.726 [DefaultDispatcher-worker-4 @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-05-11 20:07:42.727 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.727 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:42.727 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35943/api/school/respect/person?includeRelated=false 2026-05-11 20:07:44.842 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:44.843 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-11 20:07:44.844 [DefaultDispatcher-worker-4 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40863 2026-05-11 20:07:44.845 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:44.845 [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:40863/api/school/respect/schoolpermissiongrant. 2026-05-11 20:07:44.845 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:44.847 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 20:07:44.849 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:44.849 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:44.849 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:44.849 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40863/api/school/respect/schoolpermissiongrant. 2026-05-11 20:07:44.897 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:07:44.897 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 20:07:44.897 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:07:44.899 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 20:07:44.901 [DefaultDispatcher-worker-2 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:07:44.901 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:07:44.901 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:07:44.902 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 20:07:47.134 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:47.134 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.116 seconds. 2026-05-11 20:07:47.136 [DefaultDispatcher-worker-2 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42095 2026-05-11 20:07:47.139 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42095/api/school/respect/person?includeRelated=false 2026-05-11 20:07:47.139 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42095/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:47.139 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42095/api/school/respect/person?includeRelated=false 2026-05-11 20:07:47.141 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 20:07:47.145 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42095/api/school/respect/person?includeRelated=false 2026-05-11 20:07:47.145 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42095/api/school/respect/person?includeRelated=false 2026-05-11 20:07:47.145 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42095/api/school/respect/person?includeRelated=false 2026-05-11 20:07:47.146 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42095/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:47.261 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42095/api/school/respect/person?since=2026-05-11T16%3A07%3A47.142018285Z&includeRelated=false 2026-05-11 20:07:47.261 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42095/api/school/respect/person?since=2026-05-11T16%3A07%3A47.142018285Z&includeRelated=false. 2026-05-11 20:07:47.261 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42095/api/school/respect/person?since=2026-05-11T16%3A07%3A47.142018285Z&includeRelated=false 2026-05-11 20:07:47.263 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 20:07:47.265 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42095/api/school/respect/person?since=2026-05-11T16%3A07%3A47.142018285Z&includeRelated=false 2026-05-11 20:07:47.265 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42095/api/school/respect/person?since=2026-05-11T16%3A07%3A47.142018285Z&includeRelated=false 2026-05-11 20:07:47.265 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42095/api/school/respect/person?since=2026-05-11T16%3A07%3A47.142018285Z&includeRelated=false 2026-05-11 20:07:47.266 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42095/api/school/respect/person?since=2026-05-11T16%3A07%3A47.142018285Z&includeRelated=false. 2026-05-11 20:07:49.384 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:49.385 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 20:07:49.386 [DefaultDispatcher-worker-5 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37783 2026-05-11 20:07:49.429 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37783/api/school/respect/person 2026-05-11 20:07:49.429 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@46ad83d7 for http://localhost:37783/api/school/respect/person 2026-05-11 20:07:49.429 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37783/api/school/respect/person 2026-05-11 20:07:49.429 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:37783/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 20:07:49.432 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 20:07:49.439 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 20:07:49.441 [DefaultDispatcher-worker-1 @call-handler#167] 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-05-11 20:07:49.442 [DefaultDispatcher-worker-3 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37783/api/school/respect/person 2026-05-11 20:07:49.442 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37783/api/school/respect/person 2026-05-11 20:07:49.442 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37783/api/school/respect/person 2026-05-11 20:07:51.554 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:51.554 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 20:07:51.556 [DefaultDispatcher-worker-2 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42027 2026-05-11 20:07:51.557 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42027/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:51.557 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42027/api/school/respect/schoolpermissiongrant. 2026-05-11 20:07:51.557 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42027/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:51.559 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 20:07:51.560 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42027/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:51.561 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42027/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:51.561 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42027/api/school/respect/schoolpermissiongrant 2026-05-11 20:07:51.561 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42027/api/school/respect/schoolpermissiongrant. 2026-05-11 20:07:51.601 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:51.601 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42027/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:51.601 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:51.602 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 20:07:51.607 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:51.608 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:51.608 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:51.608 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42027/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:53.614 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:53.614 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42027/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:53.614 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:53.615 [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-05-11 20:07:53.618 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:53.618 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:53.618 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42027/api/school/respect/person?includeRelated=false 2026-05-11 20:07:53.619 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42027/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:55.737 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:55.738 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.049 seconds. 2026-05-11 20:07:55.739 [DefaultDispatcher-worker-2 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37115 2026-05-11 20:07:55.741 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37115/api/school/respect/person?includeRelated=false 2026-05-11 20:07:55.741 [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:37115/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:55.741 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37115/api/school/respect/person?includeRelated=false 2026-05-11 20:07:55.744 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 20:07:55.747 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37115/api/school/respect/person?includeRelated=false 2026-05-11 20:07:55.747 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37115/api/school/respect/person?includeRelated=false 2026-05-11 20:07:55.747 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37115/api/school/respect/person?includeRelated=false 2026-05-11 20:07:55.748 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37115/api/school/respect/person?includeRelated=false. 2026-05-11 20:07:55.789 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37115/api/school/respect/person?since=2026-05-11T16%3A07%3A55.744310488Z&includeRelated=false 2026-05-11 20:07:55.789 [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:37115/api/school/respect/person?since=2026-05-11T16%3A07%3A55.744310488Z&includeRelated=false. 2026-05-11 20:07:55.789 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37115/api/school/respect/person?since=2026-05-11T16%3A07%3A55.744310488Z&includeRelated=false 2026-05-11 20:07:55.790 [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-05-11 20:07:55.793 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37115/api/school/respect/person?since=2026-05-11T16%3A07%3A55.744310488Z&includeRelated=false 2026-05-11 20:07:55.793 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37115/api/school/respect/person?since=2026-05-11T16%3A07%3A55.744310488Z&includeRelated=false 2026-05-11 20:07:55.793 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37115/api/school/respect/person?since=2026-05-11T16%3A07%3A55.744310488Z&includeRelated=false 2026-05-11 20:07:55.794 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37115/api/school/respect/person?since=2026-05-11T16%3A07%3A55.744310488Z&includeRelated=false. 2026-05-11 20:07:57.909 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:07:57.910 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-05-11 20:07:57.911 [DefaultDispatcher-worker-3 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46829 2026-05-11 20:07:57.913 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46829/playlist/8da771eb-7878-4d97-b9f8-43e136057586 2026-05-11 20:07:57.913 [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:46829/playlist/8da771eb-7878-4d97-b9f8-43e136057586. 2026-05-11 20:07:57.913 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46829/playlist/8da771eb-7878-4d97-b9f8-43e136057586 2026-05-11 20:07:57.916 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 8da771eb-7878-4d97-b9f8-43e136057586] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[8da771eb-7878-4d97-b9f8-43e136057586]] @ /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=[8da771eb-7878-4d97-b9f8-43e136057586]] @ /playlist/{uuid}/(method:GET) 2026-05-11 20:07:57.921 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46829/playlist/8da771eb-7878-4d97-b9f8-43e136057586 2026-05-11 20:07:57.922 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46829/playlist/8da771eb-7878-4d97-b9f8-43e136057586 2026-05-11 20:07:57.922 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46829/playlist/8da771eb-7878-4d97-b9f8-43e136057586 2026-05-11 20:07:57.922 [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:46829/playlist/8da771eb-7878-4d97-b9f8-43e136057586. 2026-05-11 20:08:00.068 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:08:00.069 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-05-11 20:08:00.070 [DefaultDispatcher-worker-2 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38119 2026-05-11 20:08:00.110 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38119/playlist/7a941201-eeb6-496a-affd-289cbf45d66c 2026-05-11 20:08:00.110 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@2de2cfa0 for http://localhost:38119/playlist/7a941201-eeb6-496a-affd-289cbf45d66c 2026-05-11 20:08:00.110 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38119/playlist/7a941201-eeb6-496a-affd-289cbf45d66c 2026-05-11 20:08:00.110 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38119/playlist/7a941201-eeb6-496a-affd-289cbf45d66c from class io.ktor.http.content.TextContent 2026-05-11 20:08:00.112 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 7a941201-eeb6-496a-affd-289cbf45d66c] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[7a941201-eeb6-496a-affd-289cbf45d66c]] @ /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=[7a941201-eeb6-496a-affd-289cbf45d66c]] @ /playlist/{uuid}/(method:POST) 2026-05-11 20:08:00.112 [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/7a941201-eeb6-496a-affd-289cbf45d66c 2026-05-11 20:08:00.113 [DefaultDispatcher-worker-5 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/7a941201-eeb6-496a-affd-289cbf45d66c request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 20:08:00.114 [DefaultDispatcher-worker-9 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38119/playlist/7a941201-eeb6-496a-affd-289cbf45d66c 2026-05-11 20:08:00.114 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38119/playlist/7a941201-eeb6-496a-affd-289cbf45d66c 2026-05-11 20:08:00.114 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38119/playlist/7a941201-eeb6-496a-affd-289cbf45d66c 2026-05-11 20:45:48.768 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:45:48.867 [Test worker] INFO io.ktor.server.Application - Application started in 0.253 seconds. 2026-05-11 20:45:48.942 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35419 2026-05-11 20:45:50.219 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35419/resources/index.json 2026-05-11 20:45:50.220 [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:35419/resources/index.json. 2026-05-11 20:45:50.221 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35419/resources/index.json 2026-05-11 20:45:50.517 [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-05-11 20:45:50.653 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 142ms 2026-05-11 20:45:50.655 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35419/resources/index.json 2026-05-11 20:45:50.661 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35419/resources/index.json 2026-05-11 20:45:50.661 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35419/resources/index.json 2026-05-11 20:45:50.693 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:35419/resources/index.json. 2026-05-11 20:45:50.770 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35419/resources/index.json 2026-05-11 20:45:50.775 [DefaultDispatcher-worker-3 @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:35419/resources/index.json. 2026-05-11 20:45:50.776 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35419/resources/index.json 2026-05-11 20:45:50.790 [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-05-11 20:45:50.792 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-11 20:45:50.793 [DefaultDispatcher-worker-5 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35419/resources/index.json 2026-05-11 20:45:50.793 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35419/resources/index.json 2026-05-11 20:45:50.793 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35419/resources/index.json 2026-05-11 20:45:51.841 [eventLoopGroupProxy-3-1] WARN i.n.u.c.AbstractEventExecutor - A task raised an exception. Task: io.netty.channel.AbstractChannel$AbstractUnsafe$8@2df7a4fc java.util.concurrent.RejectedExecutionException: event executor terminated at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:1005) at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:388) at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:381) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:907) at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:873) at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:863) at io.netty.channel.DefaultChannelPipeline.destroyUp(DefaultChannelPipeline.java:816) at io.netty.channel.DefaultChannelPipeline.destroy(DefaultChannelPipeline.java:801) at io.netty.channel.DefaultChannelPipeline.access$700(DefaultChannelPipeline.java:45) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelUnregistered(DefaultChannelPipeline.java:1411) at io.netty.channel.DefaultChannelPipeline.fireChannelUnregistered(DefaultChannelPipeline.java:780) at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:692) at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:148) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:141) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:507) at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:183) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1073) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:1583) 2026-05-11 20:45:52.850 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:45:52.851 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 20:45:52.852 [DefaultDispatcher-worker-5 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44777 2026-05-11 20:45:52.923 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44777/resources/index.json 2026-05-11 20:45:52.923 [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:44777/resources/index.json. 2026-05-11 20:45:52.923 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44777/resources/index.json 2026-05-11 20:45:52.926 [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-05-11 20:45:52.927 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-11 20:45:52.928 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44777/resources/index.json 2026-05-11 20:45:52.928 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44777/resources/index.json 2026-05-11 20:45:52.928 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44777/resources/index.json 2026-05-11 20:45:52.928 [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:44777/resources/index.json. 2026-05-11 20:45:52.933 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44777/resources/index.json 2026-05-11 20:45:52.933 [DefaultDispatcher-worker-5 @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:44777/resources/index.json. 2026-05-11 20:45:52.933 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44777/resources/index.json 2026-05-11 20:45:52.934 [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-05-11 20:45:52.934 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 0ms 2026-05-11 20:45:52.935 [DefaultDispatcher-worker-4 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44777/resources/index.json 2026-05-11 20:45:52.935 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44777/resources/index.json 2026-05-11 20:45:52.935 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44777/resources/index.json 2026-05-11 20:45:54.958 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:45:54.961 [Test worker] INFO io.ktor.server.Application - Application started in 0.003 seconds. 2026-05-11 20:45:54.976 [DefaultDispatcher-worker-5 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42847 2026-05-11 20:45:54.993 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42847/resources/lesson001.json 2026-05-11 20:45:54.994 [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:42847/resources/lesson001.json. 2026-05-11 20:45:54.994 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42847/resources/lesson001.json 2026-05-11 20:45:55.007 [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-05-11 20:45:55.009 [DefaultDispatcher-worker-5 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 3ms 2026-05-11 20:45:55.014 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42847/resources/lesson001.json 2026-05-11 20:45:55.014 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42847/resources/lesson001.json 2026-05-11 20:45:55.014 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42847/resources/lesson001.json 2026-05-11 20:45:55.026 [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:42847/resources/lesson001.json. 2026-05-11 20:45:57.603 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:45:57.627 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.34 seconds. 2026-05-11 20:45:57.633 [DefaultDispatcher-worker-1 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37779 2026-05-11 20:45:57.656 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37779/api/school/respect/schoolpermissiongrant 2026-05-11 20:45:57.657 [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:37779/api/school/respect/schoolpermissiongrant. 2026-05-11 20:45:57.657 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37779/api/school/respect/schoolpermissiongrant 2026-05-11 20:45:57.690 [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-05-11 20:45:57.785 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37779/api/school/respect/schoolpermissiongrant 2026-05-11 20:45:57.786 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37779/api/school/respect/schoolpermissiongrant 2026-05-11 20:45:57.786 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37779/api/school/respect/schoolpermissiongrant 2026-05-11 20:45:57.795 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37779/api/school/respect/schoolpermissiongrant. 2026-05-11 20:45:57.929 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.929 [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:37779/api/school/respect/person?includeRelated=false. 2026-05-11 20:45:57.930 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.932 [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-05-11 20:45:57.955 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.955 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.955 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.956 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37779/api/school/respect/person?includeRelated=false. 2026-05-11 20:45:57.965 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.965 [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:37779/api/school/respect/person?includeRelated=false. 2026-05-11 20:45:57.965 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.967 [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-05-11 20:45:57.971 [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-05-11 20:45:57.972 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.973 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:45:57.973 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37779/api/school/respect/person?includeRelated=false 2026-05-11 20:46:00.156 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:46:00.157 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-05-11 20:46:00.160 [DefaultDispatcher-worker-3 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42661 2026-05-11 20:46:00.163 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42661/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:00.164 [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:42661/api/school/respect/schoolpermissiongrant. 2026-05-11 20:46:00.164 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42661/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:00.167 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 20:46:00.169 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42661/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:00.169 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42661/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:00.169 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42661/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:00.169 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42661/api/school/respect/schoolpermissiongrant. 2026-05-11 20:46:00.237 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42661/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:46:00.237 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42661/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 20:46:00.237 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42661/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:46:00.238 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 20:46:00.241 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42661/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:46:00.241 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42661/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:46:00.241 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42661/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 20:46:00.242 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42661/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 20:46:02.407 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:46:02.410 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-05-11 20:46:02.412 [DefaultDispatcher-worker-9 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35651 2026-05-11 20:46:02.415 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35651/api/school/respect/person?includeRelated=false 2026-05-11 20:46:02.415 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35651/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:02.415 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35651/api/school/respect/person?includeRelated=false 2026-05-11 20:46:02.418 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 20:46:02.422 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35651/api/school/respect/person?includeRelated=false 2026-05-11 20:46:02.422 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35651/api/school/respect/person?includeRelated=false 2026-05-11 20:46:02.422 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35651/api/school/respect/person?includeRelated=false 2026-05-11 20:46:02.423 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35651/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:02.489 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35651/api/school/respect/person?since=2026-05-11T16%3A46%3A02.418979140Z&includeRelated=false 2026-05-11 20:46:02.489 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35651/api/school/respect/person?since=2026-05-11T16%3A46%3A02.418979140Z&includeRelated=false. 2026-05-11 20:46:02.489 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35651/api/school/respect/person?since=2026-05-11T16%3A46%3A02.418979140Z&includeRelated=false 2026-05-11 20:46:02.491 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 20:46:02.494 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35651/api/school/respect/person?since=2026-05-11T16%3A46%3A02.418979140Z&includeRelated=false 2026-05-11 20:46:02.494 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35651/api/school/respect/person?since=2026-05-11T16%3A46%3A02.418979140Z&includeRelated=false 2026-05-11 20:46:02.494 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35651/api/school/respect/person?since=2026-05-11T16%3A46%3A02.418979140Z&includeRelated=false 2026-05-11 20:46:02.495 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35651/api/school/respect/person?since=2026-05-11T16%3A46%3A02.418979140Z&includeRelated=false. 2026-05-11 20:46:04.623 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:46:04.624 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-11 20:46:04.625 [DefaultDispatcher-worker-3 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34689 2026-05-11 20:46:04.667 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34689/api/school/respect/person 2026-05-11 20:46:04.667 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@582b5d7f for http://localhost:34689/api/school/respect/person 2026-05-11 20:46:04.667 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34689/api/school/respect/person 2026-05-11 20:46:04.668 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:34689/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 20:46:04.671 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 20:46:04.678 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 20:46:04.680 [DefaultDispatcher-worker-8 @call-handler#167] 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-05-11 20:46:04.681 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34689/api/school/respect/person 2026-05-11 20:46:04.681 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34689/api/school/respect/person 2026-05-11 20:46:04.681 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34689/api/school/respect/person 2026-05-11 20:46:06.782 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:46:06.782 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 20:46:06.784 [DefaultDispatcher-worker-2 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34573 2026-05-11 20:46:06.784 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34573/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:06.784 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34573/api/school/respect/schoolpermissiongrant. 2026-05-11 20:46:06.785 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34573/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:06.787 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 20:46:06.789 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34573/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:06.789 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34573/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:06.789 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34573/api/school/respect/schoolpermissiongrant 2026-05-11 20:46:06.789 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34573/api/school/respect/schoolpermissiongrant. 2026-05-11 20:46:06.829 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:06.829 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34573/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:06.829 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:06.830 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 20:46:06.836 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:06.836 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:06.836 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:06.837 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34573/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:08.842 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:08.843 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34573/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:08.843 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:08.844 [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-05-11 20:46:08.848 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:08.848 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:08.848 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34573/api/school/respect/person?includeRelated=false 2026-05-11 20:46:08.849 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34573/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:11.016 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:46:11.017 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.063 seconds. 2026-05-11 20:46:11.018 [DefaultDispatcher-worker-4 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33175 2026-05-11 20:46:11.022 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33175/api/school/respect/person?includeRelated=false 2026-05-11 20:46:11.022 [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:33175/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:11.022 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33175/api/school/respect/person?includeRelated=false 2026-05-11 20:46:11.033 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 20:46:11.037 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33175/api/school/respect/person?includeRelated=false 2026-05-11 20:46:11.038 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33175/api/school/respect/person?includeRelated=false 2026-05-11 20:46:11.038 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33175/api/school/respect/person?includeRelated=false 2026-05-11 20:46:11.039 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33175/api/school/respect/person?includeRelated=false. 2026-05-11 20:46:11.106 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33175/api/school/respect/person?since=2026-05-11T16%3A46%3A11.033968913Z&includeRelated=false 2026-05-11 20:46:11.106 [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:33175/api/school/respect/person?since=2026-05-11T16%3A46%3A11.033968913Z&includeRelated=false. 2026-05-11 20:46:11.106 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33175/api/school/respect/person?since=2026-05-11T16%3A46%3A11.033968913Z&includeRelated=false 2026-05-11 20:46:11.107 [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-05-11 20:46:11.117 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33175/api/school/respect/person?since=2026-05-11T16%3A46%3A11.033968913Z&includeRelated=false 2026-05-11 20:46:11.117 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33175/api/school/respect/person?since=2026-05-11T16%3A46%3A11.033968913Z&includeRelated=false 2026-05-11 20:46:11.117 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33175/api/school/respect/person?since=2026-05-11T16%3A46%3A11.033968913Z&includeRelated=false 2026-05-11 20:46:11.119 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33175/api/school/respect/person?since=2026-05-11T16%3A46%3A11.033968913Z&includeRelated=false. 2026-05-11 20:46:13.247 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:46:13.249 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-05-11 20:46:13.250 [DefaultDispatcher-worker-2 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40139 2026-05-11 20:46:13.253 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40139/playlist/44fe5c40-99cf-422d-ae05-28c4e37a1d22 2026-05-11 20:46:13.253 [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:40139/playlist/44fe5c40-99cf-422d-ae05-28c4e37a1d22. 2026-05-11 20:46:13.253 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40139/playlist/44fe5c40-99cf-422d-ae05-28c4e37a1d22 2026-05-11 20:46:13.256 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 44fe5c40-99cf-422d-ae05-28c4e37a1d22] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[44fe5c40-99cf-422d-ae05-28c4e37a1d22]] @ /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=[44fe5c40-99cf-422d-ae05-28c4e37a1d22]] @ /playlist/{uuid}/(method:GET) 2026-05-11 20:46:13.262 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40139/playlist/44fe5c40-99cf-422d-ae05-28c4e37a1d22 2026-05-11 20:46:13.262 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40139/playlist/44fe5c40-99cf-422d-ae05-28c4e37a1d22 2026-05-11 20:46:13.262 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40139/playlist/44fe5c40-99cf-422d-ae05-28c4e37a1d22 2026-05-11 20:46:13.263 [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:40139/playlist/44fe5c40-99cf-422d-ae05-28c4e37a1d22. 2026-05-11 20:46:15.415 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 20:46:15.416 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-11 20:46:15.417 [DefaultDispatcher-worker-9 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40053 2026-05-11 20:46:15.457 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40053/playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 2026-05-11 20:46:15.457 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@1cd085da for http://localhost:40053/playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 2026-05-11 20:46:15.457 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40053/playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 2026-05-11 20:46:15.457 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40053/playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 from class io.ktor.http.content.TextContent 2026-05-11 20:46:15.459 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 7b3dfea8-4b70-4811-aff2-f904a7c82e26] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[7b3dfea8-4b70-4811-aff2-f904a7c82e26]] @ /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=[7b3dfea8-4b70-4811-aff2-f904a7c82e26]] @ /playlist/{uuid}/(method:POST) 2026-05-11 20:46:15.460 [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/7b3dfea8-4b70-4811-aff2-f904a7c82e26 2026-05-11 20:46:15.461 [DefaultDispatcher-worker-2 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 20:46:15.462 [DefaultDispatcher-worker-5 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40053/playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 2026-05-11 20:46:15.462 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40053/playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 2026-05-11 20:46:15.462 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40053/playlist/7b3dfea8-4b70-4811-aff2-f904a7c82e26 2026-05-11 21:24:45.340 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:24:45.461 [Test worker] INFO io.ktor.server.Application - Application started in 0.272 seconds. 2026-05-11 21:24:45.539 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46759 2026-05-11 21:24:46.377 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46759/resources/index.json 2026-05-11 21:24:46.377 [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:46759/resources/index.json. 2026-05-11 21:24:46.378 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46759/resources/index.json 2026-05-11 21:24:46.535 [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-05-11 21:24:46.606 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 76ms 2026-05-11 21:24:46.610 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46759/resources/index.json 2026-05-11 21:24:46.612 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46759/resources/index.json 2026-05-11 21:24:46.612 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46759/resources/index.json 2026-05-11 21:24:46.640 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:46759/resources/index.json. 2026-05-11 21:24:46.679 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46759/resources/index.json 2026-05-11 21:24:46.679 [DefaultDispatcher-worker-3 @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:46759/resources/index.json. 2026-05-11 21:24:46.679 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46759/resources/index.json 2026-05-11 21:24:46.682 [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-05-11 21:24:46.683 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-11 21:24:46.684 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46759/resources/index.json 2026-05-11 21:24:46.685 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46759/resources/index.json 2026-05-11 21:24:46.685 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46759/resources/index.json 2026-05-11 21:24:48.711 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:24:48.712 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-11 21:24:48.715 [DefaultDispatcher-worker-2 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33601 2026-05-11 21:24:48.792 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33601/resources/index.json 2026-05-11 21:24:48.792 [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:33601/resources/index.json. 2026-05-11 21:24:48.793 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33601/resources/index.json 2026-05-11 21:24:48.796 [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-05-11 21:24:48.798 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 2ms 2026-05-11 21:24:48.799 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33601/resources/index.json 2026-05-11 21:24:48.799 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33601/resources/index.json 2026-05-11 21:24:48.799 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33601/resources/index.json 2026-05-11 21:24:48.800 [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:33601/resources/index.json. 2026-05-11 21:24:48.809 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33601/resources/index.json 2026-05-11 21:24:48.810 [DefaultDispatcher-worker-3 @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:33601/resources/index.json. 2026-05-11 21:24:48.810 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33601/resources/index.json 2026-05-11 21:24:48.812 [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-05-11 21:24:48.812 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-11 21:24:48.813 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33601/resources/index.json 2026-05-11 21:24:48.813 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33601/resources/index.json 2026-05-11 21:24:48.813 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33601/resources/index.json 2026-05-11 21:24:50.826 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:24:50.826 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-11 21:24:50.828 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39883 2026-05-11 21:24:50.835 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39883/resources/lesson001.json 2026-05-11 21:24:50.835 [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:39883/resources/lesson001.json. 2026-05-11 21:24:50.835 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39883/resources/lesson001.json 2026-05-11 21:24:50.839 [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-05-11 21:24:50.841 [DefaultDispatcher-worker-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 3ms 2026-05-11 21:24:50.841 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39883/resources/lesson001.json 2026-05-11 21:24:50.842 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39883/resources/lesson001.json 2026-05-11 21:24:50.842 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39883/resources/lesson001.json 2026-05-11 21:24:50.845 [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:39883/resources/lesson001.json. 2026-05-11 21:24:53.268 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:24:53.317 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.264 seconds. 2026-05-11 21:24:53.328 [DefaultDispatcher-worker-10 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34517 2026-05-11 21:24:53.346 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34517/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:53.347 [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:34517/api/school/respect/schoolpermissiongrant. 2026-05-11 21:24:53.347 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34517/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:53.394 [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-05-11 21:24:53.416 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34517/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:53.417 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34517/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:53.417 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34517/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:53.420 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34517/api/school/respect/schoolpermissiongrant. 2026-05-11 21:24:53.560 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.560 [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:34517/api/school/respect/person?includeRelated=false. 2026-05-11 21:24:53.560 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.563 [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-05-11 21:24:53.584 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.584 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.584 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.585 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34517/api/school/respect/person?includeRelated=false. 2026-05-11 21:24:53.593 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.594 [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:34517/api/school/respect/person?includeRelated=false. 2026-05-11 21:24:53.594 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.599 [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-05-11 21:24:53.602 [DefaultDispatcher-worker-11 @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-05-11 21:24:53.603 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.603 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:53.603 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34517/api/school/respect/person?includeRelated=false 2026-05-11 21:24:55.749 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:24:55.750 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.057 seconds. 2026-05-11 21:24:55.751 [DefaultDispatcher-worker-3 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35307 2026-05-11 21:24:55.752 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35307/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:55.753 [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:35307/api/school/respect/schoolpermissiongrant. 2026-05-11 21:24:55.753 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35307/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:55.755 [eventLoopGroupProxy-16-1 @call-handler#107] 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-05-11 21:24:55.758 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35307/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:55.758 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35307/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:55.758 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35307/api/school/respect/schoolpermissiongrant 2026-05-11 21:24:55.759 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35307/api/school/respect/schoolpermissiongrant. 2026-05-11 21:24:55.808 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35307/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 21:24:55.808 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35307/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 21:24:55.808 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35307/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 21:24:55.810 [eventLoopGroupProxy-16-1 @call-handler#117] 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-05-11 21:24:55.813 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35307/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 21:24:55.813 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35307/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 21:24:55.813 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35307/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-11 21:24:55.815 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35307/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-11 21:24:57.981 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:24:57.983 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.072 seconds. 2026-05-11 21:24:57.984 [DefaultDispatcher-worker-3 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35895 2026-05-11 21:24:57.989 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35895/api/school/respect/person?includeRelated=false 2026-05-11 21:24:57.989 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35895/api/school/respect/person?includeRelated=false. 2026-05-11 21:24:57.989 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35895/api/school/respect/person?includeRelated=false 2026-05-11 21:24:57.994 [eventLoopGroupProxy-19-1 @call-handler#136] 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-05-11 21:24:58.001 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35895/api/school/respect/person?includeRelated=false 2026-05-11 21:24:58.001 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35895/api/school/respect/person?includeRelated=false 2026-05-11 21:24:58.001 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35895/api/school/respect/person?includeRelated=false 2026-05-11 21:24:58.003 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35895/api/school/respect/person?includeRelated=false. 2026-05-11 21:24:58.093 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35895/api/school/respect/person?since=2026-05-11T17%3A24%3A57.995443902Z&includeRelated=false 2026-05-11 21:24:58.093 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35895/api/school/respect/person?since=2026-05-11T17%3A24%3A57.995443902Z&includeRelated=false. 2026-05-11 21:24:58.093 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35895/api/school/respect/person?since=2026-05-11T17%3A24%3A57.995443902Z&includeRelated=false 2026-05-11 21:24:58.099 [eventLoopGroupProxy-19-1 @call-handler#142] 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-05-11 21:24:58.110 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35895/api/school/respect/person?since=2026-05-11T17%3A24%3A57.995443902Z&includeRelated=false 2026-05-11 21:24:58.110 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35895/api/school/respect/person?since=2026-05-11T17%3A24%3A57.995443902Z&includeRelated=false 2026-05-11 21:24:58.110 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35895/api/school/respect/person?since=2026-05-11T17%3A24%3A57.995443902Z&includeRelated=false 2026-05-11 21:24:58.111 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35895/api/school/respect/person?since=2026-05-11T17%3A24%3A57.995443902Z&includeRelated=false. 2026-05-11 21:25:00.306 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:25:00.310 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.061 seconds. 2026-05-11 21:25:00.322 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46085 2026-05-11 21:25:00.404 [DefaultDispatcher-worker-11 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46085/api/school/respect/person 2026-05-11 21:25:00.404 [DefaultDispatcher-worker-11 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@77cb41eb for http://localhost:46085/api/school/respect/person 2026-05-11 21:25:00.404 [DefaultDispatcher-worker-11 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46085/api/school/respect/person 2026-05-11 21:25:00.404 [DefaultDispatcher-worker-11 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:46085/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-11 21:25:00.421 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 21:25:00.444 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-11 21:25:00.448 [eventLoopGroupProxy-22-1 @call-handler#167] 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-05-11 21:25:00.452 [DefaultDispatcher-worker-5 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46085/api/school/respect/person 2026-05-11 21:25:00.452 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46085/api/school/respect/person 2026-05-11 21:25:00.452 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46085/api/school/respect/person 2026-05-11 21:25:02.672 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:25:02.678 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.057 seconds. 2026-05-11 21:25:02.687 [DefaultDispatcher-worker-6 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34053 2026-05-11 21:25:02.688 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34053/api/school/respect/schoolpermissiongrant 2026-05-11 21:25:02.688 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34053/api/school/respect/schoolpermissiongrant. 2026-05-11 21:25:02.688 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34053/api/school/respect/schoolpermissiongrant 2026-05-11 21:25:02.708 [eventLoopGroupProxy-25-1 @call-handler#185] 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-05-11 21:25:02.715 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34053/api/school/respect/schoolpermissiongrant 2026-05-11 21:25:02.716 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34053/api/school/respect/schoolpermissiongrant 2026-05-11 21:25:02.716 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34053/api/school/respect/schoolpermissiongrant 2026-05-11 21:25:02.717 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34053/api/school/respect/schoolpermissiongrant. 2026-05-11 21:25:02.782 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:02.782 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34053/api/school/respect/person?includeRelated=false. 2026-05-11 21:25:02.782 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:02.783 [eventLoopGroupProxy-25-1 @call-handler#191] 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-05-11 21:25:02.790 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:02.791 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:02.791 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:02.792 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34053/api/school/respect/person?includeRelated=false. 2026-05-11 21:25:04.798 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:04.798 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34053/api/school/respect/person?includeRelated=false. 2026-05-11 21:25:04.798 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:04.800 [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-05-11 21:25:04.805 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:04.805 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:04.805 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34053/api/school/respect/person?includeRelated=false 2026-05-11 21:25:04.806 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34053/api/school/respect/person?includeRelated=false. 2026-05-11 21:25:06.991 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:25:06.999 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-05-11 21:25:07.001 [DefaultDispatcher-worker-2 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36431 2026-05-11 21:25:07.003 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36431/api/school/respect/person?includeRelated=false 2026-05-11 21:25:07.003 [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:36431/api/school/respect/person?includeRelated=false. 2026-05-11 21:25:07.003 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36431/api/school/respect/person?includeRelated=false 2026-05-11 21:25:07.005 [eventLoopGroupProxy-28-1 @call-handler#218] 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-05-11 21:25:07.009 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36431/api/school/respect/person?includeRelated=false 2026-05-11 21:25:07.009 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36431/api/school/respect/person?includeRelated=false 2026-05-11 21:25:07.009 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36431/api/school/respect/person?includeRelated=false 2026-05-11 21:25:07.010 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36431/api/school/respect/person?includeRelated=false. 2026-05-11 21:25:07.085 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36431/api/school/respect/person?since=2026-05-11T17%3A25%3A07.006140402Z&includeRelated=false 2026-05-11 21:25:07.086 [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:36431/api/school/respect/person?since=2026-05-11T17%3A25%3A07.006140402Z&includeRelated=false. 2026-05-11 21:25:07.086 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36431/api/school/respect/person?since=2026-05-11T17%3A25%3A07.006140402Z&includeRelated=false 2026-05-11 21:25:07.087 [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-05-11 21:25:07.090 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36431/api/school/respect/person?since=2026-05-11T17%3A25%3A07.006140402Z&includeRelated=false 2026-05-11 21:25:07.090 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36431/api/school/respect/person?since=2026-05-11T17%3A25%3A07.006140402Z&includeRelated=false 2026-05-11 21:25:07.090 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36431/api/school/respect/person?since=2026-05-11T17%3A25%3A07.006140402Z&includeRelated=false 2026-05-11 21:25:07.090 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36431/api/school/respect/person?since=2026-05-11T17%3A25%3A07.006140402Z&includeRelated=false. 2026-05-11 21:25:09.218 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:25:09.220 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-05-11 21:25:09.221 [DefaultDispatcher-worker-5 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44095 2026-05-11 21:25:09.222 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44095/playlist/4331c3e6-54f3-47fd-9b62-96e72093dcf6 2026-05-11 21:25:09.222 [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:44095/playlist/4331c3e6-54f3-47fd-9b62-96e72093dcf6. 2026-05-11 21:25:09.222 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44095/playlist/4331c3e6-54f3-47fd-9b62-96e72093dcf6 2026-05-11 21:25:09.225 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 4331c3e6-54f3-47fd-9b62-96e72093dcf6] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[4331c3e6-54f3-47fd-9b62-96e72093dcf6]] @ /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=[4331c3e6-54f3-47fd-9b62-96e72093dcf6]] @ /playlist/{uuid}/(method:GET) 2026-05-11 21:25:09.230 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44095/playlist/4331c3e6-54f3-47fd-9b62-96e72093dcf6 2026-05-11 21:25:09.231 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44095/playlist/4331c3e6-54f3-47fd-9b62-96e72093dcf6 2026-05-11 21:25:09.231 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44095/playlist/4331c3e6-54f3-47fd-9b62-96e72093dcf6 2026-05-11 21:25:09.231 [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:44095/playlist/4331c3e6-54f3-47fd-9b62-96e72093dcf6. 2026-05-11 21:25:11.399 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-11 21:25:11.399 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-11 21:25:11.400 [DefaultDispatcher-worker-6 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34197 2026-05-11 21:25:11.440 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34197/playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 2026-05-11 21:25:11.440 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@2660ad62 for http://localhost:34197/playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 2026-05-11 21:25:11.440 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34197/playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 2026-05-11 21:25:11.440 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:34197/playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 from class io.ktor.http.content.TextContent 2026-05-11 21:25:11.443 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, f3172e8d-2989-4136-bb8c-5d9aeec8ef00] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[f3172e8d-2989-4136-bb8c-5d9aeec8ef00]] @ /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=[f3172e8d-2989-4136-bb8c-5d9aeec8ef00]] @ /playlist/{uuid}/(method:POST) 2026-05-11 21:25:11.444 [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/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 2026-05-11 21:25:11.445 [DefaultDispatcher-worker-6 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-11 21:25:11.445 [DefaultDispatcher-worker-5 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34197/playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 2026-05-11 21:25:11.446 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34197/playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00 2026-05-11 21:25:11.446 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34197/playlist/f3172e8d-2989-4136-bb8c-5d9aeec8ef00