2026-03-17 09:27:47.654 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:27:47.745 [Test worker] INFO io.ktor.server.Application - Application started in 0.204 seconds. 2026-03-17 09:27:47.827 [DefaultDispatcher-worker-2 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39501 2026-03-17 09:27:48.494 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39501/resources/index.json 2026-03-17 09:27:48.495 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39501/resources/index.json. 2026-03-17 09:27:48.495 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39501/resources/index.json 2026-03-17 09:27:48.599 [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-17 09:27:48.630 [DefaultDispatcher-worker-2 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 34ms 2026-03-17 09:27:48.633 [DefaultDispatcher-worker-3 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39501/resources/index.json 2026-03-17 09:27:48.635 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39501/resources/index.json 2026-03-17 09:27:48.635 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39501/resources/index.json 2026-03-17 09:27:48.651 [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:39501/resources/index.json. 2026-03-17 09:27:48.680 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39501/resources/index.json 2026-03-17 09:27:48.680 [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:39501/resources/index.json. 2026-03-17 09:27:48.680 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39501/resources/index.json 2026-03-17 09:27:48.682 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-17 09:27:48.684 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-03-17 09:27:48.685 [DefaultDispatcher-worker-3 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39501/resources/index.json 2026-03-17 09:27:48.685 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39501/resources/index.json 2026-03-17 09:27:48.685 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39501/resources/index.json 2026-03-17 09:27:50.698 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:27:50.699 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-17 09:27:50.700 [DefaultDispatcher-worker-5 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36905 2026-03-17 09:27:50.852 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36905/resources/index.json 2026-03-17 09:27:50.852 [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:36905/resources/index.json. 2026-03-17 09:27:50.852 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36905/resources/index.json 2026-03-17 09:27:50.855 [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-17 09:27:50.856 [DefaultDispatcher-worker-5 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-17 09:27:50.857 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36905/resources/index.json 2026-03-17 09:27:50.857 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36905/resources/index.json 2026-03-17 09:27:50.857 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36905/resources/index.json 2026-03-17 09:27:50.857 [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:36905/resources/index.json. 2026-03-17 09:27:50.862 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36905/resources/index.json 2026-03-17 09:27:50.862 [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:36905/resources/index.json. 2026-03-17 09:27:50.862 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36905/resources/index.json 2026-03-17 09:27:50.863 [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-17 09:27:50.864 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-03-17 09:27:50.864 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36905/resources/index.json 2026-03-17 09:27:50.864 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36905/resources/index.json 2026-03-17 09:27:50.864 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36905/resources/index.json 2026-03-17 09:27:52.872 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:27:52.873 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-17 09:27:52.874 [DefaultDispatcher-worker-2 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46133 2026-03-17 09:27:52.879 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46133/resources/lesson001.json 2026-03-17 09:27:52.879 [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:46133/resources/lesson001.json. 2026-03-17 09:27:52.879 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46133/resources/lesson001.json 2026-03-17 09:27:52.882 [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-17 09:27:52.883 [DefaultDispatcher-worker-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-17 09:27:52.883 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46133/resources/lesson001.json 2026-03-17 09:27:52.883 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46133/resources/lesson001.json 2026-03-17 09:27:52.883 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46133/resources/lesson001.json 2026-03-17 09:27:52.886 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:46133/resources/lesson001.json. 2026-03-17 09:27:55.368 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:27:55.375 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.339 seconds. 2026-03-17 09:27:55.377 [DefaultDispatcher-worker-1 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36461 2026-03-17 09:27:55.385 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36461/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:55.385 [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:36461/api/school/respect/schoolpermissiongrant. 2026-03-17 09:27:55.385 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36461/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:55.390 [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-17 09:27:55.406 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36461/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:55.406 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36461/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:55.406 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36461/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:55.407 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36461/api/school/respect/schoolpermissiongrant. 2026-03-17 09:27:55.472 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.472 [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:36461/api/school/respect/person?includeRelated=false. 2026-03-17 09:27:55.473 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.474 [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-17 09:27:55.493 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.493 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.493 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.494 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36461/api/school/respect/person?includeRelated=false. 2026-03-17 09:27:55.501 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.501 [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:36461/api/school/respect/person?includeRelated=false. 2026-03-17 09:27:55.501 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.503 [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-17 09:27:55.505 [DefaultDispatcher-worker-1 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 09:27:55.506 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.506 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:55.506 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36461/api/school/respect/person?includeRelated=false 2026-03-17 09:27:57.627 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:27:57.628 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-03-17 09:27:57.629 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43701 2026-03-17 09:27:57.630 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43701/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:57.630 [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:43701/api/school/respect/schoolpermissiongrant. 2026-03-17 09:27:57.631 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43701/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:57.633 [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-17 09:27:57.635 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43701/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:57.635 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43701/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:57.635 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43701/api/school/respect/schoolpermissiongrant 2026-03-17 09:27:57.635 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43701/api/school/respect/schoolpermissiongrant. 2026-03-17 09:27:57.681 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43701/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 09:27:57.682 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43701/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-17 09:27:57.682 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43701/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 09:27:57.683 [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-17 09:27:57.686 [DefaultDispatcher-worker-1 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43701/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 09:27:57.686 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43701/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 09:27:57.686 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43701/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 09:27:57.687 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43701/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-17 09:27:59.803 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:27:59.804 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-17 09:27:59.805 [DefaultDispatcher-worker-1 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45521 2026-03-17 09:27:59.808 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45521/api/school/respect/person?includeRelated=false 2026-03-17 09:27:59.808 [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:45521/api/school/respect/person?includeRelated=false. 2026-03-17 09:27:59.808 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45521/api/school/respect/person?includeRelated=false 2026-03-17 09:27:59.810 [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-17 09:27:59.814 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45521/api/school/respect/person?includeRelated=false 2026-03-17 09:27:59.814 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45521/api/school/respect/person?includeRelated=false 2026-03-17 09:27:59.814 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45521/api/school/respect/person?includeRelated=false 2026-03-17 09:27:59.814 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45521/api/school/respect/person?includeRelated=false. 2026-03-17 09:27:59.872 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45521/api/school/respect/person?since=2026-03-17T05%3A27%3A59.810954964Z&includeRelated=false 2026-03-17 09:27:59.872 [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:45521/api/school/respect/person?since=2026-03-17T05%3A27%3A59.810954964Z&includeRelated=false. 2026-03-17 09:27:59.872 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45521/api/school/respect/person?since=2026-03-17T05%3A27%3A59.810954964Z&includeRelated=false 2026-03-17 09:27:59.874 [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-17 09:27:59.877 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45521/api/school/respect/person?since=2026-03-17T05%3A27%3A59.810954964Z&includeRelated=false 2026-03-17 09:27:59.877 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45521/api/school/respect/person?since=2026-03-17T05%3A27%3A59.810954964Z&includeRelated=false 2026-03-17 09:27:59.877 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45521/api/school/respect/person?since=2026-03-17T05%3A27%3A59.810954964Z&includeRelated=false 2026-03-17 09:27:59.878 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45521/api/school/respect/person?since=2026-03-17T05%3A27%3A59.810954964Z&includeRelated=false. 2026-03-17 09:28:01.995 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:28:01.995 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-03-17 09:28:01.996 [DefaultDispatcher-worker-1 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36841 2026-03-17 09:28:02.049 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36841/api/school/respect/person 2026-03-17 09:28:02.049 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@56ae49cb for http://localhost:36841/api/school/respect/person 2026-03-17 09:28:02.049 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36841/api/school/respect/person 2026-03-17 09:28:02.049 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36841/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-17 09:28:02.053 [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-17 09:28:02.058 [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-17 09:28:02.060 [DefaultDispatcher-worker-4 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 09:28:02.060 [DefaultDispatcher-worker-5 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36841/api/school/respect/person 2026-03-17 09:28:02.061 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36841/api/school/respect/person 2026-03-17 09:28:02.061 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36841/api/school/respect/person 2026-03-17 09:28:04.173 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:28:04.174 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-17 09:28:04.175 [DefaultDispatcher-worker-5 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41695 2026-03-17 09:28:04.176 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41695/api/school/respect/schoolpermissiongrant 2026-03-17 09:28:04.176 [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:41695/api/school/respect/schoolpermissiongrant. 2026-03-17 09:28:04.176 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41695/api/school/respect/schoolpermissiongrant 2026-03-17 09:28:04.178 [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-17 09:28:04.180 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41695/api/school/respect/schoolpermissiongrant 2026-03-17 09:28:04.180 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41695/api/school/respect/schoolpermissiongrant 2026-03-17 09:28:04.180 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41695/api/school/respect/schoolpermissiongrant 2026-03-17 09:28:04.180 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41695/api/school/respect/schoolpermissiongrant. 2026-03-17 09:28:04.226 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:04.226 [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:41695/api/school/respect/person?includeRelated=false. 2026-03-17 09:28:04.226 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:04.227 [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-17 09:28:04.233 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:04.233 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:04.233 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:04.233 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41695/api/school/respect/person?includeRelated=false. 2026-03-17 09:28:06.238 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:06.239 [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:41695/api/school/respect/person?includeRelated=false. 2026-03-17 09:28:06.239 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:06.240 [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-17 09:28:06.244 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:06.244 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:06.244 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41695/api/school/respect/person?includeRelated=false 2026-03-17 09:28:06.245 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41695/api/school/respect/person?includeRelated=false. 2026-03-17 09:28:08.354 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:28:08.355 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-17 09:28:08.356 [DefaultDispatcher-worker-3 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45281 2026-03-17 09:28:08.358 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45281/api/school/respect/person?includeRelated=false 2026-03-17 09:28:08.358 [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:45281/api/school/respect/person?includeRelated=false. 2026-03-17 09:28:08.359 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45281/api/school/respect/person?includeRelated=false 2026-03-17 09:28:08.362 [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-17 09:28:08.365 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45281/api/school/respect/person?includeRelated=false 2026-03-17 09:28:08.365 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45281/api/school/respect/person?includeRelated=false 2026-03-17 09:28:08.365 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45281/api/school/respect/person?includeRelated=false 2026-03-17 09:28:08.366 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45281/api/school/respect/person?includeRelated=false. 2026-03-17 09:28:08.425 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45281/api/school/respect/person?since=2026-03-17T05%3A28%3A08.362567411Z&includeRelated=false 2026-03-17 09:28:08.425 [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:45281/api/school/respect/person?since=2026-03-17T05%3A28%3A08.362567411Z&includeRelated=false. 2026-03-17 09:28:08.425 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45281/api/school/respect/person?since=2026-03-17T05%3A28%3A08.362567411Z&includeRelated=false 2026-03-17 09:28:08.426 [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-17 09:28:08.429 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45281/api/school/respect/person?since=2026-03-17T05%3A28%3A08.362567411Z&includeRelated=false 2026-03-17 09:28:08.429 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45281/api/school/respect/person?since=2026-03-17T05%3A28%3A08.362567411Z&includeRelated=false 2026-03-17 09:28:08.429 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45281/api/school/respect/person?since=2026-03-17T05%3A28%3A08.362567411Z&includeRelated=false 2026-03-17 09:28:08.430 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45281/api/school/respect/person?since=2026-03-17T05%3A28%3A08.362567411Z&includeRelated=false. 2026-03-17 09:28:10.556 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:28:10.557 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.05 seconds. 2026-03-17 09:28:10.558 [DefaultDispatcher-worker-3 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42825 2026-03-17 09:28:10.560 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42825/playlist/2e0635c5-841c-4436-b709-a1d93441ee52 2026-03-17 09:28:10.560 [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:42825/playlist/2e0635c5-841c-4436-b709-a1d93441ee52. 2026-03-17 09:28:10.560 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42825/playlist/2e0635c5-841c-4436-b709-a1d93441ee52 2026-03-17 09:28:10.562 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 2e0635c5-841c-4436-b709-a1d93441ee52] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[2e0635c5-841c-4436-b709-a1d93441ee52]] @ /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=[2e0635c5-841c-4436-b709-a1d93441ee52]] @ /playlist/{uuid}/(method:GET) 2026-03-17 09:28:10.568 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42825/playlist/2e0635c5-841c-4436-b709-a1d93441ee52 2026-03-17 09:28:10.568 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42825/playlist/2e0635c5-841c-4436-b709-a1d93441ee52 2026-03-17 09:28:10.568 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42825/playlist/2e0635c5-841c-4436-b709-a1d93441ee52 2026-03-17 09:28:10.568 [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:42825/playlist/2e0635c5-841c-4436-b709-a1d93441ee52. 2026-03-17 09:28:12.706 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 09:28:12.707 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-17 09:28:12.707 [DefaultDispatcher-worker-2 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35693 2026-03-17 09:28:12.748 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35693/playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 2026-03-17 09:28:12.748 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@59224917 for http://localhost:35693/playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 2026-03-17 09:28:12.748 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35693/playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 2026-03-17 09:28:12.748 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35693/playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 from class io.ktor.http.content.TextContent 2026-03-17 09:28:12.750 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 3067b189-8c54-4ce7-86b1-f3b7fab029c3] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[3067b189-8c54-4ce7-86b1-f3b7fab029c3]] @ /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=[3067b189-8c54-4ce7-86b1-f3b7fab029c3]] @ /playlist/{uuid}/(method:POST) 2026-03-17 09:28:12.750 [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/3067b189-8c54-4ce7-86b1-f3b7fab029c3 2026-03-17 09:28:12.751 [DefaultDispatcher-worker-2 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 09:28:12.752 [DefaultDispatcher-worker-13 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35693/playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 2026-03-17 09:28:12.752 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35693/playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 2026-03-17 09:28:12.752 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35693/playlist/3067b189-8c54-4ce7-86b1-f3b7fab029c3 2026-03-17 10:21:56.661 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:21:56.735 [Test worker] INFO io.ktor.server.Application - Application started in 0.192 seconds. 2026-03-17 10:21:56.806 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38505 2026-03-17 10:21:57.810 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38505/resources/index.json 2026-03-17 10:21:57.811 [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:38505/resources/index.json. 2026-03-17 10:21:57.811 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38505/resources/index.json 2026-03-17 10:21:57.955 [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-17 10:21:57.995 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 45ms 2026-03-17 10:21:58.001 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38505/resources/index.json 2026-03-17 10:21:58.003 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38505/resources/index.json 2026-03-17 10:21:58.003 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38505/resources/index.json 2026-03-17 10:21:58.025 [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:38505/resources/index.json. 2026-03-17 10:21:58.085 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38505/resources/index.json 2026-03-17 10:21:58.086 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38505/resources/index.json. 2026-03-17 10:21:58.086 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38505/resources/index.json 2026-03-17 10:21:58.090 [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-17 10:21:58.095 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 6ms 2026-03-17 10:21:58.103 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38505/resources/index.json 2026-03-17 10:21:58.104 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38505/resources/index.json 2026-03-17 10:21:58.104 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38505/resources/index.json 2026-03-17 10:22:00.125 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:00.126 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-17 10:22:00.127 [DefaultDispatcher-worker-1 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39623 2026-03-17 10:22:00.209 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39623/resources/index.json 2026-03-17 10:22:00.210 [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:39623/resources/index.json. 2026-03-17 10:22:00.210 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39623/resources/index.json 2026-03-17 10:22:00.213 [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-17 10:22:00.214 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-17 10:22:00.215 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39623/resources/index.json 2026-03-17 10:22:00.215 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39623/resources/index.json 2026-03-17 10:22:00.215 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39623/resources/index.json 2026-03-17 10:22:00.216 [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:39623/resources/index.json. 2026-03-17 10:22:00.221 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39623/resources/index.json 2026-03-17 10:22:00.222 [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:39623/resources/index.json. 2026-03-17 10:22:00.222 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39623/resources/index.json 2026-03-17 10:22:00.224 [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-17 10:22:00.224 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-03-17 10:22:00.225 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39623/resources/index.json 2026-03-17 10:22:00.225 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39623/resources/index.json 2026-03-17 10:22:00.225 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39623/resources/index.json 2026-03-17 10:22:02.232 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:02.233 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-17 10:22:02.235 [DefaultDispatcher-worker-2 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39511 2026-03-17 10:22:02.242 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39511/resources/lesson001.json 2026-03-17 10:22:02.242 [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:39511/resources/lesson001.json. 2026-03-17 10:22:02.242 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39511/resources/lesson001.json 2026-03-17 10:22:02.245 [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-17 10:22:02.246 [DefaultDispatcher-worker-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-03-17 10:22:02.247 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39511/resources/lesson001.json 2026-03-17 10:22:02.247 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39511/resources/lesson001.json 2026-03-17 10:22:02.247 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39511/resources/lesson001.json 2026-03-17 10:22:02.250 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:39511/resources/lesson001.json. 2026-03-17 10:22:04.862 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:04.885 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.317 seconds. 2026-03-17 10:22:04.900 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43613 2026-03-17 10:22:04.941 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43613/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:04.941 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43613/api/school/respect/schoolpermissiongrant. 2026-03-17 10:22:04.941 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43613/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:04.998 [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-17 10:22:05.066 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43613/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:05.075 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43613/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:05.078 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43613/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:05.084 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43613/api/school/respect/schoolpermissiongrant. 2026-03-17 10:22:05.206 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.206 [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:43613/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:05.206 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.208 [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-17 10:22:05.232 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.233 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.233 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.234 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43613/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:05.244 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.244 [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:43613/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:05.244 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.247 [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-17 10:22:05.250 [DefaultDispatcher-worker-1 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 10:22:05.251 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.251 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:05.251 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43613/api/school/respect/person?includeRelated=false 2026-03-17 10:22:07.421 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:07.422 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.052 seconds. 2026-03-17 10:22:07.434 [DefaultDispatcher-worker-4 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45941 2026-03-17 10:22:07.439 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45941/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:07.439 [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:45941/api/school/respect/schoolpermissiongrant. 2026-03-17 10:22:07.439 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45941/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:07.454 [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-17 10:22:07.464 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45941/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:07.464 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45941/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:07.464 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45941/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:07.465 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45941/api/school/respect/schoolpermissiongrant. 2026-03-17 10:22:07.557 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45941/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 10:22:07.557 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45941/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-17 10:22:07.557 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45941/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 10:22:07.559 [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-17 10:22:07.572 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45941/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 10:22:07.572 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45941/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 10:22:07.572 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45941/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 10:22:07.574 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45941/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-17 10:22:09.783 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:09.785 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.068 seconds. 2026-03-17 10:22:09.787 [DefaultDispatcher-worker-4 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36907 2026-03-17 10:22:09.794 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36907/api/school/respect/person?includeRelated=false 2026-03-17 10:22:09.795 [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:36907/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:09.795 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36907/api/school/respect/person?includeRelated=false 2026-03-17 10:22:09.817 [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-17 10:22:09.842 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36907/api/school/respect/person?includeRelated=false 2026-03-17 10:22:09.843 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36907/api/school/respect/person?includeRelated=false 2026-03-17 10:22:09.843 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36907/api/school/respect/person?includeRelated=false 2026-03-17 10:22:09.844 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36907/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:09.956 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36907/api/school/respect/person?since=2026-03-17T06%3A22%3A09.818263203Z&includeRelated=false 2026-03-17 10:22:09.956 [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:36907/api/school/respect/person?since=2026-03-17T06%3A22%3A09.818263203Z&includeRelated=false. 2026-03-17 10:22:09.956 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36907/api/school/respect/person?since=2026-03-17T06%3A22%3A09.818263203Z&includeRelated=false 2026-03-17 10:22:09.964 [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-17 10:22:09.971 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36907/api/school/respect/person?since=2026-03-17T06%3A22%3A09.818263203Z&includeRelated=false 2026-03-17 10:22:09.974 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36907/api/school/respect/person?since=2026-03-17T06%3A22%3A09.818263203Z&includeRelated=false 2026-03-17 10:22:09.974 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36907/api/school/respect/person?since=2026-03-17T06%3A22%3A09.818263203Z&includeRelated=false 2026-03-17 10:22:09.975 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36907/api/school/respect/person?since=2026-03-17T06%3A22%3A09.818263203Z&includeRelated=false. 2026-03-17 10:22:12.164 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:12.165 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-03-17 10:22:12.171 [DefaultDispatcher-worker-1 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45215 2026-03-17 10:22:12.244 [DefaultDispatcher-worker-9 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45215/api/school/respect/person 2026-03-17 10:22:12.245 [DefaultDispatcher-worker-9 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@548c0098 for http://localhost:45215/api/school/respect/person 2026-03-17 10:22:12.245 [DefaultDispatcher-worker-9 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45215/api/school/respect/person 2026-03-17 10:22:12.245 [DefaultDispatcher-worker-9 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45215/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-17 10:22:12.272 [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-17 10:22:12.298 [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-17 10:22:12.305 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 10:22:12.312 [DefaultDispatcher-worker-10 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45215/api/school/respect/person 2026-03-17 10:22:12.313 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45215/api/school/respect/person 2026-03-17 10:22:12.313 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45215/api/school/respect/person 2026-03-17 10:22:14.558 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:14.565 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.093 seconds. 2026-03-17 10:22:14.574 [DefaultDispatcher-worker-2 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40123 2026-03-17 10:22:14.576 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40123/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:14.576 [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:40123/api/school/respect/schoolpermissiongrant. 2026-03-17 10:22:14.576 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40123/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:14.585 [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-17 10:22:14.594 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40123/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:14.601 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40123/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:14.602 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40123/api/school/respect/schoolpermissiongrant 2026-03-17 10:22:14.602 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40123/api/school/respect/schoolpermissiongrant. 2026-03-17 10:22:14.679 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:14.679 [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:40123/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:14.679 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:14.682 [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-17 10:22:14.692 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:14.692 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:14.692 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:14.694 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40123/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:16.711 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:16.711 [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:40123/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:16.711 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:16.713 [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-17 10:22:16.725 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:16.725 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:16.729 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40123/api/school/respect/person?includeRelated=false 2026-03-17 10:22:16.731 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40123/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:18.906 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:18.908 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-03-17 10:22:18.911 [DefaultDispatcher-worker-7 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43151 2026-03-17 10:22:18.916 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43151/api/school/respect/person?includeRelated=false 2026-03-17 10:22:18.916 [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:43151/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:18.916 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43151/api/school/respect/person?includeRelated=false 2026-03-17 10:22:18.926 [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-17 10:22:18.935 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43151/api/school/respect/person?includeRelated=false 2026-03-17 10:22:18.936 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43151/api/school/respect/person?includeRelated=false 2026-03-17 10:22:18.936 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43151/api/school/respect/person?includeRelated=false 2026-03-17 10:22:18.938 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43151/api/school/respect/person?includeRelated=false. 2026-03-17 10:22:18.996 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43151/api/school/respect/person?since=2026-03-17T06%3A22%3A18.929684729Z&includeRelated=false 2026-03-17 10:22:18.996 [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:43151/api/school/respect/person?since=2026-03-17T06%3A22%3A18.929684729Z&includeRelated=false. 2026-03-17 10:22:18.996 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43151/api/school/respect/person?since=2026-03-17T06%3A22%3A18.929684729Z&includeRelated=false 2026-03-17 10:22:18.998 [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-17 10:22:19.004 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43151/api/school/respect/person?since=2026-03-17T06%3A22%3A18.929684729Z&includeRelated=false 2026-03-17 10:22:19.005 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43151/api/school/respect/person?since=2026-03-17T06%3A22%3A18.929684729Z&includeRelated=false 2026-03-17 10:22:19.005 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43151/api/school/respect/person?since=2026-03-17T06%3A22%3A18.929684729Z&includeRelated=false 2026-03-17 10:22:19.006 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43151/api/school/respect/person?since=2026-03-17T06%3A22%3A18.929684729Z&includeRelated=false. 2026-03-17 10:22:21.199 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:21.200 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.073 seconds. 2026-03-17 10:22:21.201 [DefaultDispatcher-worker-2 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40821 2026-03-17 10:22:21.203 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40821/playlist/37194f89-f32b-4566-a00b-5fb6cee79b3a 2026-03-17 10:22:21.203 [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:40821/playlist/37194f89-f32b-4566-a00b-5fb6cee79b3a. 2026-03-17 10:22:21.203 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40821/playlist/37194f89-f32b-4566-a00b-5fb6cee79b3a 2026-03-17 10:22:21.206 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 37194f89-f32b-4566-a00b-5fb6cee79b3a] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[37194f89-f32b-4566-a00b-5fb6cee79b3a]] @ /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=[37194f89-f32b-4566-a00b-5fb6cee79b3a]] @ /playlist/{uuid}/(method:GET) 2026-03-17 10:22:21.212 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40821/playlist/37194f89-f32b-4566-a00b-5fb6cee79b3a 2026-03-17 10:22:21.212 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40821/playlist/37194f89-f32b-4566-a00b-5fb6cee79b3a 2026-03-17 10:22:21.212 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40821/playlist/37194f89-f32b-4566-a00b-5fb6cee79b3a 2026-03-17 10:22:21.213 [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:40821/playlist/37194f89-f32b-4566-a00b-5fb6cee79b3a. 2026-03-17 10:22:23.449 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 10:22:23.449 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.059 seconds. 2026-03-17 10:22:23.450 [DefaultDispatcher-worker-7 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42151 2026-03-17 10:22:23.515 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42151/playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 2026-03-17 10:22:23.516 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@53e339ff for http://localhost:42151/playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 2026-03-17 10:22:23.516 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42151/playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 2026-03-17 10:22:23.516 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42151/playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 from class io.ktor.http.content.TextContent 2026-03-17 10:22:23.518 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 9af46ad0-860f-4731-ac5e-a18a197a8453] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[9af46ad0-860f-4731-ac5e-a18a197a8453]] @ /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=[9af46ad0-860f-4731-ac5e-a18a197a8453]] @ /playlist/{uuid}/(method:POST) 2026-03-17 10:22:23.519 [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/9af46ad0-860f-4731-ac5e-a18a197a8453 2026-03-17 10:22:23.520 [DefaultDispatcher-worker-8 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 10:22:23.525 [DefaultDispatcher-worker-8 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42151/playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 2026-03-17 10:22:23.525 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42151/playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 2026-03-17 10:22:23.525 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42151/playlist/9af46ad0-860f-4731-ac5e-a18a197a8453 2026-03-17 21:50:30.501 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:30.630 [Test worker] INFO io.ktor.server.Application - Application started in 0.28 seconds. 2026-03-17 21:50:30.784 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33937 2026-03-17 21:50:32.234 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33937/resources/index.json 2026-03-17 21:50:32.235 [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:33937/resources/index.json. 2026-03-17 21:50:32.235 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33937/resources/index.json 2026-03-17 21:50:32.469 [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-17 21:50:32.533 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 71ms 2026-03-17 21:50:32.542 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33937/resources/index.json 2026-03-17 21:50:32.544 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33937/resources/index.json 2026-03-17 21:50:32.544 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33937/resources/index.json 2026-03-17 21:50:32.587 [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:33937/resources/index.json. 2026-03-17 21:50:32.653 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33937/resources/index.json 2026-03-17 21:50:32.653 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33937/resources/index.json. 2026-03-17 21:50:32.653 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33937/resources/index.json 2026-03-17 21:50:32.658 [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-17 21:50:32.661 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 4ms 2026-03-17 21:50:32.665 [DefaultDispatcher-worker-6 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33937/resources/index.json 2026-03-17 21:50:32.665 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33937/resources/index.json 2026-03-17 21:50:32.665 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33937/resources/index.json 2026-03-17 21:50:34.690 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:34.691 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-17 21:50:34.692 [DefaultDispatcher-worker-6 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44695 2026-03-17 21:50:34.755 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44695/resources/index.json 2026-03-17 21:50:34.755 [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:44695/resources/index.json. 2026-03-17 21:50:34.756 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44695/resources/index.json 2026-03-17 21:50:34.760 [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-17 21:50:34.761 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-17 21:50:34.762 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44695/resources/index.json 2026-03-17 21:50:34.762 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44695/resources/index.json 2026-03-17 21:50:34.762 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44695/resources/index.json 2026-03-17 21:50:34.763 [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:44695/resources/index.json. 2026-03-17 21:50:34.768 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44695/resources/index.json 2026-03-17 21:50:34.768 [DefaultDispatcher-worker-2 @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:44695/resources/index.json. 2026-03-17 21:50:34.768 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44695/resources/index.json 2026-03-17 21:50:34.770 [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-17 21:50:34.771 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-03-17 21:50:34.771 [DefaultDispatcher-worker-6 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44695/resources/index.json 2026-03-17 21:50:34.771 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44695/resources/index.json 2026-03-17 21:50:34.771 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44695/resources/index.json 2026-03-17 21:50:36.784 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:36.785 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-17 21:50:36.787 [DefaultDispatcher-worker-2 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45817 2026-03-17 21:50:36.795 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45817/resources/lesson001.json 2026-03-17 21:50:36.795 [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:45817/resources/lesson001.json. 2026-03-17 21:50:36.795 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45817/resources/lesson001.json 2026-03-17 21:50:36.802 [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-17 21:50:36.803 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-17 21:50:36.806 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45817/resources/lesson001.json 2026-03-17 21:50:36.806 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45817/resources/lesson001.json 2026-03-17 21:50:36.806 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45817/resources/lesson001.json 2026-03-17 21:50:36.810 [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:45817/resources/lesson001.json. 2026-03-17 21:50:39.363 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:39.420 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.343 seconds. 2026-03-17 21:50:39.432 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37393 2026-03-17 21:50:39.473 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37393/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:39.473 [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:37393/api/school/respect/schoolpermissiongrant. 2026-03-17 21:50:39.473 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37393/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:39.524 [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-17 21:50:39.615 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37393/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:39.615 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37393/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:39.615 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37393/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:39.620 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37393/api/school/respect/schoolpermissiongrant. 2026-03-17 21:50:39.788 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.788 [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:37393/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:39.788 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.792 [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-17 21:50:39.833 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.833 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.833 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.835 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37393/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:39.850 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.850 [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:37393/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:39.850 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.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-17 21:50:39.868 [DefaultDispatcher-worker-3 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 21:50:39.870 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.871 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:39.871 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37393/api/school/respect/person?includeRelated=false 2026-03-17 21:50:42.063 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:42.068 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.07 seconds. 2026-03-17 21:50:42.070 [DefaultDispatcher-worker-3 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37909 2026-03-17 21:50:42.073 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37909/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:42.073 [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:37909/api/school/respect/schoolpermissiongrant. 2026-03-17 21:50:42.073 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37909/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:42.081 [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-17 21:50:42.089 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37909/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:42.090 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37909/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:42.090 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37909/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:42.091 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37909/api/school/respect/schoolpermissiongrant. 2026-03-17 21:50:42.151 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 21:50:42.151 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:37909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-17 21:50:42.151 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 21:50:42.152 [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-17 21:50:42.157 [DefaultDispatcher-worker-2 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 21:50:42.157 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 21:50:42.157 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-17 21:50:42.158 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-17 21:50:44.314 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:44.315 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.064 seconds. 2026-03-17 21:50:44.319 [DefaultDispatcher-worker-5 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42203 2026-03-17 21:50:44.330 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42203/api/school/respect/person?includeRelated=false 2026-03-17 21:50:44.330 [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:42203/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:44.330 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42203/api/school/respect/person?includeRelated=false 2026-03-17 21:50:44.341 [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-17 21:50:44.350 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42203/api/school/respect/person?includeRelated=false 2026-03-17 21:50:44.351 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42203/api/school/respect/person?includeRelated=false 2026-03-17 21:50:44.351 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42203/api/school/respect/person?includeRelated=false 2026-03-17 21:50:44.353 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42203/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:44.464 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42203/api/school/respect/person?since=2026-03-17T17%3A50%3A44.342591531Z&includeRelated=false 2026-03-17 21:50:44.466 [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:42203/api/school/respect/person?since=2026-03-17T17%3A50%3A44.342591531Z&includeRelated=false. 2026-03-17 21:50:44.466 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42203/api/school/respect/person?since=2026-03-17T17%3A50%3A44.342591531Z&includeRelated=false 2026-03-17 21:50:44.469 [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-17 21:50:44.474 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42203/api/school/respect/person?since=2026-03-17T17%3A50%3A44.342591531Z&includeRelated=false 2026-03-17 21:50:44.474 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42203/api/school/respect/person?since=2026-03-17T17%3A50%3A44.342591531Z&includeRelated=false 2026-03-17 21:50:44.475 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42203/api/school/respect/person?since=2026-03-17T17%3A50%3A44.342591531Z&includeRelated=false 2026-03-17 21:50:44.476 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42203/api/school/respect/person?since=2026-03-17T17%3A50%3A44.342591531Z&includeRelated=false. 2026-03-17 21:50:46.690 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:46.691 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-03-17 21:50:46.695 [DefaultDispatcher-worker-7 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38999 2026-03-17 21:50:46.752 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38999/api/school/respect/person 2026-03-17 21:50:46.753 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5ce984df for http://localhost:38999/api/school/respect/person 2026-03-17 21:50:46.753 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38999/api/school/respect/person 2026-03-17 21:50:46.753 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38999/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-17 21:50:46.768 [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-17 21:50:46.778 [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-17 21:50:46.782 [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-17 21:50:46.784 [DefaultDispatcher-worker-2 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38999/api/school/respect/person 2026-03-17 21:50:46.785 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38999/api/school/respect/person 2026-03-17 21:50:46.785 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38999/api/school/respect/person 2026-03-17 21:50:49.072 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:49.073 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.077 seconds. 2026-03-17 21:50:49.077 [DefaultDispatcher-worker-5 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45987 2026-03-17 21:50:49.082 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45987/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:49.082 [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:45987/api/school/respect/schoolpermissiongrant. 2026-03-17 21:50:49.082 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45987/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:49.088 [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-17 21:50:49.094 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45987/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:49.095 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45987/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:49.095 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45987/api/school/respect/schoolpermissiongrant 2026-03-17 21:50:49.098 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45987/api/school/respect/schoolpermissiongrant. 2026-03-17 21:50:49.143 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:49.144 [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:45987/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:49.144 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:49.145 [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-17 21:50:49.168 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:49.169 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:49.169 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:49.171 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45987/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:51.190 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:51.190 [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:45987/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:51.190 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:51.193 [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-17 21:50:51.198 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:51.198 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:51.198 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45987/api/school/respect/person?includeRelated=false 2026-03-17 21:50:51.199 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45987/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:53.332 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:53.333 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.056 seconds. 2026-03-17 21:50:53.335 [DefaultDispatcher-worker-8 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41937 2026-03-17 21:50:53.338 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41937/api/school/respect/person?includeRelated=false 2026-03-17 21:50:53.338 [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:41937/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:53.338 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41937/api/school/respect/person?includeRelated=false 2026-03-17 21:50:53.340 [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-17 21:50:53.344 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41937/api/school/respect/person?includeRelated=false 2026-03-17 21:50:53.345 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41937/api/school/respect/person?includeRelated=false 2026-03-17 21:50:53.345 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41937/api/school/respect/person?includeRelated=false 2026-03-17 21:50:53.346 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41937/api/school/respect/person?includeRelated=false. 2026-03-17 21:50:53.400 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41937/api/school/respect/person?since=2026-03-17T17%3A50%3A53.341037311Z&includeRelated=false 2026-03-17 21:50:53.401 [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:41937/api/school/respect/person?since=2026-03-17T17%3A50%3A53.341037311Z&includeRelated=false. 2026-03-17 21:50:53.401 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41937/api/school/respect/person?since=2026-03-17T17%3A50%3A53.341037311Z&includeRelated=false 2026-03-17 21:50:53.402 [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-17 21:50:53.405 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41937/api/school/respect/person?since=2026-03-17T17%3A50%3A53.341037311Z&includeRelated=false 2026-03-17 21:50:53.405 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41937/api/school/respect/person?since=2026-03-17T17%3A50%3A53.341037311Z&includeRelated=false 2026-03-17 21:50:53.405 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41937/api/school/respect/person?since=2026-03-17T17%3A50%3A53.341037311Z&includeRelated=false 2026-03-17 21:50:53.406 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41937/api/school/respect/person?since=2026-03-17T17%3A50%3A53.341037311Z&includeRelated=false. 2026-03-17 21:50:55.535 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:55.536 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-03-17 21:50:55.537 [DefaultDispatcher-worker-6 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45925 2026-03-17 21:50:55.539 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45925/playlist/3a3817c2-7f03-45e6-b3bf-dd0094bfa934 2026-03-17 21:50:55.539 [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:45925/playlist/3a3817c2-7f03-45e6-b3bf-dd0094bfa934. 2026-03-17 21:50:55.539 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45925/playlist/3a3817c2-7f03-45e6-b3bf-dd0094bfa934 2026-03-17 21:50:55.542 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 3a3817c2-7f03-45e6-b3bf-dd0094bfa934] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[3a3817c2-7f03-45e6-b3bf-dd0094bfa934]] @ /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=[3a3817c2-7f03-45e6-b3bf-dd0094bfa934]] @ /playlist/{uuid}/(method:GET) 2026-03-17 21:50:55.548 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45925/playlist/3a3817c2-7f03-45e6-b3bf-dd0094bfa934 2026-03-17 21:50:55.548 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45925/playlist/3a3817c2-7f03-45e6-b3bf-dd0094bfa934 2026-03-17 21:50:55.548 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45925/playlist/3a3817c2-7f03-45e6-b3bf-dd0094bfa934 2026-03-17 21:50:55.549 [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:45925/playlist/3a3817c2-7f03-45e6-b3bf-dd0094bfa934. 2026-03-17 21:50:57.706 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-17 21:50:57.707 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-03-17 21:50:57.708 [DefaultDispatcher-worker-8 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41479 2026-03-17 21:50:57.746 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41479/playlist/e7328079-4f5f-4d16-b1d0-bae54513b121 2026-03-17 21:50:57.747 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@24d16646 for http://localhost:41479/playlist/e7328079-4f5f-4d16-b1d0-bae54513b121 2026-03-17 21:50:57.747 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41479/playlist/e7328079-4f5f-4d16-b1d0-bae54513b121 2026-03-17 21:50:57.747 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:41479/playlist/e7328079-4f5f-4d16-b1d0-bae54513b121 from class io.ktor.http.content.TextContent 2026-03-17 21:50:57.749 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, e7328079-4f5f-4d16-b1d0-bae54513b121] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[e7328079-4f5f-4d16-b1d0-bae54513b121]] @ /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=[e7328079-4f5f-4d16-b1d0-bae54513b121]] @ /playlist/{uuid}/(method:POST) 2026-03-17 21:50:57.749 [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/e7328079-4f5f-4d16-b1d0-bae54513b121 2026-03-17 21:50:57.750 [DefaultDispatcher-worker-6 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/e7328079-4f5f-4d16-b1d0-bae54513b121 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-17 21:50:57.751 [DefaultDispatcher-worker-2 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41479/playlist/e7328079-4f5f-4d16-b1d0-bae54513b121 2026-03-17 21:50:57.751 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41479/playlist/e7328079-4f5f-4d16-b1d0-bae54513b121 2026-03-17 21:50:57.751 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41479/playlist/e7328079-4f5f-4d16-b1d0-bae54513b121