2026-05-12 01:21:17.372 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:17.458 [Test worker] INFO io.ktor.server.Application - Application started in 0.198 seconds. 2026-05-12 01:21:17.524 [DefaultDispatcher-worker-2 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41123 2026-05-12 01:21:18.228 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41123/resources/index.json 2026-05-12 01:21:18.229 [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:41123/resources/index.json. 2026-05-12 01:21:18.229 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41123/resources/index.json 2026-05-12 01:21:18.334 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 01:21:18.372 [DefaultDispatcher-worker-2 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 42ms 2026-05-12 01:21:18.374 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41123/resources/index.json 2026-05-12 01:21:18.376 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41123/resources/index.json 2026-05-12 01:21:18.376 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41123/resources/index.json 2026-05-12 01:21:18.393 [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:41123/resources/index.json. 2026-05-12 01:21:18.421 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41123/resources/index.json 2026-05-12 01:21:18.421 [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:41123/resources/index.json. 2026-05-12 01:21:18.421 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41123/resources/index.json 2026-05-12 01:21:18.424 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 01:21:18.425 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-12 01:21:18.426 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41123/resources/index.json 2026-05-12 01:21:18.426 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41123/resources/index.json 2026-05-12 01:21:18.426 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41123/resources/index.json 2026-05-12 01:21:20.438 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:20.439 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-12 01:21:20.440 [DefaultDispatcher-worker-1 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41273 2026-05-12 01:21:20.513 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41273/resources/index.json 2026-05-12 01:21:20.514 [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:41273/resources/index.json. 2026-05-12 01:21:20.514 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41273/resources/index.json 2026-05-12 01:21:20.521 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 01:21:20.522 [eventLoopGroupProxy-7-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 2ms 2026-05-12 01:21:20.528 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41273/resources/index.json 2026-05-12 01:21:20.529 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41273/resources/index.json 2026-05-12 01:21:20.529 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41273/resources/index.json 2026-05-12 01:21:20.530 [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:41273/resources/index.json. 2026-05-12 01:21:20.539 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41273/resources/index.json 2026-05-12 01:21:20.540 [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:41273/resources/index.json. 2026-05-12 01:21:20.540 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41273/resources/index.json 2026-05-12 01:21:20.542 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 01:21:20.542 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-12 01:21:20.543 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41273/resources/index.json 2026-05-12 01:21:20.543 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41273/resources/index.json 2026-05-12 01:21:20.543 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41273/resources/index.json 2026-05-12 01:21:22.549 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:22.550 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-12 01:21:22.551 [DefaultDispatcher-worker-4 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34129 2026-05-12 01:21:22.557 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34129/resources/lesson001.json 2026-05-12 01:21:22.557 [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:34129/resources/lesson001.json. 2026-05-12 01:21:22.557 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34129/resources/lesson001.json 2026-05-12 01:21:22.560 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 01:21:22.562 [DefaultDispatcher-worker-3 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-05-12 01:21:22.563 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34129/resources/lesson001.json 2026-05-12 01:21:22.563 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34129/resources/lesson001.json 2026-05-12 01:21:22.563 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34129/resources/lesson001.json 2026-05-12 01:21:22.566 [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:34129/resources/lesson001.json. 2026-05-12 01:21:24.882 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:24.889 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.123 seconds. 2026-05-12 01:21:24.891 [DefaultDispatcher-worker-5 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44047 2026-05-12 01:21:24.899 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44047/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:24.899 [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:44047/api/school/respect/schoolpermissiongrant. 2026-05-12 01:21:24.899 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44047/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:24.904 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 01:21:24.918 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44047/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:24.918 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44047/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:24.918 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44047/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:24.920 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44047/api/school/respect/schoolpermissiongrant. 2026-05-12 01:21:25.000 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.000 [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:44047/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:25.001 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.003 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:25.031 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.032 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.032 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.034 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44047/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:25.042 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.042 [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:44047/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:25.042 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.045 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:25.048 [DefaultDispatcher-worker-2 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 01:21:25.050 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.050 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:25.050 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44047/api/school/respect/person?includeRelated=false 2026-05-12 01:21:27.166 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:27.167 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-05-12 01:21:27.168 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34061 2026-05-12 01:21:27.169 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34061/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:27.169 [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:34061/api/school/respect/schoolpermissiongrant. 2026-05-12 01:21:27.169 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34061/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:27.172 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 01:21:27.174 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34061/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:27.174 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34061/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:27.174 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34061/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:27.175 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34061/api/school/respect/schoolpermissiongrant. 2026-05-12 01:21:27.223 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 01:21:27.223 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 01:21:27.223 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 01:21:27.225 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:27.228 [DefaultDispatcher-worker-2 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 01:21:27.228 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 01:21:27.228 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 01:21:27.229 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 01:21:29.346 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:29.347 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-05-12 01:21:29.349 [DefaultDispatcher-worker-5 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41055 2026-05-12 01:21:29.353 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41055/api/school/respect/person?includeRelated=false 2026-05-12 01:21:29.353 [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:41055/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:29.353 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41055/api/school/respect/person?includeRelated=false 2026-05-12 01:21:29.357 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:29.361 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41055/api/school/respect/person?includeRelated=false 2026-05-12 01:21:29.362 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41055/api/school/respect/person?includeRelated=false 2026-05-12 01:21:29.362 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41055/api/school/respect/person?includeRelated=false 2026-05-12 01:21:29.363 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41055/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:29.426 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41055/api/school/respect/person?since=2026-05-11T21%3A21%3A29.357942262Z&includeRelated=false 2026-05-12 01:21:29.427 [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:41055/api/school/respect/person?since=2026-05-11T21%3A21%3A29.357942262Z&includeRelated=false. 2026-05-12 01:21:29.427 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41055/api/school/respect/person?since=2026-05-11T21%3A21%3A29.357942262Z&includeRelated=false 2026-05-12 01:21:29.428 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:29.432 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41055/api/school/respect/person?since=2026-05-11T21%3A21%3A29.357942262Z&includeRelated=false 2026-05-12 01:21:29.432 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41055/api/school/respect/person?since=2026-05-11T21%3A21%3A29.357942262Z&includeRelated=false 2026-05-12 01:21:29.432 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41055/api/school/respect/person?since=2026-05-11T21%3A21%3A29.357942262Z&includeRelated=false 2026-05-12 01:21:29.433 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41055/api/school/respect/person?since=2026-05-11T21%3A21%3A29.357942262Z&includeRelated=false. 2026-05-12 01:21:31.572 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:31.573 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-05-12 01:21:31.574 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45563 2026-05-12 01:21:31.627 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45563/api/school/respect/person 2026-05-12 01:21:31.627 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@510bed3d for http://localhost:45563/api/school/respect/person 2026-05-12 01:21:31.627 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45563/api/school/respect/person 2026-05-12 01:21:31.627 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45563/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-12 01:21:31.631 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-05-12 01:21:31.637 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-12 01:21:31.639 [DefaultDispatcher-worker-2 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 01:21:31.640 [DefaultDispatcher-worker-3 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45563/api/school/respect/person 2026-05-12 01:21:31.640 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45563/api/school/respect/person 2026-05-12 01:21:31.640 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45563/api/school/respect/person 2026-05-12 01:21:33.760 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:33.761 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-05-12 01:21:33.763 [DefaultDispatcher-worker-1 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37625 2026-05-12 01:21:33.763 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37625/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:33.763 [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:37625/api/school/respect/schoolpermissiongrant. 2026-05-12 01:21:33.763 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37625/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:33.766 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 01:21:33.768 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37625/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:33.768 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37625/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:33.768 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37625/api/school/respect/schoolpermissiongrant 2026-05-12 01:21:33.769 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37625/api/school/respect/schoolpermissiongrant. 2026-05-12 01:21:33.812 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:33.813 [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:37625/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:33.813 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:33.814 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:33.822 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:33.822 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:33.822 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:33.823 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37625/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:35.835 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:35.835 [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:37625/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:35.836 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:35.840 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:35.853 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:35.853 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:35.854 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37625/api/school/respect/person?includeRelated=false 2026-05-12 01:21:35.856 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37625/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:38.073 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:38.076 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.053 seconds. 2026-05-12 01:21:38.081 [DefaultDispatcher-worker-1 @coroutine#212] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37239 2026-05-12 01:21:38.085 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37239/api/school/respect/person?includeRelated=false 2026-05-12 01:21:38.086 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:37239/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:38.086 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37239/api/school/respect/person?includeRelated=false 2026-05-12 01:21:38.092 [eventLoopGroupProxy-28-1 @call-handler#217] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:38.101 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37239/api/school/respect/person?includeRelated=false 2026-05-12 01:21:38.101 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37239/api/school/respect/person?includeRelated=false 2026-05-12 01:21:38.101 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37239/api/school/respect/person?includeRelated=false 2026-05-12 01:21:38.103 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37239/api/school/respect/person?includeRelated=false. 2026-05-12 01:21:38.186 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37239/api/school/respect/person?since=2026-05-11T21%3A21%3A38.093763840Z&includeRelated=false 2026-05-12 01:21:38.186 [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:37239/api/school/respect/person?since=2026-05-11T21%3A21%3A38.093763840Z&includeRelated=false. 2026-05-12 01:21:38.186 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37239/api/school/respect/person?since=2026-05-11T21%3A21%3A38.093763840Z&includeRelated=false 2026-05-12 01:21:38.192 [eventLoopGroupProxy-28-1 @call-handler#224] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 01:21:38.201 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37239/api/school/respect/person?since=2026-05-11T21%3A21%3A38.093763840Z&includeRelated=false 2026-05-12 01:21:38.201 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37239/api/school/respect/person?since=2026-05-11T21%3A21%3A38.093763840Z&includeRelated=false 2026-05-12 01:21:38.202 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37239/api/school/respect/person?since=2026-05-11T21%3A21%3A38.093763840Z&includeRelated=false 2026-05-12 01:21:38.203 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37239/api/school/respect/person?since=2026-05-11T21%3A21%3A38.093763840Z&includeRelated=false. 2026-05-12 01:21:40.382 [Test worker @coroutine#230] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:40.385 [Test worker @coroutine#230] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-05-12 01:21:40.394 [DefaultDispatcher-worker-5 @coroutine#240] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46329 2026-05-12 01:21:40.397 [Test worker @coroutine#230] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46329/playlist/40d5f490-5618-4727-8a3a-9ba874336ef8 2026-05-12 01:21:40.398 [Test worker @coroutine#230] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46329/playlist/40d5f490-5618-4727-8a3a-9ba874336ef8. 2026-05-12 01:21:40.398 [Test worker @coroutine#230] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46329/playlist/40d5f490-5618-4727-8a3a-9ba874336ef8 2026-05-12 01:21:40.408 [eventLoopGroupProxy-31-1 @call-handler#244] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 40d5f490-5618-4727-8a3a-9ba874336ef8] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[40d5f490-5618-4727-8a3a-9ba874336ef8]] @ /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=[40d5f490-5618-4727-8a3a-9ba874336ef8]] @ /playlist/{uuid}/(method:GET) 2026-05-12 01:21:40.429 [Test worker @coroutine#230] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46329/playlist/40d5f490-5618-4727-8a3a-9ba874336ef8 2026-05-12 01:21:40.430 [Test worker @coroutine#230] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46329/playlist/40d5f490-5618-4727-8a3a-9ba874336ef8 2026-05-12 01:21:40.430 [Test worker @coroutine#230] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46329/playlist/40d5f490-5618-4727-8a3a-9ba874336ef8 2026-05-12 01:21:40.431 [Test worker @coroutine#230] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:46329/playlist/40d5f490-5618-4727-8a3a-9ba874336ef8. 2026-05-12 01:21:42.666 [Test worker @coroutine#248] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 01:21:42.667 [Test worker @coroutine#248] INFO io.ktor.server.Application - Application started in 0.062 seconds. 2026-05-12 01:21:42.669 [DefaultDispatcher-worker-2 @coroutine#257] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38781 2026-05-12 01:21:42.719 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38781/playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 2026-05-12 01:21:42.719 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@520dcfa0 for http://localhost:38781/playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 2026-05-12 01:21:42.719 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38781/playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 2026-05-12 01:21:42.720 [DefaultDispatcher-worker-5 @coroutine#255] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38781/playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 from class io.ktor.http.content.TextContent 2026-05-12 01:21:42.722 [eventLoopGroupProxy-34-1 @call-handler#265] TRACE io.ktor.server.routing.Routing - Trace for [playlist, bffd3522-4039-4592-b0ed-9ef6e6fbf7b2] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[bffd3522-4039-4592-b0ed-9ef6e6fbf7b2]] @ /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=[bffd3522-4039-4592-b0ed-9ef6e6fbf7b2]] @ /playlist/{uuid}/(method:POST) 2026-05-12 01:21:42.722 [eventLoopGroupProxy-34-1 @call-handler#265] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(world.respect.lib.opds.model.OpdsFeed) for call /playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 2026-05-12 01:21:42.724 [DefaultDispatcher-worker-5 @call-handler#265] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 01:21:42.728 [DefaultDispatcher-worker-2 @coroutine#255] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38781/playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 2026-05-12 01:21:42.729 [DefaultDispatcher-worker-2 @coroutine#255] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38781/playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 2026-05-12 01:21:42.729 [DefaultDispatcher-worker-2 @coroutine#255] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38781/playlist/bffd3522-4039-4592-b0ed-9ef6e6fbf7b2 2026-05-12 09:34:36.940 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:37.044 [Test worker] INFO io.ktor.server.Application - Application started in 0.243 seconds. 2026-05-12 09:34:37.129 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40287 2026-05-12 09:34:37.895 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40287/resources/index.json 2026-05-12 09:34:37.896 [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:40287/resources/index.json. 2026-05-12 09:34:37.896 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40287/resources/index.json 2026-05-12 09:34:38.030 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 09:34:38.078 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 53ms 2026-05-12 09:34:38.083 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40287/resources/index.json 2026-05-12 09:34:38.085 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40287/resources/index.json 2026-05-12 09:34:38.085 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40287/resources/index.json 2026-05-12 09:34:38.106 [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:40287/resources/index.json. 2026-05-12 09:34:38.138 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40287/resources/index.json 2026-05-12 09:34:38.138 [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:40287/resources/index.json. 2026-05-12 09:34:38.138 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40287/resources/index.json 2026-05-12 09:34:38.141 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 09:34:38.143 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-05-12 09:34:38.144 [DefaultDispatcher-worker-3 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40287/resources/index.json 2026-05-12 09:34:38.144 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40287/resources/index.json 2026-05-12 09:34:38.144 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40287/resources/index.json 2026-05-12 09:34:40.164 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:40.165 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-12 09:34:40.168 [DefaultDispatcher-worker-3 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35673 2026-05-12 09:34:40.237 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35673/resources/index.json 2026-05-12 09:34:40.237 [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:35673/resources/index.json. 2026-05-12 09:34:40.237 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35673/resources/index.json 2026-05-12 09:34:40.241 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 09:34:40.242 [DefaultDispatcher-worker-3 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-12 09:34:40.244 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35673/resources/index.json 2026-05-12 09:34:40.244 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35673/resources/index.json 2026-05-12 09:34:40.244 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35673/resources/index.json 2026-05-12 09:34:40.245 [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:35673/resources/index.json. 2026-05-12 09:34:40.251 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35673/resources/index.json 2026-05-12 09:34:40.251 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35673/resources/index.json. 2026-05-12 09:34:40.251 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35673/resources/index.json 2026-05-12 09:34:40.253 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 09:34:40.254 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-12 09:34:40.255 [DefaultDispatcher-worker-4 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35673/resources/index.json 2026-05-12 09:34:40.255 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35673/resources/index.json 2026-05-12 09:34:40.255 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35673/resources/index.json 2026-05-12 09:34:42.269 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:42.270 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-12 09:34:42.273 [DefaultDispatcher-worker-4 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46321 2026-05-12 09:34:42.282 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46321/resources/lesson001.json 2026-05-12 09:34:42.282 [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:46321/resources/lesson001.json. 2026-05-12 09:34:42.282 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46321/resources/lesson001.json 2026-05-12 09:34:42.286 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 09:34:42.288 [DefaultDispatcher-worker-5 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-05-12 09:34:42.289 [DefaultDispatcher-worker-9 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46321/resources/lesson001.json 2026-05-12 09:34:42.289 [DefaultDispatcher-worker-9 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46321/resources/lesson001.json 2026-05-12 09:34:42.289 [DefaultDispatcher-worker-9 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46321/resources/lesson001.json 2026-05-12 09:34:42.293 [DefaultDispatcher-worker-9 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:46321/resources/lesson001.json. 2026-05-12 09:34:44.595 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:44.603 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.143 seconds. 2026-05-12 09:34:44.605 [DefaultDispatcher-worker-9 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42959 2026-05-12 09:34:44.616 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42959/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:44.616 [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:42959/api/school/respect/schoolpermissiongrant. 2026-05-12 09:34:44.616 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42959/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:44.622 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 09:34:44.638 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42959/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:44.639 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42959/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:44.639 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42959/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:44.641 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42959/api/school/respect/schoolpermissiongrant. 2026-05-12 09:34:44.731 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.732 [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:42959/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:44.732 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.736 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:44.766 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.767 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.767 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.768 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42959/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:44.776 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.777 [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:42959/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:44.777 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.779 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:44.783 [DefaultDispatcher-worker-6 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 09:34:44.786 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.786 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:44.786 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42959/api/school/respect/person?includeRelated=false 2026-05-12 09:34:46.906 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:46.908 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.041 seconds. 2026-05-12 09:34:46.909 [DefaultDispatcher-worker-6 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44231 2026-05-12 09:34:46.910 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44231/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:46.911 [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:44231/api/school/respect/schoolpermissiongrant. 2026-05-12 09:34:46.911 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44231/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:46.914 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 09:34:46.918 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44231/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:46.918 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44231/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:46.918 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44231/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:46.919 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44231/api/school/respect/schoolpermissiongrant. 2026-05-12 09:34:46.978 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44231/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 09:34:46.978 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:44231/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 09:34:46.978 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44231/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 09:34:46.980 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:46.984 [DefaultDispatcher-worker-6 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44231/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 09:34:46.984 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44231/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 09:34:46.984 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44231/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 09:34:46.986 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44231/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 09:34:49.165 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:49.167 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.054 seconds. 2026-05-12 09:34:49.170 [DefaultDispatcher-worker-5 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41115 2026-05-12 09:34:49.175 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41115/api/school/respect/person?includeRelated=false 2026-05-12 09:34:49.175 [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:41115/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:49.175 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41115/api/school/respect/person?includeRelated=false 2026-05-12 09:34:49.180 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:49.186 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41115/api/school/respect/person?includeRelated=false 2026-05-12 09:34:49.186 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41115/api/school/respect/person?includeRelated=false 2026-05-12 09:34:49.186 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41115/api/school/respect/person?includeRelated=false 2026-05-12 09:34:49.188 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41115/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:49.278 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41115/api/school/respect/person?since=2026-05-12T05%3A34%3A49.181876930Z&includeRelated=false 2026-05-12 09:34:49.278 [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:41115/api/school/respect/person?since=2026-05-12T05%3A34%3A49.181876930Z&includeRelated=false. 2026-05-12 09:34:49.278 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41115/api/school/respect/person?since=2026-05-12T05%3A34%3A49.181876930Z&includeRelated=false 2026-05-12 09:34:49.289 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:49.301 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41115/api/school/respect/person?since=2026-05-12T05%3A34%3A49.181876930Z&includeRelated=false 2026-05-12 09:34:49.302 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41115/api/school/respect/person?since=2026-05-12T05%3A34%3A49.181876930Z&includeRelated=false 2026-05-12 09:34:49.302 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41115/api/school/respect/person?since=2026-05-12T05%3A34%3A49.181876930Z&includeRelated=false 2026-05-12 09:34:49.303 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41115/api/school/respect/person?since=2026-05-12T05%3A34%3A49.181876930Z&includeRelated=false. 2026-05-12 09:34:51.502 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:51.505 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.066 seconds. 2026-05-12 09:34:51.513 [DefaultDispatcher-worker-5 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44035 2026-05-12 09:34:51.591 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44035/api/school/respect/person 2026-05-12 09:34:51.592 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@21d298e7 for http://localhost:44035/api/school/respect/person 2026-05-12 09:34:51.592 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44035/api/school/respect/person 2026-05-12 09:34:51.592 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:44035/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-12 09:34:51.597 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-05-12 09:34:51.606 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-12 09:34:51.609 [DefaultDispatcher-worker-4 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 09:34:51.610 [DefaultDispatcher-worker-6 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44035/api/school/respect/person 2026-05-12 09:34:51.610 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44035/api/school/respect/person 2026-05-12 09:34:51.610 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44035/api/school/respect/person 2026-05-12 09:34:53.795 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:53.796 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.056 seconds. 2026-05-12 09:34:53.798 [DefaultDispatcher-worker-4 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36459 2026-05-12 09:34:53.799 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36459/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:53.799 [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:36459/api/school/respect/schoolpermissiongrant. 2026-05-12 09:34:53.799 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36459/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:53.802 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 09:34:53.805 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36459/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:53.805 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36459/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:53.805 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36459/api/school/respect/schoolpermissiongrant 2026-05-12 09:34:53.806 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36459/api/school/respect/schoolpermissiongrant. 2026-05-12 09:34:53.857 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:53.857 [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:36459/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:53.857 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:53.866 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:53.883 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:53.884 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:53.884 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:53.885 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36459/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:55.894 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:55.894 [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:36459/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:55.894 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:55.896 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:55.902 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:55.902 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:55.902 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36459/api/school/respect/person?includeRelated=false 2026-05-12 09:34:55.904 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36459/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:58.083 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:34:58.084 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-12 09:34:58.091 [DefaultDispatcher-worker-9 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36507 2026-05-12 09:34:58.100 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36507/api/school/respect/person?includeRelated=false 2026-05-12 09:34:58.101 [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:36507/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:58.101 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36507/api/school/respect/person?includeRelated=false 2026-05-12 09:34:58.125 [eventLoopGroupProxy-28-1 @call-handler#218] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:58.132 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36507/api/school/respect/person?includeRelated=false 2026-05-12 09:34:58.133 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36507/api/school/respect/person?includeRelated=false 2026-05-12 09:34:58.133 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36507/api/school/respect/person?includeRelated=false 2026-05-12 09:34:58.134 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36507/api/school/respect/person?includeRelated=false. 2026-05-12 09:34:58.206 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36507/api/school/respect/person?since=2026-05-12T05%3A34%3A58.126403229Z&includeRelated=false 2026-05-12 09:34:58.206 [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:36507/api/school/respect/person?since=2026-05-12T05%3A34%3A58.126403229Z&includeRelated=false. 2026-05-12 09:34:58.206 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36507/api/school/respect/person?since=2026-05-12T05%3A34%3A58.126403229Z&includeRelated=false 2026-05-12 09:34:58.209 [eventLoopGroupProxy-28-1 @call-handler#225] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 09:34:58.213 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36507/api/school/respect/person?since=2026-05-12T05%3A34%3A58.126403229Z&includeRelated=false 2026-05-12 09:34:58.213 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36507/api/school/respect/person?since=2026-05-12T05%3A34%3A58.126403229Z&includeRelated=false 2026-05-12 09:34:58.213 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36507/api/school/respect/person?since=2026-05-12T05%3A34%3A58.126403229Z&includeRelated=false 2026-05-12 09:34:58.215 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36507/api/school/respect/person?since=2026-05-12T05%3A34%3A58.126403229Z&includeRelated=false. 2026-05-12 09:35:00.371 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:35:00.373 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.059 seconds. 2026-05-12 09:35:00.374 [DefaultDispatcher-worker-5 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37303 2026-05-12 09:35:00.377 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37303/playlist/9d202383-6639-4a3b-bd50-ea303c7496f7 2026-05-12 09:35:00.377 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:37303/playlist/9d202383-6639-4a3b-bd50-ea303c7496f7. 2026-05-12 09:35:00.377 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37303/playlist/9d202383-6639-4a3b-bd50-ea303c7496f7 2026-05-12 09:35:00.380 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 9d202383-6639-4a3b-bd50-ea303c7496f7] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[9d202383-6639-4a3b-bd50-ea303c7496f7]] @ /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=[9d202383-6639-4a3b-bd50-ea303c7496f7]] @ /playlist/{uuid}/(method:GET) 2026-05-12 09:35:00.388 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37303/playlist/9d202383-6639-4a3b-bd50-ea303c7496f7 2026-05-12 09:35:00.388 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37303/playlist/9d202383-6639-4a3b-bd50-ea303c7496f7 2026-05-12 09:35:00.388 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37303/playlist/9d202383-6639-4a3b-bd50-ea303c7496f7 2026-05-12 09:35:00.389 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:37303/playlist/9d202383-6639-4a3b-bd50-ea303c7496f7. 2026-05-12 09:35:02.561 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 09:35:02.562 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-05-12 09:35:02.562 [DefaultDispatcher-worker-6 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42911 2026-05-12 09:35:02.603 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42911/playlist/31212f2a-7b1a-498d-badb-8d16f6347986 2026-05-12 09:35:02.603 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@36aa57cc for http://localhost:42911/playlist/31212f2a-7b1a-498d-badb-8d16f6347986 2026-05-12 09:35:02.603 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42911/playlist/31212f2a-7b1a-498d-badb-8d16f6347986 2026-05-12 09:35:02.603 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42911/playlist/31212f2a-7b1a-498d-badb-8d16f6347986 from class io.ktor.http.content.TextContent 2026-05-12 09:35:02.605 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 31212f2a-7b1a-498d-badb-8d16f6347986] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[31212f2a-7b1a-498d-badb-8d16f6347986]] @ /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=[31212f2a-7b1a-498d-badb-8d16f6347986]] @ /playlist/{uuid}/(method:POST) 2026-05-12 09:35:02.606 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(world.respect.lib.opds.model.OpdsFeed) for call /playlist/31212f2a-7b1a-498d-badb-8d16f6347986 2026-05-12 09:35:02.607 [DefaultDispatcher-worker-6 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/31212f2a-7b1a-498d-badb-8d16f6347986 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 09:35:02.608 [DefaultDispatcher-worker-6 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42911/playlist/31212f2a-7b1a-498d-badb-8d16f6347986 2026-05-12 09:35:02.608 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42911/playlist/31212f2a-7b1a-498d-badb-8d16f6347986 2026-05-12 09:35:02.608 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42911/playlist/31212f2a-7b1a-498d-badb-8d16f6347986 2026-05-12 11:25:29.622 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:29.723 [Test worker] INFO io.ktor.server.Application - Application started in 0.232 seconds. 2026-05-12 11:25:29.812 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35197 2026-05-12 11:25:30.625 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35197/resources/index.json 2026-05-12 11:25:30.626 [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:35197/resources/index.json. 2026-05-12 11:25:30.626 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35197/resources/index.json 2026-05-12 11:25:30.773 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:25:30.828 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 60ms 2026-05-12 11:25:30.835 [DefaultDispatcher-worker-5 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35197/resources/index.json 2026-05-12 11:25:30.838 [DefaultDispatcher-worker-5 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35197/resources/index.json 2026-05-12 11:25:30.838 [DefaultDispatcher-worker-5 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35197/resources/index.json 2026-05-12 11:25:30.863 [DefaultDispatcher-worker-5 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:35197/resources/index.json. 2026-05-12 11:25:30.895 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35197/resources/index.json 2026-05-12 11:25:30.895 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35197/resources/index.json. 2026-05-12 11:25:30.895 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35197/resources/index.json 2026-05-12 11:25:30.898 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:25:30.900 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-12 11:25:30.902 [DefaultDispatcher-worker-5 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35197/resources/index.json 2026-05-12 11:25:30.902 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35197/resources/index.json 2026-05-12 11:25:30.902 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35197/resources/index.json 2026-05-12 11:25:32.920 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:32.921 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-12 11:25:32.923 [DefaultDispatcher-worker-5 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35127 2026-05-12 11:25:32.995 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35127/resources/index.json 2026-05-12 11:25:32.995 [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:35127/resources/index.json. 2026-05-12 11:25:32.995 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35127/resources/index.json 2026-05-12 11:25:33.000 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:25:33.001 [DefaultDispatcher-worker-4 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-12 11:25:33.002 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35127/resources/index.json 2026-05-12 11:25:33.002 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35127/resources/index.json 2026-05-12 11:25:33.002 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35127/resources/index.json 2026-05-12 11:25:33.003 [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:35127/resources/index.json. 2026-05-12 11:25:33.009 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35127/resources/index.json 2026-05-12 11:25:33.010 [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:35127/resources/index.json. 2026-05-12 11:25:33.010 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35127/resources/index.json 2026-05-12 11:25:33.011 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:25:33.012 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-12 11:25:33.013 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35127/resources/index.json 2026-05-12 11:25:33.013 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35127/resources/index.json 2026-05-12 11:25:33.013 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35127/resources/index.json 2026-05-12 11:25:35.032 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:35.032 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-12 11:25:35.034 [DefaultDispatcher-worker-3 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35245 2026-05-12 11:25:35.040 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35245/resources/lesson001.json 2026-05-12 11:25:35.040 [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:35245/resources/lesson001.json. 2026-05-12 11:25:35.040 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35245/resources/lesson001.json 2026-05-12 11:25:35.043 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:25:35.045 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-05-12 11:25:35.046 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35245/resources/lesson001.json 2026-05-12 11:25:35.046 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35245/resources/lesson001.json 2026-05-12 11:25:35.046 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35245/resources/lesson001.json 2026-05-12 11:25:35.049 [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:35245/resources/lesson001.json. 2026-05-12 11:25:37.550 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:37.586 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.332 seconds. 2026-05-12 11:25:37.601 [DefaultDispatcher-worker-5 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46569 2026-05-12 11:25:37.611 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46569/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:37.611 [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:46569/api/school/respect/schoolpermissiongrant. 2026-05-12 11:25:37.611 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46569/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:37.633 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:25:37.679 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46569/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:37.680 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46569/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:37.680 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46569/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:37.687 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46569/api/school/respect/schoolpermissiongrant. 2026-05-12 11:25:37.812 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.812 [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:46569/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:37.812 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.815 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:37.843 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.843 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.843 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.845 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46569/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:37.858 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.858 [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:46569/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:37.858 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.861 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:37.863 [DefaultDispatcher-worker-1 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 11:25:37.865 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.866 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:37.866 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46569/api/school/respect/person?includeRelated=false 2026-05-12 11:25:40.020 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:40.021 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-12 11:25:40.023 [DefaultDispatcher-worker-7 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42041 2026-05-12 11:25:40.024 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42041/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:40.024 [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:42041/api/school/respect/schoolpermissiongrant. 2026-05-12 11:25:40.024 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42041/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:40.028 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:25:40.031 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42041/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:40.032 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42041/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:40.032 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42041/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:40.032 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42041/api/school/respect/schoolpermissiongrant. 2026-05-12 11:25:40.085 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42041/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:25:40.086 [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:42041/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 11:25:40.086 [DefaultDispatcher-worker-7 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42041/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:25:40.088 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:40.092 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42041/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:25:40.092 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42041/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:25:40.092 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42041/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:25:40.094 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42041/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 11:25:42.247 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:42.249 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-05-12 11:25:42.256 [DefaultDispatcher-worker-5 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40431 2026-05-12 11:25:42.262 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40431/api/school/respect/person?includeRelated=false 2026-05-12 11:25:42.262 [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:40431/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:42.262 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40431/api/school/respect/person?includeRelated=false 2026-05-12 11:25:42.269 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:42.280 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40431/api/school/respect/person?includeRelated=false 2026-05-12 11:25:42.281 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40431/api/school/respect/person?includeRelated=false 2026-05-12 11:25:42.281 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40431/api/school/respect/person?includeRelated=false 2026-05-12 11:25:42.283 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40431/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:42.411 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40431/api/school/respect/person?since=2026-05-12T07%3A25%3A42.270218506Z&includeRelated=false 2026-05-12 11:25:42.411 [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:40431/api/school/respect/person?since=2026-05-12T07%3A25%3A42.270218506Z&includeRelated=false. 2026-05-12 11:25:42.411 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40431/api/school/respect/person?since=2026-05-12T07%3A25%3A42.270218506Z&includeRelated=false 2026-05-12 11:25:42.415 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:42.431 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40431/api/school/respect/person?since=2026-05-12T07%3A25%3A42.270218506Z&includeRelated=false 2026-05-12 11:25:42.432 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40431/api/school/respect/person?since=2026-05-12T07%3A25%3A42.270218506Z&includeRelated=false 2026-05-12 11:25:42.432 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40431/api/school/respect/person?since=2026-05-12T07%3A25%3A42.270218506Z&includeRelated=false 2026-05-12 11:25:42.433 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40431/api/school/respect/person?since=2026-05-12T07%3A25%3A42.270218506Z&includeRelated=false. 2026-05-12 11:25:44.556 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:44.557 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-05-12 11:25:44.559 [DefaultDispatcher-worker-6 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44593 2026-05-12 11:25:44.619 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44593/api/school/respect/person 2026-05-12 11:25:44.620 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@6d42388b for http://localhost:44593/api/school/respect/person 2026-05-12 11:25:44.620 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44593/api/school/respect/person 2026-05-12 11:25:44.621 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:44593/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-12 11:25:44.638 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-05-12 11:25:44.673 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-12 11:25:44.677 [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-05-12 11:25:44.692 [DefaultDispatcher-worker-2 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44593/api/school/respect/person 2026-05-12 11:25:44.693 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44593/api/school/respect/person 2026-05-12 11:25:44.694 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44593/api/school/respect/person 2026-05-12 11:25:46.888 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:46.893 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.062 seconds. 2026-05-12 11:25:46.898 [DefaultDispatcher-worker-5 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39445 2026-05-12 11:25:46.903 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39445/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:46.903 [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:39445/api/school/respect/schoolpermissiongrant. 2026-05-12 11:25:46.903 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39445/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:46.933 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:25:46.939 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39445/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:46.940 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39445/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:46.941 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39445/api/school/respect/schoolpermissiongrant 2026-05-12 11:25:46.945 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39445/api/school/respect/schoolpermissiongrant. 2026-05-12 11:25:47.006 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:47.007 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39445/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:47.007 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:47.011 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:47.038 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:47.038 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:47.039 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:47.040 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39445/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:49.051 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:49.052 [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:39445/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:49.052 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:49.054 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:49.060 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:49.060 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:49.060 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39445/api/school/respect/person?includeRelated=false 2026-05-12 11:25:49.061 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39445/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:51.183 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:51.184 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-12 11:25:51.185 [DefaultDispatcher-worker-2 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39405 2026-05-12 11:25:51.189 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39405/api/school/respect/person?includeRelated=false 2026-05-12 11:25:51.189 [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:39405/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:51.189 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39405/api/school/respect/person?includeRelated=false 2026-05-12 11:25:51.192 [eventLoopGroupProxy-28-1 @call-handler#218] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:51.196 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39405/api/school/respect/person?includeRelated=false 2026-05-12 11:25:51.196 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39405/api/school/respect/person?includeRelated=false 2026-05-12 11:25:51.196 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39405/api/school/respect/person?includeRelated=false 2026-05-12 11:25:51.197 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39405/api/school/respect/person?includeRelated=false. 2026-05-12 11:25:51.242 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39405/api/school/respect/person?since=2026-05-12T07%3A25%3A51.192568062Z&includeRelated=false 2026-05-12 11:25:51.242 [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:39405/api/school/respect/person?since=2026-05-12T07%3A25%3A51.192568062Z&includeRelated=false. 2026-05-12 11:25:51.242 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39405/api/school/respect/person?since=2026-05-12T07%3A25%3A51.192568062Z&includeRelated=false 2026-05-12 11:25:51.243 [eventLoopGroupProxy-28-1 @call-handler#225] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:25:51.245 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39405/api/school/respect/person?since=2026-05-12T07%3A25%3A51.192568062Z&includeRelated=false 2026-05-12 11:25:51.246 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39405/api/school/respect/person?since=2026-05-12T07%3A25%3A51.192568062Z&includeRelated=false 2026-05-12 11:25:51.246 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39405/api/school/respect/person?since=2026-05-12T07%3A25%3A51.192568062Z&includeRelated=false 2026-05-12 11:25:51.246 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39405/api/school/respect/person?since=2026-05-12T07%3A25%3A51.192568062Z&includeRelated=false. 2026-05-12 11:25:53.415 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:25:53.417 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.062 seconds. 2026-05-12 11:25:53.418 [DefaultDispatcher-worker-7 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35583 2026-05-12 11:25:53.419 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35583/playlist/bbbb121e-04cc-4ed3-a796-dfe0032a6c19 2026-05-12 11:25:53.419 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:35583/playlist/bbbb121e-04cc-4ed3-a796-dfe0032a6c19. 2026-05-12 11:25:53.419 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35583/playlist/bbbb121e-04cc-4ed3-a796-dfe0032a6c19 2026-05-12 11:25:53.422 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, bbbb121e-04cc-4ed3-a796-dfe0032a6c19] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[bbbb121e-04cc-4ed3-a796-dfe0032a6c19]] @ /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=[bbbb121e-04cc-4ed3-a796-dfe0032a6c19]] @ /playlist/{uuid}/(method:GET) 2026-05-12 11:25:53.428 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35583/playlist/bbbb121e-04cc-4ed3-a796-dfe0032a6c19 2026-05-12 11:25:53.428 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35583/playlist/bbbb121e-04cc-4ed3-a796-dfe0032a6c19 2026-05-12 11:25:53.428 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35583/playlist/bbbb121e-04cc-4ed3-a796-dfe0032a6c19 2026-05-12 11:25:53.428 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:35583/playlist/bbbb121e-04cc-4ed3-a796-dfe0032a6c19. 2026-05-12 11:27:45.964 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:27:46.099 [Test worker] INFO io.ktor.server.Application - Application started in 0.338 seconds. 2026-05-12 11:27:46.212 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:32991 2026-05-12 11:27:47.272 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32991/resources/index.json 2026-05-12 11:27:47.273 [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:32991/resources/index.json. 2026-05-12 11:27:47.273 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32991/resources/index.json 2026-05-12 11:27:47.475 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:27:47.568 [DefaultDispatcher-worker-2 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 98ms 2026-05-12 11:27:47.569 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32991/resources/index.json 2026-05-12 11:27:47.572 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32991/resources/index.json 2026-05-12 11:27:47.572 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32991/resources/index.json 2026-05-12 11:27:47.600 [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:32991/resources/index.json. 2026-05-12 11:27:47.647 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32991/resources/index.json 2026-05-12 11:27:47.647 [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:32991/resources/index.json. 2026-05-12 11:27:47.647 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32991/resources/index.json 2026-05-12 11:27:47.652 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:27:47.655 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-05-12 11:27:47.656 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32991/resources/index.json 2026-05-12 11:27:47.656 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32991/resources/index.json 2026-05-12 11:27:47.656 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32991/resources/index.json 2026-05-12 11:27:49.690 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:27:49.690 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-12 11:27:49.694 [DefaultDispatcher-worker-1 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38489 2026-05-12 11:27:49.762 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38489/resources/index.json 2026-05-12 11:27:49.763 [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:38489/resources/index.json. 2026-05-12 11:27:49.763 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38489/resources/index.json 2026-05-12 11:27:49.769 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:27:49.773 [DefaultDispatcher-worker-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 4ms 2026-05-12 11:27:49.775 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38489/resources/index.json 2026-05-12 11:27:49.775 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38489/resources/index.json 2026-05-12 11:27:49.775 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38489/resources/index.json 2026-05-12 11:27:49.776 [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:38489/resources/index.json. 2026-05-12 11:27:49.783 [Test worker @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38489/resources/index.json 2026-05-12 11:27:49.783 [Test worker @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:38489/resources/index.json. 2026-05-12 11:27:49.783 [Test worker @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38489/resources/index.json 2026-05-12 11:27:49.785 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:27:49.787 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-05-12 11:27:49.790 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38489/resources/index.json 2026-05-12 11:27:49.790 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38489/resources/index.json 2026-05-12 11:27:49.790 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38489/resources/index.json 2026-05-12 11:27:51.813 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:27:51.815 [Test worker] INFO io.ktor.server.Application - Application started in 0.002 seconds. 2026-05-12 11:27:51.827 [DefaultDispatcher-worker-1 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41271 2026-05-12 11:27:51.848 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41271/resources/lesson001.json 2026-05-12 11:27:51.848 [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:41271/resources/lesson001.json. 2026-05-12 11:27:51.848 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41271/resources/lesson001.json 2026-05-12 11:27:51.864 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:27:51.867 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 4ms 2026-05-12 11:27:51.869 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41271/resources/lesson001.json 2026-05-12 11:27:51.869 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41271/resources/lesson001.json 2026-05-12 11:27:51.869 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41271/resources/lesson001.json 2026-05-12 11:27:51.874 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:41271/resources/lesson001.json. 2026-05-12 11:27:54.176 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:27:54.183 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.1 seconds. 2026-05-12 11:27:54.186 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35167 2026-05-12 11:27:54.193 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35167/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:54.193 [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:35167/api/school/respect/schoolpermissiongrant. 2026-05-12 11:27:54.193 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35167/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:54.197 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:27:54.211 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35167/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:54.212 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35167/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:54.212 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35167/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:54.214 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35167/api/school/respect/schoolpermissiongrant. 2026-05-12 11:27:54.275 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.276 [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:35167/api/school/respect/person?includeRelated=false. 2026-05-12 11:27:54.276 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.277 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:27:54.294 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.294 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.294 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.295 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35167/api/school/respect/person?includeRelated=false. 2026-05-12 11:27:54.300 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.301 [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:35167/api/school/respect/person?includeRelated=false. 2026-05-12 11:27:54.301 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.302 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:27:54.304 [DefaultDispatcher-worker-1 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 11:27:54.305 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.305 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:54.305 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35167/api/school/respect/person?includeRelated=false 2026-05-12 11:27:56.413 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:27:56.414 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.04 seconds. 2026-05-12 11:27:56.415 [DefaultDispatcher-worker-3 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:32971 2026-05-12 11:27:56.416 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32971/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:56.417 [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:32971/api/school/respect/schoolpermissiongrant. 2026-05-12 11:27:56.417 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32971/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:56.419 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:27:56.421 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32971/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:56.421 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32971/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:56.421 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32971/api/school/respect/schoolpermissiongrant 2026-05-12 11:27:56.421 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:32971/api/school/respect/schoolpermissiongrant. 2026-05-12 11:27:56.468 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32971/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:27:56.469 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:32971/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 11:27:56.469 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32971/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:27:56.471 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:27:56.474 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32971/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:27:56.474 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32971/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:27:56.474 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32971/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:27:56.475 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:32971/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 11:27:58.611 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:27:58.612 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.041 seconds. 2026-05-12 11:27:58.614 [DefaultDispatcher-worker-3 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42881 2026-05-12 11:27:58.617 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42881/api/school/respect/person?includeRelated=false 2026-05-12 11:27:58.618 [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:42881/api/school/respect/person?includeRelated=false. 2026-05-12 11:27:58.618 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42881/api/school/respect/person?includeRelated=false 2026-05-12 11:27:58.624 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:27:58.640 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42881/api/school/respect/person?includeRelated=false 2026-05-12 11:27:58.641 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42881/api/school/respect/person?includeRelated=false 2026-05-12 11:27:58.641 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42881/api/school/respect/person?includeRelated=false 2026-05-12 11:27:58.645 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42881/api/school/respect/person?includeRelated=false. 2026-05-12 11:27:58.718 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42881/api/school/respect/person?since=2026-05-12T07%3A27%3A58.625579889Z&includeRelated=false 2026-05-12 11:27:58.719 [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:42881/api/school/respect/person?since=2026-05-12T07%3A27%3A58.625579889Z&includeRelated=false. 2026-05-12 11:27:58.719 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42881/api/school/respect/person?since=2026-05-12T07%3A27%3A58.625579889Z&includeRelated=false 2026-05-12 11:27:58.722 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:27:58.728 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42881/api/school/respect/person?since=2026-05-12T07%3A27%3A58.625579889Z&includeRelated=false 2026-05-12 11:27:58.728 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42881/api/school/respect/person?since=2026-05-12T07%3A27%3A58.625579889Z&includeRelated=false 2026-05-12 11:27:58.728 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42881/api/school/respect/person?since=2026-05-12T07%3A27%3A58.625579889Z&includeRelated=false 2026-05-12 11:27:58.729 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42881/api/school/respect/person?since=2026-05-12T07%3A27%3A58.625579889Z&includeRelated=false. 2026-05-12 11:28:00.886 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:28:00.895 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.083 seconds. 2026-05-12 11:28:00.902 [DefaultDispatcher-worker-8 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34197 2026-05-12 11:28:00.959 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34197/api/school/respect/person 2026-05-12 11:28:00.960 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@6e1df377 for http://localhost:34197/api/school/respect/person 2026-05-12 11:28:00.960 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34197/api/school/respect/person 2026-05-12 11:28:00.961 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:34197/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-12 11:28:00.979 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-05-12 11:28:01.001 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-12 11:28:01.003 [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-05-12 11:28:01.004 [DefaultDispatcher-worker-5 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34197/api/school/respect/person 2026-05-12 11:28:01.004 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34197/api/school/respect/person 2026-05-12 11:28:01.004 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34197/api/school/respect/person 2026-05-12 11:28:03.147 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:28:03.148 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-12 11:28:03.150 [DefaultDispatcher-worker-5 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44717 2026-05-12 11:28:03.150 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44717/api/school/respect/schoolpermissiongrant 2026-05-12 11:28:03.151 [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:44717/api/school/respect/schoolpermissiongrant. 2026-05-12 11:28:03.151 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44717/api/school/respect/schoolpermissiongrant 2026-05-12 11:28:03.153 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:28:03.155 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44717/api/school/respect/schoolpermissiongrant 2026-05-12 11:28:03.155 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44717/api/school/respect/schoolpermissiongrant 2026-05-12 11:28:03.155 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44717/api/school/respect/schoolpermissiongrant 2026-05-12 11:28:03.155 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44717/api/school/respect/schoolpermissiongrant. 2026-05-12 11:28:03.196 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:03.197 [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:44717/api/school/respect/person?includeRelated=false. 2026-05-12 11:28:03.197 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:03.198 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:28:03.203 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:03.204 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:03.204 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:03.205 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44717/api/school/respect/person?includeRelated=false. 2026-05-12 11:28:05.210 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:05.210 [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:44717/api/school/respect/person?includeRelated=false. 2026-05-12 11:28:05.210 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:05.211 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:28:05.214 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:05.215 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:05.215 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44717/api/school/respect/person?includeRelated=false 2026-05-12 11:28:05.215 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44717/api/school/respect/person?includeRelated=false. 2026-05-12 11:28:07.462 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:28:07.463 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.107 seconds. 2026-05-12 11:28:07.464 [DefaultDispatcher-worker-7 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46663 2026-05-12 11:28:07.466 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46663/api/school/respect/person?includeRelated=false 2026-05-12 11:28:07.467 [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:46663/api/school/respect/person?includeRelated=false. 2026-05-12 11:28:07.467 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46663/api/school/respect/person?includeRelated=false 2026-05-12 11:28:07.469 [eventLoopGroupProxy-28-1 @call-handler#218] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:28:07.473 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46663/api/school/respect/person?includeRelated=false 2026-05-12 11:28:07.473 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46663/api/school/respect/person?includeRelated=false 2026-05-12 11:28:07.473 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46663/api/school/respect/person?includeRelated=false 2026-05-12 11:28:07.474 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46663/api/school/respect/person?includeRelated=false. 2026-05-12 11:28:07.611 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46663/api/school/respect/person?since=2026-05-12T07%3A28%3A07.469839344Z&includeRelated=false 2026-05-12 11:28:07.611 [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:46663/api/school/respect/person?since=2026-05-12T07%3A28%3A07.469839344Z&includeRelated=false. 2026-05-12 11:28:07.611 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46663/api/school/respect/person?since=2026-05-12T07%3A28%3A07.469839344Z&includeRelated=false 2026-05-12 11:28:07.613 [eventLoopGroupProxy-28-1 @call-handler#225] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:28:07.616 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46663/api/school/respect/person?since=2026-05-12T07%3A28%3A07.469839344Z&includeRelated=false 2026-05-12 11:28:07.616 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46663/api/school/respect/person?since=2026-05-12T07%3A28%3A07.469839344Z&includeRelated=false 2026-05-12 11:28:07.616 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46663/api/school/respect/person?since=2026-05-12T07%3A28%3A07.469839344Z&includeRelated=false 2026-05-12 11:28:07.617 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46663/api/school/respect/person?since=2026-05-12T07%3A28%3A07.469839344Z&includeRelated=false. 2026-05-12 11:28:09.739 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:28:09.741 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.051 seconds. 2026-05-12 11:28:09.742 [DefaultDispatcher-worker-5 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40723 2026-05-12 11:28:09.745 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40723/playlist/a1620ee8-5edc-4126-a186-a7ad79a9843d 2026-05-12 11:28:09.745 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40723/playlist/a1620ee8-5edc-4126-a186-a7ad79a9843d. 2026-05-12 11:28:09.745 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40723/playlist/a1620ee8-5edc-4126-a186-a7ad79a9843d 2026-05-12 11:28:09.748 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, a1620ee8-5edc-4126-a186-a7ad79a9843d] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[a1620ee8-5edc-4126-a186-a7ad79a9843d]] @ /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=[a1620ee8-5edc-4126-a186-a7ad79a9843d]] @ /playlist/{uuid}/(method:GET) 2026-05-12 11:28:09.755 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40723/playlist/a1620ee8-5edc-4126-a186-a7ad79a9843d 2026-05-12 11:28:09.755 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40723/playlist/a1620ee8-5edc-4126-a186-a7ad79a9843d 2026-05-12 11:28:09.755 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40723/playlist/a1620ee8-5edc-4126-a186-a7ad79a9843d 2026-05-12 11:28:09.756 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:40723/playlist/a1620ee8-5edc-4126-a186-a7ad79a9843d. 2026-05-12 11:28:11.966 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:28:11.967 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.053 seconds. 2026-05-12 11:28:11.972 [DefaultDispatcher-worker-5 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33115 2026-05-12 11:28:12.024 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33115/playlist/6131ae26-5663-4497-b369-851685ffe370 2026-05-12 11:28:12.024 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5ae6094d for http://localhost:33115/playlist/6131ae26-5663-4497-b369-851685ffe370 2026-05-12 11:28:12.025 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33115/playlist/6131ae26-5663-4497-b369-851685ffe370 2026-05-12 11:28:12.025 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33115/playlist/6131ae26-5663-4497-b369-851685ffe370 from class io.ktor.http.content.TextContent 2026-05-12 11:28:12.039 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 6131ae26-5663-4497-b369-851685ffe370] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[6131ae26-5663-4497-b369-851685ffe370]] @ /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=[6131ae26-5663-4497-b369-851685ffe370]] @ /playlist/{uuid}/(method:POST) 2026-05-12 11:28:12.040 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(world.respect.lib.opds.model.OpdsFeed) for call /playlist/6131ae26-5663-4497-b369-851685ffe370 2026-05-12 11:28:12.045 [DefaultDispatcher-worker-9 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/6131ae26-5663-4497-b369-851685ffe370 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 11:28:12.047 [DefaultDispatcher-worker-9 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33115/playlist/6131ae26-5663-4497-b369-851685ffe370 2026-05-12 11:28:12.048 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33115/playlist/6131ae26-5663-4497-b369-851685ffe370 2026-05-12 11:28:12.048 [DefaultDispatcher-worker-9 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33115/playlist/6131ae26-5663-4497-b369-851685ffe370 2026-05-12 11:54:52.809 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:54:52.900 [Test worker] INFO io.ktor.server.Application - Application started in 0.224 seconds. 2026-05-12 11:54:52.991 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44607 2026-05-12 11:54:53.765 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44607/resources/index.json 2026-05-12 11:54:53.766 [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:44607/resources/index.json. 2026-05-12 11:54:53.766 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44607/resources/index.json 2026-05-12 11:54:53.936 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:54:53.985 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 55ms 2026-05-12 11:54:53.992 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44607/resources/index.json 2026-05-12 11:54:53.994 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44607/resources/index.json 2026-05-12 11:54:53.995 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44607/resources/index.json 2026-05-12 11:54:54.016 [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:44607/resources/index.json. 2026-05-12 11:54:54.053 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44607/resources/index.json 2026-05-12 11:54:54.053 [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:44607/resources/index.json. 2026-05-12 11:54:54.053 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44607/resources/index.json 2026-05-12 11:54:54.057 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:54:54.059 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-05-12 11:54:54.060 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44607/resources/index.json 2026-05-12 11:54:54.060 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44607/resources/index.json 2026-05-12 11:54:54.060 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44607/resources/index.json 2026-05-12 11:54:56.082 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:54:56.082 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-12 11:54:56.084 [DefaultDispatcher-worker-1 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39533 2026-05-12 11:54:56.135 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39533/resources/index.json 2026-05-12 11:54:56.136 [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:39533/resources/index.json. 2026-05-12 11:54:56.136 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39533/resources/index.json 2026-05-12 11:54:56.139 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:54:56.140 [DefaultDispatcher-worker-3 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-12 11:54:56.142 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39533/resources/index.json 2026-05-12 11:54:56.142 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39533/resources/index.json 2026-05-12 11:54:56.142 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39533/resources/index.json 2026-05-12 11:54:56.143 [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:39533/resources/index.json. 2026-05-12 11:54:56.149 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39533/resources/index.json 2026-05-12 11:54:56.150 [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:39533/resources/index.json. 2026-05-12 11:54:56.150 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39533/resources/index.json 2026-05-12 11:54:56.151 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:54:56.152 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-12 11:54:56.153 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39533/resources/index.json 2026-05-12 11:54:56.153 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39533/resources/index.json 2026-05-12 11:54:56.153 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39533/resources/index.json 2026-05-12 11:54:58.173 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:54:58.174 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-12 11:54:58.176 [DefaultDispatcher-worker-4 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44067 2026-05-12 11:54:58.190 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44067/resources/lesson001.json 2026-05-12 11:54:58.191 [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:44067/resources/lesson001.json. 2026-05-12 11:54:58.191 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44067/resources/lesson001.json 2026-05-12 11:54:58.202 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 11:54:58.204 [DefaultDispatcher-worker-3 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 2ms 2026-05-12 11:54:58.211 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44067/resources/lesson001.json 2026-05-12 11:54:58.211 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44067/resources/lesson001.json 2026-05-12 11:54:58.211 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44067/resources/lesson001.json 2026-05-12 11:54:58.215 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:44067/resources/lesson001.json. 2026-05-12 11:55:00.536 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:00.545 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.135 seconds. 2026-05-12 11:55:00.548 [DefaultDispatcher-worker-9 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45881 2026-05-12 11:55:00.561 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45881/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:00.561 [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:45881/api/school/respect/schoolpermissiongrant. 2026-05-12 11:55:00.561 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45881/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:00.572 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:55:00.592 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45881/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:00.593 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45881/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:00.593 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45881/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:00.595 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45881/api/school/respect/schoolpermissiongrant. 2026-05-12 11:55:00.687 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.690 [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:45881/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:00.691 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.695 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:00.717 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.717 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.717 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.719 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45881/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:00.727 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.728 [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:45881/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:00.728 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.731 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:00.734 [DefaultDispatcher-worker-8 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 11:55:00.736 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.736 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:00.736 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45881/api/school/respect/person?includeRelated=false 2026-05-12 11:55:02.919 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:02.920 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-05-12 11:55:02.921 [DefaultDispatcher-worker-10 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38369 2026-05-12 11:55:02.922 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38369/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:02.923 [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:38369/api/school/respect/schoolpermissiongrant. 2026-05-12 11:55:02.923 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38369/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:02.925 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:55:02.927 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38369/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:02.927 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38369/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:02.927 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38369/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:02.927 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38369/api/school/respect/schoolpermissiongrant. 2026-05-12 11:55:02.978 [DefaultDispatcher-worker-8 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38369/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:55:02.978 [DefaultDispatcher-worker-8 @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:38369/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 11:55:02.978 [DefaultDispatcher-worker-8 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38369/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:55:02.980 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:02.984 [DefaultDispatcher-worker-10 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38369/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:55:02.984 [DefaultDispatcher-worker-10 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38369/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:55:02.984 [DefaultDispatcher-worker-10 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38369/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 11:55:02.985 [DefaultDispatcher-worker-10 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38369/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 11:55:05.155 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:05.156 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.067 seconds. 2026-05-12 11:55:05.167 [DefaultDispatcher-worker-10 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33629 2026-05-12 11:55:05.182 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33629/api/school/respect/person?includeRelated=false 2026-05-12 11:55:05.183 [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:33629/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:05.183 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33629/api/school/respect/person?includeRelated=false 2026-05-12 11:55:05.198 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:05.208 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33629/api/school/respect/person?includeRelated=false 2026-05-12 11:55:05.209 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33629/api/school/respect/person?includeRelated=false 2026-05-12 11:55:05.209 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33629/api/school/respect/person?includeRelated=false 2026-05-12 11:55:05.211 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33629/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:05.318 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33629/api/school/respect/person?since=2026-05-12T07%3A55%3A05.198895571Z&includeRelated=false 2026-05-12 11:55:05.319 [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:33629/api/school/respect/person?since=2026-05-12T07%3A55%3A05.198895571Z&includeRelated=false. 2026-05-12 11:55:05.319 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33629/api/school/respect/person?since=2026-05-12T07%3A55%3A05.198895571Z&includeRelated=false 2026-05-12 11:55:05.323 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:05.331 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33629/api/school/respect/person?since=2026-05-12T07%3A55%3A05.198895571Z&includeRelated=false 2026-05-12 11:55:05.332 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33629/api/school/respect/person?since=2026-05-12T07%3A55%3A05.198895571Z&includeRelated=false 2026-05-12 11:55:05.332 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33629/api/school/respect/person?since=2026-05-12T07%3A55%3A05.198895571Z&includeRelated=false 2026-05-12 11:55:05.333 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33629/api/school/respect/person?since=2026-05-12T07%3A55%3A05.198895571Z&includeRelated=false. 2026-05-12 11:55:07.565 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:07.569 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.064 seconds. 2026-05-12 11:55:07.572 [DefaultDispatcher-worker-8 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:35173 2026-05-12 11:55:07.660 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35173/api/school/respect/person 2026-05-12 11:55:07.661 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@780c50b3 for http://localhost:35173/api/school/respect/person 2026-05-12 11:55:07.665 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35173/api/school/respect/person 2026-05-12 11:55:07.667 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35173/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-12 11:55:07.696 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-05-12 11:55:07.709 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-12 11:55:07.712 [DefaultDispatcher-worker-1 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 11:55:07.714 [DefaultDispatcher-worker-8 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35173/api/school/respect/person 2026-05-12 11:55:07.714 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35173/api/school/respect/person 2026-05-12 11:55:07.714 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35173/api/school/respect/person 2026-05-12 11:55:09.932 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:09.934 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-12 11:55:09.936 [DefaultDispatcher-worker-8 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39679 2026-05-12 11:55:09.937 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39679/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:09.937 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39679/api/school/respect/schoolpermissiongrant. 2026-05-12 11:55:09.937 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39679/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:09.950 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 11:55:09.969 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39679/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:09.970 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39679/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:09.970 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39679/api/school/respect/schoolpermissiongrant 2026-05-12 11:55:09.972 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39679/api/school/respect/schoolpermissiongrant. 2026-05-12 11:55:10.057 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:10.057 [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:39679/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:10.057 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:10.070 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:10.090 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:10.091 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:10.091 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:10.094 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39679/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:12.105 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:12.105 [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:39679/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:12.106 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:12.107 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:12.122 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:12.122 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:12.122 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39679/api/school/respect/person?includeRelated=false 2026-05-12 11:55:12.124 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39679/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:14.269 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:14.270 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.059 seconds. 2026-05-12 11:55:14.272 [DefaultDispatcher-worker-8 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:37887 2026-05-12 11:55:14.275 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37887/api/school/respect/person?includeRelated=false 2026-05-12 11:55:14.276 [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:37887/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:14.276 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37887/api/school/respect/person?includeRelated=false 2026-05-12 11:55:14.281 [eventLoopGroupProxy-28-1 @call-handler#218] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:14.292 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37887/api/school/respect/person?includeRelated=false 2026-05-12 11:55:14.292 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37887/api/school/respect/person?includeRelated=false 2026-05-12 11:55:14.292 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37887/api/school/respect/person?includeRelated=false 2026-05-12 11:55:14.294 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37887/api/school/respect/person?includeRelated=false. 2026-05-12 11:55:14.364 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37887/api/school/respect/person?since=2026-05-12T07%3A55%3A14.284496760Z&includeRelated=false 2026-05-12 11:55:14.364 [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:37887/api/school/respect/person?since=2026-05-12T07%3A55%3A14.284496760Z&includeRelated=false. 2026-05-12 11:55:14.364 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37887/api/school/respect/person?since=2026-05-12T07%3A55%3A14.284496760Z&includeRelated=false 2026-05-12 11:55:14.366 [eventLoopGroupProxy-28-1 @call-handler#225] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 11:55:14.370 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37887/api/school/respect/person?since=2026-05-12T07%3A55%3A14.284496760Z&includeRelated=false 2026-05-12 11:55:14.371 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37887/api/school/respect/person?since=2026-05-12T07%3A55%3A14.284496760Z&includeRelated=false 2026-05-12 11:55:14.371 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37887/api/school/respect/person?since=2026-05-12T07%3A55%3A14.284496760Z&includeRelated=false 2026-05-12 11:55:14.372 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37887/api/school/respect/person?since=2026-05-12T07%3A55%3A14.284496760Z&includeRelated=false. 2026-05-12 11:55:16.497 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:16.499 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.049 seconds. 2026-05-12 11:55:16.500 [DefaultDispatcher-worker-8 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36607 2026-05-12 11:55:16.502 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36607/playlist/24bf1d70-99ca-4e1b-90bc-daccc000a851 2026-05-12 11:55:16.502 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36607/playlist/24bf1d70-99ca-4e1b-90bc-daccc000a851. 2026-05-12 11:55:16.502 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36607/playlist/24bf1d70-99ca-4e1b-90bc-daccc000a851 2026-05-12 11:55:16.505 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 24bf1d70-99ca-4e1b-90bc-daccc000a851] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[24bf1d70-99ca-4e1b-90bc-daccc000a851]] @ /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=[24bf1d70-99ca-4e1b-90bc-daccc000a851]] @ /playlist/{uuid}/(method:GET) 2026-05-12 11:55:16.510 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36607/playlist/24bf1d70-99ca-4e1b-90bc-daccc000a851 2026-05-12 11:55:16.510 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36607/playlist/24bf1d70-99ca-4e1b-90bc-daccc000a851 2026-05-12 11:55:16.510 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36607/playlist/24bf1d70-99ca-4e1b-90bc-daccc000a851 2026-05-12 11:55:16.511 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:36607/playlist/24bf1d70-99ca-4e1b-90bc-daccc000a851. 2026-05-12 11:55:18.683 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 11:55:18.684 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-05-12 11:55:18.685 [DefaultDispatcher-worker-8 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43895 2026-05-12 11:55:18.731 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43895/playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c 2026-05-12 11:55:18.731 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@7e4d6898 for http://localhost:43895/playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c 2026-05-12 11:55:18.731 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43895/playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c 2026-05-12 11:55:18.731 [DefaultDispatcher-worker-7 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43895/playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c from class io.ktor.http.content.TextContent 2026-05-12 11:55:18.734 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 84ab85e0-fac8-4488-82e8-6a11d526b53c] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[84ab85e0-fac8-4488-82e8-6a11d526b53c]] @ /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=[84ab85e0-fac8-4488-82e8-6a11d526b53c]] @ /playlist/{uuid}/(method:POST) 2026-05-12 11:55:18.734 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(world.respect.lib.opds.model.OpdsFeed) for call /playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c 2026-05-12 11:55:18.735 [DefaultDispatcher-worker-7 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 11:55:18.736 [DefaultDispatcher-worker-4 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43895/playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c 2026-05-12 11:55:18.736 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43895/playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c 2026-05-12 11:55:18.736 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43895/playlist/84ab85e0-fac8-4488-82e8-6a11d526b53c 2026-05-12 12:53:30.928 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:31.039 [Test worker] INFO io.ktor.server.Application - Application started in 0.245 seconds. 2026-05-12 12:53:31.118 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41333 2026-05-12 12:53:31.888 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41333/resources/index.json 2026-05-12 12:53:31.889 [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:41333/resources/index.json. 2026-05-12 12:53:31.889 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41333/resources/index.json 2026-05-12 12:53:31.993 [eventLoopGroupProxy-4-1 @call-handler#12] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 12:53:32.028 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 39ms 2026-05-12 12:53:32.033 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41333/resources/index.json 2026-05-12 12:53:32.034 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41333/resources/index.json 2026-05-12 12:53:32.035 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41333/resources/index.json 2026-05-12 12:53:32.052 [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:41333/resources/index.json. 2026-05-12 12:53:32.079 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41333/resources/index.json 2026-05-12 12:53:32.080 [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:41333/resources/index.json. 2026-05-12 12:53:32.080 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41333/resources/index.json 2026-05-12 12:53:32.082 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 12:53:32.083 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-05-12 12:53:32.084 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41333/resources/index.json 2026-05-12 12:53:32.084 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41333/resources/index.json 2026-05-12 12:53:32.084 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41333/resources/index.json 2026-05-12 12:53:34.097 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:34.098 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-05-12 12:53:34.099 [DefaultDispatcher-worker-2 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45955 2026-05-12 12:53:34.169 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45955/resources/index.json 2026-05-12 12:53:34.169 [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:45955/resources/index.json. 2026-05-12 12:53:34.169 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45955/resources/index.json 2026-05-12 12:53:34.172 [eventLoopGroupProxy-7-1 @call-handler#35] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 12:53:34.173 [DefaultDispatcher-worker-2 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-05-12 12:53:34.173 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45955/resources/index.json 2026-05-12 12:53:34.173 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45955/resources/index.json 2026-05-12 12:53:34.173 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45955/resources/index.json 2026-05-12 12:53:34.174 [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:45955/resources/index.json. 2026-05-12 12:53:34.178 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45955/resources/index.json 2026-05-12 12:53:34.178 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45955/resources/index.json. 2026-05-12 12:53:34.178 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45955/resources/index.json 2026-05-12 12:53:34.179 [eventLoopGroupProxy-7-1 @call-handler#45] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 12:53:34.179 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 0ms 2026-05-12 12:53:34.180 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45955/resources/index.json 2026-05-12 12:53:34.180 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45955/resources/index.json 2026-05-12 12:53:34.180 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45955/resources/index.json 2026-05-12 12:53:36.186 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:36.186 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-05-12 12:53:36.187 [DefaultDispatcher-worker-1 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38589 2026-05-12 12:53:36.192 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38589/resources/lesson001.json 2026-05-12 12:53:36.193 [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:38589/resources/lesson001.json. 2026-05-12 12:53:36.193 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38589/resources/lesson001.json 2026-05-12 12:53:36.195 [eventLoopGroupProxy-10-1 @call-handler#59] TRACE io.ktor.server.routing.Routing - Trace for [resources, lesson001.json] /, segment:0 -> SUCCESS @ / /(staticContent), segment:0 -> SUCCESS @ /(staticContent) /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...} /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET) Matched routes: "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)" Routing resolve result: SUCCESS; Parameters [static-content-path-parameter=[lesson001.json]] @ /(staticContent)/resources/{...}/(method:GET) 2026-05-12 12:53:36.196 [DefaultDispatcher-worker-5 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-05-12 12:53:36.197 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38589/resources/lesson001.json 2026-05-12 12:53:36.197 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38589/resources/lesson001.json 2026-05-12 12:53:36.197 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38589/resources/lesson001.json 2026-05-12 12:53:36.200 [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:38589/resources/lesson001.json. 2026-05-12 12:53:38.452 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:38.459 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.108 seconds. 2026-05-12 12:53:38.461 [DefaultDispatcher-worker-6 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43355 2026-05-12 12:53:38.469 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43355/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:38.469 [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:43355/api/school/respect/schoolpermissiongrant. 2026-05-12 12:53:38.469 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43355/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:38.474 [eventLoopGroupProxy-13-1 @call-handler#78] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 12:53:38.488 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43355/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:38.488 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43355/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:38.488 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43355/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:38.490 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43355/api/school/respect/schoolpermissiongrant. 2026-05-12 12:53:38.560 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.560 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43355/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:38.560 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.562 [eventLoopGroupProxy-13-1 @call-handler#84] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:38.580 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.581 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.581 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.582 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43355/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:38.589 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.589 [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:43355/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:38.589 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.591 [eventLoopGroupProxy-13-1 @call-handler#90] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:38.594 [DefaultDispatcher-worker-2 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 12:53:38.595 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.595 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:38.595 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43355/api/school/respect/person?includeRelated=false 2026-05-12 12:53:40.716 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:40.716 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-05-12 12:53:40.717 [DefaultDispatcher-worker-2 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33993 2026-05-12 12:53:40.718 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33993/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:40.719 [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:33993/api/school/respect/schoolpermissiongrant. 2026-05-12 12:53:40.719 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33993/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:40.721 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 12:53:40.723 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33993/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:40.723 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33993/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:40.723 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33993/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:40.724 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33993/api/school/respect/schoolpermissiongrant. 2026-05-12 12:53:40.769 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33993/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 12:53:40.769 [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:33993/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 12:53:40.770 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33993/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 12:53:40.771 [eventLoopGroupProxy-16-1 @call-handler#117] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:40.773 [DefaultDispatcher-worker-2 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33993/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 12:53:40.774 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33993/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 12:53:40.774 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33993/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-05-12 12:53:40.775 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33993/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-05-12 12:53:42.886 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:42.887 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.038 seconds. 2026-05-12 12:53:42.888 [DefaultDispatcher-worker-1 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44431 2026-05-12 12:53:42.890 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44431/api/school/respect/person?includeRelated=false 2026-05-12 12:53:42.890 [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:44431/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:42.891 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44431/api/school/respect/person?includeRelated=false 2026-05-12 12:53:42.893 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:42.896 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44431/api/school/respect/person?includeRelated=false 2026-05-12 12:53:42.897 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44431/api/school/respect/person?includeRelated=false 2026-05-12 12:53:42.897 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44431/api/school/respect/person?includeRelated=false 2026-05-12 12:53:42.897 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44431/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:42.947 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44431/api/school/respect/person?since=2026-05-12T08%3A53%3A42.893908810Z&includeRelated=false 2026-05-12 12:53:42.947 [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:44431/api/school/respect/person?since=2026-05-12T08%3A53%3A42.893908810Z&includeRelated=false. 2026-05-12 12:53:42.947 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44431/api/school/respect/person?since=2026-05-12T08%3A53%3A42.893908810Z&includeRelated=false 2026-05-12 12:53:42.950 [eventLoopGroupProxy-19-1 @call-handler#142] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:42.952 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44431/api/school/respect/person?since=2026-05-12T08%3A53%3A42.893908810Z&includeRelated=false 2026-05-12 12:53:42.952 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44431/api/school/respect/person?since=2026-05-12T08%3A53%3A42.893908810Z&includeRelated=false 2026-05-12 12:53:42.953 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44431/api/school/respect/person?since=2026-05-12T08%3A53%3A42.893908810Z&includeRelated=false 2026-05-12 12:53:42.953 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44431/api/school/respect/person?since=2026-05-12T08%3A53%3A42.893908810Z&includeRelated=false. 2026-05-12 12:53:45.061 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:45.062 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-05-12 12:53:45.063 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:41087 2026-05-12 12:53:45.123 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41087/api/school/respect/person 2026-05-12 12:53:45.123 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@42e24cc2 for http://localhost:41087/api/school/respect/person 2026-05-12 12:53:45.123 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41087/api/school/respect/person 2026-05-12 12:53:45.123 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:41087/api/school/respect/person from class io.ktor.http.content.TextContent 2026-05-12 12:53:45.126 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-05-12 12:53:45.134 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-05-12 12:53:45.135 [DefaultDispatcher-worker-1 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 12:53:45.136 [DefaultDispatcher-worker-6 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41087/api/school/respect/person 2026-05-12 12:53:45.136 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41087/api/school/respect/person 2026-05-12 12:53:45.136 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41087/api/school/respect/person 2026-05-12 12:53:47.277 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:47.278 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.046 seconds. 2026-05-12 12:53:47.279 [DefaultDispatcher-worker-6 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43933 2026-05-12 12:53:47.279 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43933/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:47.279 [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:43933/api/school/respect/schoolpermissiongrant. 2026-05-12 12:53:47.280 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43933/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:47.282 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-05-12 12:53:47.283 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43933/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:47.284 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43933/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:47.284 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43933/api/school/respect/schoolpermissiongrant 2026-05-12 12:53:47.284 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43933/api/school/respect/schoolpermissiongrant. 2026-05-12 12:53:47.334 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:47.334 [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:43933/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:47.334 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:47.335 [eventLoopGroupProxy-25-1 @call-handler#191] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:47.340 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:47.340 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:47.340 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:47.341 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43933/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:49.346 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:49.346 [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:43933/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:49.346 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:49.348 [eventLoopGroupProxy-25-1 @call-handler#198] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:49.351 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:49.351 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:49.351 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43933/api/school/respect/person?includeRelated=false 2026-05-12 12:53:49.352 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43933/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:51.475 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:51.475 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.048 seconds. 2026-05-12 12:53:51.476 [DefaultDispatcher-worker-2 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40549 2026-05-12 12:53:51.478 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40549/api/school/respect/person?includeRelated=false 2026-05-12 12:53:51.479 [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:40549/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:51.479 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40549/api/school/respect/person?includeRelated=false 2026-05-12 12:53:51.481 [eventLoopGroupProxy-28-1 @call-handler#218] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:51.484 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40549/api/school/respect/person?includeRelated=false 2026-05-12 12:53:51.485 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40549/api/school/respect/person?includeRelated=false 2026-05-12 12:53:51.485 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40549/api/school/respect/person?includeRelated=false 2026-05-12 12:53:51.485 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40549/api/school/respect/person?includeRelated=false. 2026-05-12 12:53:51.528 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40549/api/school/respect/person?since=2026-05-12T08%3A53%3A51.481813458Z&includeRelated=false 2026-05-12 12:53:51.528 [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:40549/api/school/respect/person?since=2026-05-12T08%3A53%3A51.481813458Z&includeRelated=false. 2026-05-12 12:53:51.528 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40549/api/school/respect/person?since=2026-05-12T08%3A53%3A51.481813458Z&includeRelated=false 2026-05-12 12:53:51.529 [eventLoopGroupProxy-28-1 @call-handler#225] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-05-12 12:53:51.531 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40549/api/school/respect/person?since=2026-05-12T08%3A53%3A51.481813458Z&includeRelated=false 2026-05-12 12:53:51.532 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40549/api/school/respect/person?since=2026-05-12T08%3A53%3A51.481813458Z&includeRelated=false 2026-05-12 12:53:51.532 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40549/api/school/respect/person?since=2026-05-12T08%3A53%3A51.481813458Z&includeRelated=false 2026-05-12 12:53:51.532 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40549/api/school/respect/person?since=2026-05-12T08%3A53%3A51.481813458Z&includeRelated=false. 2026-05-12 12:53:53.653 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:53.654 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.06 seconds. 2026-05-12 12:53:53.655 [DefaultDispatcher-worker-6 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45053 2026-05-12 12:53:53.657 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45053/playlist/cc2ba936-f9dd-4146-9ee2-10f0a6d9678c 2026-05-12 12:53:53.657 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45053/playlist/cc2ba936-f9dd-4146-9ee2-10f0a6d9678c. 2026-05-12 12:53:53.657 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45053/playlist/cc2ba936-f9dd-4146-9ee2-10f0a6d9678c 2026-05-12 12:53:53.659 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, cc2ba936-f9dd-4146-9ee2-10f0a6d9678c] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[cc2ba936-f9dd-4146-9ee2-10f0a6d9678c]] @ /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=[cc2ba936-f9dd-4146-9ee2-10f0a6d9678c]] @ /playlist/{uuid}/(method:GET) 2026-05-12 12:53:53.665 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45053/playlist/cc2ba936-f9dd-4146-9ee2-10f0a6d9678c 2026-05-12 12:53:53.665 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45053/playlist/cc2ba936-f9dd-4146-9ee2-10f0a6d9678c 2026-05-12 12:53:53.665 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45053/playlist/cc2ba936-f9dd-4146-9ee2-10f0a6d9678c 2026-05-12 12:53:53.665 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:45053/playlist/cc2ba936-f9dd-4146-9ee2-10f0a6d9678c. 2026-05-12 12:53:56.025 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-05-12 12:53:56.026 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.12 seconds. 2026-05-12 12:53:56.027 [DefaultDispatcher-worker-5 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40683 2026-05-12 12:53:56.075 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40683/playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 2026-05-12 12:53:56.075 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3f7ca36 for http://localhost:40683/playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 2026-05-12 12:53:56.075 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40683/playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 2026-05-12 12:53:56.075 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40683/playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 from class io.ktor.http.content.TextContent 2026-05-12 12:53:56.077 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, e0f15430-5ede-4d26-9c3e-94bdd6d9c570] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[e0f15430-5ede-4d26-9c3e-94bdd6d9c570]] @ /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=[e0f15430-5ede-4d26-9c3e-94bdd6d9c570]] @ /playlist/{uuid}/(method:POST) 2026-05-12 12:53:56.078 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(world.respect.lib.opds.model.OpdsFeed) for call /playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 2026-05-12 12:53:56.079 [DefaultDispatcher-worker-6 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-05-12 12:53:56.079 [DefaultDispatcher-worker-3 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40683/playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 2026-05-12 12:53:56.079 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40683/playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570 2026-05-12 12:53:56.079 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40683/playlist/e0f15430-5ede-4d26-9c3e-94bdd6d9c570