2026-04-29 11:00:20.471 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:20.622 [Test worker] INFO io.ktor.server.Application - Application started in 0.321 seconds. 2026-04-29 11:00:20.726 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46875 2026-04-29 11:00:21.614 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46875/resources/index.json 2026-04-29 11:00:21.615 [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:46875/resources/index.json. 2026-04-29 11:00:21.615 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46875/resources/index.json 2026-04-29 11:00:21.737 [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-04-29 11:00:21.777 [eventLoopGroupProxy-4-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 47ms 2026-04-29 11:00:21.781 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46875/resources/index.json 2026-04-29 11:00:21.784 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46875/resources/index.json 2026-04-29 11:00:21.784 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46875/resources/index.json 2026-04-29 11:00:21.810 [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:46875/resources/index.json. 2026-04-29 11:00:21.845 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46875/resources/index.json 2026-04-29 11:00:21.845 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46875/resources/index.json. 2026-04-29 11:00:21.845 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46875/resources/index.json 2026-04-29 11:00:21.847 [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-04-29 11:00:21.849 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 2ms 2026-04-29 11:00:21.850 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46875/resources/index.json 2026-04-29 11:00:21.850 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46875/resources/index.json 2026-04-29 11:00:21.850 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46875/resources/index.json 2026-04-29 11:00:23.864 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:23.864 [Test worker] INFO io.ktor.server.Application - Application started in 0.0 seconds. 2026-04-29 11:00:23.865 [DefaultDispatcher-worker-2 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34035 2026-04-29 11:00:23.920 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34035/resources/index.json 2026-04-29 11:00:23.920 [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:34035/resources/index.json. 2026-04-29 11:00:23.920 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34035/resources/index.json 2026-04-29 11:00:23.922 [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-04-29 11:00:23.923 [DefaultDispatcher-worker-1 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-04-29 11:00:23.924 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34035/resources/index.json 2026-04-29 11:00:23.924 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34035/resources/index.json 2026-04-29 11:00:23.924 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34035/resources/index.json 2026-04-29 11:00:23.925 [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:34035/resources/index.json. 2026-04-29 11:00:23.928 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34035/resources/index.json 2026-04-29 11:00:23.928 [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:34035/resources/index.json. 2026-04-29 11:00:23.928 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34035/resources/index.json 2026-04-29 11:00:23.930 [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-04-29 11:00:23.930 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-04-29 11:00:23.930 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34035/resources/index.json 2026-04-29 11:00:23.931 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34035/resources/index.json 2026-04-29 11:00:23.931 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34035/resources/index.json 2026-04-29 11:00:25.938 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:25.939 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-04-29 11:00:25.940 [DefaultDispatcher-worker-1 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33275 2026-04-29 11:00:25.945 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33275/resources/lesson001.json 2026-04-29 11:00:25.945 [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:33275/resources/lesson001.json. 2026-04-29 11:00:25.945 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33275/resources/lesson001.json 2026-04-29 11:00:25.947 [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-04-29 11:00:25.948 [eventLoopGroupProxy-10-1 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 1ms 2026-04-29 11:00:25.949 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33275/resources/lesson001.json 2026-04-29 11:00:25.949 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33275/resources/lesson001.json 2026-04-29 11:00:25.949 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33275/resources/lesson001.json 2026-04-29 11:00:25.952 [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:33275/resources/lesson001.json. 2026-04-29 11:00:28.254 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:28.260 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.1 seconds. 2026-04-29 11:00:28.262 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40767 2026-04-29 11:00:28.271 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40767/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:28.271 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40767/api/school/respect/schoolpermissiongrant. 2026-04-29 11:00:28.271 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40767/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:28.276 [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-04-29 11:00:28.292 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40767/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:28.293 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40767/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:28.293 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40767/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:28.295 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40767/api/school/respect/schoolpermissiongrant. 2026-04-29 11:00:28.380 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.380 [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:40767/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:28.380 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.382 [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-04-29 11:00:28.403 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.403 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.403 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.404 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40767/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:28.410 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.410 [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:40767/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:28.410 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.412 [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-04-29 11:00:28.414 [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-04-29 11:00:28.415 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.415 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:28.415 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40767/api/school/respect/person?includeRelated=false 2026-04-29 11:00:30.536 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:30.537 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-04-29 11:00:30.538 [DefaultDispatcher-worker-4 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40683 2026-04-29 11:00:30.539 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40683/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:30.539 [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:40683/api/school/respect/schoolpermissiongrant. 2026-04-29 11:00:30.539 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40683/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:30.542 [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-04-29 11:00:30.544 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40683/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:30.544 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40683/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:30.544 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40683/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:30.544 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40683/api/school/respect/schoolpermissiongrant. 2026-04-29 11:00:30.601 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40683/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 11:00:30.601 [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:40683/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-04-29 11:00:30.601 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40683/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 11:00:30.603 [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-04-29 11:00:30.606 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40683/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 11:00:30.606 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40683/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 11:00:30.606 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40683/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 11:00:30.607 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40683/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-04-29 11:00:32.720 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:32.720 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-04-29 11:00:32.722 [DefaultDispatcher-worker-4 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42359 2026-04-29 11:00:32.724 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42359/api/school/respect/person?includeRelated=false 2026-04-29 11:00:32.724 [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:42359/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:32.724 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42359/api/school/respect/person?includeRelated=false 2026-04-29 11:00:32.727 [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-04-29 11:00:32.730 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42359/api/school/respect/person?includeRelated=false 2026-04-29 11:00:32.730 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42359/api/school/respect/person?includeRelated=false 2026-04-29 11:00:32.730 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42359/api/school/respect/person?includeRelated=false 2026-04-29 11:00:32.731 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42359/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:32.788 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42359/api/school/respect/person?since=2026-04-29T07%3A00%3A32.727469846Z&includeRelated=false 2026-04-29 11:00:32.788 [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:42359/api/school/respect/person?since=2026-04-29T07%3A00%3A32.727469846Z&includeRelated=false. 2026-04-29 11:00:32.788 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42359/api/school/respect/person?since=2026-04-29T07%3A00%3A32.727469846Z&includeRelated=false 2026-04-29 11:00:32.790 [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-04-29 11:00:32.792 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42359/api/school/respect/person?since=2026-04-29T07%3A00%3A32.727469846Z&includeRelated=false 2026-04-29 11:00:32.793 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42359/api/school/respect/person?since=2026-04-29T07%3A00%3A32.727469846Z&includeRelated=false 2026-04-29 11:00:32.793 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42359/api/school/respect/person?since=2026-04-29T07%3A00%3A32.727469846Z&includeRelated=false 2026-04-29 11:00:32.793 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42359/api/school/respect/person?since=2026-04-29T07%3A00%3A32.727469846Z&includeRelated=false. 2026-04-29 11:00:34.920 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:34.921 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.05 seconds. 2026-04-29 11:00:34.922 [DefaultDispatcher-worker-3 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43067 2026-04-29 11:00:34.966 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43067/api/school/respect/person 2026-04-29 11:00:34.966 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@19114ee3 for http://localhost:43067/api/school/respect/person 2026-04-29 11:00:34.966 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43067/api/school/respect/person 2026-04-29 11:00:34.966 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43067/api/school/respect/person from class io.ktor.http.content.TextContent 2026-04-29 11:00:34.969 [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-04-29 11:00:34.975 [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-04-29 11:00:34.977 [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-04-29 11:00:34.977 [DefaultDispatcher-worker-1 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43067/api/school/respect/person 2026-04-29 11:00:34.978 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43067/api/school/respect/person 2026-04-29 11:00:34.978 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43067/api/school/respect/person 2026-04-29 11:00:37.097 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:37.098 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-04-29 11:00:37.099 [DefaultDispatcher-worker-6 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33839 2026-04-29 11:00:37.100 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33839/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:37.100 [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:33839/api/school/respect/schoolpermissiongrant. 2026-04-29 11:00:37.100 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33839/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:37.102 [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-04-29 11:00:37.104 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33839/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:37.104 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33839/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:37.104 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33839/api/school/respect/schoolpermissiongrant 2026-04-29 11:00:37.105 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33839/api/school/respect/schoolpermissiongrant. 2026-04-29 11:00:37.152 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:37.152 [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:33839/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:37.152 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:37.153 [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-04-29 11:00:37.159 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:37.159 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:37.159 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:37.160 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33839/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:39.164 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:39.165 [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:33839/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:39.165 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:39.166 [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-04-29 11:00:39.169 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:39.169 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:39.169 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33839/api/school/respect/person?includeRelated=false 2026-04-29 11:00:39.170 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33839/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:41.294 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:41.295 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-04-29 11:00:41.296 [DefaultDispatcher-worker-6 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33529 2026-04-29 11:00:41.298 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33529/api/school/respect/person?includeRelated=false 2026-04-29 11:00:41.298 [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:33529/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:41.298 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33529/api/school/respect/person?includeRelated=false 2026-04-29 11:00:41.300 [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-04-29 11:00:41.304 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33529/api/school/respect/person?includeRelated=false 2026-04-29 11:00:41.304 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33529/api/school/respect/person?includeRelated=false 2026-04-29 11:00:41.304 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33529/api/school/respect/person?includeRelated=false 2026-04-29 11:00:41.305 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33529/api/school/respect/person?includeRelated=false. 2026-04-29 11:00:41.355 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33529/api/school/respect/person?since=2026-04-29T07%3A00%3A41.301216717Z&includeRelated=false 2026-04-29 11:00:41.355 [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:33529/api/school/respect/person?since=2026-04-29T07%3A00%3A41.301216717Z&includeRelated=false. 2026-04-29 11:00:41.356 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33529/api/school/respect/person?since=2026-04-29T07%3A00%3A41.301216717Z&includeRelated=false 2026-04-29 11:00:41.357 [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-04-29 11:00:41.359 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33529/api/school/respect/person?since=2026-04-29T07%3A00%3A41.301216717Z&includeRelated=false 2026-04-29 11:00:41.359 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33529/api/school/respect/person?since=2026-04-29T07%3A00%3A41.301216717Z&includeRelated=false 2026-04-29 11:00:41.359 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33529/api/school/respect/person?since=2026-04-29T07%3A00%3A41.301216717Z&includeRelated=false 2026-04-29 11:00:41.360 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33529/api/school/respect/person?since=2026-04-29T07%3A00%3A41.301216717Z&includeRelated=false. 2026-04-29 11:00:43.482 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:43.483 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.043 seconds. 2026-04-29 11:00:43.484 [DefaultDispatcher-worker-5 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40195 2026-04-29 11:00:43.486 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40195/playlist/38fc127b-64fd-4e61-acc0-5e59c72434e9 2026-04-29 11:00:43.486 [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:40195/playlist/38fc127b-64fd-4e61-acc0-5e59c72434e9. 2026-04-29 11:00:43.486 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40195/playlist/38fc127b-64fd-4e61-acc0-5e59c72434e9 2026-04-29 11:00:43.489 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 38fc127b-64fd-4e61-acc0-5e59c72434e9] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[38fc127b-64fd-4e61-acc0-5e59c72434e9]] @ /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=[38fc127b-64fd-4e61-acc0-5e59c72434e9]] @ /playlist/{uuid}/(method:GET) 2026-04-29 11:00:43.494 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40195/playlist/38fc127b-64fd-4e61-acc0-5e59c72434e9 2026-04-29 11:00:43.494 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40195/playlist/38fc127b-64fd-4e61-acc0-5e59c72434e9 2026-04-29 11:00:43.494 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40195/playlist/38fc127b-64fd-4e61-acc0-5e59c72434e9 2026-04-29 11:00:43.495 [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:40195/playlist/38fc127b-64fd-4e61-acc0-5e59c72434e9. 2026-04-29 11:00:45.656 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 11:00:45.656 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.047 seconds. 2026-04-29 11:00:45.657 [DefaultDispatcher-worker-6 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46315 2026-04-29 11:00:45.706 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46315/playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 2026-04-29 11:00:45.707 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@15ca73c6 for http://localhost:46315/playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 2026-04-29 11:00:45.707 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46315/playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 2026-04-29 11:00:45.707 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:46315/playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 from class io.ktor.http.content.TextContent 2026-04-29 11:00:45.709 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, ea7153e1-c8f9-4d38-bcda-7f5a518e68f2] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[ea7153e1-c8f9-4d38-bcda-7f5a518e68f2]] @ /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=[ea7153e1-c8f9-4d38-bcda-7f5a518e68f2]] @ /playlist/{uuid}/(method:POST) 2026-04-29 11:00:45.709 [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/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 2026-04-29 11:00:45.710 [DefaultDispatcher-worker-4 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-04-29 11:00:45.711 [DefaultDispatcher-worker-1 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46315/playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 2026-04-29 11:00:45.711 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46315/playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 2026-04-29 11:00:45.711 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46315/playlist/ea7153e1-c8f9-4d38-bcda-7f5a518e68f2 2026-04-29 12:47:59.143 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:47:59.297 [Test worker] INFO io.ktor.server.Application - Application started in 0.475 seconds. 2026-04-29 12:47:59.407 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33083 2026-04-29 12:48:00.637 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33083/resources/index.json 2026-04-29 12:48:00.638 [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:33083/resources/index.json. 2026-04-29 12:48:00.638 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33083/resources/index.json 2026-04-29 12:48:00.845 [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-04-29 12:48:00.936 [DefaultDispatcher-worker-1 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 99ms 2026-04-29 12:48:00.944 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33083/resources/index.json 2026-04-29 12:48:00.948 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33083/resources/index.json 2026-04-29 12:48:00.948 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33083/resources/index.json 2026-04-29 12:48:00.975 [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:33083/resources/index.json. 2026-04-29 12:48:01.024 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33083/resources/index.json 2026-04-29 12:48:01.024 [DefaultDispatcher-worker-6 @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:33083/resources/index.json. 2026-04-29 12:48:01.024 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33083/resources/index.json 2026-04-29 12:48:01.029 [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-04-29 12:48:01.031 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-04-29 12:48:01.033 [DefaultDispatcher-worker-6 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33083/resources/index.json 2026-04-29 12:48:01.033 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33083/resources/index.json 2026-04-29 12:48:01.033 [DefaultDispatcher-worker-6 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33083/resources/index.json 2026-04-29 12:48:03.054 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:03.055 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-04-29 12:48:03.057 [DefaultDispatcher-worker-6 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:39673 2026-04-29 12:48:03.133 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39673/resources/index.json 2026-04-29 12:48:03.134 [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:39673/resources/index.json. 2026-04-29 12:48:03.134 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39673/resources/index.json 2026-04-29 12:48:03.137 [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-04-29 12:48:03.138 [DefaultDispatcher-worker-9 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 1ms 2026-04-29 12:48:03.139 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39673/resources/index.json 2026-04-29 12:48:03.139 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39673/resources/index.json 2026-04-29 12:48:03.140 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39673/resources/index.json 2026-04-29 12:48:03.140 [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:39673/resources/index.json. 2026-04-29 12:48:03.146 [DefaultDispatcher-worker-9 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39673/resources/index.json 2026-04-29 12:48:03.146 [DefaultDispatcher-worker-9 @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:39673/resources/index.json. 2026-04-29 12:48:03.146 [DefaultDispatcher-worker-9 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39673/resources/index.json 2026-04-29 12:48:03.148 [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-04-29 12:48:03.149 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 1ms 2026-04-29 12:48:03.150 [DefaultDispatcher-worker-9 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39673/resources/index.json 2026-04-29 12:48:03.150 [DefaultDispatcher-worker-9 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39673/resources/index.json 2026-04-29 12:48:03.150 [DefaultDispatcher-worker-9 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39673/resources/index.json 2026-04-29 12:48:05.167 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:05.168 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-04-29 12:48:05.176 [DefaultDispatcher-worker-9 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45605 2026-04-29 12:48:05.207 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45605/resources/lesson001.json 2026-04-29 12:48:05.210 [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:45605/resources/lesson001.json. 2026-04-29 12:48:05.210 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45605/resources/lesson001.json 2026-04-29 12:48:05.224 [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-04-29 12:48:05.230 [DefaultDispatcher-worker-8 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 6ms 2026-04-29 12:48:05.241 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45605/resources/lesson001.json 2026-04-29 12:48:05.242 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45605/resources/lesson001.json 2026-04-29 12:48:05.242 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45605/resources/lesson001.json 2026-04-29 12:48:05.246 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:45605/resources/lesson001.json. 2026-04-29 12:48:07.732 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:07.741 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.218 seconds. 2026-04-29 12:48:07.745 [DefaultDispatcher-worker-2 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33949 2026-04-29 12:48:07.758 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33949/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:07.759 [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:33949/api/school/respect/schoolpermissiongrant. 2026-04-29 12:48:07.759 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33949/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:07.767 [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-04-29 12:48:07.789 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33949/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:07.789 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33949/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:07.789 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33949/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:07.792 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33949/api/school/respect/schoolpermissiongrant. 2026-04-29 12:48:07.997 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:07.997 [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:33949/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:07.997 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:07.999 [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-04-29 12:48:08.025 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:08.026 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:08.026 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:08.027 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33949/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:08.035 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:08.035 [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:33949/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:08.035 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:08.037 [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-04-29 12:48:08.039 [DefaultDispatcher-worker-9 @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-04-29 12:48:08.040 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:08.040 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:08.040 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33949/api/school/respect/person?includeRelated=false 2026-04-29 12:48:10.198 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:10.200 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.053 seconds. 2026-04-29 12:48:10.202 [DefaultDispatcher-worker-5 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36085 2026-04-29 12:48:10.203 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36085/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:10.204 [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:36085/api/school/respect/schoolpermissiongrant. 2026-04-29 12:48:10.204 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36085/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:10.222 [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-04-29 12:48:10.228 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36085/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:10.228 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36085/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:10.228 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36085/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:10.229 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36085/api/school/respect/schoolpermissiongrant. 2026-04-29 12:48:10.328 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36085/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 12:48:10.328 [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:36085/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-04-29 12:48:10.328 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36085/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 12:48:10.336 [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-04-29 12:48:10.346 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36085/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 12:48:10.346 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36085/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 12:48:10.346 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36085/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 12:48:10.352 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36085/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-04-29 12:48:12.544 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:12.545 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.042 seconds. 2026-04-29 12:48:12.546 [DefaultDispatcher-worker-7 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40137 2026-04-29 12:48:12.556 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40137/api/school/respect/person?includeRelated=false 2026-04-29 12:48:12.556 [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:40137/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:12.556 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40137/api/school/respect/person?includeRelated=false 2026-04-29 12:48:12.571 [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-04-29 12:48:12.587 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40137/api/school/respect/person?includeRelated=false 2026-04-29 12:48:12.592 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40137/api/school/respect/person?includeRelated=false 2026-04-29 12:48:12.593 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40137/api/school/respect/person?includeRelated=false 2026-04-29 12:48:12.594 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40137/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:12.721 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40137/api/school/respect/person?since=2026-04-29T08%3A48%3A12.575998001Z&includeRelated=false 2026-04-29 12:48:12.725 [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:40137/api/school/respect/person?since=2026-04-29T08%3A48%3A12.575998001Z&includeRelated=false. 2026-04-29 12:48:12.725 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40137/api/school/respect/person?since=2026-04-29T08%3A48%3A12.575998001Z&includeRelated=false 2026-04-29 12:48:12.738 [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-04-29 12:48:12.747 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40137/api/school/respect/person?since=2026-04-29T08%3A48%3A12.575998001Z&includeRelated=false 2026-04-29 12:48:12.748 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40137/api/school/respect/person?since=2026-04-29T08%3A48%3A12.575998001Z&includeRelated=false 2026-04-29 12:48:12.748 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40137/api/school/respect/person?since=2026-04-29T08%3A48%3A12.575998001Z&includeRelated=false 2026-04-29 12:48:12.749 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40137/api/school/respect/person?since=2026-04-29T08%3A48%3A12.575998001Z&includeRelated=false. 2026-04-29 12:48:14.978 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:14.979 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.045 seconds. 2026-04-29 12:48:14.989 [DefaultDispatcher-worker-2 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:45435 2026-04-29 12:48:15.056 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45435/api/school/respect/person 2026-04-29 12:48:15.056 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@55e6b3cf for http://localhost:45435/api/school/respect/person 2026-04-29 12:48:15.056 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45435/api/school/respect/person 2026-04-29 12:48:15.057 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45435/api/school/respect/person from class io.ktor.http.content.TextContent 2026-04-29 12:48:15.061 [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-04-29 12:48:15.068 [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-04-29 12:48:15.071 [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-04-29 12:48:15.074 [DefaultDispatcher-worker-10 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45435/api/school/respect/person 2026-04-29 12:48:15.074 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45435/api/school/respect/person 2026-04-29 12:48:15.074 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45435/api/school/respect/person 2026-04-29 12:48:17.259 [Test worker @coroutine#172] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:17.260 [Test worker @coroutine#172] INFO io.ktor.server.Application - Application started in 0.06 seconds. 2026-04-29 12:48:17.261 [DefaultDispatcher-worker-8 @coroutine#181] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40433 2026-04-29 12:48:17.262 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40433/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:17.262 [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:40433/api/school/respect/schoolpermissiongrant. 2026-04-29 12:48:17.262 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40433/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:17.265 [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-04-29 12:48:17.277 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40433/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:17.277 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40433/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:17.277 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40433/api/school/respect/schoolpermissiongrant 2026-04-29 12:48:17.277 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40433/api/school/respect/schoolpermissiongrant. 2026-04-29 12:48:17.347 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:17.348 [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:40433/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:17.348 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:17.349 [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-04-29 12:48:17.355 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:17.355 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:17.355 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:17.356 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40433/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:19.361 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:19.361 [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:40433/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:19.361 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:19.363 [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-04-29 12:48:19.366 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:19.366 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:19.366 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40433/api/school/respect/person?includeRelated=false 2026-04-29 12:48:19.367 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40433/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:21.485 [Test worker @coroutine#204] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:21.486 [Test worker @coroutine#204] INFO io.ktor.server.Application - Application started in 0.039 seconds. 2026-04-29 12:48:21.487 [DefaultDispatcher-worker-5 @coroutine#213] INFO io.ktor.server.Application - Responding at http://0.0.0.0:36359 2026-04-29 12:48:21.490 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36359/api/school/respect/person?includeRelated=false 2026-04-29 12:48:21.490 [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:36359/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:21.490 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36359/api/school/respect/person?includeRelated=false 2026-04-29 12:48:21.492 [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-04-29 12:48:21.496 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36359/api/school/respect/person?includeRelated=false 2026-04-29 12:48:21.496 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36359/api/school/respect/person?includeRelated=false 2026-04-29 12:48:21.496 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36359/api/school/respect/person?includeRelated=false 2026-04-29 12:48:21.497 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36359/api/school/respect/person?includeRelated=false. 2026-04-29 12:48:21.541 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36359/api/school/respect/person?since=2026-04-29T08%3A48%3A21.492991839Z&includeRelated=false 2026-04-29 12:48:21.541 [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:36359/api/school/respect/person?since=2026-04-29T08%3A48%3A21.492991839Z&includeRelated=false. 2026-04-29 12:48:21.541 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36359/api/school/respect/person?since=2026-04-29T08%3A48%3A21.492991839Z&includeRelated=false 2026-04-29 12:48:21.543 [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-04-29 12:48:21.546 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36359/api/school/respect/person?since=2026-04-29T08%3A48%3A21.492991839Z&includeRelated=false 2026-04-29 12:48:21.546 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36359/api/school/respect/person?since=2026-04-29T08%3A48%3A21.492991839Z&includeRelated=false 2026-04-29 12:48:21.546 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36359/api/school/respect/person?since=2026-04-29T08%3A48%3A21.492991839Z&includeRelated=false 2026-04-29 12:48:21.547 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36359/api/school/respect/person?since=2026-04-29T08%3A48%3A21.492991839Z&includeRelated=false. 2026-04-29 12:48:23.664 [Test worker @coroutine#231] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:23.665 [Test worker @coroutine#231] INFO io.ktor.server.Application - Application started in 0.041 seconds. 2026-04-29 12:48:23.666 [DefaultDispatcher-worker-1 @coroutine#241] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38935 2026-04-29 12:48:23.667 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38935/playlist/32a84db6-9595-41db-8c58-fd5689aec3d7 2026-04-29 12:48:23.668 [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:38935/playlist/32a84db6-9595-41db-8c58-fd5689aec3d7. 2026-04-29 12:48:23.668 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38935/playlist/32a84db6-9595-41db-8c58-fd5689aec3d7 2026-04-29 12:48:23.670 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 32a84db6-9595-41db-8c58-fd5689aec3d7] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[32a84db6-9595-41db-8c58-fd5689aec3d7]] @ /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=[32a84db6-9595-41db-8c58-fd5689aec3d7]] @ /playlist/{uuid}/(method:GET) 2026-04-29 12:48:23.676 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38935/playlist/32a84db6-9595-41db-8c58-fd5689aec3d7 2026-04-29 12:48:23.676 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38935/playlist/32a84db6-9595-41db-8c58-fd5689aec3d7 2026-04-29 12:48:23.676 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38935/playlist/32a84db6-9595-41db-8c58-fd5689aec3d7 2026-04-29 12:48:23.676 [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:38935/playlist/32a84db6-9595-41db-8c58-fd5689aec3d7. 2026-04-29 12:48:25.841 [Test worker @coroutine#249] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 12:48:25.842 [Test worker @coroutine#249] INFO io.ktor.server.Application - Application started in 0.053 seconds. 2026-04-29 12:48:25.843 [DefaultDispatcher-worker-5 @coroutine#258] INFO io.ktor.server.Application - Responding at http://0.0.0.0:34601 2026-04-29 12:48:25.882 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34601/playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 2026-04-29 12:48:25.883 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@4f265a21 for http://localhost:34601/playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 2026-04-29 12:48:25.883 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34601/playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 2026-04-29 12:48:25.883 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:34601/playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 from class io.ktor.http.content.TextContent 2026-04-29 12:48:25.885 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, dc9f368a-ba08-4a21-bd91-60a61eaf83a3] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[dc9f368a-ba08-4a21-bd91-60a61eaf83a3]] @ /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=[dc9f368a-ba08-4a21-bd91-60a61eaf83a3]] @ /playlist/{uuid}/(method:POST) 2026-04-29 12:48:25.886 [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/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 2026-04-29 12:48:25.887 [DefaultDispatcher-worker-5 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-04-29 12:48:25.888 [DefaultDispatcher-worker-2 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34601/playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 2026-04-29 12:48:25.888 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34601/playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 2026-04-29 12:48:25.888 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34601/playlist/dc9f368a-ba08-4a21-bd91-60a61eaf83a3 2026-04-29 15:47:19.170 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:19.373 [Test worker] INFO io.ktor.server.Application - Application started in 0.434 seconds. 2026-04-29 15:47:19.569 [DefaultDispatcher-worker-1 @coroutine#2] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42681 2026-04-29 15:47:21.118 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42681/resources/index.json 2026-04-29 15:47:21.119 [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:42681/resources/index.json. 2026-04-29 15:47:21.119 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42681/resources/index.json 2026-04-29 15:47:21.552 [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-04-29 15:47:21.723 [DefaultDispatcher-worker-2 @call-handler#12] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 188ms 2026-04-29 15:47:21.745 [DefaultDispatcher-worker-4 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42681/resources/index.json 2026-04-29 15:47:21.752 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42681/resources/index.json 2026-04-29 15:47:21.753 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42681/resources/index.json 2026-04-29 15:47:21.805 [DefaultDispatcher-worker-4 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:42681/resources/index.json. 2026-04-29 15:47:21.954 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42681/resources/index.json 2026-04-29 15:47:21.954 [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:42681/resources/index.json. 2026-04-29 15:47:21.954 [DefaultDispatcher-worker-5 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42681/resources/index.json 2026-04-29 15:47:21.969 [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-04-29 15:47:21.973 [eventLoopGroupProxy-4-1 @call-handler#22] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 9ms 2026-04-29 15:47:21.974 [DefaultDispatcher-worker-4 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42681/resources/index.json 2026-04-29 15:47:21.974 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42681/resources/index.json 2026-04-29 15:47:21.974 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42681/resources/index.json 2026-04-29 15:47:24.055 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:24.056 [Test worker] INFO io.ktor.server.Application - Application started in 0.001 seconds. 2026-04-29 15:47:24.063 [DefaultDispatcher-worker-4 @coroutine#26] INFO io.ktor.server.Application - Responding at http://0.0.0.0:33705 2026-04-29 15:47:24.482 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33705/resources/index.json 2026-04-29 15:47:24.483 [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:33705/resources/index.json. 2026-04-29 15:47:24.483 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33705/resources/index.json 2026-04-29 15:47:24.507 [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-04-29 15:47:24.509 [DefaultDispatcher-worker-2 @call-handler#35] INFO io.ktor.server.Application - 200 OK: GET - /resources/index.json in 3ms 2026-04-29 15:47:24.514 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33705/resources/index.json 2026-04-29 15:47:24.514 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33705/resources/index.json 2026-04-29 15:47:24.514 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33705/resources/index.json 2026-04-29 15:47:24.515 [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:33705/resources/index.json. 2026-04-29 15:47:24.541 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33705/resources/index.json 2026-04-29 15:47:24.542 [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:33705/resources/index.json. 2026-04-29 15:47:24.542 [DefaultDispatcher-worker-6 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33705/resources/index.json 2026-04-29 15:47:24.555 [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-04-29 15:47:24.557 [eventLoopGroupProxy-7-1 @call-handler#45] INFO io.ktor.server.Application - 304 Not Modified: GET - /resources/index.json in 3ms 2026-04-29 15:47:24.560 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33705/resources/index.json 2026-04-29 15:47:24.565 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33705/resources/index.json 2026-04-29 15:47:24.565 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33705/resources/index.json 2026-04-29 15:47:26.646 [Test worker] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:26.649 [Test worker] INFO io.ktor.server.Application - Application started in 0.003 seconds. 2026-04-29 15:47:26.662 [DefaultDispatcher-worker-5 @coroutine#49] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44025 2026-04-29 15:47:26.683 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44025/resources/lesson001.json 2026-04-29 15:47:26.684 [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:44025/resources/lesson001.json. 2026-04-29 15:47:26.684 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44025/resources/lesson001.json 2026-04-29 15:47:26.719 [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-04-29 15:47:26.729 [DefaultDispatcher-worker-5 @call-handler#59] INFO io.ktor.server.Application - 200 OK: GET - /resources/lesson001.json in 10ms 2026-04-29 15:47:26.733 [DefaultDispatcher-worker-6 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44025/resources/lesson001.json 2026-04-29 15:47:26.734 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44025/resources/lesson001.json 2026-04-29 15:47:26.734 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44025/resources/lesson001.json 2026-04-29 15:47:26.744 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:44025/resources/lesson001.json. 2026-04-29 15:47:29.380 [Test worker @coroutine#65] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:29.421 [Test worker @coroutine#65] INFO io.ktor.server.Application - Application started in 0.332 seconds. 2026-04-29 15:47:29.445 [DefaultDispatcher-worker-10 @coroutine#74] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38611 2026-04-29 15:47:29.477 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38611/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:29.478 [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:38611/api/school/respect/schoolpermissiongrant. 2026-04-29 15:47:29.478 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38611/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:29.510 [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-04-29 15:47:29.571 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38611/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:29.571 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38611/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:29.572 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38611/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:29.580 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38611/api/school/respect/schoolpermissiongrant. 2026-04-29 15:47:29.814 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.815 [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:38611/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:29.815 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.826 [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-04-29 15:47:29.927 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.928 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.928 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.931 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38611/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:29.972 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.975 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38611/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:29.975 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.986 [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-04-29 15:47:29.991 [DefaultDispatcher-worker-7 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-04-29 15:47:29.998 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.998 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:29.998 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38611/api/school/respect/person?includeRelated=false 2026-04-29 15:47:32.871 [Test worker @coroutine#94] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:32.875 [Test worker @coroutine#94] INFO io.ktor.server.Application - Application started in 0.258 seconds. 2026-04-29 15:47:32.883 [DefaultDispatcher-worker-3 @coroutine#103] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46061 2026-04-29 15:47:32.886 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46061/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:32.886 [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:46061/api/school/respect/schoolpermissiongrant. 2026-04-29 15:47:32.886 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46061/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:32.906 [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-04-29 15:47:32.910 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46061/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:32.911 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46061/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:32.911 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46061/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:32.912 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46061/api/school/respect/schoolpermissiongrant. 2026-04-29 15:47:33.103 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 15:47:33.104 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-04-29 15:47:33.105 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 15:47:33.114 [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-04-29 15:47:33.125 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 15:47:33.125 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 15:47:33.125 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100 2026-04-29 15:47:33.126 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46061/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100. 2026-04-29 15:47:35.410 [Test worker @coroutine#122] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:35.416 [Test worker @coroutine#122] INFO io.ktor.server.Application - Application started in 0.082 seconds. 2026-04-29 15:47:35.421 [DefaultDispatcher-worker-7 @coroutine#131] INFO io.ktor.server.Application - Responding at http://0.0.0.0:46721 2026-04-29 15:47:35.432 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46721/api/school/respect/person?includeRelated=false 2026-04-29 15:47:35.433 [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:46721/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:35.433 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46721/api/school/respect/person?includeRelated=false 2026-04-29 15:47:35.449 [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-04-29 15:47:35.468 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46721/api/school/respect/person?includeRelated=false 2026-04-29 15:47:35.468 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46721/api/school/respect/person?includeRelated=false 2026-04-29 15:47:35.468 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46721/api/school/respect/person?includeRelated=false 2026-04-29 15:47:35.473 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46721/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:35.588 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46721/api/school/respect/person?since=2026-04-29T11%3A47%3A35.449861393Z&includeRelated=false 2026-04-29 15:47:35.589 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:46721/api/school/respect/person?since=2026-04-29T11%3A47%3A35.449861393Z&includeRelated=false. 2026-04-29 15:47:35.590 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46721/api/school/respect/person?since=2026-04-29T11%3A47%3A35.449861393Z&includeRelated=false 2026-04-29 15:47:35.601 [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-04-29 15:47:35.612 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46721/api/school/respect/person?since=2026-04-29T11%3A47%3A35.449861393Z&includeRelated=false 2026-04-29 15:47:35.613 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46721/api/school/respect/person?since=2026-04-29T11%3A47%3A35.449861393Z&includeRelated=false 2026-04-29 15:47:35.613 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46721/api/school/respect/person?since=2026-04-29T11%3A47%3A35.449861393Z&includeRelated=false 2026-04-29 15:47:35.617 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46721/api/school/respect/person?since=2026-04-29T11%3A47%3A35.449861393Z&includeRelated=false. 2026-04-29 15:47:37.877 [Test worker @coroutine#148] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:37.878 [Test worker @coroutine#148] INFO io.ktor.server.Application - Application started in 0.074 seconds. 2026-04-29 15:47:37.886 [DefaultDispatcher-worker-10 @coroutine#157] INFO io.ktor.server.Application - Responding at http://0.0.0.0:38471 2026-04-29 15:47:37.979 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38471/api/school/respect/person 2026-04-29 15:47:37.981 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@4f29fe58 for http://localhost:38471/api/school/respect/person 2026-04-29 15:47:37.982 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38471/api/school/respect/person 2026-04-29 15:47:37.983 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38471/api/school/respect/person from class io.ktor.http.content.TextContent 2026-04-29 15:47:37.997 [eventLoopGroupProxy-22-1 @call-handler#166] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> SUCCESS @ /api/school/respect/person/(method:POST) Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:POST)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:POST) 2026-04-29 15:47:38.009 [eventLoopGroupProxy-22-1 @call-handler#166] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List) for call /api/school/respect/person 2026-04-29 15:47:38.016 [DefaultDispatcher-worker-7 @call-handler#166] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-04-29 15:47:38.041 [DefaultDispatcher-worker-16 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38471/api/school/respect/person 2026-04-29 15:47:38.041 [DefaultDispatcher-worker-16 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38471/api/school/respect/person 2026-04-29 15:47:38.041 [DefaultDispatcher-worker-16 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38471/api/school/respect/person 2026-04-29 15:47:40.302 [Test worker @coroutine#171] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:40.304 [Test worker @coroutine#171] INFO io.ktor.server.Application - Application started in 0.073 seconds. 2026-04-29 15:47:40.312 [DefaultDispatcher-worker-6 @coroutine#180] INFO io.ktor.server.Application - Responding at http://0.0.0.0:40175 2026-04-29 15:47:40.314 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40175/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:40.320 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40175/api/school/respect/schoolpermissiongrant. 2026-04-29 15:47:40.320 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40175/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:40.327 [eventLoopGroupProxy-25-1 @call-handler#184] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) Matched routes: "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET) 2026-04-29 15:47:40.331 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40175/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:40.331 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40175/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:40.331 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40175/api/school/respect/schoolpermissiongrant 2026-04-29 15:47:40.334 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40175/api/school/respect/schoolpermissiongrant. 2026-04-29 15:47:40.391 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:40.392 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40175/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:40.392 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:40.398 [eventLoopGroupProxy-25-1 @call-handler#190] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-04-29 15:47:40.413 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:40.413 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:40.413 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:40.415 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40175/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:42.435 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:42.435 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40175/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:42.436 [Test worker @coroutine#171] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:42.440 [eventLoopGroupProxy-25-1 @call-handler#197] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person] /, segment:0 -> SUCCESS @ / /api, segment:1 -> SUCCESS @ /api /api/school, segment:2 -> SUCCESS @ /api/school /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET) /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST) /api/school/respect/schoolpermissiongrant, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/schoolpermissiongrant Matched routes: "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)" Routing resolve result: SUCCESS @ /api/school/respect/person/(method:GET) 2026-04-29 15:47:42.449 [Test worker @coroutine#171] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:42.450 [Test worker @coroutine#171] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:42.450 [Test worker @coroutine#171] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40175/api/school/respect/person?includeRelated=false 2026-04-29 15:47:42.452 [Test worker @coroutine#171] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40175/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:44.693 [Test worker @coroutine#203] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:44.697 [Test worker @coroutine#203] INFO io.ktor.server.Application - Application started in 0.079 seconds. 2026-04-29 15:47:44.705 [DefaultDispatcher-worker-6 @coroutine#212] INFO io.ktor.server.Application - Responding at http://0.0.0.0:42945 2026-04-29 15:47:44.712 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42945/api/school/respect/person?includeRelated=false 2026-04-29 15:47:44.712 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42945/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:44.712 [Test worker @coroutine#203] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42945/api/school/respect/person?includeRelated=false 2026-04-29 15:47:44.722 [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-04-29 15:47:44.734 [Test worker @coroutine#203] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42945/api/school/respect/person?includeRelated=false 2026-04-29 15:47:44.735 [Test worker @coroutine#203] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42945/api/school/respect/person?includeRelated=false 2026-04-29 15:47:44.735 [Test worker @coroutine#203] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42945/api/school/respect/person?includeRelated=false 2026-04-29 15:47:44.737 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42945/api/school/respect/person?includeRelated=false. 2026-04-29 15:47:44.826 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42945/api/school/respect/person?since=2026-04-29T11%3A47%3A44.723045922Z&includeRelated=false 2026-04-29 15:47:44.826 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42945/api/school/respect/person?since=2026-04-29T11%3A47%3A44.723045922Z&includeRelated=false. 2026-04-29 15:47:44.826 [Test worker @coroutine#203] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42945/api/school/respect/person?since=2026-04-29T11%3A47%3A44.723045922Z&includeRelated=false 2026-04-29 15:47:44.835 [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-04-29 15:47:44.844 [Test worker @coroutine#203] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42945/api/school/respect/person?since=2026-04-29T11%3A47%3A44.723045922Z&includeRelated=false 2026-04-29 15:47:44.844 [Test worker @coroutine#203] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42945/api/school/respect/person?since=2026-04-29T11%3A47%3A44.723045922Z&includeRelated=false 2026-04-29 15:47:44.844 [Test worker @coroutine#203] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42945/api/school/respect/person?since=2026-04-29T11%3A47%3A44.723045922Z&includeRelated=false 2026-04-29 15:47:44.845 [Test worker @coroutine#203] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42945/api/school/respect/person?since=2026-04-29T11%3A47%3A44.723045922Z&includeRelated=false. 2026-04-29 15:47:47.268 [Test worker @coroutine#230] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:47.272 [Test worker @coroutine#230] INFO io.ktor.server.Application - Application started in 0.118 seconds. 2026-04-29 15:47:47.280 [DefaultDispatcher-worker-4 @coroutine#240] INFO io.ktor.server.Application - Responding at http://0.0.0.0:44821 2026-04-29 15:47:47.284 [Test worker @coroutine#230] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44821/playlist/9754a2a0-b83e-4ce7-a7a1-5fc89775ae11 2026-04-29 15:47:47.284 [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:44821/playlist/9754a2a0-b83e-4ce7-a7a1-5fc89775ae11. 2026-04-29 15:47:47.284 [Test worker @coroutine#230] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44821/playlist/9754a2a0-b83e-4ce7-a7a1-5fc89775ae11 2026-04-29 15:47:47.306 [eventLoopGroupProxy-31-1 @call-handler#244] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 9754a2a0-b83e-4ce7-a7a1-5fc89775ae11] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[9754a2a0-b83e-4ce7-a7a1-5fc89775ae11]] @ /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=[9754a2a0-b83e-4ce7-a7a1-5fc89775ae11]] @ /playlist/{uuid}/(method:GET) 2026-04-29 15:47:47.321 [Test worker @coroutine#230] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44821/playlist/9754a2a0-b83e-4ce7-a7a1-5fc89775ae11 2026-04-29 15:47:47.322 [Test worker @coroutine#230] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44821/playlist/9754a2a0-b83e-4ce7-a7a1-5fc89775ae11 2026-04-29 15:47:47.322 [Test worker @coroutine#230] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44821/playlist/9754a2a0-b83e-4ce7-a7a1-5fc89775ae11 2026-04-29 15:47:47.323 [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:44821/playlist/9754a2a0-b83e-4ce7-a7a1-5fc89775ae11. 2026-04-29 15:47:49.723 [Test worker @coroutine#248] INFO io.ktor.server.Application - Autoreload is disabled because the development mode is off. 2026-04-29 15:47:49.728 [Test worker @coroutine#248] INFO io.ktor.server.Application - Application started in 0.064 seconds. 2026-04-29 15:47:49.734 [DefaultDispatcher-worker-13 @coroutine#257] INFO io.ktor.server.Application - Responding at http://0.0.0.0:43451 2026-04-29 15:47:49.850 [DefaultDispatcher-worker-15 @coroutine#255] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43451/playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 2026-04-29 15:47:49.851 [DefaultDispatcher-worker-15 @coroutine#255] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@1166e6a2 for http://localhost:43451/playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 2026-04-29 15:47:49.851 [DefaultDispatcher-worker-15 @coroutine#255] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43451/playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 2026-04-29 15:47:49.851 [DefaultDispatcher-worker-15 @coroutine#255] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43451/playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 from class io.ktor.http.content.TextContent 2026-04-29 15:47:49.869 [eventLoopGroupProxy-34-1 @call-handler#265] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 3944cfc5-ed59-4aee-a8ff-8ce4d192cf07] /, segment:0 -> SUCCESS @ / /playlist, segment:1 -> SUCCESS @ /playlist /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[3944cfc5-ed59-4aee-a8ff-8ce4d192cf07]] @ /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=[3944cfc5-ed59-4aee-a8ff-8ce4d192cf07]] @ /playlist/{uuid}/(method:POST) 2026-04-29 15:47:49.870 [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/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 2026-04-29 15:47:49.874 [DefaultDispatcher-worker-6 @call-handler#265] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType]. 2026-04-29 15:47:49.880 [DefaultDispatcher-worker-16 @coroutine#255] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43451/playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 2026-04-29 15:47:49.883 [DefaultDispatcher-worker-16 @coroutine#255] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43451/playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07 2026-04-29 15:47:49.883 [DefaultDispatcher-worker-16 @coroutine#255] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43451/playlist/3944cfc5-ed59-4aee-a8ff-8ce4d192cf07