2026-03-24 05:12:35.286 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:35.586 [Test worker] INFO io.ktor.server.Application - Application started in 0.682 seconds. 2026-03-24 05:12:35.788 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40803 2026-03-24 05:12:37.415 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40803/resources/index.json 2026-03-24 05:12:37.416 [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:40803/resources/index.json. 2026-03-24 05:12:37.416 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40803/resources/index.json 2026-03-24 05:12:37.855 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 05:12:38.037 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 201ms 2026-03-24 05:12:38.073 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40803/resources/index.json 2026-03-24 05:12:38.082 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40803/resources/index.json 2026-03-24 05:12:38.086 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40803/resources/index.json 2026-03-24 05:12:38.167 [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:40803/resources/index.json. 2026-03-24 05:12:38.271 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40803/resources/index.json 2026-03-24 05:12:38.274 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40803/resources/index.json. 2026-03-24 05:12:38.275 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40803/resources/index.json 2026-03-24 05:12:38.280 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 05:12:38.284 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 5ms 2026-03-24 05:12:38.287 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40803/resources/index.json 2026-03-24 05:12:38.287 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40803/resources/index.json 2026-03-24 05:12:38.287 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40803/resources/index.json 2026-03-24 05:12:40.379 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:40.385 [Test worker] INFO io.ktor.server.Application - Application started in 0.006 seconds. 2026-03-24 05:12:40.393 [DefaultDispatcher-worker-6 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33353 2026-03-24 05:12:40.474 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33353/resources/index.json 2026-03-24 05:12:40.474 [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:33353/resources/index.json. 2026-03-24 05:12:40.474 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33353/resources/index.json 2026-03-24 05:12:40.498 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 05:12:40.503 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 5ms 2026-03-24 05:12:40.507 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33353/resources/index.json 2026-03-24 05:12:40.511 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33353/resources/index.json 2026-03-24 05:12:40.512 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33353/resources/index.json 2026-03-24 05:12:40.513 [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:33353/resources/index.json. 2026-03-24 05:12:40.539 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33353/resources/index.json 2026-03-24 05:12:40.539 [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:33353/resources/index.json. 2026-03-24 05:12:40.539 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33353/resources/index.json 2026-03-24 05:12:40.544 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 05:12:40.545 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-03-24 05:12:40.550 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33353/resources/index.json 2026-03-24 05:12:40.551 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33353/resources/index.json 2026-03-24 05:12:40.551 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33353/resources/index.json 2026-03-24 05:12:42.610 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:42.611 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 05:12:42.617 [DefaultDispatcher-worker-5 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38267 2026-03-24 05:12:42.633 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38267/resources/lesson001.json 2026-03-24 05:12:42.634 [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:38267/resources/lesson001.json. 2026-03-24 05:12:42.634 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38267/resources/lesson001.json 2026-03-24 05:12:42.644 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 05:12:42.646 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-24 05:12:42.648 [DefaultDispatcher-worker-8 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38267/resources/lesson001.json 2026-03-24 05:12:42.648 [DefaultDispatcher-worker-8 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38267/resources/lesson001.json 2026-03-24 05:12:42.648 [DefaultDispatcher-worker-8 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38267/resources/lesson001.json 2026-03-24 05:12:42.652 [DefaultDispatcher-worker-8 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:38267/resources/lesson001.json. 2026-03-24 05:12:45.104 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:45.122 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.269 seconds. 2026-03-24 05:12:45.140 [DefaultDispatcher-worker-5 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40569 2026-03-24 05:12:45.170 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40569/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:45.171 [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:40569/api/school/respect/schoolpermissiongrant. 2026-03-24 05:12:45.171 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40569/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:45.191 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 05:12:45.236 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40569/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:45.239 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40569/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:45.239 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40569/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:45.242 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40569/api/school/respect/schoolpermissiongrant. 2026-03-24 05:12:45.436 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.437 [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:40569/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:45.437 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.448 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:45.540 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.541 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.541 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.542 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40569/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:45.578 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.578 [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:40569/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:45.578 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.590 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:45.600 [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-24 05:12:45.602 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.602 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:45.602 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40569/api/school/respect/person?includeRelated=false 2026-03-24 05:12:47.788 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:47.789 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.07 seconds. 2026-03-24 05:12:47.791 [DefaultDispatcher-worker-7 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35257 2026-03-24 05:12:47.794 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35257/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:47.794 [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:35257/api/school/respect/schoolpermissiongrant. 2026-03-24 05:12:47.794 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35257/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:47.801 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 05:12:47.804 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35257/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:47.805 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35257/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:47.805 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35257/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:47.806 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35257/api/school/respect/schoolpermissiongrant. 2026-03-24 05:12:47.881 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35257/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 05:12:47.886 [DefaultDispatcher-worker-7 @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:35257/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 05:12:47.886 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35257/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 05:12:47.901 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:47.912 [DefaultDispatcher-worker-2 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35257/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 05:12:47.913 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35257/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 05:12:47.913 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35257/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 05:12:47.916 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35257/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 05:12:50.165 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:50.176 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.071 seconds. 2026-03-24 05:12:50.182 [DefaultDispatcher-worker-2 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33975 2026-03-24 05:12:50.186 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33975/api/school/respect/person?includeRelated=false 2026-03-24 05:12:50.186 [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:33975/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:50.186 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33975/api/school/respect/person?includeRelated=false 2026-03-24 05:12:50.202 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:50.218 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33975/api/school/respect/person?includeRelated=false 2026-03-24 05:12:50.218 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33975/api/school/respect/person?includeRelated=false 2026-03-24 05:12:50.219 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33975/api/school/respect/person?includeRelated=false 2026-03-24 05:12:50.221 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33975/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:50.349 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33975/api/school/respect/person?since=2026-03-24T01%3A12%3A50.203289432Z&includeRelated=false 2026-03-24 05:12:50.349 [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:33975/api/school/respect/person?since=2026-03-24T01%3A12%3A50.203289432Z&includeRelated=false. 2026-03-24 05:12:50.349 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33975/api/school/respect/person?since=2026-03-24T01%3A12%3A50.203289432Z&includeRelated=false 2026-03-24 05:12:50.375 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:50.391 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33975/api/school/respect/person?since=2026-03-24T01%3A12%3A50.203289432Z&includeRelated=false 2026-03-24 05:12:50.391 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33975/api/school/respect/person?since=2026-03-24T01%3A12%3A50.203289432Z&includeRelated=false 2026-03-24 05:12:50.392 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33975/api/school/respect/person?since=2026-03-24T01%3A12%3A50.203289432Z&includeRelated=false 2026-03-24 05:12:50.402 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33975/api/school/respect/person?since=2026-03-24T01%3A12%3A50.203289432Z&includeRelated=false. 2026-03-24 05:12:52.701 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:52.703 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.107 seconds. 2026-03-24 05:12:52.707 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36525 2026-03-24 05:12:52.848 [DefaultDispatcher-worker-7 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36525/api/school/respect/person 2026-03-24 05:12:52.854 [DefaultDispatcher-worker-7 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@75801e98 for http://localhost:36525/api/school/respect/person 2026-03-24 05:12:52.855 [DefaultDispatcher-worker-7 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36525/api/school/respect/person 2026-03-24 05:12:52.862 [DefaultDispatcher-worker-7 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36525/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 05:12:52.911 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-03-24 05:12:52.929 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-03-24 05:12:52.933 [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-24 05:12:52.949 [DefaultDispatcher-worker-8 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36525/api/school/respect/person 2026-03-24 05:12:52.951 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36525/api/school/respect/person 2026-03-24 05:12:52.952 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36525/api/school/respect/person 2026-03-24 05:12:55.152 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:55.155 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-03-24 05:12:55.159 [DefaultDispatcher-worker-4 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37771 2026-03-24 05:12:55.160 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37771/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:55.160 [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:37771/api/school/respect/schoolpermissiongrant. 2026-03-24 05:12:55.160 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37771/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:55.175 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 05:12:55.180 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37771/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:55.180 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37771/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:55.180 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37771/api/school/respect/schoolpermissiongrant 2026-03-24 05:12:55.181 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37771/api/school/respect/schoolpermissiongrant. 2026-03-24 05:12:55.232 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:55.236 [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:37771/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:55.236 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:55.246 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:55.284 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:55.290 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:55.290 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:55.292 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37771/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:57.338 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:57.338 [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:37771/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:57.339 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:57.348 [eventLoopGroupProxy-25-1 @call-handler#199] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:57.373 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:57.374 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:57.374 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37771/api/school/respect/person?includeRelated=false 2026-03-24 05:12:57.379 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37771/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:59.593 [Test worker @coroutine#205] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:12:59.600 [Test worker @coroutine#205] INFO io.ktor.server.Application - Application started in 0.073 seconds. 2026-03-24 05:12:59.607 [DefaultDispatcher-worker-1 @coroutine#214] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37981 2026-03-24 05:12:59.618 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37981/api/school/respect/person?includeRelated=false 2026-03-24 05:12:59.618 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:37981/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:59.618 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37981/api/school/respect/person?includeRelated=false 2026-03-24 05:12:59.635 [eventLoopGroupProxy-28-1 @call-handler#219] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:59.643 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37981/api/school/respect/person?includeRelated=false 2026-03-24 05:12:59.643 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37981/api/school/respect/person?includeRelated=false 2026-03-24 05:12:59.643 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37981/api/school/respect/person?includeRelated=false 2026-03-24 05:12:59.644 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37981/api/school/respect/person?includeRelated=false. 2026-03-24 05:12:59.717 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37981/api/school/respect/person?since=2026-03-24T01%3A12%3A59.635811986Z&includeRelated=false 2026-03-24 05:12:59.717 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:37981/api/school/respect/person?since=2026-03-24T01%3A12%3A59.635811986Z&includeRelated=false. 2026-03-24 05:12:59.717 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37981/api/school/respect/person?since=2026-03-24T01%3A12%3A59.635811986Z&includeRelated=false 2026-03-24 05:12:59.722 [eventLoopGroupProxy-28-1 @call-handler#227] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 05:12:59.728 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37981/api/school/respect/person?since=2026-03-24T01%3A12%3A59.635811986Z&includeRelated=false 2026-03-24 05:12:59.728 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37981/api/school/respect/person?since=2026-03-24T01%3A12%3A59.635811986Z&includeRelated=false 2026-03-24 05:12:59.728 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37981/api/school/respect/person?since=2026-03-24T01%3A12%3A59.635811986Z&includeRelated=false 2026-03-24 05:12:59.729 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37981/api/school/respect/person?since=2026-03-24T01%3A12%3A59.635811986Z&includeRelated=false. 2026-03-24 05:13:01.942 [Test worker @coroutine#233] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:13:01.945 [Test worker @coroutine#233] INFO io.ktor.server.Application - Application started in 0.073 seconds. 2026-03-24 05:13:01.947 [DefaultDispatcher-worker-10 @coroutine#243] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34049 2026-03-24 05:13:01.955 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34049/playlist/6bef71ec-2e21-4137-904a-0786573974de 2026-03-24 05:13:01.955 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34049/playlist/6bef71ec-2e21-4137-904a-0786573974de. 2026-03-24 05:13:01.955 [Test worker @coroutine#233] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34049/playlist/6bef71ec-2e21-4137-904a-0786573974de 2026-03-24 05:13:01.969 [eventLoopGroupProxy-31-1 @call-handler#247] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 6bef71ec-2e21-4137-904a-0786573974de] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[6bef71ec-2e21-4137-904a-0786573974de]] @ /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=[6bef71ec-2e21-4137-904a-0786573974de]] @ /playlist/{uuid}/(method:GET) 2026-03-24 05:13:01.982 [Test worker @coroutine#233] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34049/playlist/6bef71ec-2e21-4137-904a-0786573974de 2026-03-24 05:13:01.982 [Test worker @coroutine#233] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34049/playlist/6bef71ec-2e21-4137-904a-0786573974de 2026-03-24 05:13:01.982 [Test worker @coroutine#233] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34049/playlist/6bef71ec-2e21-4137-904a-0786573974de 2026-03-24 05:13:01.983 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:34049/playlist/6bef71ec-2e21-4137-904a-0786573974de. 2026-03-24 05:13:04.301 [Test worker @coroutine#251] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 05:13:04.305 [Test worker @coroutine#251] INFO io.ktor.server.Application - Application started in 0.07 seconds. 2026-03-24 05:13:04.307 [DefaultDispatcher-worker-10 @coroutine#260] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34053 2026-03-24 05:13:04.363 [DefaultDispatcher-worker-12 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34053/playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 2026-03-24 05:13:04.364 [DefaultDispatcher-worker-12 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@573d7c8d for http://localhost:34053/playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 2026-03-24 05:13:04.364 [DefaultDispatcher-worker-12 @coroutine#258] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34053/playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 2026-03-24 05:13:04.364 [DefaultDispatcher-worker-12 @coroutine#258] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:34053/playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 from class io.ktor.http.content.TextContent 2026-03-24 05:13:04.376 [eventLoopGroupProxy-34-1 @call-handler#268] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 27db0450-bc06-49f4-bae9-19d8407b44e6] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[27db0450-bc06-49f4-bae9-19d8407b44e6]] @ /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=[27db0450-bc06-49f4-bae9-19d8407b44e6]] @ /playlist/{uuid}/(method:POST) 2026-03-24 05:13:04.377 [eventLoopGroupProxy-34-1 @call-handler#268] 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/27db0450-bc06-49f4-bae9-19d8407b44e6 2026-03-24 05:13:04.383 [DefaultDispatcher-worker-9 @call-handler#268] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 05:13:04.384 [DefaultDispatcher-worker-3 @coroutine#258] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34053/playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 2026-03-24 05:13:04.384 [DefaultDispatcher-worker-3 @coroutine#258] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34053/playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 2026-03-24 05:13:04.384 [DefaultDispatcher-worker-3 @coroutine#258] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34053/playlist/27db0450-bc06-49f4-bae9-19d8407b44e6 2026-03-24 09:25:30.893 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:30.981 [Test worker] INFO io.ktor.server.Application - Application started in 0.24 seconds. 2026-03-24 09:25:31.058 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46309 2026-03-24 09:25:31.809 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46309/resources/index.json 2026-03-24 09:25:31.809 [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:46309/resources/index.json. 2026-03-24 09:25:31.809 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46309/resources/index.json 2026-03-24 09:25:31.939 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:25:31.997 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 63ms 2026-03-24 09:25:32.004 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46309/resources/index.json 2026-03-24 09:25:32.006 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46309/resources/index.json 2026-03-24 09:25:32.006 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46309/resources/index.json 2026-03-24 09:25:32.032 [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:46309/resources/index.json. 2026-03-24 09:25:32.068 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46309/resources/index.json 2026-03-24 09:25:32.068 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46309/resources/index.json. 2026-03-24 09:25:32.068 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46309/resources/index.json 2026-03-24 09:25:32.071 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:25:32.073 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-03-24 09:25:32.074 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46309/resources/index.json 2026-03-24 09:25:32.075 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46309/resources/index.json 2026-03-24 09:25:32.075 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46309/resources/index.json 2026-03-24 09:25:34.088 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:34.088 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 09:25:34.089 [DefaultDispatcher-worker-1 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35287 2026-03-24 09:25:34.252 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35287/resources/index.json 2026-03-24 09:25:34.252 [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:35287/resources/index.json. 2026-03-24 09:25:34.252 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35287/resources/index.json 2026-03-24 09:25:34.255 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:25:34.256 [DefaultDispatcher-worker-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-24 09:25:34.256 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35287/resources/index.json 2026-03-24 09:25:34.257 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35287/resources/index.json 2026-03-24 09:25:34.257 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35287/resources/index.json 2026-03-24 09:25:34.257 [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:35287/resources/index.json. 2026-03-24 09:25:34.261 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35287/resources/index.json 2026-03-24 09:25:34.261 [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:35287/resources/index.json. 2026-03-24 09:25:34.261 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35287/resources/index.json 2026-03-24 09:25:34.262 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:25:34.263 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-03-24 09:25:34.263 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35287/resources/index.json 2026-03-24 09:25:34.263 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35287/resources/index.json 2026-03-24 09:25:34.263 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35287/resources/index.json 2026-03-24 09:25:36.270 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:36.270 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 09:25:36.271 [DefaultDispatcher-worker-5 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34809 2026-03-24 09:25:36.275 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34809/resources/lesson001.json 2026-03-24 09:25:36.275 [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:34809/resources/lesson001.json. 2026-03-24 09:25:36.275 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34809/resources/lesson001.json 2026-03-24 09:25:36.278 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:25:36.279 [DefaultDispatcher-worker-4 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-03-24 09:25:36.279 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34809/resources/lesson001.json 2026-03-24 09:25:36.279 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34809/resources/lesson001.json 2026-03-24 09:25:36.279 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34809/resources/lesson001.json 2026-03-24 09:25:36.282 [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:34809/resources/lesson001.json. 2026-03-24 09:25:38.518 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:38.524 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.1 seconds. 2026-03-24 09:25:38.526 [DefaultDispatcher-worker-4 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40939 2026-03-24 09:25:38.534 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40939/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:38.534 [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:40939/api/school/respect/schoolpermissiongrant. 2026-03-24 09:25:38.534 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40939/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:38.538 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:25:38.551 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40939/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:38.551 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40939/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:38.551 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40939/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:38.553 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40939/api/school/respect/schoolpermissiongrant. 2026-03-24 09:25:38.625 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.626 [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:40939/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:38.626 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.627 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:38.645 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.646 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.646 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.647 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40939/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:38.653 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.653 [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:40939/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:38.654 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.655 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:38.657 [DefaultDispatcher-worker-4 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 09:25:38.658 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.658 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:38.658 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40939/api/school/respect/person?includeRelated=false 2026-03-24 09:25:40.782 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:40.783 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.049 seconds. 2026-03-24 09:25:40.784 [DefaultDispatcher-worker-5 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40863 2026-03-24 09:25:40.785 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:40.785 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40863/api/school/respect/schoolpermissiongrant. 2026-03-24 09:25:40.785 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:40.788 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:25:40.790 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:40.790 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:40.790 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40863/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:40.790 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40863/api/school/respect/schoolpermissiongrant. 2026-03-24 09:25:40.836 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:25:40.836 [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:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 09:25:40.836 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:25:40.838 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:40.841 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:25:40.841 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:25:40.841 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:25:40.842 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40863/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 09:25:42.963 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:42.964 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-03-24 09:25:42.965 [DefaultDispatcher-worker-3 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39911 2026-03-24 09:25:42.968 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39911/api/school/respect/person?includeRelated=false 2026-03-24 09:25:42.968 [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:39911/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:42.968 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39911/api/school/respect/person?includeRelated=false 2026-03-24 09:25:42.970 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:42.973 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39911/api/school/respect/person?includeRelated=false 2026-03-24 09:25:42.974 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39911/api/school/respect/person?includeRelated=false 2026-03-24 09:25:42.974 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39911/api/school/respect/person?includeRelated=false 2026-03-24 09:25:42.974 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39911/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:43.033 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39911/api/school/respect/person?since=2026-03-24T05%3A25%3A42.971084528Z&includeRelated=false 2026-03-24 09:25:43.033 [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:39911/api/school/respect/person?since=2026-03-24T05%3A25%3A42.971084528Z&includeRelated=false. 2026-03-24 09:25:43.033 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39911/api/school/respect/person?since=2026-03-24T05%3A25%3A42.971084528Z&includeRelated=false 2026-03-24 09:25:43.034 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:43.037 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39911/api/school/respect/person?since=2026-03-24T05%3A25%3A42.971084528Z&includeRelated=false 2026-03-24 09:25:43.037 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39911/api/school/respect/person?since=2026-03-24T05%3A25%3A42.971084528Z&includeRelated=false 2026-03-24 09:25:43.037 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39911/api/school/respect/person?since=2026-03-24T05%3A25%3A42.971084528Z&includeRelated=false 2026-03-24 09:25:43.038 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39911/api/school/respect/person?since=2026-03-24T05%3A25%3A42.971084528Z&includeRelated=false. 2026-03-24 09:25:45.158 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:45.159 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-03-24 09:25:45.160 [DefaultDispatcher-worker-5 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42251 2026-03-24 09:25:45.203 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42251/api/school/respect/person 2026-03-24 09:25:45.203 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5ed4a731 for http://localhost:42251/api/school/respect/person 2026-03-24 09:25:45.204 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42251/api/school/respect/person 2026-03-24 09:25:45.204 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42251/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 09:25:45.207 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-03-24 09:25:45.212 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-03-24 09:25:45.214 [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-24 09:25:45.215 [DefaultDispatcher-worker-6 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42251/api/school/respect/person 2026-03-24 09:25:45.215 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42251/api/school/respect/person 2026-03-24 09:25:45.215 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42251/api/school/respect/person 2026-03-24 09:25:47.329 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:47.330 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-03-24 09:25:47.331 [DefaultDispatcher-worker-6 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43045 2026-03-24 09:25:47.332 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43045/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:47.332 [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:43045/api/school/respect/schoolpermissiongrant. 2026-03-24 09:25:47.332 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43045/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:47.334 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:25:47.336 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43045/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:47.336 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43045/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:47.336 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43045/api/school/respect/schoolpermissiongrant 2026-03-24 09:25:47.337 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43045/api/school/respect/schoolpermissiongrant. 2026-03-24 09:25:47.377 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:47.377 [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:43045/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:47.377 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:47.378 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:47.384 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:47.384 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:47.384 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:47.385 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43045/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:49.395 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:49.396 [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:43045/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:49.396 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:49.397 [eventLoopGroupProxy-25-1 @call-handler#199] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:49.400 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:49.400 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:49.400 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43045/api/school/respect/person?includeRelated=false 2026-03-24 09:25:49.401 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43045/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:51.617 [Test worker @coroutine#205] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:51.618 [Test worker @coroutine#205] INFO io.ktor.server.Application - Application started in 0.071 seconds. 2026-03-24 09:25:51.619 [DefaultDispatcher-worker-14 @coroutine#214] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44137 2026-03-24 09:25:51.621 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44137/api/school/respect/person?includeRelated=false 2026-03-24 09:25:51.621 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44137/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:51.621 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44137/api/school/respect/person?includeRelated=false 2026-03-24 09:25:51.623 [eventLoopGroupProxy-28-1 @call-handler#219] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:51.627 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44137/api/school/respect/person?includeRelated=false 2026-03-24 09:25:51.627 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44137/api/school/respect/person?includeRelated=false 2026-03-24 09:25:51.627 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44137/api/school/respect/person?includeRelated=false 2026-03-24 09:25:51.628 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44137/api/school/respect/person?includeRelated=false. 2026-03-24 09:25:51.709 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44137/api/school/respect/person?since=2026-03-24T05%3A25%3A51.624283517Z&includeRelated=false 2026-03-24 09:25:51.712 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44137/api/school/respect/person?since=2026-03-24T05%3A25%3A51.624283517Z&includeRelated=false. 2026-03-24 09:25:51.712 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44137/api/school/respect/person?since=2026-03-24T05%3A25%3A51.624283517Z&includeRelated=false 2026-03-24 09:25:51.714 [eventLoopGroupProxy-28-1 @call-handler#227] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:25:51.716 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44137/api/school/respect/person?since=2026-03-24T05%3A25%3A51.624283517Z&includeRelated=false 2026-03-24 09:25:51.717 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44137/api/school/respect/person?since=2026-03-24T05%3A25%3A51.624283517Z&includeRelated=false 2026-03-24 09:25:51.717 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44137/api/school/respect/person?since=2026-03-24T05%3A25%3A51.624283517Z&includeRelated=false 2026-03-24 09:25:51.718 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44137/api/school/respect/person?since=2026-03-24T05%3A25%3A51.624283517Z&includeRelated=false. 2026-03-24 09:25:53.834 [Test worker @coroutine#233] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:53.835 [Test worker @coroutine#233] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-03-24 09:25:53.836 [DefaultDispatcher-worker-1 @coroutine#243] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39175 2026-03-24 09:25:53.838 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39175/playlist/e7434d27-51c8-4594-a13e-3e9caeb69363 2026-03-24 09:25:53.838 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39175/playlist/e7434d27-51c8-4594-a13e-3e9caeb69363. 2026-03-24 09:25:53.838 [Test worker @coroutine#233] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39175/playlist/e7434d27-51c8-4594-a13e-3e9caeb69363 2026-03-24 09:25:53.840 [eventLoopGroupProxy-31-1 @call-handler#247] TRACE io.ktor.server.routing.Routing - Trace for [playlist, e7434d27-51c8-4594-a13e-3e9caeb69363] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[e7434d27-51c8-4594-a13e-3e9caeb69363]] @ /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=[e7434d27-51c8-4594-a13e-3e9caeb69363]] @ /playlist/{uuid}/(method:GET) 2026-03-24 09:25:53.846 [Test worker @coroutine#233] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39175/playlist/e7434d27-51c8-4594-a13e-3e9caeb69363 2026-03-24 09:25:53.846 [Test worker @coroutine#233] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39175/playlist/e7434d27-51c8-4594-a13e-3e9caeb69363 2026-03-24 09:25:53.846 [Test worker @coroutine#233] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39175/playlist/e7434d27-51c8-4594-a13e-3e9caeb69363 2026-03-24 09:25:53.846 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:39175/playlist/e7434d27-51c8-4594-a13e-3e9caeb69363. 2026-03-24 09:25:55.969 [Test worker @coroutine#251] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:25:55.970 [Test worker @coroutine#251] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-03-24 09:25:55.971 [DefaultDispatcher-worker-2 @coroutine#260] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46515 2026-03-24 09:25:56.010 [DefaultDispatcher-worker-1 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46515/playlist/15884436-f20f-4166-98a4-20cf19459c3e 2026-03-24 09:25:56.010 [DefaultDispatcher-worker-1 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@56df7d48 for http://localhost:46515/playlist/15884436-f20f-4166-98a4-20cf19459c3e 2026-03-24 09:25:56.010 [DefaultDispatcher-worker-1 @coroutine#258] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46515/playlist/15884436-f20f-4166-98a4-20cf19459c3e 2026-03-24 09:25:56.010 [DefaultDispatcher-worker-1 @coroutine#258] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:46515/playlist/15884436-f20f-4166-98a4-20cf19459c3e from class io.ktor.http.content.TextContent 2026-03-24 09:25:56.013 [eventLoopGroupProxy-34-1 @call-handler#268] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 15884436-f20f-4166-98a4-20cf19459c3e] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[15884436-f20f-4166-98a4-20cf19459c3e]] @ /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=[15884436-f20f-4166-98a4-20cf19459c3e]] @ /playlist/{uuid}/(method:POST) 2026-03-24 09:25:56.013 [eventLoopGroupProxy-34-1 @call-handler#268] 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/15884436-f20f-4166-98a4-20cf19459c3e 2026-03-24 09:25:56.014 [DefaultDispatcher-worker-1 @call-handler#268] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/15884436-f20f-4166-98a4-20cf19459c3e request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 09:25:56.015 [DefaultDispatcher-worker-4 @coroutine#258] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46515/playlist/15884436-f20f-4166-98a4-20cf19459c3e 2026-03-24 09:25:56.015 [DefaultDispatcher-worker-4 @coroutine#258] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46515/playlist/15884436-f20f-4166-98a4-20cf19459c3e 2026-03-24 09:25:56.015 [DefaultDispatcher-worker-4 @coroutine#258] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46515/playlist/15884436-f20f-4166-98a4-20cf19459c3e 2026-03-24 09:31:22.454 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:22.590 [Test worker] INFO io.ktor.server.Application - Application started in 0.345 seconds. 2026-03-24 09:31:22.727 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33489 2026-03-24 09:31:23.839 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33489/resources/index.json 2026-03-24 09:31:23.840 [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:33489/resources/index.json. 2026-03-24 09:31:23.843 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33489/resources/index.json 2026-03-24 09:31:24.115 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:31:24.190 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 85ms 2026-03-24 09:31:24.198 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33489/resources/index.json 2026-03-24 09:31:24.200 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33489/resources/index.json 2026-03-24 09:31:24.201 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33489/resources/index.json 2026-03-24 09:31:24.227 [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:33489/resources/index.json. 2026-03-24 09:31:24.270 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33489/resources/index.json 2026-03-24 09:31:24.270 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33489/resources/index.json. 2026-03-24 09:31:24.271 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33489/resources/index.json 2026-03-24 09:31:24.276 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:31:24.279 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-03-24 09:31:24.281 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33489/resources/index.json 2026-03-24 09:31:24.281 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33489/resources/index.json 2026-03-24 09:31:24.281 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33489/resources/index.json 2026-03-24 09:31:26.306 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:26.308 [Test worker] INFO io.ktor.server.Application - Application started in 0.002 seconds. 2026-03-24 09:31:26.312 [DefaultDispatcher-worker-6 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35831 2026-03-24 09:31:26.392 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35831/resources/index.json 2026-03-24 09:31:26.392 [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:35831/resources/index.json. 2026-03-24 09:31:26.392 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35831/resources/index.json 2026-03-24 09:31:26.396 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:31:26.397 [DefaultDispatcher-worker-2 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-24 09:31:26.399 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35831/resources/index.json 2026-03-24 09:31:26.400 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35831/resources/index.json 2026-03-24 09:31:26.400 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35831/resources/index.json 2026-03-24 09:31:26.401 [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:35831/resources/index.json. 2026-03-24 09:31:26.408 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35831/resources/index.json 2026-03-24 09:31:26.408 [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:35831/resources/index.json. 2026-03-24 09:31:26.409 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35831/resources/index.json 2026-03-24 09:31:26.411 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:31:26.412 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-03-24 09:31:26.412 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35831/resources/index.json 2026-03-24 09:31:26.412 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35831/resources/index.json 2026-03-24 09:31:26.412 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35831/resources/index.json 2026-03-24 09:31:28.422 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:28.423 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 09:31:28.424 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35351 2026-03-24 09:31:28.429 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35351/resources/lesson001.json 2026-03-24 09:31:28.429 [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:35351/resources/lesson001.json. 2026-03-24 09:31:28.429 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35351/resources/lesson001.json 2026-03-24 09:31:28.432 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:31:28.433 [DefaultDispatcher-worker-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-24 09:31:28.433 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35351/resources/lesson001.json 2026-03-24 09:31:28.434 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35351/resources/lesson001.json 2026-03-24 09:31:28.434 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35351/resources/lesson001.json 2026-03-24 09:31:28.436 [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:35351/resources/lesson001.json. 2026-03-24 09:31:30.893 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:30.912 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.288 seconds. 2026-03-24 09:31:30.924 [DefaultDispatcher-worker-5 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44155 2026-03-24 09:31:30.974 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44155/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:30.975 [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:44155/api/school/respect/schoolpermissiongrant. 2026-03-24 09:31:30.982 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44155/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:31.013 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:31:31.101 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44155/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:31.102 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44155/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:31.102 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44155/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:31.109 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44155/api/school/respect/schoolpermissiongrant. 2026-03-24 09:31:31.292 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.295 [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:44155/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:31.303 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.308 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:31.369 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.370 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.370 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.377 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44155/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:31.409 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.409 [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:44155/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:31.409 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.413 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:31.418 [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-24 09:31:31.434 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.435 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:31.435 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44155/api/school/respect/person?includeRelated=false 2026-03-24 09:31:33.600 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:33.601 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.07 seconds. 2026-03-24 09:31:33.612 [DefaultDispatcher-worker-6 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43935 2026-03-24 09:31:33.613 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43935/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:33.613 [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:43935/api/school/respect/schoolpermissiongrant. 2026-03-24 09:31:33.613 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43935/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:33.624 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:31:33.631 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43935/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:33.631 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43935/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:33.631 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43935/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:33.631 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43935/api/school/respect/schoolpermissiongrant. 2026-03-24 09:31:33.704 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43935/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:31:33.704 [DefaultDispatcher-worker-7 @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:43935/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 09:31:33.704 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43935/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:31:33.709 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:33.715 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43935/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:31:33.716 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43935/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:31:33.716 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43935/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:31:33.718 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43935/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 09:31:35.892 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:35.894 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-03-24 09:31:35.900 [DefaultDispatcher-worker-4 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41639 2026-03-24 09:31:35.908 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41639/api/school/respect/person?includeRelated=false 2026-03-24 09:31:35.908 [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:41639/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:35.908 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41639/api/school/respect/person?includeRelated=false 2026-03-24 09:31:35.918 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:35.928 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41639/api/school/respect/person?includeRelated=false 2026-03-24 09:31:35.929 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41639/api/school/respect/person?includeRelated=false 2026-03-24 09:31:35.929 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41639/api/school/respect/person?includeRelated=false 2026-03-24 09:31:35.931 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41639/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:36.017 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41639/api/school/respect/person?since=2026-03-24T05%3A31%3A35.919416236Z&includeRelated=false 2026-03-24 09:31:36.020 [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:41639/api/school/respect/person?since=2026-03-24T05%3A31%3A35.919416236Z&includeRelated=false. 2026-03-24 09:31:36.021 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41639/api/school/respect/person?since=2026-03-24T05%3A31%3A35.919416236Z&includeRelated=false 2026-03-24 09:31:36.025 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:36.039 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41639/api/school/respect/person?since=2026-03-24T05%3A31%3A35.919416236Z&includeRelated=false 2026-03-24 09:31:36.040 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41639/api/school/respect/person?since=2026-03-24T05%3A31%3A35.919416236Z&includeRelated=false 2026-03-24 09:31:36.041 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41639/api/school/respect/person?since=2026-03-24T05%3A31%3A35.919416236Z&includeRelated=false 2026-03-24 09:31:36.050 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41639/api/school/respect/person?since=2026-03-24T05%3A31%3A35.919416236Z&includeRelated=false. 2026-03-24 09:31:38.223 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:38.224 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-03-24 09:31:38.226 [DefaultDispatcher-worker-1 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41495 2026-03-24 09:31:38.285 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41495/api/school/respect/person 2026-03-24 09:31:38.285 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@811a03c for http://localhost:41495/api/school/respect/person 2026-03-24 09:31:38.285 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41495/api/school/respect/person 2026-03-24 09:31:38.285 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:41495/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 09:31:38.290 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-03-24 09:31:38.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-24 09:31:38.301 [DefaultDispatcher-worker-6 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 09:31:38.302 [DefaultDispatcher-worker-3 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41495/api/school/respect/person 2026-03-24 09:31:38.302 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41495/api/school/respect/person 2026-03-24 09:31:38.302 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41495/api/school/respect/person 2026-03-24 09:31:40.469 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:40.475 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.06 seconds. 2026-03-24 09:31:40.490 [DefaultDispatcher-worker-6 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43609 2026-03-24 09:31:40.491 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43609/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:40.491 [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:43609/api/school/respect/schoolpermissiongrant. 2026-03-24 09:31:40.491 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43609/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:40.512 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:31:40.529 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43609/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:40.530 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43609/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:40.530 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43609/api/school/respect/schoolpermissiongrant 2026-03-24 09:31:40.530 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43609/api/school/respect/schoolpermissiongrant. 2026-03-24 09:31:40.578 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:40.579 [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:43609/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:40.579 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:40.580 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:40.587 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:40.587 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:40.587 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:40.588 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43609/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:42.603 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:42.603 [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:43609/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:42.603 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:42.605 [eventLoopGroupProxy-25-1 @call-handler#199] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:42.613 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:42.613 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:42.613 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43609/api/school/respect/person?includeRelated=false 2026-03-24 09:31:42.614 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43609/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:44.790 [Test worker @coroutine#205] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:44.792 [Test worker @coroutine#205] INFO io.ktor.server.Application - Application started in 0.059 seconds. 2026-03-24 09:31:44.793 [DefaultDispatcher-worker-5 @coroutine#214] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34087 2026-03-24 09:31:44.797 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34087/api/school/respect/person?includeRelated=false 2026-03-24 09:31:44.797 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34087/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:44.797 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34087/api/school/respect/person?includeRelated=false 2026-03-24 09:31:44.801 [eventLoopGroupProxy-28-1 @call-handler#219] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:44.810 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34087/api/school/respect/person?includeRelated=false 2026-03-24 09:31:44.810 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34087/api/school/respect/person?includeRelated=false 2026-03-24 09:31:44.810 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34087/api/school/respect/person?includeRelated=false 2026-03-24 09:31:44.812 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34087/api/school/respect/person?includeRelated=false. 2026-03-24 09:31:44.868 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34087/api/school/respect/person?since=2026-03-24T05%3A31%3A44.801837373Z&includeRelated=false 2026-03-24 09:31:44.868 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34087/api/school/respect/person?since=2026-03-24T05%3A31%3A44.801837373Z&includeRelated=false. 2026-03-24 09:31:44.868 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34087/api/school/respect/person?since=2026-03-24T05%3A31%3A44.801837373Z&includeRelated=false 2026-03-24 09:31:44.869 [eventLoopGroupProxy-28-1 @call-handler#227] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:31:44.877 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34087/api/school/respect/person?since=2026-03-24T05%3A31%3A44.801837373Z&includeRelated=false 2026-03-24 09:31:44.877 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34087/api/school/respect/person?since=2026-03-24T05%3A31%3A44.801837373Z&includeRelated=false 2026-03-24 09:31:44.878 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34087/api/school/respect/person?since=2026-03-24T05%3A31%3A44.801837373Z&includeRelated=false 2026-03-24 09:31:44.879 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34087/api/school/respect/person?since=2026-03-24T05%3A31%3A44.801837373Z&includeRelated=false. 2026-03-24 09:31:47.025 [Test worker @coroutine#233] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:47.026 [Test worker @coroutine#233] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-03-24 09:31:47.027 [DefaultDispatcher-worker-4 @coroutine#243] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39207 2026-03-24 09:31:47.029 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39207/playlist/e4260928-ce00-4377-b390-4cb49404053a 2026-03-24 09:31:47.029 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39207/playlist/e4260928-ce00-4377-b390-4cb49404053a. 2026-03-24 09:31:47.029 [Test worker @coroutine#233] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39207/playlist/e4260928-ce00-4377-b390-4cb49404053a 2026-03-24 09:31:47.033 [eventLoopGroupProxy-31-1 @call-handler#247] TRACE io.ktor.server.routing.Routing - Trace for [playlist, e4260928-ce00-4377-b390-4cb49404053a] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[e4260928-ce00-4377-b390-4cb49404053a]] @ /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=[e4260928-ce00-4377-b390-4cb49404053a]] @ /playlist/{uuid}/(method:GET) 2026-03-24 09:31:47.039 [Test worker @coroutine#233] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39207/playlist/e4260928-ce00-4377-b390-4cb49404053a 2026-03-24 09:31:47.039 [Test worker @coroutine#233] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39207/playlist/e4260928-ce00-4377-b390-4cb49404053a 2026-03-24 09:31:47.039 [Test worker @coroutine#233] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39207/playlist/e4260928-ce00-4377-b390-4cb49404053a 2026-03-24 09:31:47.040 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:39207/playlist/e4260928-ce00-4377-b390-4cb49404053a. 2026-03-24 09:31:49.208 [Test worker @coroutine#251] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:31:49.209 [Test worker @coroutine#251] INFO io.ktor.server.Application - Application started in 0.052 seconds. 2026-03-24 09:31:49.210 [DefaultDispatcher-worker-8 @coroutine#260] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44075 2026-03-24 09:31:49.249 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44075/playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e 2026-03-24 09:31:49.249 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@2a0baffb for http://localhost:44075/playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e 2026-03-24 09:31:49.249 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44075/playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e 2026-03-24 09:31:49.249 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:44075/playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e from class io.ktor.http.content.TextContent 2026-03-24 09:31:49.252 [eventLoopGroupProxy-34-1 @call-handler#268] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 8cc73d8f-e15d-4230-bcdd-a53a9392d37e] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[8cc73d8f-e15d-4230-bcdd-a53a9392d37e]] @ /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=[8cc73d8f-e15d-4230-bcdd-a53a9392d37e]] @ /playlist/{uuid}/(method:POST) 2026-03-24 09:31:49.252 [eventLoopGroupProxy-34-1 @call-handler#268] 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/8cc73d8f-e15d-4230-bcdd-a53a9392d37e 2026-03-24 09:31:49.253 [DefaultDispatcher-worker-7 @call-handler#268] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 09:31:49.253 [DefaultDispatcher-worker-3 @coroutine#258] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44075/playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e 2026-03-24 09:31:49.254 [DefaultDispatcher-worker-3 @coroutine#258] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44075/playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e 2026-03-24 09:31:49.254 [DefaultDispatcher-worker-3 @coroutine#258] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44075/playlist/8cc73d8f-e15d-4230-bcdd-a53a9392d37e 2026-03-24 09:42:28.312 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:28.439 [Test worker] INFO io.ktor.server.Application - Application started in 0.335 seconds. 2026-03-24 09:42:28.558 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35509 2026-03-24 09:42:29.785 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35509/resources/index.json 2026-03-24 09:42:29.786 [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:35509/resources/index.json. 2026-03-24 09:42:29.786 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35509/resources/index.json 2026-03-24 09:42:29.999 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:42:30.078 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 85ms 2026-03-24 09:42:30.084 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35509/resources/index.json 2026-03-24 09:42:30.086 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35509/resources/index.json 2026-03-24 09:42:30.087 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35509/resources/index.json 2026-03-24 09:42:30.118 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:35509/resources/index.json. 2026-03-24 09:42:30.172 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35509/resources/index.json 2026-03-24 09:42:30.173 [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:35509/resources/index.json. 2026-03-24 09:42:30.173 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35509/resources/index.json 2026-03-24 09:42:30.179 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:42:30.181 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-03-24 09:42:30.184 [DefaultDispatcher-worker-5 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35509/resources/index.json 2026-03-24 09:42:30.185 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35509/resources/index.json 2026-03-24 09:42:30.185 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35509/resources/index.json 2026-03-24 09:42:32.209 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:32.210 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 09:42:32.211 [DefaultDispatcher-worker-1 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39929 2026-03-24 09:42:32.285 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39929/resources/index.json 2026-03-24 09:42:32.285 [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:39929/resources/index.json. 2026-03-24 09:42:32.285 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39929/resources/index.json 2026-03-24 09:42:32.288 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:42:32.289 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-24 09:42:32.290 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39929/resources/index.json 2026-03-24 09:42:32.290 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39929/resources/index.json 2026-03-24 09:42:32.290 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39929/resources/index.json 2026-03-24 09:42:32.291 [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:39929/resources/index.json. 2026-03-24 09:42:32.297 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39929/resources/index.json 2026-03-24 09:42:32.297 [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:39929/resources/index.json. 2026-03-24 09:42:32.297 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39929/resources/index.json 2026-03-24 09:42:32.299 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:42:32.300 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-03-24 09:42:32.300 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39929/resources/index.json 2026-03-24 09:42:32.300 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39929/resources/index.json 2026-03-24 09:42:32.301 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39929/resources/index.json 2026-03-24 09:42:34.309 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:34.310 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 09:42:34.311 [DefaultDispatcher-worker-1 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40891 2026-03-24 09:42:34.317 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40891/resources/lesson001.json 2026-03-24 09:42:34.318 [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:40891/resources/lesson001.json. 2026-03-24 09:42:34.318 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40891/resources/lesson001.json 2026-03-24 09:42:34.321 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 09:42:34.322 [DefaultDispatcher-worker-5 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-03-24 09:42:34.323 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40891/resources/lesson001.json 2026-03-24 09:42:34.323 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40891/resources/lesson001.json 2026-03-24 09:42:34.323 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40891/resources/lesson001.json 2026-03-24 09:42:34.327 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:40891/resources/lesson001.json. 2026-03-24 09:42:36.835 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:36.864 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.284 seconds. 2026-03-24 09:42:36.873 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33423 2026-03-24 09:42:36.910 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33423/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:36.914 [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:33423/api/school/respect/schoolpermissiongrant. 2026-03-24 09:42:36.914 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33423/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:36.947 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:42:37.005 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33423/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:37.005 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33423/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:37.005 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33423/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:37.008 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33423/api/school/respect/schoolpermissiongrant. 2026-03-24 09:42:37.120 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.121 [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:33423/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:37.122 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.125 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:37.175 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.176 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.176 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.178 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33423/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:37.207 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.207 [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:33423/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:37.207 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.211 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:37.214 [DefaultDispatcher-worker-7 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 09:42:37.217 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.218 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:37.218 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33423/api/school/respect/person?includeRelated=false 2026-03-24 09:42:39.450 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:39.451 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.073 seconds. 2026-03-24 09:42:39.452 [DefaultDispatcher-worker-9 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35939 2026-03-24 09:42:39.458 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35939/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:39.458 [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:35939/api/school/respect/schoolpermissiongrant. 2026-03-24 09:42:39.458 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35939/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:39.470 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:42:39.473 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35939/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:39.474 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35939/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:39.474 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35939/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:39.475 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35939/api/school/respect/schoolpermissiongrant. 2026-03-24 09:42:39.529 [DefaultDispatcher-worker-9 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35939/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:42:39.529 [DefaultDispatcher-worker-9 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35939/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 09:42:39.529 [DefaultDispatcher-worker-9 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35939/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:42:39.530 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:39.533 [DefaultDispatcher-worker-7 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35939/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:42:39.533 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35939/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:42:39.533 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35939/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 09:42:39.534 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35939/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 09:42:41.676 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:41.677 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.05 seconds. 2026-03-24 09:42:41.678 [DefaultDispatcher-worker-3 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36139 2026-03-24 09:42:41.683 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36139/api/school/respect/person?includeRelated=false 2026-03-24 09:42:41.683 [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:36139/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:41.683 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36139/api/school/respect/person?includeRelated=false 2026-03-24 09:42:41.692 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:41.703 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36139/api/school/respect/person?includeRelated=false 2026-03-24 09:42:41.704 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36139/api/school/respect/person?includeRelated=false 2026-03-24 09:42:41.704 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36139/api/school/respect/person?includeRelated=false 2026-03-24 09:42:41.708 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36139/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:41.816 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36139/api/school/respect/person?since=2026-03-24T05%3A42%3A41.697865967Z&includeRelated=false 2026-03-24 09:42:41.818 [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:36139/api/school/respect/person?since=2026-03-24T05%3A42%3A41.697865967Z&includeRelated=false. 2026-03-24 09:42:41.818 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36139/api/school/respect/person?since=2026-03-24T05%3A42%3A41.697865967Z&includeRelated=false 2026-03-24 09:42:41.828 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:41.834 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36139/api/school/respect/person?since=2026-03-24T05%3A42%3A41.697865967Z&includeRelated=false 2026-03-24 09:42:41.834 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36139/api/school/respect/person?since=2026-03-24T05%3A42%3A41.697865967Z&includeRelated=false 2026-03-24 09:42:41.834 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36139/api/school/respect/person?since=2026-03-24T05%3A42%3A41.697865967Z&includeRelated=false 2026-03-24 09:42:41.837 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36139/api/school/respect/person?since=2026-03-24T05%3A42%3A41.697865967Z&includeRelated=false. 2026-03-24 09:42:44.017 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:44.022 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.057 seconds. 2026-03-24 09:42:44.027 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33465 2026-03-24 09:42:44.089 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33465/api/school/respect/person 2026-03-24 09:42:44.090 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@29b469db for http://localhost:33465/api/school/respect/person 2026-03-24 09:42:44.090 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33465/api/school/respect/person 2026-03-24 09:42:44.092 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33465/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 09:42:44.108 [eventLoopGroupProxy-22-1 @call-handler#166] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-03-24 09:42:44.135 [eventLoopGroupProxy-22-1 @call-handler#166] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-03-24 09:42:44.139 [DefaultDispatcher-worker-2 @call-handler#166] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 09:42:44.143 [DefaultDispatcher-worker-1 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33465/api/school/respect/person 2026-03-24 09:42:44.143 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33465/api/school/respect/person 2026-03-24 09:42:44.143 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33465/api/school/respect/person 2026-03-24 09:42:46.371 [Test worker @coroutine#171] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:46.372 [Test worker @coroutine#171] INFO io.ktor.server.Application - Application started in 0.087 seconds. 2026-03-24 09:42:46.374 [DefaultDispatcher-worker-1 @coroutine#180] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45935 2026-03-24 09:42:46.374 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45935/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:46.375 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45935/api/school/respect/schoolpermissiongrant. 2026-03-24 09:42:46.375 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45935/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:46.377 [eventLoopGroupProxy-25-1 @call-handler#184] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 09:42:46.379 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45935/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:46.379 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45935/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:46.379 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45935/api/school/respect/schoolpermissiongrant 2026-03-24 09:42:46.380 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45935/api/school/respect/schoolpermissiongrant. 2026-03-24 09:42:46.507 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:46.507 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45935/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:46.507 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:46.511 [eventLoopGroupProxy-25-1 @call-handler#190] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:46.517 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:46.517 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:46.517 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:46.518 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45935/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:48.528 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:48.529 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45935/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:48.529 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:48.530 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:48.533 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:48.534 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:48.534 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45935/api/school/respect/person?includeRelated=false 2026-03-24 09:42:48.535 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45935/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:50.704 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:50.707 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.07 seconds. 2026-03-24 09:42:50.716 [DefaultDispatcher-worker-2 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41915 2026-03-24 09:42:50.726 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41915/api/school/respect/person?includeRelated=false 2026-03-24 09:42:50.727 [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:41915/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:50.727 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41915/api/school/respect/person?includeRelated=false 2026-03-24 09:42:50.737 [eventLoopGroupProxy-28-1 @call-handler#218] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:50.741 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41915/api/school/respect/person?includeRelated=false 2026-03-24 09:42:50.742 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41915/api/school/respect/person?includeRelated=false 2026-03-24 09:42:50.742 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41915/api/school/respect/person?includeRelated=false 2026-03-24 09:42:50.743 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41915/api/school/respect/person?includeRelated=false. 2026-03-24 09:42:50.806 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41915/api/school/respect/person?since=2026-03-24T05%3A42%3A50.738034612Z&includeRelated=false 2026-03-24 09:42:50.806 [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:41915/api/school/respect/person?since=2026-03-24T05%3A42%3A50.738034612Z&includeRelated=false. 2026-03-24 09:42:50.806 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41915/api/school/respect/person?since=2026-03-24T05%3A42%3A50.738034612Z&includeRelated=false 2026-03-24 09:42:50.810 [eventLoopGroupProxy-28-1 @call-handler#226] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 09:42:50.816 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41915/api/school/respect/person?since=2026-03-24T05%3A42%3A50.738034612Z&includeRelated=false 2026-03-24 09:42:50.816 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41915/api/school/respect/person?since=2026-03-24T05%3A42%3A50.738034612Z&includeRelated=false 2026-03-24 09:42:50.816 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41915/api/school/respect/person?since=2026-03-24T05%3A42%3A50.738034612Z&includeRelated=false 2026-03-24 09:42:50.818 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41915/api/school/respect/person?since=2026-03-24T05%3A42%3A50.738034612Z&includeRelated=false. 2026-03-24 09:42:52.973 [Test worker @coroutine#232] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:52.975 [Test worker @coroutine#232] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-03-24 09:42:52.975 [DefaultDispatcher-worker-3 @coroutine#242] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44889 2026-03-24 09:42:52.977 [Test worker @coroutine#232] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44889/playlist/b8dfa7df-0a7f-438d-8fca-bc59636fb0f6 2026-03-24 09:42:52.978 [Test worker @coroutine#232] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44889/playlist/b8dfa7df-0a7f-438d-8fca-bc59636fb0f6. 2026-03-24 09:42:52.978 [Test worker @coroutine#232] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44889/playlist/b8dfa7df-0a7f-438d-8fca-bc59636fb0f6 2026-03-24 09:42:52.982 [eventLoopGroupProxy-31-1 @call-handler#246] TRACE io.ktor.server.routing.Routing - Trace for [playlist, b8dfa7df-0a7f-438d-8fca-bc59636fb0f6] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[b8dfa7df-0a7f-438d-8fca-bc59636fb0f6]] @ /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=[b8dfa7df-0a7f-438d-8fca-bc59636fb0f6]] @ /playlist/{uuid}/(method:GET) 2026-03-24 09:42:52.991 [Test worker @coroutine#232] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44889/playlist/b8dfa7df-0a7f-438d-8fca-bc59636fb0f6 2026-03-24 09:42:52.991 [Test worker @coroutine#232] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44889/playlist/b8dfa7df-0a7f-438d-8fca-bc59636fb0f6 2026-03-24 09:42:52.991 [Test worker @coroutine#232] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44889/playlist/b8dfa7df-0a7f-438d-8fca-bc59636fb0f6 2026-03-24 09:42:52.992 [Test worker @coroutine#232] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:44889/playlist/b8dfa7df-0a7f-438d-8fca-bc59636fb0f6. 2026-03-24 09:42:55.156 [Test worker @coroutine#250] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 09:42:55.156 [Test worker @coroutine#250] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-03-24 09:42:55.157 [DefaultDispatcher-worker-11 @coroutine#259] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38857 2026-03-24 09:42:55.203 [DefaultDispatcher-worker-3 @coroutine#257] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38857/playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 2026-03-24 09:42:55.203 [DefaultDispatcher-worker-3 @coroutine#257] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3cf3d246 for http://localhost:38857/playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 2026-03-24 09:42:55.203 [DefaultDispatcher-worker-3 @coroutine#257] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38857/playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 2026-03-24 09:42:55.203 [DefaultDispatcher-worker-3 @coroutine#257] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38857/playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 from class io.ktor.http.content.TextContent 2026-03-24 09:42:55.206 [eventLoopGroupProxy-34-1 @call-handler#267] TRACE io.ktor.server.routing.Routing - Trace for [playlist, c93c6371-b3db-407e-9e7d-fd88092d6195] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[c93c6371-b3db-407e-9e7d-fd88092d6195]] @ /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=[c93c6371-b3db-407e-9e7d-fd88092d6195]] @ /playlist/{uuid}/(method:POST) 2026-03-24 09:42:55.206 [eventLoopGroupProxy-34-1 @call-handler#267] 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/c93c6371-b3db-407e-9e7d-fd88092d6195 2026-03-24 09:42:55.207 [DefaultDispatcher-worker-3 @call-handler#267] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 09:42:55.208 [DefaultDispatcher-worker-2 @coroutine#257] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38857/playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 2026-03-24 09:42:55.208 [DefaultDispatcher-worker-2 @coroutine#257] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38857/playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 2026-03-24 09:42:55.208 [DefaultDispatcher-worker-2 @coroutine#257] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38857/playlist/c93c6371-b3db-407e-9e7d-fd88092d6195 2026-03-24 10:48:43.195 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:48:43.307 [Test worker] INFO io.ktor.server.Application - Application started in 0.247 seconds. 2026-03-24 10:48:43.396 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46317 2026-03-24 10:48:44.263 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46317/resources/index.json 2026-03-24 10:48:44.263 [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:46317/resources/index.json. 2026-03-24 10:48:44.263 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46317/resources/index.json 2026-03-24 10:48:44.410 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 10:48:44.469 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 65ms 2026-03-24 10:48:44.476 [DefaultDispatcher-worker-4 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46317/resources/index.json 2026-03-24 10:48:44.478 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46317/resources/index.json 2026-03-24 10:48:44.478 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46317/resources/index.json 2026-03-24 10:48:44.502 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:46317/resources/index.json. 2026-03-24 10:48:44.541 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46317/resources/index.json 2026-03-24 10:48:44.542 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46317/resources/index.json. 2026-03-24 10:48:44.542 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46317/resources/index.json 2026-03-24 10:48:44.545 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 10:48:44.548 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 4ms 2026-03-24 10:48:44.549 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46317/resources/index.json 2026-03-24 10:48:44.549 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46317/resources/index.json 2026-03-24 10:48:44.549 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46317/resources/index.json 2026-03-24 10:48:46.608 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:48:46.609 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 10:48:46.611 [DefaultDispatcher-worker-2 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44293 2026-03-24 10:48:46.694 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44293/resources/index.json 2026-03-24 10:48:46.694 [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:44293/resources/index.json. 2026-03-24 10:48:46.695 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44293/resources/index.json 2026-03-24 10:48:46.698 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 10:48:46.700 [DefaultDispatcher-worker-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 2ms 2026-03-24 10:48:46.701 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44293/resources/index.json 2026-03-24 10:48:46.701 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44293/resources/index.json 2026-03-24 10:48:46.701 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44293/resources/index.json 2026-03-24 10:48:46.702 [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:44293/resources/index.json. 2026-03-24 10:48:46.708 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44293/resources/index.json 2026-03-24 10:48:46.708 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44293/resources/index.json. 2026-03-24 10:48:46.708 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44293/resources/index.json 2026-03-24 10:48:46.710 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 10:48:46.710 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 0ms 2026-03-24 10:48:46.711 [DefaultDispatcher-worker-4 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44293/resources/index.json 2026-03-24 10:48:46.711 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44293/resources/index.json 2026-03-24 10:48:46.711 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44293/resources/index.json 2026-03-24 10:48:48.774 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:48:48.774 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 10:48:48.777 [DefaultDispatcher-worker-4 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40019 2026-03-24 10:48:48.784 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40019/resources/lesson001.json 2026-03-24 10:48:48.785 [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:40019/resources/lesson001.json. 2026-03-24 10:48:48.785 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40019/resources/lesson001.json 2026-03-24 10:48:48.788 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 10:48:48.790 [DefaultDispatcher-worker-3 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-24 10:48:48.791 [DefaultDispatcher-worker-3 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40019/resources/lesson001.json 2026-03-24 10:48:48.792 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40019/resources/lesson001.json 2026-03-24 10:48:48.792 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40019/resources/lesson001.json 2026-03-24 10:48:48.798 [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:40019/resources/lesson001.json. 2026-03-24 10:48:51.041 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:48:51.047 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.108 seconds. 2026-03-24 10:48:51.050 [DefaultDispatcher-worker-4 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44551 2026-03-24 10:48:51.059 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44551/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:51.059 [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:44551/api/school/respect/schoolpermissiongrant. 2026-03-24 10:48:51.059 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44551/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:51.064 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 10:48:51.077 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44551/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:51.077 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44551/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:51.078 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44551/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:51.080 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44551/api/school/respect/schoolpermissiongrant. 2026-03-24 10:48:51.140 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.140 [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:44551/api/school/respect/person?includeRelated=false. 2026-03-24 10:48:51.140 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.142 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:48:51.160 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.160 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.160 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.161 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44551/api/school/respect/person?includeRelated=false. 2026-03-24 10:48:51.167 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.167 [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:44551/api/school/respect/person?includeRelated=false. 2026-03-24 10:48:51.167 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.169 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:48:51.171 [DefaultDispatcher-worker-5 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 10:48:51.172 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.172 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:51.172 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44551/api/school/respect/person?includeRelated=false 2026-03-24 10:48:53.394 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:48:53.400 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.065 seconds. 2026-03-24 10:48:53.405 [DefaultDispatcher-worker-6 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34325 2026-03-24 10:48:53.410 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34325/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:53.414 [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:34325/api/school/respect/schoolpermissiongrant. 2026-03-24 10:48:53.414 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34325/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:53.437 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 10:48:53.447 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34325/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:53.447 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34325/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:53.447 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34325/api/school/respect/schoolpermissiongrant 2026-03-24 10:48:53.448 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34325/api/school/respect/schoolpermissiongrant. 2026-03-24 10:48:53.539 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34325/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 10:48:53.539 [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:34325/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 10:48:53.539 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34325/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 10:48:53.548 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:48:53.568 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34325/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 10:48:53.568 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34325/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 10:48:53.568 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34325/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 10:48:53.572 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34325/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 10:48:55.777 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:48:55.779 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.058 seconds. 2026-03-24 10:48:55.780 [DefaultDispatcher-worker-2 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35431 2026-03-24 10:48:55.784 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35431/api/school/respect/person?includeRelated=false 2026-03-24 10:48:55.784 [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:35431/api/school/respect/person?includeRelated=false. 2026-03-24 10:48:55.784 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35431/api/school/respect/person?includeRelated=false 2026-03-24 10:48:55.788 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:48:55.795 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35431/api/school/respect/person?includeRelated=false 2026-03-24 10:48:55.795 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35431/api/school/respect/person?includeRelated=false 2026-03-24 10:48:55.795 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35431/api/school/respect/person?includeRelated=false 2026-03-24 10:48:55.797 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35431/api/school/respect/person?includeRelated=false. 2026-03-24 10:48:55.943 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35431/api/school/respect/person?since=2026-03-24T06%3A48%3A55.789761157Z&includeRelated=false 2026-03-24 10:48:55.943 [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:35431/api/school/respect/person?since=2026-03-24T06%3A48%3A55.789761157Z&includeRelated=false. 2026-03-24 10:48:55.943 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35431/api/school/respect/person?since=2026-03-24T06%3A48%3A55.789761157Z&includeRelated=false 2026-03-24 10:48:55.956 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:48:55.973 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35431/api/school/respect/person?since=2026-03-24T06%3A48%3A55.789761157Z&includeRelated=false 2026-03-24 10:48:55.974 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35431/api/school/respect/person?since=2026-03-24T06%3A48%3A55.789761157Z&includeRelated=false 2026-03-24 10:48:55.974 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35431/api/school/respect/person?since=2026-03-24T06%3A48%3A55.789761157Z&includeRelated=false 2026-03-24 10:48:55.985 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35431/api/school/respect/person?since=2026-03-24T06%3A48%3A55.789761157Z&includeRelated=false. 2026-03-24 10:48:58.173 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:48:58.174 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.055 seconds. 2026-03-24 10:48:58.186 [DefaultDispatcher-worker-7 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41073 2026-03-24 10:48:58.277 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41073/api/school/respect/person 2026-03-24 10:48:58.277 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@318464b5 for http://localhost:41073/api/school/respect/person 2026-03-24 10:48:58.277 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41073/api/school/respect/person 2026-03-24 10:48:58.278 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:41073/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 10:48:58.285 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-03-24 10:48:58.292 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-03-24 10:48:58.294 [DefaultDispatcher-worker-5 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 10:48:58.295 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41073/api/school/respect/person 2026-03-24 10:48:58.295 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41073/api/school/respect/person 2026-03-24 10:48:58.295 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41073/api/school/respect/person 2026-03-24 10:49:00.447 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:49:00.450 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.072 seconds. 2026-03-24 10:49:00.452 [DefaultDispatcher-worker-5 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46147 2026-03-24 10:49:00.453 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46147/api/school/respect/schoolpermissiongrant 2026-03-24 10:49:00.453 [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:46147/api/school/respect/schoolpermissiongrant. 2026-03-24 10:49:00.453 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46147/api/school/respect/schoolpermissiongrant 2026-03-24 10:49:00.455 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 10:49:00.457 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46147/api/school/respect/schoolpermissiongrant 2026-03-24 10:49:00.457 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46147/api/school/respect/schoolpermissiongrant 2026-03-24 10:49:00.457 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46147/api/school/respect/schoolpermissiongrant 2026-03-24 10:49:00.458 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46147/api/school/respect/schoolpermissiongrant. 2026-03-24 10:49:00.514 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:00.514 [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:46147/api/school/respect/person?includeRelated=false. 2026-03-24 10:49:00.514 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:00.515 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:49:00.521 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:00.521 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:00.521 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:00.522 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46147/api/school/respect/person?includeRelated=false. 2026-03-24 10:49:02.531 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:02.531 [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:46147/api/school/respect/person?includeRelated=false. 2026-03-24 10:49:02.531 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:02.532 [eventLoopGroupProxy-25-1 @call-handler#199] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:49:02.536 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:02.536 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:02.536 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46147/api/school/respect/person?includeRelated=false 2026-03-24 10:49:02.537 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46147/api/school/respect/person?includeRelated=false. 2026-03-24 10:49:04.651 [Test worker @coroutine#205] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:49:04.651 [Test worker @coroutine#205] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-03-24 10:49:04.652 [DefaultDispatcher-worker-4 @coroutine#214] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46107 2026-03-24 10:49:04.655 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46107/api/school/respect/person?includeRelated=false 2026-03-24 10:49:04.655 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46107/api/school/respect/person?includeRelated=false. 2026-03-24 10:49:04.655 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46107/api/school/respect/person?includeRelated=false 2026-03-24 10:49:04.657 [eventLoopGroupProxy-28-1 @call-handler#219] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:49:04.661 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46107/api/school/respect/person?includeRelated=false 2026-03-24 10:49:04.661 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46107/api/school/respect/person?includeRelated=false 2026-03-24 10:49:04.661 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46107/api/school/respect/person?includeRelated=false 2026-03-24 10:49:04.662 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46107/api/school/respect/person?includeRelated=false. 2026-03-24 10:49:04.703 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46107/api/school/respect/person?since=2026-03-24T06%3A49%3A04.657828893Z&includeRelated=false 2026-03-24 10:49:04.703 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46107/api/school/respect/person?since=2026-03-24T06%3A49%3A04.657828893Z&includeRelated=false. 2026-03-24 10:49:04.703 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46107/api/school/respect/person?since=2026-03-24T06%3A49%3A04.657828893Z&includeRelated=false 2026-03-24 10:49:04.704 [eventLoopGroupProxy-28-1 @call-handler#227] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 10:49:04.707 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46107/api/school/respect/person?since=2026-03-24T06%3A49%3A04.657828893Z&includeRelated=false 2026-03-24 10:49:04.707 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46107/api/school/respect/person?since=2026-03-24T06%3A49%3A04.657828893Z&includeRelated=false 2026-03-24 10:49:04.707 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46107/api/school/respect/person?since=2026-03-24T06%3A49%3A04.657828893Z&includeRelated=false 2026-03-24 10:49:04.707 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46107/api/school/respect/person?since=2026-03-24T06%3A49%3A04.657828893Z&includeRelated=false. 2026-03-24 10:49:06.848 [Test worker @coroutine#233] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:49:06.850 [Test worker @coroutine#233] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-03-24 10:49:06.851 [DefaultDispatcher-worker-7 @coroutine#243] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43779 2026-03-24 10:49:06.852 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43779/playlist/7a324fcc-b4a9-4976-aaf5-c5f30ec323be 2026-03-24 10:49:06.852 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43779/playlist/7a324fcc-b4a9-4976-aaf5-c5f30ec323be. 2026-03-24 10:49:06.852 [Test worker @coroutine#233] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43779/playlist/7a324fcc-b4a9-4976-aaf5-c5f30ec323be 2026-03-24 10:49:06.855 [eventLoopGroupProxy-31-1 @call-handler#247] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 7a324fcc-b4a9-4976-aaf5-c5f30ec323be] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[7a324fcc-b4a9-4976-aaf5-c5f30ec323be]] @ /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=[7a324fcc-b4a9-4976-aaf5-c5f30ec323be]] @ /playlist/{uuid}/(method:GET) 2026-03-24 10:49:06.860 [Test worker @coroutine#233] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43779/playlist/7a324fcc-b4a9-4976-aaf5-c5f30ec323be 2026-03-24 10:49:06.860 [Test worker @coroutine#233] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43779/playlist/7a324fcc-b4a9-4976-aaf5-c5f30ec323be 2026-03-24 10:49:06.860 [Test worker @coroutine#233] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43779/playlist/7a324fcc-b4a9-4976-aaf5-c5f30ec323be 2026-03-24 10:49:06.861 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:43779/playlist/7a324fcc-b4a9-4976-aaf5-c5f30ec323be. 2026-03-24 10:49:09.097 [Test worker @coroutine#251] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 10:49:09.098 [Test worker @coroutine#251] INFO io.ktor.server.Application - Application started in 0.049 seconds. 2026-03-24 10:49:09.099 [DefaultDispatcher-worker-5 @coroutine#260] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35785 2026-03-24 10:49:09.145 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35785/playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b 2026-03-24 10:49:09.145 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@24c7223f for http://localhost:35785/playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b 2026-03-24 10:49:09.145 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35785/playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b 2026-03-24 10:49:09.145 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35785/playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b from class io.ktor.http.content.TextContent 2026-03-24 10:49:09.148 [eventLoopGroupProxy-34-1 @call-handler#268] TRACE io.ktor.server.routing.Routing - Trace for [playlist, acb26932-f2de-4a45-a554-00bb8a0abf3b] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[acb26932-f2de-4a45-a554-00bb8a0abf3b]] @ /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=[acb26932-f2de-4a45-a554-00bb8a0abf3b]] @ /playlist/{uuid}/(method:POST) 2026-03-24 10:49:09.148 [eventLoopGroupProxy-34-1 @call-handler#268] 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/acb26932-f2de-4a45-a554-00bb8a0abf3b 2026-03-24 10:49:09.149 [DefaultDispatcher-worker-5 @call-handler#268] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 10:49:09.150 [DefaultDispatcher-worker-2 @coroutine#258] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35785/playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b 2026-03-24 10:49:09.151 [DefaultDispatcher-worker-2 @coroutine#258] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35785/playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b 2026-03-24 10:49:09.151 [DefaultDispatcher-worker-2 @coroutine#258] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35785/playlist/acb26932-f2de-4a45-a554-00bb8a0abf3b 2026-03-24 11:09:53.460 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:09:53.569 [Test worker] INFO io.ktor.server.Application - Application started in 0.278 seconds. 2026-03-24 11:09:53.666 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45795 2026-03-24 11:09:54.443 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45795/resources/index.json 2026-03-24 11:09:54.443 [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:45795/resources/index.json. 2026-03-24 11:09:54.443 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45795/resources/index.json 2026-03-24 11:09:54.533 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 11:09:54.569 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 40ms 2026-03-24 11:09:54.572 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45795/resources/index.json 2026-03-24 11:09:54.573 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45795/resources/index.json 2026-03-24 11:09:54.574 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45795/resources/index.json 2026-03-24 11:09:54.590 [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:45795/resources/index.json. 2026-03-24 11:09:54.618 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45795/resources/index.json 2026-03-24 11:09:54.618 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45795/resources/index.json. 2026-03-24 11:09:54.618 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45795/resources/index.json 2026-03-24 11:09:54.620 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 11:09:54.622 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-03-24 11:09:54.622 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45795/resources/index.json 2026-03-24 11:09:54.623 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45795/resources/index.json 2026-03-24 11:09:54.623 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45795/resources/index.json 2026-03-24 11:09:56.637 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:09:56.637 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 11:09:56.639 [DefaultDispatcher-worker-3 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35367 2026-03-24 11:09:56.710 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35367/resources/index.json 2026-03-24 11:09:56.710 [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:35367/resources/index.json. 2026-03-24 11:09:56.710 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35367/resources/index.json 2026-03-24 11:09:56.713 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 11:09:56.714 [DefaultDispatcher-worker-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-03-24 11:09:56.715 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35367/resources/index.json 2026-03-24 11:09:56.715 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35367/resources/index.json 2026-03-24 11:09:56.715 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35367/resources/index.json 2026-03-24 11:09:56.716 [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:35367/resources/index.json. 2026-03-24 11:09:56.720 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35367/resources/index.json 2026-03-24 11:09:56.720 [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:35367/resources/index.json. 2026-03-24 11:09:56.720 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35367/resources/index.json 2026-03-24 11:09:56.721 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 11:09:56.722 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-03-24 11:09:56.722 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35367/resources/index.json 2026-03-24 11:09:56.722 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35367/resources/index.json 2026-03-24 11:09:56.722 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35367/resources/index.json 2026-03-24 11:09:58.731 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:09:58.731 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 11:09:58.732 [DefaultDispatcher-worker-1 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41607 2026-03-24 11:09:58.737 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41607/resources/lesson001.json 2026-03-24 11:09:58.737 [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:41607/resources/lesson001.json. 2026-03-24 11:09:58.737 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41607/resources/lesson001.json 2026-03-24 11:09:58.740 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 11:09:58.741 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-03-24 11:09:58.741 [DefaultDispatcher-worker-3 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41607/resources/lesson001.json 2026-03-24 11:09:58.742 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41607/resources/lesson001.json 2026-03-24 11:09:58.742 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41607/resources/lesson001.json 2026-03-24 11:09:58.744 [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:41607/resources/lesson001.json. 2026-03-24 11:10:00.974 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:00.980 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.106 seconds. 2026-03-24 11:10:00.982 [DefaultDispatcher-worker-4 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46005 2026-03-24 11:10:00.990 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46005/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:00.990 [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:46005/api/school/respect/schoolpermissiongrant. 2026-03-24 11:10:00.990 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46005/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:00.995 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 11:10:01.008 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46005/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:01.008 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46005/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:01.008 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46005/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:01.010 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46005/api/school/respect/schoolpermissiongrant. 2026-03-24 11:10:01.076 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.076 [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:46005/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:01.077 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.078 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:01.096 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.096 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.096 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.098 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46005/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:01.104 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.104 [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:46005/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:01.105 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.106 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:01.109 [DefaultDispatcher-worker-4 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 11:10:01.109 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.110 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:01.110 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46005/api/school/respect/person?includeRelated=false 2026-03-24 11:10:03.237 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:03.238 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-03-24 11:10:03.239 [DefaultDispatcher-worker-1 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33545 2026-03-24 11:10:03.240 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33545/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:03.240 [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:33545/api/school/respect/schoolpermissiongrant. 2026-03-24 11:10:03.240 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33545/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:03.243 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 11:10:03.245 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33545/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:03.245 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33545/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:03.245 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33545/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:03.245 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33545/api/school/respect/schoolpermissiongrant. 2026-03-24 11:10:03.300 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33545/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 11:10:03.300 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33545/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 11:10:03.300 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33545/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 11:10:03.301 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:03.304 [DefaultDispatcher-worker-1 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33545/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 11:10:03.304 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33545/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 11:10:03.304 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33545/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 11:10:03.305 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33545/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 11:10:05.532 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:05.533 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.102 seconds. 2026-03-24 11:10:05.534 [DefaultDispatcher-worker-3 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35463 2026-03-24 11:10:05.537 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35463/api/school/respect/person?includeRelated=false 2026-03-24 11:10:05.537 [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:35463/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:05.537 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35463/api/school/respect/person?includeRelated=false 2026-03-24 11:10:05.539 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:05.543 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35463/api/school/respect/person?includeRelated=false 2026-03-24 11:10:05.543 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35463/api/school/respect/person?includeRelated=false 2026-03-24 11:10:05.543 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35463/api/school/respect/person?includeRelated=false 2026-03-24 11:10:05.544 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35463/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:05.634 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35463/api/school/respect/person?since=2026-03-24T07%3A10%3A05.539998892Z&includeRelated=false 2026-03-24 11:10:05.634 [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:35463/api/school/respect/person?since=2026-03-24T07%3A10%3A05.539998892Z&includeRelated=false. 2026-03-24 11:10:05.634 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35463/api/school/respect/person?since=2026-03-24T07%3A10%3A05.539998892Z&includeRelated=false 2026-03-24 11:10:05.636 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:05.639 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35463/api/school/respect/person?since=2026-03-24T07%3A10%3A05.539998892Z&includeRelated=false 2026-03-24 11:10:05.639 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35463/api/school/respect/person?since=2026-03-24T07%3A10%3A05.539998892Z&includeRelated=false 2026-03-24 11:10:05.639 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35463/api/school/respect/person?since=2026-03-24T07%3A10%3A05.539998892Z&includeRelated=false 2026-03-24 11:10:05.639 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35463/api/school/respect/person?since=2026-03-24T07%3A10%3A05.539998892Z&includeRelated=false. 2026-03-24 11:10:07.766 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:07.767 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-03-24 11:10:07.768 [DefaultDispatcher-worker-5 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43459 2026-03-24 11:10:07.810 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43459/api/school/respect/person 2026-03-24 11:10:07.810 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@23783eb0 for http://localhost:43459/api/school/respect/person 2026-03-24 11:10:07.810 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43459/api/school/respect/person 2026-03-24 11:10:07.810 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43459/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 11:10:07.813 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-03-24 11:10:07.821 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-03-24 11:10:07.822 [DefaultDispatcher-worker-3 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 11:10:07.823 [DefaultDispatcher-worker-1 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43459/api/school/respect/person 2026-03-24 11:10:07.824 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43459/api/school/respect/person 2026-03-24 11:10:07.824 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43459/api/school/respect/person 2026-03-24 11:10:09.932 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:09.933 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-03-24 11:10:09.934 [DefaultDispatcher-worker-15 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45597 2026-03-24 11:10:09.935 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45597/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:09.935 [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:45597/api/school/respect/schoolpermissiongrant. 2026-03-24 11:10:09.935 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45597/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:09.937 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 11:10:09.939 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45597/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:09.939 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45597/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:09.939 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45597/api/school/respect/schoolpermissiongrant 2026-03-24 11:10:09.940 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45597/api/school/respect/schoolpermissiongrant. 2026-03-24 11:10:09.979 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:09.979 [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:45597/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:09.979 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:09.980 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:09.986 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:09.986 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:09.986 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:09.987 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45597/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:11.997 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:11.997 [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:45597/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:11.997 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:11.998 [eventLoopGroupProxy-25-1 @call-handler#199] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:12.001 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:12.002 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:12.002 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45597/api/school/respect/person?includeRelated=false 2026-03-24 11:10:12.002 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45597/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:14.114 [Test worker @coroutine#205] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:14.114 [Test worker @coroutine#205] INFO io.ktor.server.Application - Application started in 0.041 seconds. 2026-03-24 11:10:14.115 [DefaultDispatcher-worker-7 @coroutine#214] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42713 2026-03-24 11:10:14.118 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42713/api/school/respect/person?includeRelated=false 2026-03-24 11:10:14.118 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42713/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:14.118 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42713/api/school/respect/person?includeRelated=false 2026-03-24 11:10:14.120 [eventLoopGroupProxy-28-1 @call-handler#219] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:14.124 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42713/api/school/respect/person?includeRelated=false 2026-03-24 11:10:14.124 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42713/api/school/respect/person?includeRelated=false 2026-03-24 11:10:14.124 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42713/api/school/respect/person?includeRelated=false 2026-03-24 11:10:14.125 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42713/api/school/respect/person?includeRelated=false. 2026-03-24 11:10:14.166 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42713/api/school/respect/person?since=2026-03-24T07%3A10%3A14.121028508Z&includeRelated=false 2026-03-24 11:10:14.166 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42713/api/school/respect/person?since=2026-03-24T07%3A10%3A14.121028508Z&includeRelated=false. 2026-03-24 11:10:14.166 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42713/api/school/respect/person?since=2026-03-24T07%3A10%3A14.121028508Z&includeRelated=false 2026-03-24 11:10:14.167 [eventLoopGroupProxy-28-1 @call-handler#227] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 11:10:14.170 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42713/api/school/respect/person?since=2026-03-24T07%3A10%3A14.121028508Z&includeRelated=false 2026-03-24 11:10:14.170 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42713/api/school/respect/person?since=2026-03-24T07%3A10%3A14.121028508Z&includeRelated=false 2026-03-24 11:10:14.170 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42713/api/school/respect/person?since=2026-03-24T07%3A10%3A14.121028508Z&includeRelated=false 2026-03-24 11:10:14.171 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42713/api/school/respect/person?since=2026-03-24T07%3A10%3A14.121028508Z&includeRelated=false. 2026-03-24 11:10:16.297 [Test worker @coroutine#233] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:16.298 [Test worker @coroutine#233] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-03-24 11:10:16.299 [DefaultDispatcher-worker-14 @coroutine#243] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36717 2026-03-24 11:10:16.301 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36717/playlist/78c7c67c-6133-4d49-b9c4-43aacf8624e1 2026-03-24 11:10:16.301 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36717/playlist/78c7c67c-6133-4d49-b9c4-43aacf8624e1. 2026-03-24 11:10:16.301 [Test worker @coroutine#233] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36717/playlist/78c7c67c-6133-4d49-b9c4-43aacf8624e1 2026-03-24 11:10:16.303 [eventLoopGroupProxy-31-1 @call-handler#247] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 78c7c67c-6133-4d49-b9c4-43aacf8624e1] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[78c7c67c-6133-4d49-b9c4-43aacf8624e1]] @ /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=[78c7c67c-6133-4d49-b9c4-43aacf8624e1]] @ /playlist/{uuid}/(method:GET) 2026-03-24 11:10:16.309 [Test worker @coroutine#233] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36717/playlist/78c7c67c-6133-4d49-b9c4-43aacf8624e1 2026-03-24 11:10:16.309 [Test worker @coroutine#233] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36717/playlist/78c7c67c-6133-4d49-b9c4-43aacf8624e1 2026-03-24 11:10:16.309 [Test worker @coroutine#233] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36717/playlist/78c7c67c-6133-4d49-b9c4-43aacf8624e1 2026-03-24 11:10:16.309 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:36717/playlist/78c7c67c-6133-4d49-b9c4-43aacf8624e1. 2026-03-24 11:10:18.473 [Test worker @coroutine#251] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 11:10:18.474 [Test worker @coroutine#251] INFO io.ktor.server.Application - Application started in 0.044 seconds. 2026-03-24 11:10:18.475 [DefaultDispatcher-worker-7 @coroutine#260] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45667 2026-03-24 11:10:18.520 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45667/playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 2026-03-24 11:10:18.520 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@6a91c04 for http://localhost:45667/playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 2026-03-24 11:10:18.520 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45667/playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 2026-03-24 11:10:18.520 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45667/playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 from class io.ktor.http.content.TextContent 2026-03-24 11:10:18.523 [eventLoopGroupProxy-34-1 @call-handler#268] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 47e72e93-ac14-4c79-8ba1-4edb72c859b6] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[47e72e93-ac14-4c79-8ba1-4edb72c859b6]] @ /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=[47e72e93-ac14-4c79-8ba1-4edb72c859b6]] @ /playlist/{uuid}/(method:POST) 2026-03-24 11:10:18.523 [eventLoopGroupProxy-34-1 @call-handler#268] 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/47e72e93-ac14-4c79-8ba1-4edb72c859b6 2026-03-24 11:10:18.524 [DefaultDispatcher-worker-7 @call-handler#268] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 11:10:18.525 [DefaultDispatcher-worker-7 @coroutine#258] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45667/playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 2026-03-24 11:10:18.525 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45667/playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 2026-03-24 11:10:18.525 [DefaultDispatcher-worker-7 @coroutine#258] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45667/playlist/47e72e93-ac14-4c79-8ba1-4edb72c859b6 2026-03-24 13:46:50.746 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:46:50.828 [Test worker] INFO io.ktor.server.Application - Application started in 0.186 seconds. 2026-03-24 13:46:50.894 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:32775 2026-03-24 13:46:51.549 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32775/resources/index.json 2026-03-24 13:46:51.550 [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:32775/resources/index.json. 2026-03-24 13:46:51.550 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32775/resources/index.json 2026-03-24 13:46:51.653 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 13:46:51.691 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 42ms 2026-03-24 13:46:51.697 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32775/resources/index.json 2026-03-24 13:46:51.699 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32775/resources/index.json 2026-03-24 13:46:51.699 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32775/resources/index.json 2026-03-24 13:46:51.717 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:32775/resources/index.json. 2026-03-24 13:46:51.745 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32775/resources/index.json 2026-03-24 13:46:51.746 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:32775/resources/index.json. 2026-03-24 13:46:51.746 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32775/resources/index.json 2026-03-24 13:46:51.748 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 13:46:51.750 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-03-24 13:46:51.750 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32775/resources/index.json 2026-03-24 13:46:51.751 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32775/resources/index.json 2026-03-24 13:46:51.751 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32775/resources/index.json 2026-03-24 13:46:53.763 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:46:53.764 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-03-24 13:46:53.765 [DefaultDispatcher-worker-3 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40477 2026-03-24 13:46:53.828 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40477/resources/index.json 2026-03-24 13:46:53.828 [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:40477/resources/index.json. 2026-03-24 13:46:53.828 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40477/resources/index.json 2026-03-24 13:46:53.831 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 13:46:53.833 [DefaultDispatcher-worker-3 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 2ms 2026-03-24 13:46:53.833 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40477/resources/index.json 2026-03-24 13:46:53.833 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40477/resources/index.json 2026-03-24 13:46:53.833 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40477/resources/index.json 2026-03-24 13:46:53.834 [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:40477/resources/index.json. 2026-03-24 13:46:53.839 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40477/resources/index.json 2026-03-24 13:46:53.839 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40477/resources/index.json. 2026-03-24 13:46:53.839 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40477/resources/index.json 2026-03-24 13:46:53.841 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 13:46:53.841 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 0ms 2026-03-24 13:46:53.842 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40477/resources/index.json 2026-03-24 13:46:53.842 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40477/resources/index.json 2026-03-24 13:46:53.842 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40477/resources/index.json 2026-03-24 13:46:55.850 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:46:55.850 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-03-24 13:46:55.852 [DefaultDispatcher-worker-4 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41255 2026-03-24 13:46:55.857 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41255/resources/lesson001.json 2026-03-24 13:46:55.857 [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:41255/resources/lesson001.json. 2026-03-24 13:46:55.857 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41255/resources/lesson001.json 2026-03-24 13:46:55.859 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-03-24 13:46:55.861 [DefaultDispatcher-worker-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-03-24 13:46:55.861 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41255/resources/lesson001.json 2026-03-24 13:46:55.862 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41255/resources/lesson001.json 2026-03-24 13:46:55.862 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41255/resources/lesson001.json 2026-03-24 13:46:55.864 [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:41255/resources/lesson001.json. 2026-03-24 13:46:58.122 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:46:58.129 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.115 seconds. 2026-03-24 13:46:58.131 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39657 2026-03-24 13:46:58.141 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39657/api/school/respect/schoolpermissiongrant 2026-03-24 13:46:58.141 [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:39657/api/school/respect/schoolpermissiongrant. 2026-03-24 13:46:58.141 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39657/api/school/respect/schoolpermissiongrant 2026-03-24 13:46:58.148 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 13:46:58.161 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39657/api/school/respect/schoolpermissiongrant 2026-03-24 13:46:58.161 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39657/api/school/respect/schoolpermissiongrant 2026-03-24 13:46:58.161 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39657/api/school/respect/schoolpermissiongrant 2026-03-24 13:46:58.163 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39657/api/school/respect/schoolpermissiongrant. 2026-03-24 13:46:58.240 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.241 [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:39657/api/school/respect/person?includeRelated=false. 2026-03-24 13:46:58.241 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.243 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:46:58.263 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.264 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.264 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.265 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39657/api/school/respect/person?includeRelated=false. 2026-03-24 13:46:58.271 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.271 [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:39657/api/school/respect/person?includeRelated=false. 2026-03-24 13:46:58.271 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.273 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:46:58.276 [DefaultDispatcher-worker-4 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 13:46:58.277 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.277 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:46:58.277 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39657/api/school/respect/person?includeRelated=false 2026-03-24 13:47:00.371 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:47:00.372 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-03-24 13:47:00.374 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44063 2026-03-24 13:47:00.375 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44063/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:00.375 [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:44063/api/school/respect/schoolpermissiongrant. 2026-03-24 13:47:00.375 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44063/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:00.379 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 13:47:00.381 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44063/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:00.381 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44063/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:00.381 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44063/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:00.382 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44063/api/school/respect/schoolpermissiongrant. 2026-03-24 13:47:00.445 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44063/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 13:47:00.445 [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:44063/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 13:47:00.445 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44063/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 13:47:00.447 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:47:00.451 [DefaultDispatcher-worker-2 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44063/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 13:47:00.451 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44063/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 13:47:00.451 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44063/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-03-24 13:47:00.452 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44063/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-03-24 13:47:02.597 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:47:02.598 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-03-24 13:47:02.599 [DefaultDispatcher-worker-1 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38573 2026-03-24 13:47:02.602 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38573/api/school/respect/person?includeRelated=false 2026-03-24 13:47:02.602 [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:38573/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:02.602 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38573/api/school/respect/person?includeRelated=false 2026-03-24 13:47:02.605 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:47:02.609 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38573/api/school/respect/person?includeRelated=false 2026-03-24 13:47:02.609 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38573/api/school/respect/person?includeRelated=false 2026-03-24 13:47:02.609 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38573/api/school/respect/person?includeRelated=false 2026-03-24 13:47:02.611 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38573/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:02.675 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38573/api/school/respect/person?since=2026-03-24T09%3A47%3A02.605611458Z&includeRelated=false 2026-03-24 13:47:02.676 [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:38573/api/school/respect/person?since=2026-03-24T09%3A47%3A02.605611458Z&includeRelated=false. 2026-03-24 13:47:02.676 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38573/api/school/respect/person?since=2026-03-24T09%3A47%3A02.605611458Z&includeRelated=false 2026-03-24 13:47:02.680 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:47:02.683 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38573/api/school/respect/person?since=2026-03-24T09%3A47%3A02.605611458Z&includeRelated=false 2026-03-24 13:47:02.683 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38573/api/school/respect/person?since=2026-03-24T09%3A47%3A02.605611458Z&includeRelated=false 2026-03-24 13:47:02.683 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38573/api/school/respect/person?since=2026-03-24T09%3A47%3A02.605611458Z&includeRelated=false 2026-03-24 13:47:02.684 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38573/api/school/respect/person?since=2026-03-24T09%3A47%3A02.605611458Z&includeRelated=false. 2026-03-24 13:47:04.806 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:47:04.807 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-03-24 13:47:04.809 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46145 2026-03-24 13:47:04.854 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46145/api/school/respect/person 2026-03-24 13:47:04.855 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3299836a for http://localhost:46145/api/school/respect/person 2026-03-24 13:47:04.855 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46145/api/school/respect/person 2026-03-24 13:47:04.855 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:46145/api/school/respect/person from class io.ktor.http.content.TextContent 2026-03-24 13:47:04.861 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-03-24 13:47:04.867 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-03-24 13:47:04.870 [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-24 13:47:04.871 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46145/api/school/respect/person 2026-03-24 13:47:04.871 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46145/api/school/respect/person 2026-03-24 13:47:04.871 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46145/api/school/respect/person 2026-03-24 13:47:07.009 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:47:07.010 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-03-24 13:47:07.011 [DefaultDispatcher-worker-2 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36073 2026-03-24 13:47:07.013 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36073/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:07.013 [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:36073/api/school/respect/schoolpermissiongrant. 2026-03-24 13:47:07.013 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36073/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:07.016 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-03-24 13:47:07.018 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36073/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:07.018 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36073/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:07.018 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36073/api/school/respect/schoolpermissiongrant 2026-03-24 13:47:07.018 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36073/api/school/respect/schoolpermissiongrant. 2026-03-24 13:47:07.061 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:07.061 [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:36073/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:07.061 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:07.063 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:47:07.069 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:07.069 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:07.069 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:07.070 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36073/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:09.080 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:09.080 [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:36073/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:09.080 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:09.082 [eventLoopGroupProxy-25-1 @call-handler#199] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:47:09.085 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:09.086 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:09.086 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36073/api/school/respect/person?includeRelated=false 2026-03-24 13:47:09.087 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36073/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:11.208 [Test worker @coroutine#205] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:47:11.209 [Test worker @coroutine#205] INFO io.ktor.server.Application - Application started in 0.041 seconds. 2026-03-24 13:47:11.210 [DefaultDispatcher-worker-2 @coroutine#214] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40839 2026-03-24 13:47:11.213 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40839/api/school/respect/person?includeRelated=false 2026-03-24 13:47:11.214 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40839/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:11.214 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40839/api/school/respect/person?includeRelated=false 2026-03-24 13:47:11.216 [eventLoopGroupProxy-28-1 @call-handler#219] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:47:11.221 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40839/api/school/respect/person?includeRelated=false 2026-03-24 13:47:11.221 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40839/api/school/respect/person?includeRelated=false 2026-03-24 13:47:11.221 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40839/api/school/respect/person?includeRelated=false 2026-03-24 13:47:11.223 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40839/api/school/respect/person?includeRelated=false. 2026-03-24 13:47:11.334 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40839/api/school/respect/person?since=2026-03-24T09%3A47%3A11.217517255Z&includeRelated=false 2026-03-24 13:47:11.334 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40839/api/school/respect/person?since=2026-03-24T09%3A47%3A11.217517255Z&includeRelated=false. 2026-03-24 13:47:11.335 [Test worker @coroutine#205] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40839/api/school/respect/person?since=2026-03-24T09%3A47%3A11.217517255Z&includeRelated=false 2026-03-24 13:47:11.337 [eventLoopGroupProxy-28-1 @call-handler#227] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-03-24 13:47:11.341 [Test worker @coroutine#205] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40839/api/school/respect/person?since=2026-03-24T09%3A47%3A11.217517255Z&includeRelated=false 2026-03-24 13:47:11.341 [Test worker @coroutine#205] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40839/api/school/respect/person?since=2026-03-24T09%3A47%3A11.217517255Z&includeRelated=false 2026-03-24 13:47:11.342 [Test worker @coroutine#205] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40839/api/school/respect/person?since=2026-03-24T09%3A47%3A11.217517255Z&includeRelated=false 2026-03-24 13:47:11.343 [Test worker @coroutine#205] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40839/api/school/respect/person?since=2026-03-24T09%3A47%3A11.217517255Z&includeRelated=false. 2026-03-24 13:47:13.539 [Test worker @coroutine#233] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:47:13.541 [Test worker @coroutine#233] INFO io.ktor.server.Application - Application started in 0.068 seconds. 2026-03-24 13:47:13.549 [DefaultDispatcher-worker-6 @coroutine#243] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35245 2026-03-24 13:47:13.551 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35245/playlist/a2d22529-25ab-491c-aa15-e283776253f8 2026-03-24 13:47:13.551 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35245/playlist/a2d22529-25ab-491c-aa15-e283776253f8. 2026-03-24 13:47:13.551 [Test worker @coroutine#233] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35245/playlist/a2d22529-25ab-491c-aa15-e283776253f8 2026-03-24 13:47:13.566 [eventLoopGroupProxy-31-1 @call-handler#247] TRACE io.ktor.server.routing.Routing - Trace for [playlist, a2d22529-25ab-491c-aa15-e283776253f8] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[a2d22529-25ab-491c-aa15-e283776253f8]] @ /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=[a2d22529-25ab-491c-aa15-e283776253f8]] @ /playlist/{uuid}/(method:GET) 2026-03-24 13:47:13.578 [Test worker @coroutine#233] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35245/playlist/a2d22529-25ab-491c-aa15-e283776253f8 2026-03-24 13:47:13.579 [Test worker @coroutine#233] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35245/playlist/a2d22529-25ab-491c-aa15-e283776253f8 2026-03-24 13:47:13.579 [Test worker @coroutine#233] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35245/playlist/a2d22529-25ab-491c-aa15-e283776253f8 2026-03-24 13:47:13.580 [Test worker @coroutine#233] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:35245/playlist/a2d22529-25ab-491c-aa15-e283776253f8. 2026-03-24 13:47:15.841 [Test worker @coroutine#251] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-03-24 13:47:15.848 [Test worker @coroutine#251] INFO io.ktor.server.Application - Application started in 0.058 seconds. 2026-03-24 13:47:15.854 [DefaultDispatcher-worker-9 @coroutine#260] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36289 2026-03-24 13:47:15.913 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36289/playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7 2026-03-24 13:47:15.914 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5dbe6fb2 for http://localhost:36289/playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7 2026-03-24 13:47:15.914 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36289/playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7 2026-03-24 13:47:15.914 [DefaultDispatcher-worker-5 @coroutine#258] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36289/playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7 from class io.ktor.http.content.TextContent 2026-03-24 13:47:15.929 [eventLoopGroupProxy-34-1 @call-handler#268] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 7994d19f-9e92-4a6f-bd71-e73f235d36e7] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[7994d19f-9e92-4a6f-bd71-e73f235d36e7]] @ /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=[7994d19f-9e92-4a6f-bd71-e73f235d36e7]] @ /playlist/{uuid}/(method:POST) 2026-03-24 13:47:15.930 [eventLoopGroupProxy-34-1 @call-handler#268] 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/7994d19f-9e92-4a6f-bd71-e73f235d36e7 2026-03-24 13:47:15.937 [DefaultDispatcher-worker-5 @call-handler#268] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-03-24 13:47:15.939 [DefaultDispatcher-worker-3 @coroutine#258] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36289/playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7 2026-03-24 13:47:15.941 [DefaultDispatcher-worker-3 @coroutine#258] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36289/playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7 2026-03-24 13:47:15.941 [DefaultDispatcher-worker-3 @coroutine#258] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36289/playlist/7994d19f-9e92-4a6f-bd71-e73f235d36e7