2026-06-29 12:43:05.253 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:05.370 [Test worker] INFO  io.ktor.server.Application - Application started in 0.265 seconds.
2026-06-29 12:43:05.489 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40011
2026-06-29 12:43:06.651 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40011/resources/index.json
2026-06-29 12:43:06.651 [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:40011/resources/index.json.
2026-06-29 12:43:06.651 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40011/resources/index.json
2026-06-29 12:43:06.763 [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-06-29 12:43:06.808 [DefaultDispatcher-worker-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 49ms
2026-06-29 12:43:06.811 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40011/resources/index.json
2026-06-29 12:43:06.814 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40011/resources/index.json
2026-06-29 12:43:06.814 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40011/resources/index.json
2026-06-29 12:43:06.834 [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:40011/resources/index.json.
2026-06-29 12:43:06.861 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40011/resources/index.json
2026-06-29 12:43:06.861 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:40011/resources/index.json.
2026-06-29 12:43:06.861 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40011/resources/index.json
2026-06-29 12:43:06.863 [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-06-29 12:43:06.865 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-29 12:43:06.865 [DefaultDispatcher-worker-3 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40011/resources/index.json
2026-06-29 12:43:06.865 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40011/resources/index.json
2026-06-29 12:43:06.865 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40011/resources/index.json
2026-06-29 12:43:08.881 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:08.882 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-29 12:43:08.883 [DefaultDispatcher-worker-3 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36769
2026-06-29 12:43:08.947 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36769/resources/index.json
2026-06-29 12:43:08.947 [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:36769/resources/index.json.
2026-06-29 12:43:08.947 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36769/resources/index.json
2026-06-29 12:43:08.950 [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-06-29 12:43:08.951 [DefaultDispatcher-worker-5 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-29 12:43:08.952 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36769/resources/index.json
2026-06-29 12:43:08.952 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36769/resources/index.json
2026-06-29 12:43:08.952 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36769/resources/index.json
2026-06-29 12:43:08.953 [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:36769/resources/index.json.
2026-06-29 12:43:08.957 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36769/resources/index.json
2026-06-29 12:43:08.957 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36769/resources/index.json.
2026-06-29 12:43:08.957 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36769/resources/index.json
2026-06-29 12:43:08.958 [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-06-29 12:43:08.959 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-29 12:43:08.959 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36769/resources/index.json
2026-06-29 12:43:08.959 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36769/resources/index.json
2026-06-29 12:43:08.959 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36769/resources/index.json
2026-06-29 12:43:10.967 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:10.967 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-29 12:43:10.968 [DefaultDispatcher-worker-3 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:46465
2026-06-29 12:43:10.974 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46465/resources/lesson001.json
2026-06-29 12:43:10.974 [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:46465/resources/lesson001.json.
2026-06-29 12:43:10.974 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46465/resources/lesson001.json
2026-06-29 12:43:10.977 [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-06-29 12:43:10.978 [DefaultDispatcher-worker-5 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-29 12:43:10.979 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46465/resources/lesson001.json
2026-06-29 12:43:10.979 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46465/resources/lesson001.json
2026-06-29 12:43:10.979 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46465/resources/lesson001.json
2026-06-29 12:43:10.981 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:46465/resources/lesson001.json.
2026-06-29 12:43:13.234 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:13.241 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.1 seconds.
2026-06-29 12:43:13.242 [DefaultDispatcher-worker-1 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43457
2026-06-29 12:43:13.249 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43457/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:13.250 [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:43457/api/school/respect/schoolpermissiongrant.
2026-06-29 12:43:13.250 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43457/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:13.254 [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-06-29 12:43:13.268 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43457/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:13.268 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43457/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:13.268 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43457/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:13.269 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43457/api/school/respect/schoolpermissiongrant.
2026-06-29 12:43:13.329 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.329 [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:43457/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:13.329 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.331 [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-06-29 12:43:13.348 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.348 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.348 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.349 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43457/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:13.354 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.354 [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:43457/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:13.354 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.356 [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-06-29 12:43:13.357 [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-06-29 12:43:13.358 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.358 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:13.358 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43457/api/school/respect/person?includeRelated=false
2026-06-29 12:43:15.467 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:15.468 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-29 12:43:15.470 [DefaultDispatcher-worker-1 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35217
2026-06-29 12:43:15.470 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35217/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:15.471 [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:35217/api/school/respect/schoolpermissiongrant.
2026-06-29 12:43:15.471 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35217/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:15.473 [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-06-29 12:43:15.475 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35217/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:15.475 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35217/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:15.475 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35217/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:15.476 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35217/api/school/respect/schoolpermissiongrant.
2026-06-29 12:43:15.524 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35217/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 12:43:15.524 [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:35217/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-29 12:43:15.524 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35217/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 12:43:15.526 [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-06-29 12:43:15.528 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35217/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 12:43:15.529 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35217/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 12:43:15.529 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35217/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 12:43:15.529 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35217/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-29 12:43:17.730 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:17.731 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.1 seconds.
2026-06-29 12:43:17.732 [DefaultDispatcher-worker-4 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45187
2026-06-29 12:43:17.735 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45187/api/school/respect/person?includeRelated=false
2026-06-29 12:43:17.735 [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:45187/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:17.735 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45187/api/school/respect/person?includeRelated=false
2026-06-29 12:43:17.738 [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-06-29 12:43:17.741 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45187/api/school/respect/person?includeRelated=false
2026-06-29 12:43:17.741 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45187/api/school/respect/person?includeRelated=false
2026-06-29 12:43:17.741 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45187/api/school/respect/person?includeRelated=false
2026-06-29 12:43:17.742 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45187/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:17.819 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45187/api/school/respect/person?since=2026-06-29T08%3A43%3A17.738551028Z&includeRelated=false
2026-06-29 12:43:17.819 [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:45187/api/school/respect/person?since=2026-06-29T08%3A43%3A17.738551028Z&includeRelated=false.
2026-06-29 12:43:17.819 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45187/api/school/respect/person?since=2026-06-29T08%3A43%3A17.738551028Z&includeRelated=false
2026-06-29 12:43:17.820 [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-06-29 12:43:17.824 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45187/api/school/respect/person?since=2026-06-29T08%3A43%3A17.738551028Z&includeRelated=false
2026-06-29 12:43:17.824 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45187/api/school/respect/person?since=2026-06-29T08%3A43%3A17.738551028Z&includeRelated=false
2026-06-29 12:43:17.824 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45187/api/school/respect/person?since=2026-06-29T08%3A43%3A17.738551028Z&includeRelated=false
2026-06-29 12:43:17.824 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45187/api/school/respect/person?since=2026-06-29T08%3A43%3A17.738551028Z&includeRelated=false.
2026-06-29 12:43:19.937 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:19.938 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.041 seconds.
2026-06-29 12:43:19.939 [DefaultDispatcher-worker-2 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:37187
2026-06-29 12:43:19.992 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37187/api/school/respect/person
2026-06-29 12:43:19.993 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@331b165e for http://localhost:37187/api/school/respect/person
2026-06-29 12:43:19.993 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37187/api/school/respect/person
2026-06-29 12:43:19.993 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:37187/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-29 12:43:19.996 [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-06-29 12:43:20.001 [eventLoopGroupProxy-22-1 @call-handler#167] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlin.collections.List<world.respect.datalayer.school.model.Person>) for call /api/school/respect/person
2026-06-29 12:43:20.003 [DefaultDispatcher-worker-2 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-29 12:43:20.004 [DefaultDispatcher-worker-2 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37187/api/school/respect/person
2026-06-29 12:43:20.004 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37187/api/school/respect/person
2026-06-29 12:43:20.004 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37187/api/school/respect/person
2026-06-29 12:43:22.111 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:22.112 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-29 12:43:22.113 [DefaultDispatcher-worker-2 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45695
2026-06-29 12:43:22.114 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45695/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:22.114 [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:45695/api/school/respect/schoolpermissiongrant.
2026-06-29 12:43:22.114 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45695/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:22.116 [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-06-29 12:43:22.118 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45695/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:22.118 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45695/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:22.118 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45695/api/school/respect/schoolpermissiongrant
2026-06-29 12:43:22.118 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45695/api/school/respect/schoolpermissiongrant.
2026-06-29 12:43:22.159 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:22.159 [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:45695/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:22.159 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:22.160 [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-06-29 12:43:22.166 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:22.166 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:22.166 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:22.167 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45695/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:24.172 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:24.172 [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:45695/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:24.172 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:24.173 [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-06-29 12:43:24.176 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:24.176 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:24.176 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45695/api/school/respect/person?includeRelated=false
2026-06-29 12:43:24.177 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45695/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:26.296 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:26.297 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.047 seconds.
2026-06-29 12:43:26.298 [DefaultDispatcher-worker-5 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33291
2026-06-29 12:43:26.300 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33291/api/school/respect/person?includeRelated=false
2026-06-29 12:43:26.300 [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:33291/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:26.300 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33291/api/school/respect/person?includeRelated=false
2026-06-29 12:43:26.302 [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-06-29 12:43:26.306 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33291/api/school/respect/person?includeRelated=false
2026-06-29 12:43:26.307 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33291/api/school/respect/person?includeRelated=false
2026-06-29 12:43:26.307 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33291/api/school/respect/person?includeRelated=false
2026-06-29 12:43:26.307 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33291/api/school/respect/person?includeRelated=false.
2026-06-29 12:43:26.350 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33291/api/school/respect/person?since=2026-06-29T08%3A43%3A26.303137487Z&includeRelated=false
2026-06-29 12:43:26.350 [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:33291/api/school/respect/person?since=2026-06-29T08%3A43%3A26.303137487Z&includeRelated=false.
2026-06-29 12:43:26.350 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33291/api/school/respect/person?since=2026-06-29T08%3A43%3A26.303137487Z&includeRelated=false
2026-06-29 12:43:26.351 [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-06-29 12:43:26.354 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33291/api/school/respect/person?since=2026-06-29T08%3A43%3A26.303137487Z&includeRelated=false
2026-06-29 12:43:26.354 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33291/api/school/respect/person?since=2026-06-29T08%3A43%3A26.303137487Z&includeRelated=false
2026-06-29 12:43:26.354 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33291/api/school/respect/person?since=2026-06-29T08%3A43%3A26.303137487Z&includeRelated=false
2026-06-29 12:43:26.355 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33291/api/school/respect/person?since=2026-06-29T08%3A43%3A26.303137487Z&includeRelated=false.
2026-06-29 12:43:28.474 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:28.475 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.041 seconds.
2026-06-29 12:43:28.476 [DefaultDispatcher-worker-5 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41377
2026-06-29 12:43:28.478 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41377/playlist/44ceb952-14a9-4706-b395-822107b3bab8
2026-06-29 12:43:28.478 [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:41377/playlist/44ceb952-14a9-4706-b395-822107b3bab8.
2026-06-29 12:43:28.478 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41377/playlist/44ceb952-14a9-4706-b395-822107b3bab8
2026-06-29 12:43:28.480 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 44ceb952-14a9-4706-b395-822107b3bab8]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[44ceb952-14a9-4706-b395-822107b3bab8]] @ /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=[44ceb952-14a9-4706-b395-822107b3bab8]] @ /playlist/{uuid}/(method:GET)
2026-06-29 12:43:28.486 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41377/playlist/44ceb952-14a9-4706-b395-822107b3bab8
2026-06-29 12:43:28.486 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41377/playlist/44ceb952-14a9-4706-b395-822107b3bab8
2026-06-29 12:43:28.486 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41377/playlist/44ceb952-14a9-4706-b395-822107b3bab8
2026-06-29 12:43:28.487 [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:41377/playlist/44ceb952-14a9-4706-b395-822107b3bab8.
2026-06-29 12:43:30.616 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:30.617 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-29 12:43:30.618 [DefaultDispatcher-worker-5 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39051
2026-06-29 12:43:30.667 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39051/playlist/7d4b32fa-2867-4da6-a4fd-d2cd298516aa
2026-06-29 12:43:30.667 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3823eb71 for http://localhost:39051/playlist/7d4b32fa-2867-4da6-a4fd-d2cd298516aa
2026-06-29 12:43:30.667 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39051/playlist/7d4b32fa-2867-4da6-a4fd-d2cd298516aa
2026-06-29 12:43:30.668 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:39051/playlist/7d4b32fa-2867-4da6-a4fd-d2cd298516aa from class io.ktor.http.content.TextContent
2026-06-29 12:43:30.670 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 7d4b32fa-2867-4da6-a4fd-d2cd298516aa]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[7d4b32fa-2867-4da6-a4fd-d2cd298516aa]] @ /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=[7d4b32fa-2867-4da6-a4fd-d2cd298516aa]] @ /playlist/{uuid}/(method:POST)
2026-06-29 12:43:30.670 [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/7d4b32fa-2867-4da6-a4fd-d2cd298516aa
2026-06-29 12:43:30.671 [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/7d4b32fa-2867-4da6-a4fd-d2cd298516aa request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-29 12:43:30.672 [DefaultDispatcher-worker-10 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39051/playlist/7d4b32fa-2867-4da6-a4fd-d2cd298516aa
2026-06-29 12:43:30.672 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39051/playlist/7d4b32fa-2867-4da6-a4fd-d2cd298516aa
2026-06-29 12:43:30.672 [DefaultDispatcher-worker-10 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39051/playlist/7d4b32fa-2867-4da6-a4fd-d2cd298516aa
2026-06-29 12:43:32.779 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:32.780 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-29 12:43:32.781 [DefaultDispatcher-worker-10 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39851
2026-06-29 12:43:32.864 [DefaultDispatcher-worker-10 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39851/api/school/xapi/statements
2026-06-29 12:43:32.865 [DefaultDispatcher-worker-10 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@2d1b3178 for http://localhost:39851/api/school/xapi/statements
2026-06-29 12:43:32.865 [DefaultDispatcher-worker-10 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39851/api/school/xapi/statements
2026-06-29 12:43:32.865 [DefaultDispatcher-worker-10 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:39851/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-29 12:43:32.868 [eventLoopGroupProxy-37-1 @call-handler#290] TRACE io.ktor.server.routing.Routing - Trace for [api, school, xapi, statements]
/, segment:0 -> SUCCESS @ /
  /api, segment:1 -> SUCCESS @ /api
    /api/school, segment:2 -> SUCCESS @ /api/school
      /api/school/xapi, segment:3 -> SUCCESS @ /api/school/xapi
        /api/school/xapi/statements, segment:4 -> SUCCESS @ /api/school/xapi/statements
          /api/school/xapi/statements/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/xapi/statements/(method:GET)
          /api/school/xapi/statements/(method:POST), segment:4 -> SUCCESS @ /api/school/xapi/statements/(method:POST)
Matched routes:
  "" -> "api" -> "school" -> "xapi" -> "statements" -> "(method:POST)"
Routing resolve result:
  SUCCESS @ /api/school/xapi/statements/(method:POST)
2026-06-29 12:43:32.868 [eventLoopGroupProxy-37-1 @call-handler#290] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlinx.serialization.json.JsonElement) for call /api/school/xapi/statements
2026-06-29 12:43:32.881 [DefaultDispatcher-worker-2 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39851/api/school/xapi/statements
2026-06-29 12:43:32.881 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39851/api/school/xapi/statements
2026-06-29 12:43:32.881 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39851/api/school/xapi/statements
2026-06-29 12:43:32.882 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39851/api/school/xapi/statements.
2026-06-29 12:43:34.975 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 12:43:34.976 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-29 12:43:34.977 [DefaultDispatcher-worker-2 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43887
2026-06-29 12:43:35.023 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43887/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 12:43:35.023 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43887/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-29 12:43:35.023 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43887/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 12:43:35.025 [eventLoopGroupProxy-40-1 @call-handler#313] TRACE io.ktor.server.routing.Routing - Trace for [api, school, xapi, statements]
/, segment:0 -> SUCCESS @ /
  /api, segment:1 -> SUCCESS @ /api
    /api/school, segment:2 -> SUCCESS @ /api/school
      /api/school/xapi, segment:3 -> SUCCESS @ /api/school/xapi
        /api/school/xapi/statements, segment:4 -> SUCCESS @ /api/school/xapi/statements
          /api/school/xapi/statements/(method:GET), segment:4 -> SUCCESS @ /api/school/xapi/statements/(method:GET)
          /api/school/xapi/statements/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/xapi/statements/(method:POST)
Matched routes:
  "" -> "api" -> "school" -> "xapi" -> "statements" -> "(method:GET)"
Routing resolve result:
  SUCCESS @ /api/school/xapi/statements/(method:GET)
2026-06-29 12:43:35.029 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43887/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 12:43:35.029 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43887/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 12:43:35.029 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43887/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 12:43:35.030 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.xapi.model.XapiStatementResult for http://localhost:43887/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-29 13:47:16.129 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:16.312 [Test worker] INFO  io.ktor.server.Application - Application started in 0.353 seconds.
2026-06-29 13:47:16.405 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39873
2026-06-29 13:47:17.211 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39873/resources/index.json
2026-06-29 13:47:17.212 [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:39873/resources/index.json.
2026-06-29 13:47:17.212 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39873/resources/index.json
2026-06-29 13:47:17.322 [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-06-29 13:47:17.385 [DefaultDispatcher-worker-2 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 70ms
2026-06-29 13:47:17.391 [DefaultDispatcher-worker-3 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39873/resources/index.json
2026-06-29 13:47:17.394 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39873/resources/index.json
2026-06-29 13:47:17.394 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39873/resources/index.json
2026-06-29 13:47:17.416 [DefaultDispatcher-worker-3 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:39873/resources/index.json.
2026-06-29 13:47:17.448 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39873/resources/index.json
2026-06-29 13:47:17.448 [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:39873/resources/index.json.
2026-06-29 13:47:17.448 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39873/resources/index.json
2026-06-29 13:47:17.450 [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-06-29 13:47:17.452 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-29 13:47:17.453 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39873/resources/index.json
2026-06-29 13:47:17.453 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39873/resources/index.json
2026-06-29 13:47:17.453 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39873/resources/index.json
2026-06-29 13:47:19.465 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:19.465 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-29 13:47:19.467 [DefaultDispatcher-worker-1 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38665
2026-06-29 13:47:19.552 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38665/resources/index.json
2026-06-29 13:47:19.552 [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:38665/resources/index.json.
2026-06-29 13:47:19.552 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38665/resources/index.json
2026-06-29 13:47:19.555 [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-06-29 13:47:19.556 [eventLoopGroupProxy-7-1 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-29 13:47:19.557 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38665/resources/index.json
2026-06-29 13:47:19.557 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38665/resources/index.json
2026-06-29 13:47:19.557 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38665/resources/index.json
2026-06-29 13:47:19.558 [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:38665/resources/index.json.
2026-06-29 13:47:19.561 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38665/resources/index.json
2026-06-29 13:47:19.561 [DefaultDispatcher-worker-1 @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:38665/resources/index.json.
2026-06-29 13:47:19.561 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38665/resources/index.json
2026-06-29 13:47:19.563 [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-06-29 13:47:19.563 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 0ms
2026-06-29 13:47:19.563 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38665/resources/index.json
2026-06-29 13:47:19.564 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38665/resources/index.json
2026-06-29 13:47:19.564 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38665/resources/index.json
2026-06-29 13:47:21.569 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:21.570 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-29 13:47:21.571 [DefaultDispatcher-worker-5 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36925
2026-06-29 13:47:21.575 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36925/resources/lesson001.json
2026-06-29 13:47:21.575 [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:36925/resources/lesson001.json.
2026-06-29 13:47:21.575 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36925/resources/lesson001.json
2026-06-29 13:47:21.578 [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-06-29 13:47:21.579 [eventLoopGroupProxy-10-1 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-29 13:47:21.579 [DefaultDispatcher-worker-6 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36925/resources/lesson001.json
2026-06-29 13:47:21.580 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36925/resources/lesson001.json
2026-06-29 13:47:21.580 [DefaultDispatcher-worker-6 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36925/resources/lesson001.json
2026-06-29 13:47:21.582 [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:36925/resources/lesson001.json.
2026-06-29 13:47:23.853 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:23.860 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.095 seconds.
2026-06-29 13:47:23.862 [DefaultDispatcher-worker-5 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36963
2026-06-29 13:47:23.871 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36963/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:23.871 [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:36963/api/school/respect/schoolpermissiongrant.
2026-06-29 13:47:23.871 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36963/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:23.876 [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-06-29 13:47:23.889 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36963/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:23.890 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36963/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:23.890 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36963/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:23.891 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36963/api/school/respect/schoolpermissiongrant.
2026-06-29 13:47:23.952 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.953 [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:36963/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:23.953 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.954 [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-06-29 13:47:23.973 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.973 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.974 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.975 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36963/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:23.980 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.981 [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:36963/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:23.981 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.982 [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-06-29 13:47:23.984 [DefaultDispatcher-worker-6 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-29 13:47:23.985 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.985 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:23.986 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36963/api/school/respect/person?includeRelated=false
2026-06-29 13:47:26.237 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:26.238 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.085 seconds.
2026-06-29 13:47:26.242 [DefaultDispatcher-worker-1 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36593
2026-06-29 13:47:26.244 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36593/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:26.244 [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:36593/api/school/respect/schoolpermissiongrant.
2026-06-29 13:47:26.244 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36593/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:26.264 [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-06-29 13:47:26.273 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36593/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:26.273 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36593/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:26.273 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36593/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:26.274 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36593/api/school/respect/schoolpermissiongrant.
2026-06-29 13:47:26.399 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36593/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 13:47:26.399 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36593/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-29 13:47:26.399 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36593/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 13:47:26.406 [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-06-29 13:47:26.422 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36593/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 13:47:26.422 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36593/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 13:47:26.422 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36593/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-29 13:47:26.428 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36593/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-29 13:47:28.658 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:28.663 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.06 seconds.
2026-06-29 13:47:28.669 [DefaultDispatcher-worker-4 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35939
2026-06-29 13:47:28.679 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35939/api/school/respect/person?includeRelated=false
2026-06-29 13:47:28.679 [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:35939/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:28.680 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35939/api/school/respect/person?includeRelated=false
2026-06-29 13:47:28.698 [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-06-29 13:47:28.711 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35939/api/school/respect/person?includeRelated=false
2026-06-29 13:47:28.712 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35939/api/school/respect/person?includeRelated=false
2026-06-29 13:47:28.712 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35939/api/school/respect/person?includeRelated=false
2026-06-29 13:47:28.714 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35939/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:28.820 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35939/api/school/respect/person?since=2026-06-29T09%3A47%3A28.699470305Z&includeRelated=false
2026-06-29 13:47:28.820 [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:35939/api/school/respect/person?since=2026-06-29T09%3A47%3A28.699470305Z&includeRelated=false.
2026-06-29 13:47:28.820 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35939/api/school/respect/person?since=2026-06-29T09%3A47%3A28.699470305Z&includeRelated=false
2026-06-29 13:47:28.822 [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-06-29 13:47:28.835 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35939/api/school/respect/person?since=2026-06-29T09%3A47%3A28.699470305Z&includeRelated=false
2026-06-29 13:47:28.836 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35939/api/school/respect/person?since=2026-06-29T09%3A47%3A28.699470305Z&includeRelated=false
2026-06-29 13:47:28.837 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35939/api/school/respect/person?since=2026-06-29T09%3A47%3A28.699470305Z&includeRelated=false
2026-06-29 13:47:28.841 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35939/api/school/respect/person?since=2026-06-29T09%3A47%3A28.699470305Z&includeRelated=false.
2026-06-29 13:47:31.070 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:31.071 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.085 seconds.
2026-06-29 13:47:31.075 [DefaultDispatcher-worker-7 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41531
2026-06-29 13:47:31.171 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41531/api/school/respect/person
2026-06-29 13:47:31.172 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@86fb503 for http://localhost:41531/api/school/respect/person
2026-06-29 13:47:31.172 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41531/api/school/respect/person
2026-06-29 13:47:31.172 [DefaultDispatcher-worker-6 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:41531/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-29 13:47:31.189 [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-06-29 13:47:31.208 [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<world.respect.datalayer.school.model.Person>) for call /api/school/respect/person
2026-06-29 13:47:31.211 [DefaultDispatcher-worker-6 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-29 13:47:31.218 [DefaultDispatcher-worker-10 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41531/api/school/respect/person
2026-06-29 13:47:31.218 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41531/api/school/respect/person
2026-06-29 13:47:31.218 [DefaultDispatcher-worker-10 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41531/api/school/respect/person
2026-06-29 13:47:33.407 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:33.409 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.057 seconds.
2026-06-29 13:47:33.415 [DefaultDispatcher-worker-10 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39487
2026-06-29 13:47:33.416 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39487/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:33.416 [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:39487/api/school/respect/schoolpermissiongrant.
2026-06-29 13:47:33.416 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39487/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:33.423 [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-06-29 13:47:33.430 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39487/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:33.430 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39487/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:33.430 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39487/api/school/respect/schoolpermissiongrant
2026-06-29 13:47:33.431 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39487/api/school/respect/schoolpermissiongrant.
2026-06-29 13:47:33.514 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:33.514 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39487/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:33.514 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:33.518 [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-06-29 13:47:33.529 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:33.530 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:33.530 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:33.532 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39487/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:35.541 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:35.541 [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:39487/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:35.541 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:35.542 [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-06-29 13:47:35.545 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:35.546 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:35.546 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39487/api/school/respect/person?includeRelated=false
2026-06-29 13:47:35.546 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39487/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:37.712 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:37.713 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.073 seconds.
2026-06-29 13:47:37.715 [DefaultDispatcher-worker-10 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39675
2026-06-29 13:47:37.719 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39675/api/school/respect/person?includeRelated=false
2026-06-29 13:47:37.719 [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:39675/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:37.719 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39675/api/school/respect/person?includeRelated=false
2026-06-29 13:47:37.722 [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-06-29 13:47:37.727 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39675/api/school/respect/person?includeRelated=false
2026-06-29 13:47:37.728 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39675/api/school/respect/person?includeRelated=false
2026-06-29 13:47:37.728 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39675/api/school/respect/person?includeRelated=false
2026-06-29 13:47:37.729 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39675/api/school/respect/person?includeRelated=false.
2026-06-29 13:47:37.801 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39675/api/school/respect/person?since=2026-06-29T09%3A47%3A37.723075109Z&includeRelated=false
2026-06-29 13:47:37.801 [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:39675/api/school/respect/person?since=2026-06-29T09%3A47%3A37.723075109Z&includeRelated=false.
2026-06-29 13:47:37.801 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39675/api/school/respect/person?since=2026-06-29T09%3A47%3A37.723075109Z&includeRelated=false
2026-06-29 13:47:37.810 [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-06-29 13:47:37.818 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39675/api/school/respect/person?since=2026-06-29T09%3A47%3A37.723075109Z&includeRelated=false
2026-06-29 13:47:37.818 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39675/api/school/respect/person?since=2026-06-29T09%3A47%3A37.723075109Z&includeRelated=false
2026-06-29 13:47:37.819 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39675/api/school/respect/person?since=2026-06-29T09%3A47%3A37.723075109Z&includeRelated=false
2026-06-29 13:47:37.820 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39675/api/school/respect/person?since=2026-06-29T09%3A47%3A37.723075109Z&includeRelated=false.
2026-06-29 13:47:40.065 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:40.067 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.073 seconds.
2026-06-29 13:47:40.073 [DefaultDispatcher-worker-11 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39027
2026-06-29 13:47:40.077 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39027/playlist/c970e0aa-52b8-492a-8610-0787431afad7
2026-06-29 13:47:40.078 [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:39027/playlist/c970e0aa-52b8-492a-8610-0787431afad7.
2026-06-29 13:47:40.078 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39027/playlist/c970e0aa-52b8-492a-8610-0787431afad7
2026-06-29 13:47:40.091 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, c970e0aa-52b8-492a-8610-0787431afad7]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[c970e0aa-52b8-492a-8610-0787431afad7]] @ /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=[c970e0aa-52b8-492a-8610-0787431afad7]] @ /playlist/{uuid}/(method:GET)
2026-06-29 13:47:40.112 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39027/playlist/c970e0aa-52b8-492a-8610-0787431afad7
2026-06-29 13:47:40.113 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39027/playlist/c970e0aa-52b8-492a-8610-0787431afad7
2026-06-29 13:47:40.114 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39027/playlist/c970e0aa-52b8-492a-8610-0787431afad7
2026-06-29 13:47:40.116 [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:39027/playlist/c970e0aa-52b8-492a-8610-0787431afad7.
2026-06-29 13:47:42.372 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:42.373 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.066 seconds.
2026-06-29 13:47:42.379 [DefaultDispatcher-worker-5 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44139
2026-06-29 13:47:42.457 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44139/playlist/3f10e1fe-3f74-4bed-8ab5-341da3489c2d
2026-06-29 13:47:42.457 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@32b5f020 for http://localhost:44139/playlist/3f10e1fe-3f74-4bed-8ab5-341da3489c2d
2026-06-29 13:47:42.457 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44139/playlist/3f10e1fe-3f74-4bed-8ab5-341da3489c2d
2026-06-29 13:47:42.458 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:44139/playlist/3f10e1fe-3f74-4bed-8ab5-341da3489c2d from class io.ktor.http.content.TextContent
2026-06-29 13:47:42.462 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 3f10e1fe-3f74-4bed-8ab5-341da3489c2d]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[3f10e1fe-3f74-4bed-8ab5-341da3489c2d]] @ /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=[3f10e1fe-3f74-4bed-8ab5-341da3489c2d]] @ /playlist/{uuid}/(method:POST)
2026-06-29 13:47:42.463 [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/3f10e1fe-3f74-4bed-8ab5-341da3489c2d
2026-06-29 13:47:42.468 [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/3f10e1fe-3f74-4bed-8ab5-341da3489c2d request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-29 13:47:42.470 [DefaultDispatcher-worker-5 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44139/playlist/3f10e1fe-3f74-4bed-8ab5-341da3489c2d
2026-06-29 13:47:42.471 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44139/playlist/3f10e1fe-3f74-4bed-8ab5-341da3489c2d
2026-06-29 13:47:42.471 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44139/playlist/3f10e1fe-3f74-4bed-8ab5-341da3489c2d
2026-06-29 13:47:44.656 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:44.661 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.072 seconds.
2026-06-29 13:47:44.668 [DefaultDispatcher-worker-9 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:46399
2026-06-29 13:47:44.859 [DefaultDispatcher-worker-9 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46399/api/school/xapi/statements
2026-06-29 13:47:44.861 [DefaultDispatcher-worker-9 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@687524e3 for http://localhost:46399/api/school/xapi/statements
2026-06-29 13:47:44.862 [DefaultDispatcher-worker-9 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46399/api/school/xapi/statements
2026-06-29 13:47:44.862 [DefaultDispatcher-worker-9 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:46399/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-29 13:47:44.866 [eventLoopGroupProxy-37-1 @call-handler#290] TRACE io.ktor.server.routing.Routing - Trace for [api, school, xapi, statements]
/, segment:0 -> SUCCESS @ /
  /api, segment:1 -> SUCCESS @ /api
    /api/school, segment:2 -> SUCCESS @ /api/school
      /api/school/xapi, segment:3 -> SUCCESS @ /api/school/xapi
        /api/school/xapi/statements, segment:4 -> SUCCESS @ /api/school/xapi/statements
          /api/school/xapi/statements/(method:GET), segment:4 -> FAILURE "Selector didn't match" @ /api/school/xapi/statements/(method:GET)
          /api/school/xapi/statements/(method:POST), segment:4 -> SUCCESS @ /api/school/xapi/statements/(method:POST)
Matched routes:
  "" -> "api" -> "school" -> "xapi" -> "statements" -> "(method:POST)"
Routing resolve result:
  SUCCESS @ /api/school/xapi/statements/(method:POST)
2026-06-29 13:47:44.867 [eventLoopGroupProxy-37-1 @call-handler#290] TRACE i.k.server.engine.DefaultTransform - No Default Transformations found for class io.ktor.utils.io.ByteChannel and expected type TypeInfo(kotlinx.serialization.json.JsonElement) for call /api/school/xapi/statements
2026-06-29 13:47:44.889 [DefaultDispatcher-worker-8 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46399/api/school/xapi/statements
2026-06-29 13:47:44.889 [DefaultDispatcher-worker-10 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46399/api/school/xapi/statements
2026-06-29 13:47:44.891 [DefaultDispatcher-worker-10 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46399/api/school/xapi/statements
2026-06-29 13:47:44.892 [DefaultDispatcher-worker-10 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46399/api/school/xapi/statements.
2026-06-29 13:47:47.008 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-29 13:47:47.009 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-29 13:47:47.010 [DefaultDispatcher-worker-10 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41913
2026-06-29 13:47:47.057 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41913/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 13:47:47.057 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41913/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-29 13:47:47.057 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41913/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 13:47:47.059 [eventLoopGroupProxy-40-1 @call-handler#313] TRACE io.ktor.server.routing.Routing - Trace for [api, school, xapi, statements]
/, segment:0 -> SUCCESS @ /
  /api, segment:1 -> SUCCESS @ /api
    /api/school, segment:2 -> SUCCESS @ /api/school
      /api/school/xapi, segment:3 -> SUCCESS @ /api/school/xapi
        /api/school/xapi/statements, segment:4 -> SUCCESS @ /api/school/xapi/statements
          /api/school/xapi/statements/(method:GET), segment:4 -> SUCCESS @ /api/school/xapi/statements/(method:GET)
          /api/school/xapi/statements/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/xapi/statements/(method:POST)
Matched routes:
  "" -> "api" -> "school" -> "xapi" -> "statements" -> "(method:GET)"
Routing resolve result:
  SUCCESS @ /api/school/xapi/statements/(method:GET)
2026-06-29 13:47:47.063 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41913/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 13:47:47.063 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41913/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 13:47:47.063 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41913/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-29 13:47:47.064 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.xapi.model.XapiStatementResult for http://localhost:41913/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
