2026-03-24 00:15:46.929 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:15:47.020 [Test worker] INFO io.ktor.server.Application - Application started in 0.213 seconds. 2026-03-24 00:15:47.117 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41943 2026-03-24 00:15:48.006 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41943/resources/index.json 2026-03-24 00:15:48.007 [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:41943/resources/index.json. 2026-03-24 00:15:48.007 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41943/resources/index.json 2026-03-24 00:15:48.232 [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-03-24 00:15:48.302 [DefaultDispatcher-worker-3 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 76ms 2026-03-24 00:15:48.308 [DefaultDispatcher-worker-3 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41943/resources/index.json 2026-03-24 00:15:48.310 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41943/resources/index.json 2026-03-24 00:15:48.310 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41943/resources/index.json 2026-03-24 00:15:48.340 [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:41943/resources/index.json. 2026-03-24 00:15:48.384 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41943/resources/index.json 2026-03-24 00:15:48.385 [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:41943/resources/index.json. 2026-03-24 00:15:48.385 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41943/resources/index.json 2026-03-24 00:15:48.393 [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-03-24 00:15:48.395 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 4ms 2026-03-24 00:15:48.398 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41943/resources/index.json 2026-03-24 00:15:48.398 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41943/resources/index.json 2026-03-24 00:15:48.398 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41943/resources/index.json 2026-03-24 00:15:50.414 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:15:50.414 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 00:15:50.415 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44753 2026-03-24 00:15:50.478 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44753/resources/index.json 2026-03-24 00:15:50.478 [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:44753/resources/index.json. 2026-03-24 00:15:50.478 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44753/resources/index.json 2026-03-24 00:15:50.481 [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-03-24 00:15:50.482 [DefaultDispatcher-worker-5 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-24 00:15:50.482 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44753/resources/index.json 2026-03-24 00:15:50.483 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44753/resources/index.json 2026-03-24 00:15:50.483 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44753/resources/index.json 2026-03-24 00:15:50.483 [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:44753/resources/index.json. 2026-03-24 00:15:50.488 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44753/resources/index.json 2026-03-24 00:15:50.488 [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:44753/resources/index.json. 2026-03-24 00:15:50.488 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44753/resources/index.json 2026-03-24 00:15:50.489 [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-03-24 00:15:50.489 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 0ms 2026-03-24 00:15:50.490 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44753/resources/index.json 2026-03-24 00:15:50.490 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44753/resources/index.json 2026-03-24 00:15:50.490 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44753/resources/index.json 2026-03-24 00:15:52.497 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:15:52.497 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 00:15:52.499 [DefaultDispatcher-worker-4 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43207 2026-03-24 00:15:52.503 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43207/resources/lesson001.json 2026-03-24 00:15:52.503 [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:43207/resources/lesson001.json. 2026-03-24 00:15:52.503 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43207/resources/lesson001.json 2026-03-24 00:15:52.506 [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-03-24 00:15:52.507 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-24 00:15:52.507 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43207/resources/lesson001.json 2026-03-24 00:15:52.507 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43207/resources/lesson001.json 2026-03-24 00:15:52.507 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43207/resources/lesson001.json 2026-03-24 00:15:52.510 [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:43207/resources/lesson001.json. 2026-03-24 00:15:54.734 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:15:54.741 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.117 seconds. 2026-03-24 00:15:54.743 [DefaultDispatcher-worker-5 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46625 2026-03-24 00:15:54.750 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46625/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:54.750 [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:46625/api/school/respect/schoolpermissiongrant. 2026-03-24 00:15:54.750 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46625/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:54.754 [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-03-24 00:15:54.769 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46625/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:54.769 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46625/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:54.769 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46625/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:54.770 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46625/api/school/respect/schoolpermissiongrant. 2026-03-24 00:15:54.830 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.830 [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:46625/api/school/respect/person?includeRelated=false. 2026-03-24 00:15:54.830 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.832 [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-03-24 00:15:54.852 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.852 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.852 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.853 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46625/api/school/respect/person?includeRelated=false. 2026-03-24 00:15:54.859 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.859 [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:46625/api/school/respect/person?includeRelated=false. 2026-03-24 00:15:54.859 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.861 [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-03-24 00:15:54.863 [DefaultDispatcher-worker-5 @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-03-24 00:15:54.863 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.864 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:54.864 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46625/api/school/respect/person?includeRelated=false 2026-03-24 00:15:57.009 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:15:57.010 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.059 seconds. 2026-03-24 00:15:57.011 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36555 2026-03-24 00:15:57.012 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36555/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:57.012 [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:36555/api/school/respect/schoolpermissiongrant. 2026-03-24 00:15:57.012 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36555/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:57.014 [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-03-24 00:15:57.016 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36555/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:57.016 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36555/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:57.016 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36555/api/school/respect/schoolpermissiongrant 2026-03-24 00:15:57.017 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36555/api/school/respect/schoolpermissiongrant. 2026-03-24 00:15:57.078 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36555/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 00:15:57.078 [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:36555/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 00:15:57.078 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36555/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 00:15:57.080 [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-03-24 00:15:57.083 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36555/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 00:15:57.083 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36555/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 00:15:57.083 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36555/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 00:15:57.084 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36555/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 00:15:59.225 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:15:59.226 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-03-24 00:15:59.227 [DefaultDispatcher-worker-2 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43709 2026-03-24 00:15:59.229 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43709/api/school/respect/person?includeRelated=false 2026-03-24 00:15:59.230 [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:43709/api/school/respect/person?includeRelated=false. 2026-03-24 00:15:59.230 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43709/api/school/respect/person?includeRelated=false 2026-03-24 00:15:59.232 [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-03-24 00:15:59.235 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43709/api/school/respect/person?includeRelated=false 2026-03-24 00:15:59.235 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43709/api/school/respect/person?includeRelated=false 2026-03-24 00:15:59.235 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43709/api/school/respect/person?includeRelated=false 2026-03-24 00:15:59.236 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43709/api/school/respect/person?includeRelated=false. 2026-03-24 00:15:59.298 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43709/api/school/respect/person?since=2026-03-23T20%3A15%3A59.232754948Z&includeRelated=false 2026-03-24 00:15:59.298 [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:43709/api/school/respect/person?since=2026-03-23T20%3A15%3A59.232754948Z&includeRelated=false. 2026-03-24 00:15:59.298 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43709/api/school/respect/person?since=2026-03-23T20%3A15%3A59.232754948Z&includeRelated=false 2026-03-24 00:15:59.300 [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-03-24 00:15:59.302 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43709/api/school/respect/person?since=2026-03-23T20%3A15%3A59.232754948Z&includeRelated=false 2026-03-24 00:15:59.303 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43709/api/school/respect/person?since=2026-03-23T20%3A15%3A59.232754948Z&includeRelated=false 2026-03-24 00:15:59.303 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43709/api/school/respect/person?since=2026-03-23T20%3A15%3A59.232754948Z&includeRelated=false 2026-03-24 00:15:59.303 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43709/api/school/respect/person?since=2026-03-23T20%3A15%3A59.232754948Z&includeRelated=false. 2026-03-24 00:16:01.418 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:16:01.418 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-03-24 00:16:01.419 [DefaultDispatcher-worker-3 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39749 2026-03-24 00:16:01.462 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39749/api/school/respect/person 2026-03-24 00:16:01.462 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@40e58b5 for http://localhost:39749/api/school/respect/person 2026-03-24 00:16:01.463 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39749/api/school/respect/person 2026-03-24 00:16:01.463 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:39749/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 00:16:01.466 [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-03-24 00:16:01.471 [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-03-24 00:16:01.473 [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-03-24 00:16:01.473 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39749/api/school/respect/person 2026-03-24 00:16:01.474 [DefaultDispatcher-worker-7 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39749/api/school/respect/person 2026-03-24 00:16:01.474 [DefaultDispatcher-worker-7 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39749/api/school/respect/person 2026-03-24 00:16:03.578 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:16:03.579 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-24 00:16:03.580 [DefaultDispatcher-worker-6 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33041 2026-03-24 00:16:03.580 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33041/api/school/respect/schoolpermissiongrant 2026-03-24 00:16:03.581 [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:33041/api/school/respect/schoolpermissiongrant. 2026-03-24 00:16:03.581 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33041/api/school/respect/schoolpermissiongrant 2026-03-24 00:16:03.583 [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-03-24 00:16:03.584 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33041/api/school/respect/schoolpermissiongrant 2026-03-24 00:16:03.585 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33041/api/school/respect/schoolpermissiongrant 2026-03-24 00:16:03.585 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33041/api/school/respect/schoolpermissiongrant 2026-03-24 00:16:03.585 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33041/api/school/respect/schoolpermissiongrant. 2026-03-24 00:16:03.624 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:03.625 [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:33041/api/school/respect/person?includeRelated=false. 2026-03-24 00:16:03.625 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:03.625 [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-03-24 00:16:03.631 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:03.631 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:03.631 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:03.632 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33041/api/school/respect/person?includeRelated=false. 2026-03-24 00:16:05.637 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:05.637 [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:33041/api/school/respect/person?includeRelated=false. 2026-03-24 00:16:05.637 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:05.639 [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-03-24 00:16:05.642 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:05.642 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:05.642 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33041/api/school/respect/person?includeRelated=false 2026-03-24 00:16:05.642 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33041/api/school/respect/person?includeRelated=false. 2026-03-24 00:16:07.757 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:16:07.758 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-03-24 00:16:07.759 [DefaultDispatcher-worker-6 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42285 2026-03-24 00:16:07.761 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42285/api/school/respect/person?includeRelated=false 2026-03-24 00:16:07.761 [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:42285/api/school/respect/person?includeRelated=false. 2026-03-24 00:16:07.761 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42285/api/school/respect/person?includeRelated=false 2026-03-24 00:16:07.763 [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-03-24 00:16:07.767 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42285/api/school/respect/person?includeRelated=false 2026-03-24 00:16:07.767 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42285/api/school/respect/person?includeRelated=false 2026-03-24 00:16:07.767 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42285/api/school/respect/person?includeRelated=false 2026-03-24 00:16:07.768 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42285/api/school/respect/person?includeRelated=false. 2026-03-24 00:16:07.816 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42285/api/school/respect/person?since=2026-03-23T20%3A16%3A07.764033493Z&includeRelated=false 2026-03-24 00:16:07.816 [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:42285/api/school/respect/person?since=2026-03-23T20%3A16%3A07.764033493Z&includeRelated=false. 2026-03-24 00:16:07.816 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42285/api/school/respect/person?since=2026-03-23T20%3A16%3A07.764033493Z&includeRelated=false 2026-03-24 00:16:07.817 [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-03-24 00:16:07.820 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42285/api/school/respect/person?since=2026-03-23T20%3A16%3A07.764033493Z&includeRelated=false 2026-03-24 00:16:07.820 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42285/api/school/respect/person?since=2026-03-23T20%3A16%3A07.764033493Z&includeRelated=false 2026-03-24 00:16:07.820 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42285/api/school/respect/person?since=2026-03-23T20%3A16%3A07.764033493Z&includeRelated=false 2026-03-24 00:16:07.821 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42285/api/school/respect/person?since=2026-03-23T20%3A16%3A07.764033493Z&includeRelated=false. 2026-03-24 00:16:09.936 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:16:09.937 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.049 seconds. 2026-03-24 00:16:09.938 [DefaultDispatcher-worker-2 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33607 2026-03-24 00:16:09.940 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33607/playlist/0775e5f7-91ff-425f-8b64-f5be312d2020 2026-03-24 00:16:09.940 [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:33607/playlist/0775e5f7-91ff-425f-8b64-f5be312d2020. 2026-03-24 00:16:09.940 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33607/playlist/0775e5f7-91ff-425f-8b64-f5be312d2020 2026-03-24 00:16:09.942 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 0775e5f7-91ff-425f-8b64-f5be312d2020] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[0775e5f7-91ff-425f-8b64-f5be312d2020]] @ /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=[0775e5f7-91ff-425f-8b64-f5be312d2020]] @ /playlist/{uuid}/(method:GET) 2026-03-24 00:16:09.948 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33607/playlist/0775e5f7-91ff-425f-8b64-f5be312d2020 2026-03-24 00:16:09.948 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33607/playlist/0775e5f7-91ff-425f-8b64-f5be312d2020 2026-03-24 00:16:09.948 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33607/playlist/0775e5f7-91ff-425f-8b64-f5be312d2020 2026-03-24 00:16:09.948 [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:33607/playlist/0775e5f7-91ff-425f-8b64-f5be312d2020. 2026-03-24 00:16:12.095 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 00:16:12.096 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-03-24 00:16:12.097 [DefaultDispatcher-worker-6 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40803 2026-03-24 00:16:12.135 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40803/playlist/bd382c27-20b6-4d05-a642-9351284976f9 2026-03-24 00:16:12.135 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@33f04fe4 for http://localhost:40803/playlist/bd382c27-20b6-4d05-a642-9351284976f9 2026-03-24 00:16:12.135 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40803/playlist/bd382c27-20b6-4d05-a642-9351284976f9 2026-03-24 00:16:12.135 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40803/playlist/bd382c27-20b6-4d05-a642-9351284976f9 from class io.ktor.http.content.TextContent 2026-03-24 00:16:12.138 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, bd382c27-20b6-4d05-a642-9351284976f9] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[bd382c27-20b6-4d05-a642-9351284976f9]] @ /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=[bd382c27-20b6-4d05-a642-9351284976f9]] @ /playlist/{uuid}/(method:POST) 2026-03-24 00:16:12.138 [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/bd382c27-20b6-4d05-a642-9351284976f9 2026-03-24 00:16:12.139 [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/bd382c27-20b6-4d05-a642-9351284976f9 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 00:16:12.139 [DefaultDispatcher-worker-3 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40803/playlist/bd382c27-20b6-4d05-a642-9351284976f9 2026-03-24 00:16:12.139 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40803/playlist/bd382c27-20b6-4d05-a642-9351284976f9 2026-03-24 00:16:12.139 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40803/playlist/bd382c27-20b6-4d05-a642-9351284976f9 2026-03-24 07:44:04.581 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:04.664 [Test worker] INFO io.ktor.server.Application - Application started in 0.195 seconds. 2026-03-24 07:44:04.744 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34379 2026-03-24 07:44:05.487 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34379/resources/index.json 2026-03-24 07:44:05.488 [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:34379/resources/index.json. 2026-03-24 07:44:05.488 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34379/resources/index.json 2026-03-24 07:44:05.632 [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-03-24 07:44:05.676 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 49ms 2026-03-24 07:44:05.680 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34379/resources/index.json 2026-03-24 07:44:05.682 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34379/resources/index.json 2026-03-24 07:44:05.682 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34379/resources/index.json 2026-03-24 07:44:05.709 [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:34379/resources/index.json. 2026-03-24 07:44:05.753 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34379/resources/index.json 2026-03-24 07:44:05.754 [DefaultDispatcher-worker-5 @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:34379/resources/index.json. 2026-03-24 07:44:05.754 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34379/resources/index.json 2026-03-24 07:44:05.757 [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-03-24 07:44:05.761 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 5ms 2026-03-24 07:44:05.763 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34379/resources/index.json 2026-03-24 07:44:05.764 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34379/resources/index.json 2026-03-24 07:44:05.764 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34379/resources/index.json 2026-03-24 07:44:07.779 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:07.779 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 07:44:07.780 [DefaultDispatcher-worker-2 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39463 2026-03-24 07:44:07.843 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39463/resources/index.json 2026-03-24 07:44:07.843 [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:39463/resources/index.json. 2026-03-24 07:44:07.843 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39463/resources/index.json 2026-03-24 07:44:07.846 [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-03-24 07:44:07.847 [DefaultDispatcher-worker-3 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-24 07:44:07.847 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39463/resources/index.json 2026-03-24 07:44:07.847 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39463/resources/index.json 2026-03-24 07:44:07.847 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39463/resources/index.json 2026-03-24 07:44:07.848 [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:39463/resources/index.json. 2026-03-24 07:44:07.853 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39463/resources/index.json 2026-03-24 07:44:07.853 [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:39463/resources/index.json. 2026-03-24 07:44:07.853 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39463/resources/index.json 2026-03-24 07:44:07.854 [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-03-24 07:44:07.854 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 0ms 2026-03-24 07:44:07.855 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39463/resources/index.json 2026-03-24 07:44:07.855 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39463/resources/index.json 2026-03-24 07:44:07.855 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39463/resources/index.json 2026-03-24 07:44:09.861 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:09.862 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 07:44:09.863 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37335 2026-03-24 07:44:09.868 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37335/resources/lesson001.json 2026-03-24 07:44:09.868 [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:37335/resources/lesson001.json. 2026-03-24 07:44:09.868 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37335/resources/lesson001.json 2026-03-24 07:44:09.871 [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-03-24 07:44:09.872 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-24 07:44:09.872 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37335/resources/lesson001.json 2026-03-24 07:44:09.872 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37335/resources/lesson001.json 2026-03-24 07:44:09.872 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37335/resources/lesson001.json 2026-03-24 07:44:09.875 [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:37335/resources/lesson001.json. 2026-03-24 07:44:12.111 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:12.117 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.106 seconds. 2026-03-24 07:44:12.119 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38971 2026-03-24 07:44:12.130 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38971/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:12.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:38971/api/school/respect/schoolpermissiongrant. 2026-03-24 07:44:12.130 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38971/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:12.134 [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-03-24 07:44:12.149 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38971/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:12.149 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38971/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:12.149 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38971/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:12.151 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38971/api/school/respect/schoolpermissiongrant. 2026-03-24 07:44:12.212 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.212 [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:38971/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:12.212 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.214 [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-03-24 07:44:12.232 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.232 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.232 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.234 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38971/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:12.240 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.240 [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:38971/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:12.241 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.242 [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-03-24 07:44:12.245 [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-03-24 07:44:12.246 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.246 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:12.246 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38971/api/school/respect/person?includeRelated=false 2026-03-24 07:44:14.360 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:14.361 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-24 07:44:14.362 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37407 2026-03-24 07:44:14.363 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37407/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:14.363 [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:37407/api/school/respect/schoolpermissiongrant. 2026-03-24 07:44:14.363 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37407/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:14.365 [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-03-24 07:44:14.367 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37407/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:14.367 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37407/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:14.367 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37407/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:14.368 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37407/api/school/respect/schoolpermissiongrant. 2026-03-24 07:44:14.421 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37407/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 07:44:14.421 [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:37407/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 07:44:14.421 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37407/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 07:44:14.423 [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-03-24 07:44:14.426 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37407/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 07:44:14.426 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37407/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 07:44:14.426 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37407/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 07:44:14.427 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37407/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 07:44:16.523 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:16.523 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-03-24 07:44:16.524 [DefaultDispatcher-worker-1 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45147 2026-03-24 07:44:16.527 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45147/api/school/respect/person?includeRelated=false 2026-03-24 07:44:16.527 [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:45147/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:16.527 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45147/api/school/respect/person?includeRelated=false 2026-03-24 07:44:16.529 [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-03-24 07:44:16.533 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45147/api/school/respect/person?includeRelated=false 2026-03-24 07:44:16.533 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45147/api/school/respect/person?includeRelated=false 2026-03-24 07:44:16.533 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45147/api/school/respect/person?includeRelated=false 2026-03-24 07:44:16.534 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45147/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:16.591 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45147/api/school/respect/person?since=2026-03-24T03%3A44%3A16.530249204Z&includeRelated=false 2026-03-24 07:44:16.591 [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:45147/api/school/respect/person?since=2026-03-24T03%3A44%3A16.530249204Z&includeRelated=false. 2026-03-24 07:44:16.591 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45147/api/school/respect/person?since=2026-03-24T03%3A44%3A16.530249204Z&includeRelated=false 2026-03-24 07:44:16.592 [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-03-24 07:44:16.595 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45147/api/school/respect/person?since=2026-03-24T03%3A44%3A16.530249204Z&includeRelated=false 2026-03-24 07:44:16.595 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45147/api/school/respect/person?since=2026-03-24T03%3A44%3A16.530249204Z&includeRelated=false 2026-03-24 07:44:16.595 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45147/api/school/respect/person?since=2026-03-24T03%3A44%3A16.530249204Z&includeRelated=false 2026-03-24 07:44:16.595 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45147/api/school/respect/person?since=2026-03-24T03%3A44%3A16.530249204Z&includeRelated=false. 2026-03-24 07:44:18.707 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:18.708 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-03-24 07:44:18.709 [DefaultDispatcher-worker-3 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35115 2026-03-24 07:44:18.751 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35115/api/school/respect/person 2026-03-24 07:44:18.751 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@632e25ce for http://localhost:35115/api/school/respect/person 2026-03-24 07:44:18.751 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35115/api/school/respect/person 2026-03-24 07:44:18.751 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35115/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 07:44:18.754 [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-03-24 07:44:18.760 [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-03-24 07:44:18.761 [DefaultDispatcher-worker-5 @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-03-24 07:44:18.762 [DefaultDispatcher-worker-10 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35115/api/school/respect/person 2026-03-24 07:44:18.762 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35115/api/school/respect/person 2026-03-24 07:44:18.762 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35115/api/school/respect/person 2026-03-24 07:44:20.929 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:20.930 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.055 seconds. 2026-03-24 07:44:20.931 [DefaultDispatcher-worker-13 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38731 2026-03-24 07:44:20.932 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38731/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:20.932 [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:38731/api/school/respect/schoolpermissiongrant. 2026-03-24 07:44:20.932 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38731/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:20.934 [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-03-24 07:44:20.936 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38731/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:20.936 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38731/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:20.936 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38731/api/school/respect/schoolpermissiongrant 2026-03-24 07:44:20.936 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38731/api/school/respect/schoolpermissiongrant. 2026-03-24 07:44:20.994 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:20.995 [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:38731/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:20.995 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:20.996 [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-03-24 07:44:21.001 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:21.001 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:21.001 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:21.002 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38731/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:23.007 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:23.007 [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:38731/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:23.007 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:23.009 [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-03-24 07:44:23.012 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:23.012 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:23.012 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38731/api/school/respect/person?includeRelated=false 2026-03-24 07:44:23.012 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38731/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:25.128 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:25.129 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-03-24 07:44:25.130 [DefaultDispatcher-worker-13 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45329 2026-03-24 07:44:25.132 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45329/api/school/respect/person?includeRelated=false 2026-03-24 07:44:25.132 [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:45329/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:25.132 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45329/api/school/respect/person?includeRelated=false 2026-03-24 07:44:25.134 [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-03-24 07:44:25.138 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45329/api/school/respect/person?includeRelated=false 2026-03-24 07:44:25.138 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45329/api/school/respect/person?includeRelated=false 2026-03-24 07:44:25.138 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45329/api/school/respect/person?includeRelated=false 2026-03-24 07:44:25.139 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45329/api/school/respect/person?includeRelated=false. 2026-03-24 07:44:25.198 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45329/api/school/respect/person?since=2026-03-24T03%3A44%3A25.135129290Z&includeRelated=false 2026-03-24 07:44:25.198 [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:45329/api/school/respect/person?since=2026-03-24T03%3A44%3A25.135129290Z&includeRelated=false. 2026-03-24 07:44:25.198 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45329/api/school/respect/person?since=2026-03-24T03%3A44%3A25.135129290Z&includeRelated=false 2026-03-24 07:44:25.200 [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-03-24 07:44:25.202 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45329/api/school/respect/person?since=2026-03-24T03%3A44%3A25.135129290Z&includeRelated=false 2026-03-24 07:44:25.202 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45329/api/school/respect/person?since=2026-03-24T03%3A44%3A25.135129290Z&includeRelated=false 2026-03-24 07:44:25.202 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45329/api/school/respect/person?since=2026-03-24T03%3A44%3A25.135129290Z&includeRelated=false 2026-03-24 07:44:25.203 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45329/api/school/respect/person?since=2026-03-24T03%3A44%3A25.135129290Z&includeRelated=false. 2026-03-24 07:44:27.322 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:27.323 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.05 seconds. 2026-03-24 07:44:27.324 [DefaultDispatcher-worker-10 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46597 2026-03-24 07:44:27.326 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46597/playlist/f61ee94e-d424-4723-a87c-ce556ea00cda 2026-03-24 07:44:27.326 [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:46597/playlist/f61ee94e-d424-4723-a87c-ce556ea00cda. 2026-03-24 07:44:27.326 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46597/playlist/f61ee94e-d424-4723-a87c-ce556ea00cda 2026-03-24 07:44:27.328 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, f61ee94e-d424-4723-a87c-ce556ea00cda] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[f61ee94e-d424-4723-a87c-ce556ea00cda]] @ /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=[f61ee94e-d424-4723-a87c-ce556ea00cda]] @ /playlist/{uuid}/(method:GET) 2026-03-24 07:44:27.335 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46597/playlist/f61ee94e-d424-4723-a87c-ce556ea00cda 2026-03-24 07:44:27.335 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46597/playlist/f61ee94e-d424-4723-a87c-ce556ea00cda 2026-03-24 07:44:27.335 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46597/playlist/f61ee94e-d424-4723-a87c-ce556ea00cda 2026-03-24 07:44:27.335 [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:46597/playlist/f61ee94e-d424-4723-a87c-ce556ea00cda. 2026-03-24 07:44:29.477 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 07:44:29.478 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-03-24 07:44:29.479 [DefaultDispatcher-worker-3 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46207 2026-03-24 07:44:29.527 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46207/playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 2026-03-24 07:44:29.528 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@cd132bb for http://localhost:46207/playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 2026-03-24 07:44:29.528 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46207/playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 2026-03-24 07:44:29.528 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:46207/playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 from class io.ktor.http.content.TextContent 2026-03-24 07:44:29.530 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 275b05ee-ea37-4de0-83e5-bd98ba839ae1] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[275b05ee-ea37-4de0-83e5-bd98ba839ae1]] @ /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=[275b05ee-ea37-4de0-83e5-bd98ba839ae1]] @ /playlist/{uuid}/(method:POST) 2026-03-24 07:44:29.530 [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/275b05ee-ea37-4de0-83e5-bd98ba839ae1 2026-03-24 07:44:29.531 [DefaultDispatcher-worker-13 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 07:44:29.532 [DefaultDispatcher-worker-1 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46207/playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 2026-03-24 07:44:29.532 [DefaultDispatcher-worker-1 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46207/playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 2026-03-24 07:44:29.532 [DefaultDispatcher-worker-1 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46207/playlist/275b05ee-ea37-4de0-83e5-bd98ba839ae1 2026-03-24 16:06:55.206 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:06:55.318 [Test worker] INFO io.ktor.server.Application - Application started in 0.287 seconds. 2026-03-24 16:06:55.424 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33813 2026-03-24 16:06:56.823 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33813/resources/index.json 2026-03-24 16:06:56.824 [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:33813/resources/index.json. 2026-03-24 16:06:56.824 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33813/resources/index.json 2026-03-24 16:06:57.010 [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-03-24 16:06:57.059 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 56ms 2026-03-24 16:06:57.065 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33813/resources/index.json 2026-03-24 16:06:57.067 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33813/resources/index.json 2026-03-24 16:06:57.067 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33813/resources/index.json 2026-03-24 16:06:57.093 [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:33813/resources/index.json. 2026-03-24 16:06:57.139 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33813/resources/index.json 2026-03-24 16:06:57.139 [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:33813/resources/index.json. 2026-03-24 16:06:57.139 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33813/resources/index.json 2026-03-24 16:06:57.144 [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-03-24 16:06:57.149 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 6ms 2026-03-24 16:06:57.152 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33813/resources/index.json 2026-03-24 16:06:57.153 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33813/resources/index.json 2026-03-24 16:06:57.153 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33813/resources/index.json 2026-03-24 16:06:59.173 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:06:59.173 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 16:06:59.175 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37877 2026-03-24 16:06:59.227 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37877/resources/index.json 2026-03-24 16:06:59.228 [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:37877/resources/index.json. 2026-03-24 16:06:59.228 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37877/resources/index.json 2026-03-24 16:06:59.231 [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-03-24 16:06:59.232 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-24 16:06:59.233 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37877/resources/index.json 2026-03-24 16:06:59.233 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37877/resources/index.json 2026-03-24 16:06:59.233 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37877/resources/index.json 2026-03-24 16:06:59.233 [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:37877/resources/index.json. 2026-03-24 16:06:59.238 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37877/resources/index.json 2026-03-24 16:06:59.238 [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:37877/resources/index.json. 2026-03-24 16:06:59.238 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37877/resources/index.json 2026-03-24 16:06:59.239 [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-03-24 16:06:59.240 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-03-24 16:06:59.240 [DefaultDispatcher-worker-4 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37877/resources/index.json 2026-03-24 16:06:59.241 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37877/resources/index.json 2026-03-24 16:06:59.241 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37877/resources/index.json 2026-03-24 16:07:01.250 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:01.250 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 16:07:01.251 [DefaultDispatcher-worker-5 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37949 2026-03-24 16:07:01.256 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37949/resources/lesson001.json 2026-03-24 16:07:01.256 [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:37949/resources/lesson001.json. 2026-03-24 16:07:01.256 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37949/resources/lesson001.json 2026-03-24 16:07:01.258 [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-03-24 16:07:01.260 [DefaultDispatcher-worker-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-24 16:07:01.260 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37949/resources/lesson001.json 2026-03-24 16:07:01.260 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37949/resources/lesson001.json 2026-03-24 16:07:01.260 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37949/resources/lesson001.json 2026-03-24 16:07:01.262 [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:37949/resources/lesson001.json. 2026-03-24 16:07:03.734 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:03.743 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.204 seconds. 2026-03-24 16:07:03.746 [DefaultDispatcher-worker-1 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45055 2026-03-24 16:07:03.756 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45055/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:03.756 [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:45055/api/school/respect/schoolpermissiongrant. 2026-03-24 16:07:03.756 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45055/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:03.764 [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-03-24 16:07:03.780 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45055/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:03.781 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45055/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:03.781 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45055/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:03.783 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45055/api/school/respect/schoolpermissiongrant. 2026-03-24 16:07:03.932 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.932 [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:45055/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:03.932 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.934 [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-03-24 16:07:03.960 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.960 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.960 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.962 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45055/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:03.970 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.970 [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:45055/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:03.970 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.972 [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-03-24 16:07:03.975 [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-03-24 16:07:03.976 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.976 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:03.976 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45055/api/school/respect/person?includeRelated=false 2026-03-24 16:07:06.110 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:06.111 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.049 seconds. 2026-03-24 16:07:06.112 [DefaultDispatcher-worker-3 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37235 2026-03-24 16:07:06.113 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37235/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:06.113 [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:37235/api/school/respect/schoolpermissiongrant. 2026-03-24 16:07:06.113 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37235/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:06.116 [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-03-24 16:07:06.118 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37235/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:06.118 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37235/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:06.118 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37235/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:06.119 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37235/api/school/respect/schoolpermissiongrant. 2026-03-24 16:07:06.173 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37235/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 16:07:06.173 [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:37235/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 16:07:06.173 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37235/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 16:07:06.175 [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-03-24 16:07:06.178 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37235/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 16:07:06.178 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37235/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 16:07:06.178 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37235/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 16:07:06.179 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37235/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 16:07:08.335 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:08.337 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-03-24 16:07:08.346 [DefaultDispatcher-worker-1 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39215 2026-03-24 16:07:08.358 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39215/api/school/respect/person?includeRelated=false 2026-03-24 16:07:08.359 [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:39215/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:08.359 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39215/api/school/respect/person?includeRelated=false 2026-03-24 16:07:08.378 [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-03-24 16:07:08.382 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39215/api/school/respect/person?includeRelated=false 2026-03-24 16:07:08.382 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39215/api/school/respect/person?includeRelated=false 2026-03-24 16:07:08.382 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39215/api/school/respect/person?includeRelated=false 2026-03-24 16:07:08.384 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39215/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:08.511 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39215/api/school/respect/person?since=2026-03-24T12%3A07%3A08.378855670Z&includeRelated=false 2026-03-24 16:07:08.512 [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:39215/api/school/respect/person?since=2026-03-24T12%3A07%3A08.378855670Z&includeRelated=false. 2026-03-24 16:07:08.512 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39215/api/school/respect/person?since=2026-03-24T12%3A07%3A08.378855670Z&includeRelated=false 2026-03-24 16:07:08.525 [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-03-24 16:07:08.536 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39215/api/school/respect/person?since=2026-03-24T12%3A07%3A08.378855670Z&includeRelated=false 2026-03-24 16:07:08.536 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39215/api/school/respect/person?since=2026-03-24T12%3A07%3A08.378855670Z&includeRelated=false 2026-03-24 16:07:08.536 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39215/api/school/respect/person?since=2026-03-24T12%3A07%3A08.378855670Z&includeRelated=false 2026-03-24 16:07:08.539 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39215/api/school/respect/person?since=2026-03-24T12%3A07%3A08.378855670Z&includeRelated=false. 2026-03-24 16:07:10.716 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:10.717 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-03-24 16:07:10.721 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36655 2026-03-24 16:07:10.796 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36655/api/school/respect/person 2026-03-24 16:07:10.797 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@19c1bffa for http://localhost:36655/api/school/respect/person 2026-03-24 16:07:10.797 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36655/api/school/respect/person 2026-03-24 16:07:10.798 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36655/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 16:07:10.806 [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-03-24 16:07:10.813 [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-03-24 16:07:10.816 [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-03-24 16:07:10.817 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36655/api/school/respect/person 2026-03-24 16:07:10.817 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36655/api/school/respect/person 2026-03-24 16:07:10.817 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36655/api/school/respect/person 2026-03-24 16:07:13.032 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:13.033 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.057 seconds. 2026-03-24 16:07:13.034 [DefaultDispatcher-worker-1 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40653 2026-03-24 16:07:13.036 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40653/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:13.036 [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:40653/api/school/respect/schoolpermissiongrant. 2026-03-24 16:07:13.036 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40653/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:13.048 [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-03-24 16:07:13.055 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40653/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:13.055 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40653/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:13.056 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40653/api/school/respect/schoolpermissiongrant 2026-03-24 16:07:13.056 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40653/api/school/respect/schoolpermissiongrant. 2026-03-24 16:07:13.133 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:13.134 [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:40653/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:13.134 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:13.138 [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-03-24 16:07:13.145 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:13.146 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:13.146 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:13.147 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40653/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:15.152 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:15.153 [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:40653/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:15.153 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:15.154 [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-03-24 16:07:15.157 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:15.157 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:15.157 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40653/api/school/respect/person?includeRelated=false 2026-03-24 16:07:15.158 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40653/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:16.172 [eventLoopGroupProxy-24-1] WARN i.n.u.c.AbstractEventExecutor - A task raised an exception. Task: io.netty.channel.AbstractChannel$AbstractUnsafe$8@5d4174d6 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-03-24 16:07:17.325 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:17.329 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.055 seconds. 2026-03-24 16:07:17.335 [DefaultDispatcher-worker-4 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40243 2026-03-24 16:07:17.345 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40243/api/school/respect/person?includeRelated=false 2026-03-24 16:07:17.345 [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:40243/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:17.345 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40243/api/school/respect/person?includeRelated=false 2026-03-24 16:07:17.348 [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-03-24 16:07:17.351 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40243/api/school/respect/person?includeRelated=false 2026-03-24 16:07:17.352 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40243/api/school/respect/person?includeRelated=false 2026-03-24 16:07:17.352 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40243/api/school/respect/person?includeRelated=false 2026-03-24 16:07:17.352 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40243/api/school/respect/person?includeRelated=false. 2026-03-24 16:07:17.398 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40243/api/school/respect/person?since=2026-03-24T12%3A07%3A17.348485828Z&includeRelated=false 2026-03-24 16:07:17.398 [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:40243/api/school/respect/person?since=2026-03-24T12%3A07%3A17.348485828Z&includeRelated=false. 2026-03-24 16:07:17.398 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40243/api/school/respect/person?since=2026-03-24T12%3A07%3A17.348485828Z&includeRelated=false 2026-03-24 16:07:17.399 [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-03-24 16:07:17.402 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40243/api/school/respect/person?since=2026-03-24T12%3A07%3A17.348485828Z&includeRelated=false 2026-03-24 16:07:17.403 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40243/api/school/respect/person?since=2026-03-24T12%3A07%3A17.348485828Z&includeRelated=false 2026-03-24 16:07:17.403 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40243/api/school/respect/person?since=2026-03-24T12%3A07%3A17.348485828Z&includeRelated=false 2026-03-24 16:07:17.404 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40243/api/school/respect/person?since=2026-03-24T12%3A07%3A17.348485828Z&includeRelated=false. 2026-03-24 16:07:19.551 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:19.553 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-03-24 16:07:19.554 [DefaultDispatcher-worker-6 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37297 2026-03-24 16:07:19.557 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37297/playlist/88aa225e-865f-4767-86be-c0f40b1f5b39 2026-03-24 16:07:19.557 [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:37297/playlist/88aa225e-865f-4767-86be-c0f40b1f5b39. 2026-03-24 16:07:19.557 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37297/playlist/88aa225e-865f-4767-86be-c0f40b1f5b39 2026-03-24 16:07:19.560 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 88aa225e-865f-4767-86be-c0f40b1f5b39] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[88aa225e-865f-4767-86be-c0f40b1f5b39]] @ /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=[88aa225e-865f-4767-86be-c0f40b1f5b39]] @ /playlist/{uuid}/(method:GET) 2026-03-24 16:07:19.566 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37297/playlist/88aa225e-865f-4767-86be-c0f40b1f5b39 2026-03-24 16:07:19.566 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37297/playlist/88aa225e-865f-4767-86be-c0f40b1f5b39 2026-03-24 16:07:19.567 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37297/playlist/88aa225e-865f-4767-86be-c0f40b1f5b39 2026-03-24 16:07:19.567 [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:37297/playlist/88aa225e-865f-4767-86be-c0f40b1f5b39. 2026-03-24 16:07:21.710 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 16:07:21.710 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-24 16:07:21.712 [DefaultDispatcher-worker-2 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44585 2026-03-24 16:07:21.754 [DefaultDispatcher-worker-1 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44585/playlist/71e5eb3f-a812-4919-9315-dc071611314c 2026-03-24 16:07:21.755 [DefaultDispatcher-worker-1 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@7a1d60f1 for http://localhost:44585/playlist/71e5eb3f-a812-4919-9315-dc071611314c 2026-03-24 16:07:21.755 [DefaultDispatcher-worker-1 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44585/playlist/71e5eb3f-a812-4919-9315-dc071611314c 2026-03-24 16:07:21.755 [DefaultDispatcher-worker-1 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:44585/playlist/71e5eb3f-a812-4919-9315-dc071611314c from class io.ktor.http.content.TextContent 2026-03-24 16:07:21.757 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 71e5eb3f-a812-4919-9315-dc071611314c] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[71e5eb3f-a812-4919-9315-dc071611314c]] @ /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=[71e5eb3f-a812-4919-9315-dc071611314c]] @ /playlist/{uuid}/(method:POST) 2026-03-24 16:07:21.758 [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/71e5eb3f-a812-4919-9315-dc071611314c 2026-03-24 16:07:21.759 [DefaultDispatcher-worker-1 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/71e5eb3f-a812-4919-9315-dc071611314c request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 16:07:21.760 [DefaultDispatcher-worker-3 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44585/playlist/71e5eb3f-a812-4919-9315-dc071611314c 2026-03-24 16:07:21.761 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44585/playlist/71e5eb3f-a812-4919-9315-dc071611314c 2026-03-24 16:07:21.761 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44585/playlist/71e5eb3f-a812-4919-9315-dc071611314c