2026-06-30 07:01:31.565 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:31.739 [Test worker] INFO  io.ktor.server.Application - Application started in 0.335 seconds.
2026-06-30 07:01:31.862 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41995
2026-06-30 07:01:32.880 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41995/resources/index.json
2026-06-30 07:01:32.881 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41995/resources/index.json.
2026-06-30 07:01:32.881 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41995/resources/index.json
2026-06-30 07:01:33.000 [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-30 07:01:33.042 [DefaultDispatcher-worker-3 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 47ms
2026-06-30 07:01:33.045 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41995/resources/index.json
2026-06-30 07:01:33.046 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41995/resources/index.json
2026-06-30 07:01:33.047 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41995/resources/index.json
2026-06-30 07:01:33.065 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:41995/resources/index.json.
2026-06-30 07:01:33.094 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41995/resources/index.json
2026-06-30 07:01:33.094 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41995/resources/index.json.
2026-06-30 07:01:33.094 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41995/resources/index.json
2026-06-30 07:01:33.096 [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-30 07:01:33.097 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 07:01:33.098 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41995/resources/index.json
2026-06-30 07:01:33.098 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41995/resources/index.json
2026-06-30 07:01:33.098 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41995/resources/index.json
2026-06-30 07:01:34.104 [eventLoopGroupProxy-3-1] WARN  i.n.u.c.AbstractEventExecutor - A task raised an exception. Task: io.netty.channel.AbstractChannel$AbstractUnsafe$8@2195f1e2
java.util.concurrent.RejectedExecutionException: event executor terminated
	at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:1005)
	at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:388)
	at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:381)
	at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:907)
	at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:873)
	at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:863)
	at io.netty.channel.DefaultChannelPipeline.destroyUp(DefaultChannelPipeline.java:816)
	at io.netty.channel.DefaultChannelPipeline.destroy(DefaultChannelPipeline.java:801)
	at io.netty.channel.DefaultChannelPipeline.access$700(DefaultChannelPipeline.java:45)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelUnregistered(DefaultChannelPipeline.java:1411)
	at io.netty.channel.DefaultChannelPipeline.fireChannelUnregistered(DefaultChannelPipeline.java:780)
	at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:692)
	at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:148)
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:141)
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:507)
	at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:183)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1073)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:1583)
2026-06-30 07:01:35.111 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:35.111 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 07:01:35.112 [DefaultDispatcher-worker-3 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41575
2026-06-30 07:01:35.176 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41575/resources/index.json
2026-06-30 07:01:35.176 [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:41575/resources/index.json.
2026-06-30 07:01:35.176 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41575/resources/index.json
2026-06-30 07:01:35.179 [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-30 07:01:35.180 [DefaultDispatcher-worker-1 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 07:01:35.180 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41575/resources/index.json
2026-06-30 07:01:35.181 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41575/resources/index.json
2026-06-30 07:01:35.181 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41575/resources/index.json
2026-06-30 07:01:35.181 [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:41575/resources/index.json.
2026-06-30 07:01:35.186 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41575/resources/index.json
2026-06-30 07:01:35.186 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41575/resources/index.json.
2026-06-30 07:01:35.186 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41575/resources/index.json
2026-06-30 07:01:35.187 [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-30 07:01:35.188 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 07:01:35.188 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41575/resources/index.json
2026-06-30 07:01:35.188 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41575/resources/index.json
2026-06-30 07:01:35.188 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41575/resources/index.json
2026-06-30 07:01:37.194 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:37.195 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 07:01:37.196 [DefaultDispatcher-worker-1 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:46781
2026-06-30 07:01:37.201 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46781/resources/lesson001.json
2026-06-30 07:01:37.201 [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:46781/resources/lesson001.json.
2026-06-30 07:01:37.201 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46781/resources/lesson001.json
2026-06-30 07:01:37.204 [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-30 07:01:37.205 [DefaultDispatcher-worker-4 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 07:01:37.206 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46781/resources/lesson001.json
2026-06-30 07:01:37.206 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46781/resources/lesson001.json
2026-06-30 07:01:37.206 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46781/resources/lesson001.json
2026-06-30 07:01:37.209 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:46781/resources/lesson001.json.
2026-06-30 07:01:39.441 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:39.448 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.101 seconds.
2026-06-30 07:01:39.450 [DefaultDispatcher-worker-1 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42233
2026-06-30 07:01:39.458 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:39.458 [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:42233/api/school/respect/schoolpermissiongrant.
2026-06-30 07:01:39.458 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:39.463 [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-30 07:01:39.476 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:39.476 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:39.476 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:39.478 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42233/api/school/respect/schoolpermissiongrant.
2026-06-30 07:01:39.538 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.538 [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:42233/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:39.538 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.540 [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-30 07:01:39.557 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.558 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.558 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.559 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42233/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:39.565 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.565 [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:42233/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:39.565 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.567 [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-30 07:01:39.569 [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-30 07:01:39.569 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.569 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:39.569 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42233/api/school/respect/person?includeRelated=false
2026-06-30 07:01:41.685 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:41.686 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.045 seconds.
2026-06-30 07:01:41.687 [DefaultDispatcher-worker-1 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41233
2026-06-30 07:01:41.688 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:41.688 [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:41233/api/school/respect/schoolpermissiongrant.
2026-06-30 07:01:41.688 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:41.691 [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-30 07:01:41.693 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:41.693 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:41.693 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41233/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:41.693 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41233/api/school/respect/schoolpermissiongrant.
2026-06-30 07:01:41.749 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41233/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 07:01:41.750 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41233/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 07:01:41.750 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41233/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 07:01:41.751 [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-30 07:01:41.754 [DefaultDispatcher-worker-1 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41233/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 07:01:41.754 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41233/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 07:01:41.754 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41233/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 07:01:41.755 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41233/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 07:01:43.846 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:43.847 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 07:01:43.848 [DefaultDispatcher-worker-3 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43749
2026-06-30 07:01:43.850 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:43.850 [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:43749/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:43.850 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:43.853 [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-30 07:01:43.856 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:43.856 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:43.856 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:43.857 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43749/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:43.908 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43749/api/school/respect/person?since=2026-06-30T03%3A01%3A43.853696254Z&includeRelated=false
2026-06-30 07:01:43.908 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43749/api/school/respect/person?since=2026-06-30T03%3A01%3A43.853696254Z&includeRelated=false.
2026-06-30 07:01:43.908 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43749/api/school/respect/person?since=2026-06-30T03%3A01%3A43.853696254Z&includeRelated=false
2026-06-30 07:01:43.910 [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-30 07:01:43.912 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43749/api/school/respect/person?since=2026-06-30T03%3A01%3A43.853696254Z&includeRelated=false
2026-06-30 07:01:43.913 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43749/api/school/respect/person?since=2026-06-30T03%3A01%3A43.853696254Z&includeRelated=false
2026-06-30 07:01:43.913 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43749/api/school/respect/person?since=2026-06-30T03%3A01%3A43.853696254Z&includeRelated=false
2026-06-30 07:01:43.913 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43749/api/school/respect/person?since=2026-06-30T03%3A01%3A43.853696254Z&includeRelated=false.
2026-06-30 07:01:46.032 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:46.033 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 07:01:46.034 [DefaultDispatcher-worker-3 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39919
2026-06-30 07:01:46.077 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39919/api/school/respect/person
2026-06-30 07:01:46.077 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@299cb64e for http://localhost:39919/api/school/respect/person
2026-06-30 07:01:46.077 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39919/api/school/respect/person
2026-06-30 07:01:46.077 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:39919/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 07:01:46.081 [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-30 07:01:46.086 [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-30 07:01:46.088 [DefaultDispatcher-worker-5 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 07:01:46.089 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39919/api/school/respect/person
2026-06-30 07:01:46.089 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39919/api/school/respect/person
2026-06-30 07:01:46.089 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39919/api/school/respect/person
2026-06-30 07:01:48.204 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:48.204 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 07:01:48.205 [DefaultDispatcher-worker-2 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38959
2026-06-30 07:01:48.206 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38959/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:48.206 [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:38959/api/school/respect/schoolpermissiongrant.
2026-06-30 07:01:48.206 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38959/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:48.209 [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-30 07:01:48.211 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38959/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:48.211 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38959/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:48.211 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38959/api/school/respect/schoolpermissiongrant
2026-06-30 07:01:48.211 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38959/api/school/respect/schoolpermissiongrant.
2026-06-30 07:01:48.252 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:48.252 [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:38959/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:48.252 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:48.253 [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-30 07:01:48.258 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:48.258 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:48.258 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:48.259 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38959/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:50.264 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:50.264 [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:38959/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:50.264 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:50.266 [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-30 07:01:50.269 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:50.269 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:50.269 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38959/api/school/respect/person?includeRelated=false
2026-06-30 07:01:50.269 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38959/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:52.385 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:52.386 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 07:01:52.387 [DefaultDispatcher-worker-5 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:46749
2026-06-30 07:01:52.389 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:52.389 [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:46749/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:52.389 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:52.392 [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-30 07:01:52.395 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:52.395 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:52.395 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46749/api/school/respect/person?includeRelated=false
2026-06-30 07:01:52.396 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46749/api/school/respect/person?includeRelated=false.
2026-06-30 07:01:52.439 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46749/api/school/respect/person?since=2026-06-30T03%3A01%3A52.392564702Z&includeRelated=false
2026-06-30 07:01:52.439 [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:46749/api/school/respect/person?since=2026-06-30T03%3A01%3A52.392564702Z&includeRelated=false.
2026-06-30 07:01:52.439 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46749/api/school/respect/person?since=2026-06-30T03%3A01%3A52.392564702Z&includeRelated=false
2026-06-30 07:01:52.440 [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-30 07:01:52.443 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46749/api/school/respect/person?since=2026-06-30T03%3A01%3A52.392564702Z&includeRelated=false
2026-06-30 07:01:52.443 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46749/api/school/respect/person?since=2026-06-30T03%3A01%3A52.392564702Z&includeRelated=false
2026-06-30 07:01:52.443 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46749/api/school/respect/person?since=2026-06-30T03%3A01%3A52.392564702Z&includeRelated=false
2026-06-30 07:01:52.443 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46749/api/school/respect/person?since=2026-06-30T03%3A01%3A52.392564702Z&includeRelated=false.
2026-06-30 07:01:54.630 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:54.631 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.083 seconds.
2026-06-30 07:01:54.632 [DefaultDispatcher-worker-3 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44937
2026-06-30 07:01:54.634 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44937/playlist/792c5984-cbb4-4c2f-b476-5d4df80f0fdb
2026-06-30 07:01:54.634 [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:44937/playlist/792c5984-cbb4-4c2f-b476-5d4df80f0fdb.
2026-06-30 07:01:54.634 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44937/playlist/792c5984-cbb4-4c2f-b476-5d4df80f0fdb
2026-06-30 07:01:54.637 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 792c5984-cbb4-4c2f-b476-5d4df80f0fdb]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[792c5984-cbb4-4c2f-b476-5d4df80f0fdb]] @ /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=[792c5984-cbb4-4c2f-b476-5d4df80f0fdb]] @ /playlist/{uuid}/(method:GET)
2026-06-30 07:01:54.642 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44937/playlist/792c5984-cbb4-4c2f-b476-5d4df80f0fdb
2026-06-30 07:01:54.642 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44937/playlist/792c5984-cbb4-4c2f-b476-5d4df80f0fdb
2026-06-30 07:01:54.642 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44937/playlist/792c5984-cbb4-4c2f-b476-5d4df80f0fdb
2026-06-30 07:01:54.643 [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:44937/playlist/792c5984-cbb4-4c2f-b476-5d4df80f0fdb.
2026-06-30 07:01:56.854 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:56.854 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 07:01:56.855 [DefaultDispatcher-worker-2 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38709
2026-06-30 07:01:56.897 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38709/playlist/a0702d19-4052-4475-b3bc-ecfbe092b305
2026-06-30 07:01:56.898 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5dc77c4e for http://localhost:38709/playlist/a0702d19-4052-4475-b3bc-ecfbe092b305
2026-06-30 07:01:56.898 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38709/playlist/a0702d19-4052-4475-b3bc-ecfbe092b305
2026-06-30 07:01:56.898 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38709/playlist/a0702d19-4052-4475-b3bc-ecfbe092b305 from class io.ktor.http.content.TextContent
2026-06-30 07:01:56.900 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, a0702d19-4052-4475-b3bc-ecfbe092b305]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[a0702d19-4052-4475-b3bc-ecfbe092b305]] @ /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=[a0702d19-4052-4475-b3bc-ecfbe092b305]] @ /playlist/{uuid}/(method:POST)
2026-06-30 07:01:56.900 [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/a0702d19-4052-4475-b3bc-ecfbe092b305
2026-06-30 07:01:56.901 [DefaultDispatcher-worker-3 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/a0702d19-4052-4475-b3bc-ecfbe092b305 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 07:01:56.902 [DefaultDispatcher-worker-8 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38709/playlist/a0702d19-4052-4475-b3bc-ecfbe092b305
2026-06-30 07:01:56.902 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38709/playlist/a0702d19-4052-4475-b3bc-ecfbe092b305
2026-06-30 07:01:56.902 [DefaultDispatcher-worker-8 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38709/playlist/a0702d19-4052-4475-b3bc-ecfbe092b305
2026-06-30 07:01:59.014 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:01:59.016 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 07:01:59.017 [DefaultDispatcher-worker-8 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39137
2026-06-30 07:01:59.100 [DefaultDispatcher-worker-8 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39137/api/school/xapi/statements
2026-06-30 07:01:59.101 [DefaultDispatcher-worker-8 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3a9ae227 for http://localhost:39137/api/school/xapi/statements
2026-06-30 07:01:59.101 [DefaultDispatcher-worker-8 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39137/api/school/xapi/statements
2026-06-30 07:01:59.101 [DefaultDispatcher-worker-8 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:39137/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 07:01:59.104 [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-30 07:01:59.104 [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-30 07:01:59.116 [DefaultDispatcher-worker-2 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39137/api/school/xapi/statements
2026-06-30 07:01:59.116 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39137/api/school/xapi/statements
2026-06-30 07:01:59.116 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39137/api/school/xapi/statements
2026-06-30 07:01:59.116 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39137/api/school/xapi/statements.
2026-06-30 07:02:01.218 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 07:02:01.219 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 07:02:01.220 [DefaultDispatcher-worker-10 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36157
2026-06-30 07:02:01.276 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36157/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 07:02:01.276 [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:36157/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 07:02:01.276 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36157/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 07:02:01.279 [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-30 07:02:01.282 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36157/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 07:02:01.282 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36157/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 07:02:01.282 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36157/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 07:02:01.283 [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:36157/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 15:09:11.045 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:11.122 [Test worker] INFO  io.ktor.server.Application - Application started in 0.201 seconds.
2026-06-30 15:09:11.196 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36617
2026-06-30 15:09:11.856 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36617/resources/index.json
2026-06-30 15:09:11.856 [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:36617/resources/index.json.
2026-06-30 15:09:11.856 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36617/resources/index.json
2026-06-30 15:09:11.968 [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-30 15:09:12.019 [DefaultDispatcher-worker-2 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 56ms
2026-06-30 15:09:12.027 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36617/resources/index.json
2026-06-30 15:09:12.029 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36617/resources/index.json
2026-06-30 15:09:12.029 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36617/resources/index.json
2026-06-30 15:09:12.051 [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:36617/resources/index.json.
2026-06-30 15:09:12.083 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36617/resources/index.json
2026-06-30 15:09:12.083 [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:36617/resources/index.json.
2026-06-30 15:09:12.083 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36617/resources/index.json
2026-06-30 15:09:12.089 [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-30 15:09:12.091 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 3ms
2026-06-30 15:09:12.091 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36617/resources/index.json
2026-06-30 15:09:12.092 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36617/resources/index.json
2026-06-30 15:09:12.092 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36617/resources/index.json
2026-06-30 15:09:14.117 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:14.117 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 15:09:14.119 [DefaultDispatcher-worker-2 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33911
2026-06-30 15:09:14.217 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33911/resources/index.json
2026-06-30 15:09:14.217 [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:33911/resources/index.json.
2026-06-30 15:09:14.218 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33911/resources/index.json
2026-06-30 15:09:14.222 [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-30 15:09:14.223 [DefaultDispatcher-worker-2 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 15:09:14.224 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33911/resources/index.json
2026-06-30 15:09:14.224 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33911/resources/index.json
2026-06-30 15:09:14.224 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33911/resources/index.json
2026-06-30 15:09:14.225 [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:33911/resources/index.json.
2026-06-30 15:09:14.229 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33911/resources/index.json
2026-06-30 15:09:14.230 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33911/resources/index.json.
2026-06-30 15:09:14.230 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33911/resources/index.json
2026-06-30 15:09:14.233 [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-30 15:09:14.234 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 15:09:14.235 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33911/resources/index.json
2026-06-30 15:09:14.235 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33911/resources/index.json
2026-06-30 15:09:14.235 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33911/resources/index.json
2026-06-30 15:09:16.242 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:16.243 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 15:09:16.244 [DefaultDispatcher-worker-1 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36085
2026-06-30 15:09:16.249 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36085/resources/lesson001.json
2026-06-30 15:09:16.249 [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:36085/resources/lesson001.json.
2026-06-30 15:09:16.249 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36085/resources/lesson001.json
2026-06-30 15:09:16.252 [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-30 15:09:16.253 [DefaultDispatcher-worker-2 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 15:09:16.254 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36085/resources/lesson001.json
2026-06-30 15:09:16.254 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36085/resources/lesson001.json
2026-06-30 15:09:16.254 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36085/resources/lesson001.json
2026-06-30 15:09:16.256 [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:36085/resources/lesson001.json.
2026-06-30 15:09:18.509 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:18.516 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.118 seconds.
2026-06-30 15:09:18.518 [DefaultDispatcher-worker-3 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39191
2026-06-30 15:09:18.527 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39191/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:18.528 [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:39191/api/school/respect/schoolpermissiongrant.
2026-06-30 15:09:18.528 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39191/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:18.532 [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-30 15:09:18.545 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39191/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:18.546 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39191/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:18.546 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39191/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:18.547 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39191/api/school/respect/schoolpermissiongrant.
2026-06-30 15:09:18.610 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.610 [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:39191/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:18.610 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.612 [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-30 15:09:18.634 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.634 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.634 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.635 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39191/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:18.641 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.641 [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:39191/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:18.641 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.643 [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-30 15:09:18.644 [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-30 15:09:18.645 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.645 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:18.645 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39191/api/school/respect/person?includeRelated=false
2026-06-30 15:09:20.751 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:20.751 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 15:09:20.752 [DefaultDispatcher-worker-3 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42089
2026-06-30 15:09:20.753 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42089/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:20.754 [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:42089/api/school/respect/schoolpermissiongrant.
2026-06-30 15:09:20.754 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42089/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:20.756 [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-30 15:09:20.758 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42089/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:20.758 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42089/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:20.758 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42089/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:20.759 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42089/api/school/respect/schoolpermissiongrant.
2026-06-30 15:09:20.805 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42089/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 15:09:20.806 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42089/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 15:09:20.806 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42089/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 15:09:20.807 [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-30 15:09:20.810 [DefaultDispatcher-worker-1 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42089/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 15:09:20.810 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42089/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 15:09:20.810 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42089/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 15:09:20.811 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42089/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 15:09:22.926 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:22.927 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 15:09:22.929 [DefaultDispatcher-worker-2 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36719
2026-06-30 15:09:22.932 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36719/api/school/respect/person?includeRelated=false
2026-06-30 15:09:22.932 [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:36719/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:22.932 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36719/api/school/respect/person?includeRelated=false
2026-06-30 15:09:22.934 [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-30 15:09:22.937 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36719/api/school/respect/person?includeRelated=false
2026-06-30 15:09:22.938 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36719/api/school/respect/person?includeRelated=false
2026-06-30 15:09:22.938 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36719/api/school/respect/person?includeRelated=false
2026-06-30 15:09:22.939 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36719/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:22.999 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36719/api/school/respect/person?since=2026-06-30T11%3A09%3A22.935021874Z&includeRelated=false
2026-06-30 15:09:23.000 [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:36719/api/school/respect/person?since=2026-06-30T11%3A09%3A22.935021874Z&includeRelated=false.
2026-06-30 15:09:23.000 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36719/api/school/respect/person?since=2026-06-30T11%3A09%3A22.935021874Z&includeRelated=false
2026-06-30 15:09:23.006 [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-30 15:09:23.009 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36719/api/school/respect/person?since=2026-06-30T11%3A09%3A22.935021874Z&includeRelated=false
2026-06-30 15:09:23.009 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36719/api/school/respect/person?since=2026-06-30T11%3A09%3A22.935021874Z&includeRelated=false
2026-06-30 15:09:23.009 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36719/api/school/respect/person?since=2026-06-30T11%3A09%3A22.935021874Z&includeRelated=false
2026-06-30 15:09:23.010 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36719/api/school/respect/person?since=2026-06-30T11%3A09%3A22.935021874Z&includeRelated=false.
2026-06-30 15:09:25.127 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:25.128 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 15:09:25.129 [DefaultDispatcher-worker-1 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39127
2026-06-30 15:09:25.173 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39127/api/school/respect/person
2026-06-30 15:09:25.174 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@59cb78a for http://localhost:39127/api/school/respect/person
2026-06-30 15:09:25.174 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39127/api/school/respect/person
2026-06-30 15:09:25.174 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:39127/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 15:09:25.178 [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-30 15:09:25.187 [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-30 15:09:25.190 [DefaultDispatcher-worker-5 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 15:09:25.191 [DefaultDispatcher-worker-4 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39127/api/school/respect/person
2026-06-30 15:09:25.191 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39127/api/school/respect/person
2026-06-30 15:09:25.191 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39127/api/school/respect/person
2026-06-30 15:09:27.312 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:27.313 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 15:09:27.314 [DefaultDispatcher-worker-4 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43769
2026-06-30 15:09:27.315 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43769/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:27.315 [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:43769/api/school/respect/schoolpermissiongrant.
2026-06-30 15:09:27.315 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43769/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:27.317 [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-30 15:09:27.319 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43769/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:27.319 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43769/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:27.319 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43769/api/school/respect/schoolpermissiongrant
2026-06-30 15:09:27.320 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43769/api/school/respect/schoolpermissiongrant.
2026-06-30 15:09:27.362 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:27.362 [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:43769/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:27.362 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:27.363 [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-30 15:09:27.368 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:27.369 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:27.369 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:27.370 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43769/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:29.375 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:29.375 [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:43769/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:29.375 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:29.376 [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-30 15:09:29.379 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:29.379 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:29.379 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43769/api/school/respect/person?includeRelated=false
2026-06-30 15:09:29.380 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43769/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:31.496 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:31.497 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 15:09:31.498 [DefaultDispatcher-worker-3 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38853
2026-06-30 15:09:31.500 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38853/api/school/respect/person?includeRelated=false
2026-06-30 15:09:31.500 [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:38853/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:31.500 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38853/api/school/respect/person?includeRelated=false
2026-06-30 15:09:31.502 [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-30 15:09:31.506 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38853/api/school/respect/person?includeRelated=false
2026-06-30 15:09:31.506 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38853/api/school/respect/person?includeRelated=false
2026-06-30 15:09:31.506 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38853/api/school/respect/person?includeRelated=false
2026-06-30 15:09:31.507 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38853/api/school/respect/person?includeRelated=false.
2026-06-30 15:09:31.550 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38853/api/school/respect/person?since=2026-06-30T11%3A09%3A31.503315026Z&includeRelated=false
2026-06-30 15:09:31.550 [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:38853/api/school/respect/person?since=2026-06-30T11%3A09%3A31.503315026Z&includeRelated=false.
2026-06-30 15:09:31.550 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38853/api/school/respect/person?since=2026-06-30T11%3A09%3A31.503315026Z&includeRelated=false
2026-06-30 15:09:31.551 [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-30 15:09:31.554 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38853/api/school/respect/person?since=2026-06-30T11%3A09%3A31.503315026Z&includeRelated=false
2026-06-30 15:09:31.554 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38853/api/school/respect/person?since=2026-06-30T11%3A09%3A31.503315026Z&includeRelated=false
2026-06-30 15:09:31.554 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38853/api/school/respect/person?since=2026-06-30T11%3A09%3A31.503315026Z&includeRelated=false
2026-06-30 15:09:31.555 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38853/api/school/respect/person?since=2026-06-30T11%3A09%3A31.503315026Z&includeRelated=false.
2026-06-30 15:09:33.662 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:33.663 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 15:09:33.664 [DefaultDispatcher-worker-1 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38315
2026-06-30 15:09:33.666 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38315/playlist/b12c612e-1487-4e1d-9eac-c691b54d4e92
2026-06-30 15:09:33.666 [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:38315/playlist/b12c612e-1487-4e1d-9eac-c691b54d4e92.
2026-06-30 15:09:33.666 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38315/playlist/b12c612e-1487-4e1d-9eac-c691b54d4e92
2026-06-30 15:09:33.669 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, b12c612e-1487-4e1d-9eac-c691b54d4e92]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[b12c612e-1487-4e1d-9eac-c691b54d4e92]] @ /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=[b12c612e-1487-4e1d-9eac-c691b54d4e92]] @ /playlist/{uuid}/(method:GET)
2026-06-30 15:09:33.674 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38315/playlist/b12c612e-1487-4e1d-9eac-c691b54d4e92
2026-06-30 15:09:33.675 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38315/playlist/b12c612e-1487-4e1d-9eac-c691b54d4e92
2026-06-30 15:09:33.675 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38315/playlist/b12c612e-1487-4e1d-9eac-c691b54d4e92
2026-06-30 15:09:33.675 [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:38315/playlist/b12c612e-1487-4e1d-9eac-c691b54d4e92.
2026-06-30 15:09:35.839 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:35.840 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.043 seconds.
2026-06-30 15:09:35.841 [DefaultDispatcher-worker-1 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41773
2026-06-30 15:09:35.882 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41773/playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15
2026-06-30 15:09:35.882 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@1ad55cc9 for http://localhost:41773/playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15
2026-06-30 15:09:35.882 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41773/playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15
2026-06-30 15:09:35.882 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:41773/playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15 from class io.ktor.http.content.TextContent
2026-06-30 15:09:35.885 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, b801a4f5-de7f-43bd-9703-caab8ef4ea15]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[b801a4f5-de7f-43bd-9703-caab8ef4ea15]] @ /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=[b801a4f5-de7f-43bd-9703-caab8ef4ea15]] @ /playlist/{uuid}/(method:POST)
2026-06-30 15:09:35.885 [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/b801a4f5-de7f-43bd-9703-caab8ef4ea15
2026-06-30 15:09:35.886 [DefaultDispatcher-worker-6 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 15:09:35.887 [DefaultDispatcher-worker-6 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41773/playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15
2026-06-30 15:09:35.887 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41773/playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15
2026-06-30 15:09:35.887 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41773/playlist/b801a4f5-de7f-43bd-9703-caab8ef4ea15
2026-06-30 15:09:38.034 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:38.036 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.049 seconds.
2026-06-30 15:09:38.037 [DefaultDispatcher-worker-7 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45149
2026-06-30 15:09:38.115 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45149/api/school/xapi/statements
2026-06-30 15:09:38.116 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@9dcda26 for http://localhost:45149/api/school/xapi/statements
2026-06-30 15:09:38.116 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45149/api/school/xapi/statements
2026-06-30 15:09:38.117 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45149/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 15:09:38.119 [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-30 15:09:38.119 [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-30 15:09:38.129 [DefaultDispatcher-worker-1 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45149/api/school/xapi/statements
2026-06-30 15:09:38.129 [DefaultDispatcher-worker-1 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45149/api/school/xapi/statements
2026-06-30 15:09:38.129 [DefaultDispatcher-worker-1 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45149/api/school/xapi/statements
2026-06-30 15:09:38.130 [DefaultDispatcher-worker-1 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45149/api/school/xapi/statements.
2026-06-30 15:09:40.244 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 15:09:40.244 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.05 seconds.
2026-06-30 15:09:40.245 [DefaultDispatcher-worker-1 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45325
2026-06-30 15:09:40.292 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45325/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 15:09:40.292 [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:45325/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 15:09:40.292 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45325/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 15:09:40.297 [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-30 15:09:40.303 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45325/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 15:09:40.304 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45325/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 15:09:40.304 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45325/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 15:09:40.305 [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:45325/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 16:22:13.993 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:14.067 [Test worker] INFO  io.ktor.server.Application - Application started in 0.178 seconds.
2026-06-30 16:22:14.137 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36949
2026-06-30 16:22:14.752 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36949/resources/index.json
2026-06-30 16:22:14.753 [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:36949/resources/index.json.
2026-06-30 16:22:14.753 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36949/resources/index.json
2026-06-30 16:22:14.838 [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-30 16:22:14.874 [eventLoopGroupProxy-4-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 40ms
2026-06-30 16:22:14.876 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36949/resources/index.json
2026-06-30 16:22:14.878 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36949/resources/index.json
2026-06-30 16:22:14.879 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36949/resources/index.json
2026-06-30 16:22:14.896 [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:36949/resources/index.json.
2026-06-30 16:22:14.924 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36949/resources/index.json
2026-06-30 16:22:14.924 [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:36949/resources/index.json.
2026-06-30 16:22:14.924 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36949/resources/index.json
2026-06-30 16:22:14.926 [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-30 16:22:14.927 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 16:22:14.928 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36949/resources/index.json
2026-06-30 16:22:14.928 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36949/resources/index.json
2026-06-30 16:22:14.928 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36949/resources/index.json
2026-06-30 16:22:16.941 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:16.941 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 16:22:16.943 [DefaultDispatcher-worker-3 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41641
2026-06-30 16:22:17.006 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41641/resources/index.json
2026-06-30 16:22:17.006 [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:41641/resources/index.json.
2026-06-30 16:22:17.006 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41641/resources/index.json
2026-06-30 16:22:17.009 [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-30 16:22:17.010 [DefaultDispatcher-worker-2 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 16:22:17.010 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41641/resources/index.json
2026-06-30 16:22:17.010 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41641/resources/index.json
2026-06-30 16:22:17.010 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41641/resources/index.json
2026-06-30 16:22:17.011 [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:41641/resources/index.json.
2026-06-30 16:22:17.015 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41641/resources/index.json
2026-06-30 16:22:17.015 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41641/resources/index.json.
2026-06-30 16:22:17.015 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41641/resources/index.json
2026-06-30 16:22:17.016 [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-30 16:22:17.016 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 0ms
2026-06-30 16:22:17.017 [DefaultDispatcher-worker-3 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41641/resources/index.json
2026-06-30 16:22:17.017 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41641/resources/index.json
2026-06-30 16:22:17.017 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41641/resources/index.json
2026-06-30 16:22:19.025 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:19.026 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 16:22:19.027 [DefaultDispatcher-worker-3 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34571
2026-06-30 16:22:19.032 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34571/resources/lesson001.json
2026-06-30 16:22:19.032 [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:34571/resources/lesson001.json.
2026-06-30 16:22:19.032 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34571/resources/lesson001.json
2026-06-30 16:22:19.035 [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-30 16:22:19.036 [DefaultDispatcher-worker-4 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 16:22:19.036 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34571/resources/lesson001.json
2026-06-30 16:22:19.037 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34571/resources/lesson001.json
2026-06-30 16:22:19.037 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34571/resources/lesson001.json
2026-06-30 16:22:19.039 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:34571/resources/lesson001.json.
2026-06-30 16:22:21.358 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:21.365 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.136 seconds.
2026-06-30 16:22:21.367 [DefaultDispatcher-worker-1 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42291
2026-06-30 16:22:21.375 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42291/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:21.375 [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:42291/api/school/respect/schoolpermissiongrant.
2026-06-30 16:22:21.376 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42291/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:21.380 [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-30 16:22:21.393 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42291/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:21.393 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42291/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:21.393 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42291/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:21.395 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42291/api/school/respect/schoolpermissiongrant.
2026-06-30 16:22:21.468 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.468 [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:42291/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:21.468 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.470 [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-30 16:22:21.488 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.488 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.488 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.489 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42291/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:21.495 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.495 [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:42291/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:21.495 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.497 [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-30 16:22:21.499 [DefaultDispatcher-worker-3 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 16:22:21.500 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.500 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:21.500 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42291/api/school/respect/person?includeRelated=false
2026-06-30 16:22:23.618 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:23.619 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 16:22:23.620 [DefaultDispatcher-worker-3 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34891
2026-06-30 16:22:23.621 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34891/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:23.621 [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:34891/api/school/respect/schoolpermissiongrant.
2026-06-30 16:22:23.621 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34891/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:23.624 [eventLoopGroupProxy-16-1 @call-handler#107] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant]
/, segment:0 -> SUCCESS @ /
  /api, segment:1 -> SUCCESS @ /api
    /api/school, segment:2 -> SUCCESS @ /api/school
      /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect
        /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person
        /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant
          /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET)
Matched routes:
  "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)"
Routing resolve result:
  SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET)
2026-06-30 16:22:23.627 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34891/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:23.627 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34891/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:23.627 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34891/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:23.627 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34891/api/school/respect/schoolpermissiongrant.
2026-06-30 16:22:23.678 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34891/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 16:22:23.678 [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:34891/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 16:22:23.678 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34891/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 16:22:23.679 [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-30 16:22:23.682 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34891/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 16:22:23.682 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34891/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 16:22:23.682 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34891/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 16:22:23.683 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34891/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 16:22:25.832 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:25.833 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.062 seconds.
2026-06-30 16:22:25.834 [DefaultDispatcher-worker-3 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35321
2026-06-30 16:22:25.837 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35321/api/school/respect/person?includeRelated=false
2026-06-30 16:22:25.837 [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:35321/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:25.837 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35321/api/school/respect/person?includeRelated=false
2026-06-30 16:22:25.839 [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-30 16:22:25.842 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35321/api/school/respect/person?includeRelated=false
2026-06-30 16:22:25.843 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35321/api/school/respect/person?includeRelated=false
2026-06-30 16:22:25.843 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35321/api/school/respect/person?includeRelated=false
2026-06-30 16:22:25.843 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35321/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:25.909 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35321/api/school/respect/person?since=2026-06-30T12%3A22%3A25.839871495Z&includeRelated=false
2026-06-30 16:22:25.909 [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:35321/api/school/respect/person?since=2026-06-30T12%3A22%3A25.839871495Z&includeRelated=false.
2026-06-30 16:22:25.909 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35321/api/school/respect/person?since=2026-06-30T12%3A22%3A25.839871495Z&includeRelated=false
2026-06-30 16:22:25.911 [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-30 16:22:25.914 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35321/api/school/respect/person?since=2026-06-30T12%3A22%3A25.839871495Z&includeRelated=false
2026-06-30 16:22:25.914 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35321/api/school/respect/person?since=2026-06-30T12%3A22%3A25.839871495Z&includeRelated=false
2026-06-30 16:22:25.914 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35321/api/school/respect/person?since=2026-06-30T12%3A22%3A25.839871495Z&includeRelated=false
2026-06-30 16:22:25.914 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35321/api/school/respect/person?since=2026-06-30T12%3A22%3A25.839871495Z&includeRelated=false.
2026-06-30 16:22:28.023 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:28.023 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 16:22:28.024 [DefaultDispatcher-worker-3 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40691
2026-06-30 16:22:28.067 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40691/api/school/respect/person
2026-06-30 16:22:28.067 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@6db41e12 for http://localhost:40691/api/school/respect/person
2026-06-30 16:22:28.067 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40691/api/school/respect/person
2026-06-30 16:22:28.067 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40691/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 16:22:28.070 [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-30 16:22:28.076 [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-30 16:22:28.077 [DefaultDispatcher-worker-4 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 16:22:28.078 [DefaultDispatcher-worker-3 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40691/api/school/respect/person
2026-06-30 16:22:28.079 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40691/api/school/respect/person
2026-06-30 16:22:28.079 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40691/api/school/respect/person
2026-06-30 16:22:30.207 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:30.208 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.047 seconds.
2026-06-30 16:22:30.209 [DefaultDispatcher-worker-13 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39259
2026-06-30 16:22:30.210 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39259/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:30.210 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39259/api/school/respect/schoolpermissiongrant.
2026-06-30 16:22:30.210 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39259/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:30.212 [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-30 16:22:30.214 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39259/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:30.214 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39259/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:30.214 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39259/api/school/respect/schoolpermissiongrant
2026-06-30 16:22:30.214 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39259/api/school/respect/schoolpermissiongrant.
2026-06-30 16:22:30.255 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:30.255 [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:39259/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:30.255 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:30.256 [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-30 16:22:30.261 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:30.261 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:30.261 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:30.262 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39259/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:32.267 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:32.267 [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:39259/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:32.267 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:32.268 [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-30 16:22:32.271 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:32.271 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:32.271 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39259/api/school/respect/person?includeRelated=false
2026-06-30 16:22:32.272 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39259/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:34.388 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:34.388 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.038 seconds.
2026-06-30 16:22:34.389 [DefaultDispatcher-worker-13 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:37077
2026-06-30 16:22:34.391 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37077/api/school/respect/person?includeRelated=false
2026-06-30 16:22:34.391 [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:37077/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:34.391 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37077/api/school/respect/person?includeRelated=false
2026-06-30 16:22:34.394 [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-30 16:22:34.397 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37077/api/school/respect/person?includeRelated=false
2026-06-30 16:22:34.397 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37077/api/school/respect/person?includeRelated=false
2026-06-30 16:22:34.397 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37077/api/school/respect/person?includeRelated=false
2026-06-30 16:22:34.398 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37077/api/school/respect/person?includeRelated=false.
2026-06-30 16:22:34.457 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37077/api/school/respect/person?since=2026-06-30T12%3A22%3A34.394472920Z&includeRelated=false
2026-06-30 16:22:34.457 [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:37077/api/school/respect/person?since=2026-06-30T12%3A22%3A34.394472920Z&includeRelated=false.
2026-06-30 16:22:34.457 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37077/api/school/respect/person?since=2026-06-30T12%3A22%3A34.394472920Z&includeRelated=false
2026-06-30 16:22:34.458 [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-30 16:22:34.460 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37077/api/school/respect/person?since=2026-06-30T12%3A22%3A34.394472920Z&includeRelated=false
2026-06-30 16:22:34.461 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37077/api/school/respect/person?since=2026-06-30T12%3A22%3A34.394472920Z&includeRelated=false
2026-06-30 16:22:34.461 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37077/api/school/respect/person?since=2026-06-30T12%3A22%3A34.394472920Z&includeRelated=false
2026-06-30 16:22:34.461 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37077/api/school/respect/person?since=2026-06-30T12%3A22%3A34.394472920Z&includeRelated=false.
2026-06-30 16:22:36.573 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:36.574 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 16:22:36.575 [DefaultDispatcher-worker-11 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34071
2026-06-30 16:22:36.577 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34071/playlist/1cb00e31-eb62-44af-b6b8-d7abee184dd3
2026-06-30 16:22:36.577 [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:34071/playlist/1cb00e31-eb62-44af-b6b8-d7abee184dd3.
2026-06-30 16:22:36.577 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34071/playlist/1cb00e31-eb62-44af-b6b8-d7abee184dd3
2026-06-30 16:22:36.579 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 1cb00e31-eb62-44af-b6b8-d7abee184dd3]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[1cb00e31-eb62-44af-b6b8-d7abee184dd3]] @ /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=[1cb00e31-eb62-44af-b6b8-d7abee184dd3]] @ /playlist/{uuid}/(method:GET)
2026-06-30 16:22:36.585 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34071/playlist/1cb00e31-eb62-44af-b6b8-d7abee184dd3
2026-06-30 16:22:36.585 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34071/playlist/1cb00e31-eb62-44af-b6b8-d7abee184dd3
2026-06-30 16:22:36.585 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34071/playlist/1cb00e31-eb62-44af-b6b8-d7abee184dd3
2026-06-30 16:22:36.585 [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:34071/playlist/1cb00e31-eb62-44af-b6b8-d7abee184dd3.
2026-06-30 16:22:38.833 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:38.833 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.08 seconds.
2026-06-30 16:22:38.834 [DefaultDispatcher-worker-11 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38685
2026-06-30 16:22:38.874 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38685/playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c
2026-06-30 16:22:38.874 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@40fcf533 for http://localhost:38685/playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c
2026-06-30 16:22:38.874 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38685/playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c
2026-06-30 16:22:38.874 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38685/playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c from class io.ktor.http.content.TextContent
2026-06-30 16:22:38.877 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 14b30d1f-069c-4d46-9c48-1681656f3d0c]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[14b30d1f-069c-4d46-9c48-1681656f3d0c]] @ /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=[14b30d1f-069c-4d46-9c48-1681656f3d0c]] @ /playlist/{uuid}/(method:POST)
2026-06-30 16:22:38.877 [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/14b30d1f-069c-4d46-9c48-1681656f3d0c
2026-06-30 16:22:38.878 [DefaultDispatcher-worker-3 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 16:22:38.878 [DefaultDispatcher-worker-13 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38685/playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c
2026-06-30 16:22:38.879 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38685/playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c
2026-06-30 16:22:38.879 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38685/playlist/14b30d1f-069c-4d46-9c48-1681656f3d0c
2026-06-30 16:22:40.985 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:40.987 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 16:22:40.988 [DefaultDispatcher-worker-12 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36913
2026-06-30 16:22:41.074 [DefaultDispatcher-worker-3 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36913/api/school/xapi/statements
2026-06-30 16:22:41.075 [DefaultDispatcher-worker-3 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5526fa51 for http://localhost:36913/api/school/xapi/statements
2026-06-30 16:22:41.075 [DefaultDispatcher-worker-3 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36913/api/school/xapi/statements
2026-06-30 16:22:41.076 [DefaultDispatcher-worker-3 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36913/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 16:22:41.078 [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-30 16:22:41.079 [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-30 16:22:41.088 [DefaultDispatcher-worker-1 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36913/api/school/xapi/statements
2026-06-30 16:22:41.089 [DefaultDispatcher-worker-1 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36913/api/school/xapi/statements
2026-06-30 16:22:41.089 [DefaultDispatcher-worker-1 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36913/api/school/xapi/statements
2026-06-30 16:22:41.089 [DefaultDispatcher-worker-1 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36913/api/school/xapi/statements.
2026-06-30 16:22:43.191 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 16:22:43.191 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.038 seconds.
2026-06-30 16:22:43.192 [DefaultDispatcher-worker-3 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:37035
2026-06-30 16:22:43.243 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37035/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 16:22:43.243 [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:37035/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 16:22:43.243 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37035/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 16:22:43.246 [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-30 16:22:43.249 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37035/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 16:22:43.250 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37035/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 16:22:43.250 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37035/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 16:22:43.250 [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:37035/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:02:13.225 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:13.356 [Test worker] INFO  io.ktor.server.Application - Application started in 0.288 seconds.
2026-06-30 17:02:13.446 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39441
2026-06-30 17:02:14.335 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39441/resources/index.json
2026-06-30 17:02:14.336 [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:39441/resources/index.json.
2026-06-30 17:02:14.336 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39441/resources/index.json
2026-06-30 17:02:14.506 [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-30 17:02:14.585 [eventLoopGroupProxy-4-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 86ms
2026-06-30 17:02:14.596 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39441/resources/index.json
2026-06-30 17:02:14.599 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39441/resources/index.json
2026-06-30 17:02:14.599 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39441/resources/index.json
2026-06-30 17:02:14.628 [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:39441/resources/index.json.
2026-06-30 17:02:14.668 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39441/resources/index.json
2026-06-30 17:02:14.668 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39441/resources/index.json.
2026-06-30 17:02:14.668 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39441/resources/index.json
2026-06-30 17:02:14.671 [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-30 17:02:14.673 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 17:02:14.674 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39441/resources/index.json
2026-06-30 17:02:14.674 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39441/resources/index.json
2026-06-30 17:02:14.674 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39441/resources/index.json
2026-06-30 17:02:16.693 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:16.694 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 17:02:16.695 [DefaultDispatcher-worker-2 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42511
2026-06-30 17:02:16.761 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42511/resources/index.json
2026-06-30 17:02:16.761 [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:42511/resources/index.json.
2026-06-30 17:02:16.761 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42511/resources/index.json
2026-06-30 17:02:16.765 [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-30 17:02:16.767 [eventLoopGroupProxy-7-1 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 17:02:16.767 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42511/resources/index.json
2026-06-30 17:02:16.767 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42511/resources/index.json
2026-06-30 17:02:16.767 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42511/resources/index.json
2026-06-30 17:02:16.768 [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:42511/resources/index.json.
2026-06-30 17:02:16.774 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42511/resources/index.json
2026-06-30 17:02:16.774 [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:42511/resources/index.json.
2026-06-30 17:02:16.774 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42511/resources/index.json
2026-06-30 17:02:16.777 [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-30 17:02:16.778 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 17:02:16.778 [DefaultDispatcher-worker-4 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42511/resources/index.json
2026-06-30 17:02:16.778 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42511/resources/index.json
2026-06-30 17:02:16.779 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42511/resources/index.json
2026-06-30 17:02:18.785 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:18.785 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 17:02:18.786 [DefaultDispatcher-worker-4 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39783
2026-06-30 17:02:18.791 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39783/resources/lesson001.json
2026-06-30 17:02:18.791 [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:39783/resources/lesson001.json.
2026-06-30 17:02:18.791 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39783/resources/lesson001.json
2026-06-30 17:02:18.793 [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-30 17:02:18.794 [DefaultDispatcher-worker-2 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 17:02:18.795 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39783/resources/lesson001.json
2026-06-30 17:02:18.795 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39783/resources/lesson001.json
2026-06-30 17:02:18.795 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39783/resources/lesson001.json
2026-06-30 17:02:18.797 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:39783/resources/lesson001.json.
2026-06-30 17:02:21.056 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:21.062 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.109 seconds.
2026-06-30 17:02:21.065 [DefaultDispatcher-worker-3 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38227
2026-06-30 17:02:21.072 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38227/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:21.072 [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:38227/api/school/respect/schoolpermissiongrant.
2026-06-30 17:02:21.073 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38227/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:21.077 [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-30 17:02:21.090 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38227/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:21.091 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38227/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:21.091 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38227/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:21.092 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38227/api/school/respect/schoolpermissiongrant.
2026-06-30 17:02:21.154 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.154 [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:38227/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:21.154 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.156 [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-30 17:02:21.173 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.174 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.174 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.175 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38227/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:21.180 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.180 [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:38227/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:21.180 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.182 [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-30 17:02:21.184 [DefaultDispatcher-worker-3 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:02:21.184 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.184 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:21.185 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38227/api/school/respect/person?includeRelated=false
2026-06-30 17:02:23.287 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:23.288 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:02:23.289 [DefaultDispatcher-worker-4 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36145
2026-06-30 17:02:23.290 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:23.290 [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:36145/api/school/respect/schoolpermissiongrant.
2026-06-30 17:02:23.290 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:23.293 [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-30 17:02:23.295 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:23.295 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:23.295 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:23.295 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36145/api/school/respect/schoolpermissiongrant.
2026-06-30 17:02:23.343 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:02:23.343 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:02:23.343 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:02:23.345 [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-30 17:02:23.348 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:02:23.348 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:02:23.348 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:02:23.349 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:02:25.462 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:25.463 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:02:25.464 [DefaultDispatcher-worker-3 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43031
2026-06-30 17:02:25.466 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43031/api/school/respect/person?includeRelated=false
2026-06-30 17:02:25.466 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43031/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:25.466 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43031/api/school/respect/person?includeRelated=false
2026-06-30 17:02:25.469 [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-30 17:02:25.472 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43031/api/school/respect/person?includeRelated=false
2026-06-30 17:02:25.472 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43031/api/school/respect/person?includeRelated=false
2026-06-30 17:02:25.472 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43031/api/school/respect/person?includeRelated=false
2026-06-30 17:02:25.473 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43031/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:25.524 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43031/api/school/respect/person?since=2026-06-30T13%3A02%3A25.469656379Z&includeRelated=false
2026-06-30 17:02:25.524 [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:43031/api/school/respect/person?since=2026-06-30T13%3A02%3A25.469656379Z&includeRelated=false.
2026-06-30 17:02:25.524 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43031/api/school/respect/person?since=2026-06-30T13%3A02%3A25.469656379Z&includeRelated=false
2026-06-30 17:02:25.526 [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-30 17:02:25.528 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43031/api/school/respect/person?since=2026-06-30T13%3A02%3A25.469656379Z&includeRelated=false
2026-06-30 17:02:25.528 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43031/api/school/respect/person?since=2026-06-30T13%3A02%3A25.469656379Z&includeRelated=false
2026-06-30 17:02:25.528 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43031/api/school/respect/person?since=2026-06-30T13%3A02%3A25.469656379Z&includeRelated=false
2026-06-30 17:02:25.529 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43031/api/school/respect/person?since=2026-06-30T13%3A02%3A25.469656379Z&includeRelated=false.
2026-06-30 17:02:27.652 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:27.653 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:02:27.654 [DefaultDispatcher-worker-4 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40933
2026-06-30 17:02:27.699 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40933/api/school/respect/person
2026-06-30 17:02:27.700 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@bd25137 for http://localhost:40933/api/school/respect/person
2026-06-30 17:02:27.700 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40933/api/school/respect/person
2026-06-30 17:02:27.700 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40933/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 17:02:27.703 [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-30 17:02:27.708 [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-30 17:02:27.710 [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-30 17:02:27.711 [DefaultDispatcher-worker-2 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40933/api/school/respect/person
2026-06-30 17:02:27.713 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40933/api/school/respect/person
2026-06-30 17:02:27.713 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40933/api/school/respect/person
2026-06-30 17:02:29.834 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:29.835 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.053 seconds.
2026-06-30 17:02:29.836 [DefaultDispatcher-worker-2 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40021
2026-06-30 17:02:29.837 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40021/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:29.837 [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:40021/api/school/respect/schoolpermissiongrant.
2026-06-30 17:02:29.837 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40021/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:29.840 [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-30 17:02:29.841 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40021/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:29.842 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40021/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:29.842 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40021/api/school/respect/schoolpermissiongrant
2026-06-30 17:02:29.842 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40021/api/school/respect/schoolpermissiongrant.
2026-06-30 17:02:29.885 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:29.885 [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:40021/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:29.885 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:29.886 [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-30 17:02:29.892 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:29.892 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:29.892 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:29.892 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40021/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:31.897 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:31.898 [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:40021/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:31.898 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:31.899 [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-30 17:02:31.902 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:31.902 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:31.902 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40021/api/school/respect/person?includeRelated=false
2026-06-30 17:02:31.903 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40021/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:34.002 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:34.003 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 17:02:34.004 [DefaultDispatcher-worker-2 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38219
2026-06-30 17:02:34.006 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38219/api/school/respect/person?includeRelated=false
2026-06-30 17:02:34.006 [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:38219/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:34.006 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38219/api/school/respect/person?includeRelated=false
2026-06-30 17:02:34.008 [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-30 17:02:34.012 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38219/api/school/respect/person?includeRelated=false
2026-06-30 17:02:34.012 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38219/api/school/respect/person?includeRelated=false
2026-06-30 17:02:34.012 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38219/api/school/respect/person?includeRelated=false
2026-06-30 17:02:34.012 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38219/api/school/respect/person?includeRelated=false.
2026-06-30 17:02:34.055 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38219/api/school/respect/person?since=2026-06-30T13%3A02%3A34.008921771Z&includeRelated=false
2026-06-30 17:02:34.055 [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:38219/api/school/respect/person?since=2026-06-30T13%3A02%3A34.008921771Z&includeRelated=false.
2026-06-30 17:02:34.055 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38219/api/school/respect/person?since=2026-06-30T13%3A02%3A34.008921771Z&includeRelated=false
2026-06-30 17:02:34.057 [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-30 17:02:34.059 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38219/api/school/respect/person?since=2026-06-30T13%3A02%3A34.008921771Z&includeRelated=false
2026-06-30 17:02:34.059 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38219/api/school/respect/person?since=2026-06-30T13%3A02%3A34.008921771Z&includeRelated=false
2026-06-30 17:02:34.059 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38219/api/school/respect/person?since=2026-06-30T13%3A02%3A34.008921771Z&includeRelated=false
2026-06-30 17:02:34.060 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38219/api/school/respect/person?since=2026-06-30T13%3A02%3A34.008921771Z&includeRelated=false.
2026-06-30 17:02:36.198 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:36.199 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.051 seconds.
2026-06-30 17:02:36.200 [DefaultDispatcher-worker-14 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36711
2026-06-30 17:02:36.202 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36711/playlist/bd996431-8a23-4f68-9157-c8182190c722
2026-06-30 17:02:36.202 [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:36711/playlist/bd996431-8a23-4f68-9157-c8182190c722.
2026-06-30 17:02:36.202 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36711/playlist/bd996431-8a23-4f68-9157-c8182190c722
2026-06-30 17:02:36.204 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, bd996431-8a23-4f68-9157-c8182190c722]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[bd996431-8a23-4f68-9157-c8182190c722]] @ /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=[bd996431-8a23-4f68-9157-c8182190c722]] @ /playlist/{uuid}/(method:GET)
2026-06-30 17:02:36.210 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36711/playlist/bd996431-8a23-4f68-9157-c8182190c722
2026-06-30 17:02:36.210 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36711/playlist/bd996431-8a23-4f68-9157-c8182190c722
2026-06-30 17:02:36.210 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36711/playlist/bd996431-8a23-4f68-9157-c8182190c722
2026-06-30 17:02:36.210 [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:36711/playlist/bd996431-8a23-4f68-9157-c8182190c722.
2026-06-30 17:02:38.385 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:38.386 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 17:02:38.387 [DefaultDispatcher-worker-14 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38943
2026-06-30 17:02:38.427 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38943/playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755
2026-06-30 17:02:38.428 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@57d03874 for http://localhost:38943/playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755
2026-06-30 17:02:38.428 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38943/playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755
2026-06-30 17:02:38.428 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38943/playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755 from class io.ktor.http.content.TextContent
2026-06-30 17:02:38.430 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755]] @ /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=[6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755]] @ /playlist/{uuid}/(method:POST)
2026-06-30 17:02:38.431 [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/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755
2026-06-30 17:02:38.432 [DefaultDispatcher-worker-15 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:02:38.432 [DefaultDispatcher-worker-12 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38943/playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755
2026-06-30 17:02:38.432 [DefaultDispatcher-worker-12 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38943/playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755
2026-06-30 17:02:38.432 [DefaultDispatcher-worker-12 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38943/playlist/6b947b8f-0bd6-4b9d-a8a3-c1c8d5725755
2026-06-30 17:02:40.549 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:40.551 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 17:02:40.552 [DefaultDispatcher-worker-2 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42779
2026-06-30 17:02:40.633 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42779/api/school/xapi/statements
2026-06-30 17:02:40.634 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@44b5263a for http://localhost:42779/api/school/xapi/statements
2026-06-30 17:02:40.635 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42779/api/school/xapi/statements
2026-06-30 17:02:40.635 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42779/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 17:02:40.637 [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-30 17:02:40.637 [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-30 17:02:40.648 [DefaultDispatcher-worker-15 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42779/api/school/xapi/statements
2026-06-30 17:02:40.648 [DefaultDispatcher-worker-15 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42779/api/school/xapi/statements
2026-06-30 17:02:40.648 [DefaultDispatcher-worker-15 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42779/api/school/xapi/statements
2026-06-30 17:02:40.649 [DefaultDispatcher-worker-15 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42779/api/school/xapi/statements.
2026-06-30 17:02:42.738 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:02:42.739 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.038 seconds.
2026-06-30 17:02:42.740 [DefaultDispatcher-worker-2 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:37379
2026-06-30 17:02:42.801 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37379/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:02:42.801 [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:37379/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:02:42.801 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37379/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:02:42.804 [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-30 17:02:42.807 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37379/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:02:42.808 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37379/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:02:42.808 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37379/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:02:42.808 [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:37379/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:12:30.618 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:30.783 [Test worker] INFO  io.ktor.server.Application - Application started in 0.34 seconds.
2026-06-30 17:12:30.928 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44083
2026-06-30 17:12:31.794 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44083/resources/index.json
2026-06-30 17:12:31.795 [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:44083/resources/index.json.
2026-06-30 17:12:31.795 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44083/resources/index.json
2026-06-30 17:12:31.911 [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-30 17:12:31.972 [DefaultDispatcher-worker-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 65ms
2026-06-30 17:12:31.979 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44083/resources/index.json
2026-06-30 17:12:31.981 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44083/resources/index.json
2026-06-30 17:12:31.981 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44083/resources/index.json
2026-06-30 17:12:32.012 [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:44083/resources/index.json.
2026-06-30 17:12:32.061 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44083/resources/index.json
2026-06-30 17:12:32.061 [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:44083/resources/index.json.
2026-06-30 17:12:32.062 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44083/resources/index.json
2026-06-30 17:12:32.066 [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-30 17:12:32.070 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 4ms
2026-06-30 17:12:32.071 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44083/resources/index.json
2026-06-30 17:12:32.072 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44083/resources/index.json
2026-06-30 17:12:32.072 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44083/resources/index.json
2026-06-30 17:12:34.123 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:34.127 [Test worker] INFO  io.ktor.server.Application - Application started in 0.004 seconds.
2026-06-30 17:12:34.130 [DefaultDispatcher-worker-2 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45367
2026-06-30 17:12:34.229 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45367/resources/index.json
2026-06-30 17:12:34.230 [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:45367/resources/index.json.
2026-06-30 17:12:34.230 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45367/resources/index.json
2026-06-30 17:12:34.237 [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-30 17:12:34.239 [DefaultDispatcher-worker-3 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 3ms
2026-06-30 17:12:34.240 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45367/resources/index.json
2026-06-30 17:12:34.241 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45367/resources/index.json
2026-06-30 17:12:34.241 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45367/resources/index.json
2026-06-30 17:12:34.242 [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:45367/resources/index.json.
2026-06-30 17:12:34.252 [Test worker @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45367/resources/index.json
2026-06-30 17:12:34.252 [Test worker @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:45367/resources/index.json.
2026-06-30 17:12:34.252 [Test worker @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45367/resources/index.json
2026-06-30 17:12:34.256 [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-30 17:12:34.257 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 17:12:34.258 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45367/resources/index.json
2026-06-30 17:12:34.258 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45367/resources/index.json
2026-06-30 17:12:34.258 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45367/resources/index.json
2026-06-30 17:12:36.281 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:36.283 [Test worker] INFO  io.ktor.server.Application - Application started in 0.002 seconds.
2026-06-30 17:12:36.287 [DefaultDispatcher-worker-2 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44431
2026-06-30 17:12:36.301 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44431/resources/lesson001.json
2026-06-30 17:12:36.301 [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:44431/resources/lesson001.json.
2026-06-30 17:12:36.301 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44431/resources/lesson001.json
2026-06-30 17:12:36.305 [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-30 17:12:36.307 [DefaultDispatcher-worker-3 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 2ms
2026-06-30 17:12:36.308 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44431/resources/lesson001.json
2026-06-30 17:12:36.312 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44431/resources/lesson001.json
2026-06-30 17:12:36.312 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44431/resources/lesson001.json
2026-06-30 17:12:36.316 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:44431/resources/lesson001.json.
2026-06-30 17:12:38.640 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:38.650 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.146 seconds.
2026-06-30 17:12:38.659 [DefaultDispatcher-worker-3 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38489
2026-06-30 17:12:38.680 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38489/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:38.681 [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:38489/api/school/respect/schoolpermissiongrant.
2026-06-30 17:12:38.681 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38489/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:38.691 [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-30 17:12:38.733 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38489/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:38.734 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38489/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:38.734 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38489/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:38.736 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38489/api/school/respect/schoolpermissiongrant.
2026-06-30 17:12:38.928 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:38.928 [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:38489/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:38.928 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:38.934 [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-30 17:12:38.974 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:38.977 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:38.977 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:38.979 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38489/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:39.003 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:39.003 [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:38489/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:39.003 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:39.011 [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-30 17:12:39.019 [DefaultDispatcher-worker-2 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:12:39.021 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:39.023 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:39.023 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38489/api/school/respect/person?includeRelated=false
2026-06-30 17:12:41.218 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:41.223 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.073 seconds.
2026-06-30 17:12:41.231 [DefaultDispatcher-worker-2 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:37751
2026-06-30 17:12:41.232 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37751/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:41.232 [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:37751/api/school/respect/schoolpermissiongrant.
2026-06-30 17:12:41.233 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37751/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:41.237 [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-30 17:12:41.246 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37751/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:41.248 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37751/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:41.248 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37751/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:41.249 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37751/api/school/respect/schoolpermissiongrant.
2026-06-30 17:12:41.326 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37751/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:12:41.326 [DefaultDispatcher-worker-6 @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:37751/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:12:41.326 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37751/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:12:41.329 [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-30 17:12:41.334 [DefaultDispatcher-worker-6 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37751/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:12:41.335 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37751/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:12:41.335 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37751/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:12:41.336 [DefaultDispatcher-worker-6 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37751/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:12:43.511 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:43.512 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.054 seconds.
2026-06-30 17:12:43.521 [DefaultDispatcher-worker-6 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38637
2026-06-30 17:12:43.525 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38637/api/school/respect/person?includeRelated=false
2026-06-30 17:12:43.525 [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:38637/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:43.525 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38637/api/school/respect/person?includeRelated=false
2026-06-30 17:12:43.539 [eventLoopGroupProxy-19-1 @call-handler#136] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, person]
/, segment:0 -> SUCCESS @ /
  /api, segment:1 -> SUCCESS @ /api
    /api/school, segment:2 -> SUCCESS @ /api/school
      /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect
        /api/school/respect/person, segment:4 -> SUCCESS @ /api/school/respect/person
          /api/school/respect/person/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/person/(method:GET)
          /api/school/respect/person/(method:POST), segment:4 -> FAILURE "Selector didn't match" @ /api/school/respect/person/(method:POST)
Matched routes:
  "" -> "api" -> "school" -> "respect" -> "person" -> "(method:GET)"
Routing resolve result:
  SUCCESS @ /api/school/respect/person/(method:GET)
2026-06-30 17:12:43.556 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38637/api/school/respect/person?includeRelated=false
2026-06-30 17:12:43.557 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38637/api/school/respect/person?includeRelated=false
2026-06-30 17:12:43.557 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38637/api/school/respect/person?includeRelated=false
2026-06-30 17:12:43.560 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38637/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:43.673 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38637/api/school/respect/person?since=2026-06-30T13%3A12%3A43.543184278Z&includeRelated=false
2026-06-30 17:12:43.676 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38637/api/school/respect/person?since=2026-06-30T13%3A12%3A43.543184278Z&includeRelated=false.
2026-06-30 17:12:43.676 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38637/api/school/respect/person?since=2026-06-30T13%3A12%3A43.543184278Z&includeRelated=false
2026-06-30 17:12:43.689 [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-30 17:12:43.696 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38637/api/school/respect/person?since=2026-06-30T13%3A12%3A43.543184278Z&includeRelated=false
2026-06-30 17:12:43.697 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38637/api/school/respect/person?since=2026-06-30T13%3A12%3A43.543184278Z&includeRelated=false
2026-06-30 17:12:43.697 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38637/api/school/respect/person?since=2026-06-30T13%3A12%3A43.543184278Z&includeRelated=false
2026-06-30 17:12:43.700 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38637/api/school/respect/person?since=2026-06-30T13%3A12%3A43.543184278Z&includeRelated=false.
2026-06-30 17:12:45.885 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:45.889 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.06 seconds.
2026-06-30 17:12:45.892 [DefaultDispatcher-worker-3 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45971
2026-06-30 17:12:45.958 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45971/api/school/respect/person
2026-06-30 17:12:45.960 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3d50b91c for http://localhost:45971/api/school/respect/person
2026-06-30 17:12:45.963 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45971/api/school/respect/person
2026-06-30 17:12:45.964 [DefaultDispatcher-worker-1 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45971/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 17:12:45.981 [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-30 17:12:46.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-30 17:12:46.011 [DefaultDispatcher-worker-1 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:12:46.013 [DefaultDispatcher-worker-3 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45971/api/school/respect/person
2026-06-30 17:12:46.014 [DefaultDispatcher-worker-11 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45971/api/school/respect/person
2026-06-30 17:12:46.014 [DefaultDispatcher-worker-11 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45971/api/school/respect/person
2026-06-30 17:12:48.179 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:48.181 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.053 seconds.
2026-06-30 17:12:48.185 [DefaultDispatcher-worker-4 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36973
2026-06-30 17:12:48.192 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36973/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:48.192 [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:36973/api/school/respect/schoolpermissiongrant.
2026-06-30 17:12:48.192 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36973/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:48.204 [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-30 17:12:48.215 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36973/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:48.215 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36973/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:48.215 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36973/api/school/respect/schoolpermissiongrant
2026-06-30 17:12:48.220 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36973/api/school/respect/schoolpermissiongrant.
2026-06-30 17:12:48.301 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:48.302 [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:36973/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:48.302 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:48.305 [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-30 17:12:48.320 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:48.320 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:48.320 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:48.321 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36973/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:50.338 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:50.339 [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:36973/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:50.339 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:50.343 [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-30 17:12:50.351 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:50.352 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:50.353 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36973/api/school/respect/person?includeRelated=false
2026-06-30 17:12:50.355 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36973/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:52.552 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:52.554 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.057 seconds.
2026-06-30 17:12:52.558 [DefaultDispatcher-worker-2 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43893
2026-06-30 17:12:52.570 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43893/api/school/respect/person?includeRelated=false
2026-06-30 17:12:52.570 [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:43893/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:52.570 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43893/api/school/respect/person?includeRelated=false
2026-06-30 17:12:52.576 [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-30 17:12:52.585 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43893/api/school/respect/person?includeRelated=false
2026-06-30 17:12:52.586 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43893/api/school/respect/person?includeRelated=false
2026-06-30 17:12:52.586 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43893/api/school/respect/person?includeRelated=false
2026-06-30 17:12:52.587 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43893/api/school/respect/person?includeRelated=false.
2026-06-30 17:12:52.658 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43893/api/school/respect/person?since=2026-06-30T13%3A12%3A52.576916607Z&includeRelated=false
2026-06-30 17:12:52.658 [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:43893/api/school/respect/person?since=2026-06-30T13%3A12%3A52.576916607Z&includeRelated=false.
2026-06-30 17:12:52.658 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43893/api/school/respect/person?since=2026-06-30T13%3A12%3A52.576916607Z&includeRelated=false
2026-06-30 17:12:52.662 [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-30 17:12:52.671 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43893/api/school/respect/person?since=2026-06-30T13%3A12%3A52.576916607Z&includeRelated=false
2026-06-30 17:12:52.672 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43893/api/school/respect/person?since=2026-06-30T13%3A12%3A52.576916607Z&includeRelated=false
2026-06-30 17:12:52.673 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43893/api/school/respect/person?since=2026-06-30T13%3A12%3A52.576916607Z&includeRelated=false
2026-06-30 17:12:52.674 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43893/api/school/respect/person?since=2026-06-30T13%3A12%3A52.576916607Z&includeRelated=false.
2026-06-30 17:12:54.905 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:54.910 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.075 seconds.
2026-06-30 17:12:54.917 [DefaultDispatcher-worker-4 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41247
2026-06-30 17:12:54.927 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41247/playlist/a5f776e0-cdeb-424e-9733-ed70f75ffb28
2026-06-30 17:12:54.927 [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:41247/playlist/a5f776e0-cdeb-424e-9733-ed70f75ffb28.
2026-06-30 17:12:54.927 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41247/playlist/a5f776e0-cdeb-424e-9733-ed70f75ffb28
2026-06-30 17:12:54.934 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, a5f776e0-cdeb-424e-9733-ed70f75ffb28]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[a5f776e0-cdeb-424e-9733-ed70f75ffb28]] @ /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=[a5f776e0-cdeb-424e-9733-ed70f75ffb28]] @ /playlist/{uuid}/(method:GET)
2026-06-30 17:12:54.949 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41247/playlist/a5f776e0-cdeb-424e-9733-ed70f75ffb28
2026-06-30 17:12:54.949 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41247/playlist/a5f776e0-cdeb-424e-9733-ed70f75ffb28
2026-06-30 17:12:54.949 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41247/playlist/a5f776e0-cdeb-424e-9733-ed70f75ffb28
2026-06-30 17:12:54.951 [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:41247/playlist/a5f776e0-cdeb-424e-9733-ed70f75ffb28.
2026-06-30 17:12:57.215 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:57.216 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.068 seconds.
2026-06-30 17:12:57.220 [DefaultDispatcher-worker-1 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43203
2026-06-30 17:12:57.288 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43203/playlist/25948dd9-425e-43fd-8903-e02a8948b6a5
2026-06-30 17:12:57.292 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@79ade035 for http://localhost:43203/playlist/25948dd9-425e-43fd-8903-e02a8948b6a5
2026-06-30 17:12:57.292 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43203/playlist/25948dd9-425e-43fd-8903-e02a8948b6a5
2026-06-30 17:12:57.292 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43203/playlist/25948dd9-425e-43fd-8903-e02a8948b6a5 from class io.ktor.http.content.TextContent
2026-06-30 17:12:57.306 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 25948dd9-425e-43fd-8903-e02a8948b6a5]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[25948dd9-425e-43fd-8903-e02a8948b6a5]] @ /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=[25948dd9-425e-43fd-8903-e02a8948b6a5]] @ /playlist/{uuid}/(method:POST)
2026-06-30 17:12:57.308 [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/25948dd9-425e-43fd-8903-e02a8948b6a5
2026-06-30 17:12:57.310 [DefaultDispatcher-worker-6 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/25948dd9-425e-43fd-8903-e02a8948b6a5 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:12:57.313 [DefaultDispatcher-worker-2 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43203/playlist/25948dd9-425e-43fd-8903-e02a8948b6a5
2026-06-30 17:12:57.313 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43203/playlist/25948dd9-425e-43fd-8903-e02a8948b6a5
2026-06-30 17:12:57.313 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43203/playlist/25948dd9-425e-43fd-8903-e02a8948b6a5
2026-06-30 17:12:59.557 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:12:59.559 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.058 seconds.
2026-06-30 17:12:59.573 [DefaultDispatcher-worker-6 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33869
2026-06-30 17:12:59.781 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33869/api/school/xapi/statements
2026-06-30 17:12:59.794 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@4b5f3fe2 for http://localhost:33869/api/school/xapi/statements
2026-06-30 17:12:59.794 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33869/api/school/xapi/statements
2026-06-30 17:12:59.794 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33869/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 17:12:59.805 [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-30 17:12:59.806 [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-30 17:12:59.830 [DefaultDispatcher-worker-3 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33869/api/school/xapi/statements
2026-06-30 17:12:59.830 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33869/api/school/xapi/statements
2026-06-30 17:12:59.831 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33869/api/school/xapi/statements
2026-06-30 17:12:59.831 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33869/api/school/xapi/statements.
2026-06-30 17:13:02.043 [Test worker @coroutine#295] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:13:02.044 [Test worker @coroutine#295] INFO  io.ktor.server.Application - Application started in 0.063 seconds.
2026-06-30 17:13:02.046 [DefaultDispatcher-worker-9 @coroutine#304] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42037
2026-06-30 17:13:02.141 [Test worker @coroutine#295] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42037/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:13:02.142 [Test worker @coroutine#295] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42037/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:13:02.142 [Test worker @coroutine#295] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42037/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:13:02.159 [eventLoopGroupProxy-40-1 @call-handler#312] 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-30 17:13:02.179 [Test worker @coroutine#295] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42037/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:13:02.180 [Test worker @coroutine#295] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42037/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:13:02.180 [Test worker @coroutine#295] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42037/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:13:02.185 [Test worker @coroutine#295] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.xapi.model.XapiStatementResult for http://localhost:42037/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:20:38.659 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:38.778 [Test worker] INFO  io.ktor.server.Application - Application started in 0.264 seconds.
2026-06-30 17:20:38.859 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42387
2026-06-30 17:20:39.897 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42387/resources/index.json
2026-06-30 17:20:39.898 [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:42387/resources/index.json.
2026-06-30 17:20:39.898 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42387/resources/index.json
2026-06-30 17:20:40.078 [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-30 17:20:40.159 [eventLoopGroupProxy-4-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 91ms
2026-06-30 17:20:40.170 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42387/resources/index.json
2026-06-30 17:20:40.172 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42387/resources/index.json
2026-06-30 17:20:40.173 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42387/resources/index.json
2026-06-30 17:20:40.199 [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:42387/resources/index.json.
2026-06-30 17:20:40.252 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42387/resources/index.json
2026-06-30 17:20:40.253 [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:42387/resources/index.json.
2026-06-30 17:20:40.253 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42387/resources/index.json
2026-06-30 17:20:40.260 [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-30 17:20:40.263 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 4ms
2026-06-30 17:20:40.263 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42387/resources/index.json
2026-06-30 17:20:40.263 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42387/resources/index.json
2026-06-30 17:20:40.264 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42387/resources/index.json
2026-06-30 17:20:42.286 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:42.286 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 17:20:42.288 [DefaultDispatcher-worker-2 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34597
2026-06-30 17:20:42.346 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34597/resources/index.json
2026-06-30 17:20:42.346 [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:34597/resources/index.json.
2026-06-30 17:20:42.346 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34597/resources/index.json
2026-06-30 17:20:42.351 [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-30 17:20:42.352 [eventLoopGroupProxy-7-1 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 17:20:42.354 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34597/resources/index.json
2026-06-30 17:20:42.354 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34597/resources/index.json
2026-06-30 17:20:42.354 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34597/resources/index.json
2026-06-30 17:20:42.355 [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:34597/resources/index.json.
2026-06-30 17:20:42.369 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34597/resources/index.json
2026-06-30 17:20:42.369 [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:34597/resources/index.json.
2026-06-30 17:20:42.369 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34597/resources/index.json
2026-06-30 17:20:42.372 [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-30 17:20:42.372 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 17:20:42.373 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34597/resources/index.json
2026-06-30 17:20:42.374 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34597/resources/index.json
2026-06-30 17:20:42.375 [DefaultDispatcher-worker-4 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34597/resources/index.json
2026-06-30 17:20:44.391 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:44.392 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 17:20:44.400 [DefaultDispatcher-worker-5 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43707
2026-06-30 17:20:44.411 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43707/resources/lesson001.json
2026-06-30 17:20:44.411 [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:43707/resources/lesson001.json.
2026-06-30 17:20:44.411 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43707/resources/lesson001.json
2026-06-30 17:20:44.428 [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-30 17:20:44.434 [DefaultDispatcher-worker-4 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 7ms
2026-06-30 17:20:44.438 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43707/resources/lesson001.json
2026-06-30 17:20:44.438 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43707/resources/lesson001.json
2026-06-30 17:20:44.438 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43707/resources/lesson001.json
2026-06-30 17:20:44.444 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:43707/resources/lesson001.json.
2026-06-30 17:20:46.855 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:46.870 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.179 seconds.
2026-06-30 17:20:46.873 [DefaultDispatcher-worker-7 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36859
2026-06-30 17:20:46.884 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36859/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:46.884 [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:36859/api/school/respect/schoolpermissiongrant.
2026-06-30 17:20:46.884 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36859/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:46.891 [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-30 17:20:46.906 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36859/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:46.908 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36859/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:46.908 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36859/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:46.911 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36859/api/school/respect/schoolpermissiongrant.
2026-06-30 17:20:47.056 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.056 [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:36859/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:47.056 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.058 [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-30 17:20:47.094 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.094 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.094 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.099 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36859/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:47.116 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.117 [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:36859/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:47.117 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.120 [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-30 17:20:47.125 [DefaultDispatcher-worker-4 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:20:47.127 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.128 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:47.128 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36859/api/school/respect/person?includeRelated=false
2026-06-30 17:20:49.248 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:49.249 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:20:49.250 [DefaultDispatcher-worker-2 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42823
2026-06-30 17:20:49.252 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42823/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:49.252 [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:42823/api/school/respect/schoolpermissiongrant.
2026-06-30 17:20:49.252 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42823/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:49.254 [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-30 17:20:49.256 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42823/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:49.256 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42823/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:49.256 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42823/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:49.257 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42823/api/school/respect/schoolpermissiongrant.
2026-06-30 17:20:49.309 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42823/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:20:49.309 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:42823/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:20:49.309 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42823/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:20:49.310 [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-30 17:20:49.313 [DefaultDispatcher-worker-3 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42823/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:20:49.313 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42823/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:20:49.313 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42823/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:20:49.314 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42823/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:20:51.496 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:51.498 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.052 seconds.
2026-06-30 17:20:51.501 [DefaultDispatcher-worker-2 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39485
2026-06-30 17:20:51.508 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39485/api/school/respect/person?includeRelated=false
2026-06-30 17:20:51.509 [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:39485/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:51.509 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39485/api/school/respect/person?includeRelated=false
2026-06-30 17:20:51.511 [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-30 17:20:51.520 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39485/api/school/respect/person?includeRelated=false
2026-06-30 17:20:51.520 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39485/api/school/respect/person?includeRelated=false
2026-06-30 17:20:51.520 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39485/api/school/respect/person?includeRelated=false
2026-06-30 17:20:51.522 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39485/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:51.634 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39485/api/school/respect/person?since=2026-06-30T13%3A20%3A51.512307803Z&includeRelated=false
2026-06-30 17:20:51.634 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:39485/api/school/respect/person?since=2026-06-30T13%3A20%3A51.512307803Z&includeRelated=false.
2026-06-30 17:20:51.634 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39485/api/school/respect/person?since=2026-06-30T13%3A20%3A51.512307803Z&includeRelated=false
2026-06-30 17:20:51.645 [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-30 17:20:51.657 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39485/api/school/respect/person?since=2026-06-30T13%3A20%3A51.512307803Z&includeRelated=false
2026-06-30 17:20:51.657 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39485/api/school/respect/person?since=2026-06-30T13%3A20%3A51.512307803Z&includeRelated=false
2026-06-30 17:20:51.657 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39485/api/school/respect/person?since=2026-06-30T13%3A20%3A51.512307803Z&includeRelated=false
2026-06-30 17:20:51.660 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39485/api/school/respect/person?since=2026-06-30T13%3A20%3A51.512307803Z&includeRelated=false.
2026-06-30 17:20:53.820 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:53.825 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.052 seconds.
2026-06-30 17:20:53.835 [DefaultDispatcher-worker-6 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35227
2026-06-30 17:20:53.919 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35227/api/school/respect/person
2026-06-30 17:20:53.920 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5494bae4 for http://localhost:35227/api/school/respect/person
2026-06-30 17:20:53.920 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35227/api/school/respect/person
2026-06-30 17:20:53.920 [DefaultDispatcher-worker-4 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35227/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 17:20:53.947 [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-30 17:20:53.959 [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-30 17:20:53.965 [DefaultDispatcher-worker-7 @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-30 17:20:53.970 [DefaultDispatcher-worker-8 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35227/api/school/respect/person
2026-06-30 17:20:53.970 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35227/api/school/respect/person
2026-06-30 17:20:53.970 [DefaultDispatcher-worker-8 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35227/api/school/respect/person
2026-06-30 17:20:56.163 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:20:56.165 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.054 seconds.
2026-06-30 17:20:56.169 [DefaultDispatcher-worker-1 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44539
2026-06-30 17:20:56.174 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44539/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:56.174 [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:44539/api/school/respect/schoolpermissiongrant.
2026-06-30 17:20:56.174 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44539/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:56.178 [eventLoopGroupProxy-25-1 @call-handler#185] TRACE io.ktor.server.routing.Routing - Trace for [api, school, respect, schoolpermissiongrant]
/, segment:0 -> SUCCESS @ /
  /api, segment:1 -> SUCCESS @ /api
    /api/school, segment:2 -> SUCCESS @ /api/school
      /api/school/respect, segment:3 -> SUCCESS @ /api/school/respect
        /api/school/respect/person, segment:3 -> FAILURE "Selector didn't match" @ /api/school/respect/person
        /api/school/respect/schoolpermissiongrant, segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant
          /api/school/respect/schoolpermissiongrant/(method:GET), segment:4 -> SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET)
Matched routes:
  "" -> "api" -> "school" -> "respect" -> "schoolpermissiongrant" -> "(method:GET)"
Routing resolve result:
  SUCCESS @ /api/school/respect/schoolpermissiongrant/(method:GET)
2026-06-30 17:20:56.181 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44539/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:56.181 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44539/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:56.181 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44539/api/school/respect/schoolpermissiongrant
2026-06-30 17:20:56.182 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44539/api/school/respect/schoolpermissiongrant.
2026-06-30 17:20:56.252 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:56.252 [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:44539/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:56.252 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:56.269 [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-30 17:20:56.297 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:56.298 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:56.298 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:56.305 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44539/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:58.329 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:58.329 [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:44539/api/school/respect/person?includeRelated=false.
2026-06-30 17:20:58.329 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:58.336 [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-30 17:20:58.342 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:58.343 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:58.343 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44539/api/school/respect/person?includeRelated=false
2026-06-30 17:20:58.344 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44539/api/school/respect/person?includeRelated=false.
2026-06-30 17:21:00.506 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:21:00.510 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.063 seconds.
2026-06-30 17:21:00.521 [DefaultDispatcher-worker-10 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42609
2026-06-30 17:21:00.528 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42609/api/school/respect/person?includeRelated=false
2026-06-30 17:21:00.529 [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:42609/api/school/respect/person?includeRelated=false.
2026-06-30 17:21:00.529 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42609/api/school/respect/person?includeRelated=false
2026-06-30 17:21:00.545 [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-30 17:21:00.552 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42609/api/school/respect/person?includeRelated=false
2026-06-30 17:21:00.552 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42609/api/school/respect/person?includeRelated=false
2026-06-30 17:21:00.552 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42609/api/school/respect/person?includeRelated=false
2026-06-30 17:21:00.553 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42609/api/school/respect/person?includeRelated=false.
2026-06-30 17:21:00.616 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42609/api/school/respect/person?since=2026-06-30T13%3A21%3A00.546485009Z&includeRelated=false
2026-06-30 17:21:00.617 [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:42609/api/school/respect/person?since=2026-06-30T13%3A21%3A00.546485009Z&includeRelated=false.
2026-06-30 17:21:00.617 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42609/api/school/respect/person?since=2026-06-30T13%3A21%3A00.546485009Z&includeRelated=false
2026-06-30 17:21:00.627 [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-30 17:21:00.634 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42609/api/school/respect/person?since=2026-06-30T13%3A21%3A00.546485009Z&includeRelated=false
2026-06-30 17:21:00.634 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42609/api/school/respect/person?since=2026-06-30T13%3A21%3A00.546485009Z&includeRelated=false
2026-06-30 17:21:00.634 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42609/api/school/respect/person?since=2026-06-30T13%3A21%3A00.546485009Z&includeRelated=false
2026-06-30 17:21:00.635 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42609/api/school/respect/person?since=2026-06-30T13%3A21%3A00.546485009Z&includeRelated=false.
2026-06-30 17:21:02.786 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:21:02.788 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.053 seconds.
2026-06-30 17:21:02.789 [DefaultDispatcher-worker-2 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35613
2026-06-30 17:21:02.790 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35613/playlist/e728bb60-8290-4944-96b4-77e33193317d
2026-06-30 17:21:02.791 [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:35613/playlist/e728bb60-8290-4944-96b4-77e33193317d.
2026-06-30 17:21:02.791 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35613/playlist/e728bb60-8290-4944-96b4-77e33193317d
2026-06-30 17:21:02.793 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, e728bb60-8290-4944-96b4-77e33193317d]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[e728bb60-8290-4944-96b4-77e33193317d]] @ /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=[e728bb60-8290-4944-96b4-77e33193317d]] @ /playlist/{uuid}/(method:GET)
2026-06-30 17:21:02.799 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35613/playlist/e728bb60-8290-4944-96b4-77e33193317d
2026-06-30 17:21:02.799 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35613/playlist/e728bb60-8290-4944-96b4-77e33193317d
2026-06-30 17:21:02.799 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35613/playlist/e728bb60-8290-4944-96b4-77e33193317d
2026-06-30 17:21:02.800 [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:35613/playlist/e728bb60-8290-4944-96b4-77e33193317d.
2026-06-30 17:21:04.954 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:21:04.955 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 17:21:04.956 [DefaultDispatcher-worker-10 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40333
2026-06-30 17:21:04.997 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40333/playlist/3e5fa14c-e4ed-49cc-b940-fb0771940a7c
2026-06-30 17:21:04.997 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@2065bf36 for http://localhost:40333/playlist/3e5fa14c-e4ed-49cc-b940-fb0771940a7c
2026-06-30 17:21:04.997 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40333/playlist/3e5fa14c-e4ed-49cc-b940-fb0771940a7c
2026-06-30 17:21:04.997 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:40333/playlist/3e5fa14c-e4ed-49cc-b940-fb0771940a7c from class io.ktor.http.content.TextContent
2026-06-30 17:21:05.000 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 3e5fa14c-e4ed-49cc-b940-fb0771940a7c]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[3e5fa14c-e4ed-49cc-b940-fb0771940a7c]] @ /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=[3e5fa14c-e4ed-49cc-b940-fb0771940a7c]] @ /playlist/{uuid}/(method:POST)
2026-06-30 17:21:05.000 [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/3e5fa14c-e4ed-49cc-b940-fb0771940a7c
2026-06-30 17:21:05.001 [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/3e5fa14c-e4ed-49cc-b940-fb0771940a7c request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:21:05.003 [DefaultDispatcher-worker-2 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40333/playlist/3e5fa14c-e4ed-49cc-b940-fb0771940a7c
2026-06-30 17:21:05.003 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40333/playlist/3e5fa14c-e4ed-49cc-b940-fb0771940a7c
2026-06-30 17:21:05.003 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40333/playlist/3e5fa14c-e4ed-49cc-b940-fb0771940a7c
2026-06-30 17:21:07.108 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:21:07.110 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.041 seconds.
2026-06-30 17:21:07.111 [DefaultDispatcher-worker-2 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36283
2026-06-30 17:21:07.217 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36283/api/school/xapi/statements
2026-06-30 17:21:07.218 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@6f8472f0 for http://localhost:36283/api/school/xapi/statements
2026-06-30 17:21:07.219 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36283/api/school/xapi/statements
2026-06-30 17:21:07.219 [DefaultDispatcher-worker-4 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36283/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 17:21:07.222 [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-30 17:21:07.222 [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-30 17:21:07.234 [DefaultDispatcher-worker-2 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36283/api/school/xapi/statements
2026-06-30 17:21:07.234 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36283/api/school/xapi/statements
2026-06-30 17:21:07.234 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36283/api/school/xapi/statements
2026-06-30 17:21:07.234 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36283/api/school/xapi/statements.
2026-06-30 17:21:09.389 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:21:09.390 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.05 seconds.
2026-06-30 17:21:09.393 [DefaultDispatcher-worker-7 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45171
2026-06-30 17:21:09.482 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45171/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:21:09.482 [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:45171/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:21:09.482 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45171/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:21:09.511 [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-30 17:21:09.519 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45171/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:21:09.520 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45171/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:21:09.520 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45171/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:21:09.521 [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:45171/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:46:23.080 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:23.214 [Test worker] INFO  io.ktor.server.Application - Application started in 0.354 seconds.
2026-06-30 17:46:23.300 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33619
2026-06-30 17:46:24.156 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33619/resources/index.json
2026-06-30 17:46:24.157 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33619/resources/index.json.
2026-06-30 17:46:24.157 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33619/resources/index.json
2026-06-30 17:46:24.283 [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-30 17:46:24.331 [eventLoopGroupProxy-4-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 54ms
2026-06-30 17:46:24.336 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33619/resources/index.json
2026-06-30 17:46:24.338 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33619/resources/index.json
2026-06-30 17:46:24.338 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33619/resources/index.json
2026-06-30 17:46:24.361 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:33619/resources/index.json.
2026-06-30 17:46:24.405 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33619/resources/index.json
2026-06-30 17:46:24.406 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33619/resources/index.json.
2026-06-30 17:46:24.406 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33619/resources/index.json
2026-06-30 17:46:24.408 [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-30 17:46:24.410 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 17:46:24.411 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33619/resources/index.json
2026-06-30 17:46:24.411 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33619/resources/index.json
2026-06-30 17:46:24.411 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33619/resources/index.json
2026-06-30 17:46:26.426 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:26.427 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 17:46:26.428 [DefaultDispatcher-worker-3 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38287
2026-06-30 17:46:26.494 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38287/resources/index.json
2026-06-30 17:46:26.494 [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:38287/resources/index.json.
2026-06-30 17:46:26.494 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38287/resources/index.json
2026-06-30 17:46:26.497 [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-30 17:46:26.498 [DefaultDispatcher-worker-2 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 17:46:26.498 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38287/resources/index.json
2026-06-30 17:46:26.499 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38287/resources/index.json
2026-06-30 17:46:26.499 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38287/resources/index.json
2026-06-30 17:46:26.499 [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:38287/resources/index.json.
2026-06-30 17:46:26.503 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38287/resources/index.json
2026-06-30 17:46:26.503 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38287/resources/index.json.
2026-06-30 17:46:26.503 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38287/resources/index.json
2026-06-30 17:46:26.504 [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-30 17:46:26.505 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 17:46:26.505 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38287/resources/index.json
2026-06-30 17:46:26.506 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38287/resources/index.json
2026-06-30 17:46:26.506 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38287/resources/index.json
2026-06-30 17:46:28.513 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:28.514 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 17:46:28.515 [DefaultDispatcher-worker-3 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44453
2026-06-30 17:46:28.520 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44453/resources/lesson001.json
2026-06-30 17:46:28.520 [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:44453/resources/lesson001.json.
2026-06-30 17:46:28.520 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44453/resources/lesson001.json
2026-06-30 17:46:28.522 [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-30 17:46:28.523 [DefaultDispatcher-worker-2 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 17:46:28.524 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44453/resources/lesson001.json
2026-06-30 17:46:28.524 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44453/resources/lesson001.json
2026-06-30 17:46:28.524 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44453/resources/lesson001.json
2026-06-30 17:46:28.526 [DefaultDispatcher-worker-1 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:44453/resources/lesson001.json.
2026-06-30 17:46:30.748 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:30.756 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.099 seconds.
2026-06-30 17:46:30.758 [DefaultDispatcher-worker-5 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40015
2026-06-30 17:46:30.766 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40015/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:30.766 [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:40015/api/school/respect/schoolpermissiongrant.
2026-06-30 17:46:30.766 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40015/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:30.771 [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-30 17:46:30.785 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40015/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:30.785 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40015/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:30.785 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40015/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:30.787 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40015/api/school/respect/schoolpermissiongrant.
2026-06-30 17:46:30.848 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.848 [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:40015/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:30.848 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.850 [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-30 17:46:30.868 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.869 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.869 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.870 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40015/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:30.876 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.876 [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:40015/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:30.876 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.878 [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-30 17:46:30.880 [DefaultDispatcher-worker-3 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:46:30.881 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.881 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:30.881 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40015/api/school/respect/person?includeRelated=false
2026-06-30 17:46:33.012 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:33.012 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.045 seconds.
2026-06-30 17:46:33.013 [DefaultDispatcher-worker-5 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36145
2026-06-30 17:46:33.014 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:33.014 [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:36145/api/school/respect/schoolpermissiongrant.
2026-06-30 17:46:33.014 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:33.017 [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-30 17:46:33.019 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:33.019 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:33.019 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36145/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:33.019 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36145/api/school/respect/schoolpermissiongrant.
2026-06-30 17:46:33.066 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:46:33.066 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:46:33.066 [DefaultDispatcher-worker-3 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:46:33.068 [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-30 17:46:33.070 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:46:33.071 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:46:33.071 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 17:46:33.072 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36145/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 17:46:35.184 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:35.185 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:46:35.186 [DefaultDispatcher-worker-5 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40823
2026-06-30 17:46:35.189 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40823/api/school/respect/person?includeRelated=false
2026-06-30 17:46:35.189 [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:40823/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:35.189 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40823/api/school/respect/person?includeRelated=false
2026-06-30 17:46:35.191 [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-30 17:46:35.195 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40823/api/school/respect/person?includeRelated=false
2026-06-30 17:46:35.196 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40823/api/school/respect/person?includeRelated=false
2026-06-30 17:46:35.196 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40823/api/school/respect/person?includeRelated=false
2026-06-30 17:46:35.196 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40823/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:35.249 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40823/api/school/respect/person?since=2026-06-30T13%3A46%3A35.191930741Z&includeRelated=false
2026-06-30 17:46:35.249 [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:40823/api/school/respect/person?since=2026-06-30T13%3A46%3A35.191930741Z&includeRelated=false.
2026-06-30 17:46:35.249 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40823/api/school/respect/person?since=2026-06-30T13%3A46%3A35.191930741Z&includeRelated=false
2026-06-30 17:46:35.251 [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-30 17:46:35.253 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40823/api/school/respect/person?since=2026-06-30T13%3A46%3A35.191930741Z&includeRelated=false
2026-06-30 17:46:35.253 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40823/api/school/respect/person?since=2026-06-30T13%3A46%3A35.191930741Z&includeRelated=false
2026-06-30 17:46:35.253 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40823/api/school/respect/person?since=2026-06-30T13%3A46%3A35.191930741Z&includeRelated=false
2026-06-30 17:46:35.254 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40823/api/school/respect/person?since=2026-06-30T13%3A46%3A35.191930741Z&includeRelated=false.
2026-06-30 17:46:37.362 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:37.363 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:46:37.364 [DefaultDispatcher-worker-2 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35649
2026-06-30 17:46:37.409 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35649/api/school/respect/person
2026-06-30 17:46:37.410 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5f4016fd for http://localhost:35649/api/school/respect/person
2026-06-30 17:46:37.410 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35649/api/school/respect/person
2026-06-30 17:46:37.410 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35649/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 17:46:37.413 [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-30 17:46:37.418 [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-30 17:46:37.420 [DefaultDispatcher-worker-5 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:46:37.421 [DefaultDispatcher-worker-12 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35649/api/school/respect/person
2026-06-30 17:46:37.421 [DefaultDispatcher-worker-12 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35649/api/school/respect/person
2026-06-30 17:46:37.421 [DefaultDispatcher-worker-12 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35649/api/school/respect/person
2026-06-30 17:46:39.529 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:39.530 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.047 seconds.
2026-06-30 17:46:39.531 [DefaultDispatcher-worker-12 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39965
2026-06-30 17:46:39.532 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39965/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:39.532 [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:39965/api/school/respect/schoolpermissiongrant.
2026-06-30 17:46:39.532 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39965/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:39.534 [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-30 17:46:39.536 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39965/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:39.536 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39965/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:39.536 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39965/api/school/respect/schoolpermissiongrant
2026-06-30 17:46:39.537 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39965/api/school/respect/schoolpermissiongrant.
2026-06-30 17:46:39.577 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:39.577 [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:39965/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:39.577 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:39.578 [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-30 17:46:39.583 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:39.583 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:39.583 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:39.584 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39965/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:41.589 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:41.589 [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:39965/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:41.589 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:41.591 [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-30 17:46:41.593 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:41.593 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:41.594 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39965/api/school/respect/person?includeRelated=false
2026-06-30 17:46:41.594 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39965/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:43.717 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:43.718 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:46:43.719 [DefaultDispatcher-worker-15 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44403
2026-06-30 17:46:43.721 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44403/api/school/respect/person?includeRelated=false
2026-06-30 17:46:43.721 [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:44403/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:43.721 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44403/api/school/respect/person?includeRelated=false
2026-06-30 17:46:43.723 [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-30 17:46:43.727 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44403/api/school/respect/person?includeRelated=false
2026-06-30 17:46:43.727 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44403/api/school/respect/person?includeRelated=false
2026-06-30 17:46:43.727 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44403/api/school/respect/person?includeRelated=false
2026-06-30 17:46:43.728 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44403/api/school/respect/person?includeRelated=false.
2026-06-30 17:46:43.776 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44403/api/school/respect/person?since=2026-06-30T13%3A46%3A43.723990754Z&includeRelated=false
2026-06-30 17:46:43.776 [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:44403/api/school/respect/person?since=2026-06-30T13%3A46%3A43.723990754Z&includeRelated=false.
2026-06-30 17:46:43.776 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44403/api/school/respect/person?since=2026-06-30T13%3A46%3A43.723990754Z&includeRelated=false
2026-06-30 17:46:43.777 [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-30 17:46:43.779 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44403/api/school/respect/person?since=2026-06-30T13%3A46%3A43.723990754Z&includeRelated=false
2026-06-30 17:46:43.780 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44403/api/school/respect/person?since=2026-06-30T13%3A46%3A43.723990754Z&includeRelated=false
2026-06-30 17:46:43.780 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44403/api/school/respect/person?since=2026-06-30T13%3A46%3A43.723990754Z&includeRelated=false
2026-06-30 17:46:43.780 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:44403/api/school/respect/person?since=2026-06-30T13%3A46%3A43.723990754Z&includeRelated=false.
2026-06-30 17:46:45.904 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:45.905 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.052 seconds.
2026-06-30 17:46:45.906 [DefaultDispatcher-worker-15 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44573
2026-06-30 17:46:45.908 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44573/playlist/c7f4e9f4-cfac-4df5-b1c4-7795c4c37740
2026-06-30 17:46:45.908 [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:44573/playlist/c7f4e9f4-cfac-4df5-b1c4-7795c4c37740.
2026-06-30 17:46:45.908 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44573/playlist/c7f4e9f4-cfac-4df5-b1c4-7795c4c37740
2026-06-30 17:46:45.911 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, c7f4e9f4-cfac-4df5-b1c4-7795c4c37740]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[c7f4e9f4-cfac-4df5-b1c4-7795c4c37740]] @ /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=[c7f4e9f4-cfac-4df5-b1c4-7795c4c37740]] @ /playlist/{uuid}/(method:GET)
2026-06-30 17:46:45.916 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44573/playlist/c7f4e9f4-cfac-4df5-b1c4-7795c4c37740
2026-06-30 17:46:45.916 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44573/playlist/c7f4e9f4-cfac-4df5-b1c4-7795c4c37740
2026-06-30 17:46:45.916 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44573/playlist/c7f4e9f4-cfac-4df5-b1c4-7795c4c37740
2026-06-30 17:46:45.917 [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:44573/playlist/c7f4e9f4-cfac-4df5-b1c4-7795c4c37740.
2026-06-30 17:46:48.049 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:48.050 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:46:48.051 [DefaultDispatcher-worker-12 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43889
2026-06-30 17:46:48.090 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43889/playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e
2026-06-30 17:46:48.091 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5c9da5c9 for http://localhost:43889/playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e
2026-06-30 17:46:48.091 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43889/playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e
2026-06-30 17:46:48.091 [DefaultDispatcher-worker-15 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43889/playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e from class io.ktor.http.content.TextContent
2026-06-30 17:46:48.093 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, a5a1fdca-fafd-446e-91ea-339de9e4c70e]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[a5a1fdca-fafd-446e-91ea-339de9e4c70e]] @ /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=[a5a1fdca-fafd-446e-91ea-339de9e4c70e]] @ /playlist/{uuid}/(method:POST)
2026-06-30 17:46:48.093 [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/a5a1fdca-fafd-446e-91ea-339de9e4c70e
2026-06-30 17:46:48.094 [DefaultDispatcher-worker-15 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 17:46:48.095 [DefaultDispatcher-worker-6 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43889/playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e
2026-06-30 17:46:48.095 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43889/playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e
2026-06-30 17:46:48.095 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43889/playlist/a5a1fdca-fafd-446e-91ea-339de9e4c70e
2026-06-30 17:46:50.198 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:50.199 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.048 seconds.
2026-06-30 17:46:50.200 [DefaultDispatcher-worker-4 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45839
2026-06-30 17:46:50.282 [DefaultDispatcher-worker-13 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45839/api/school/xapi/statements
2026-06-30 17:46:50.284 [DefaultDispatcher-worker-13 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@51e601ea for http://localhost:45839/api/school/xapi/statements
2026-06-30 17:46:50.284 [DefaultDispatcher-worker-13 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45839/api/school/xapi/statements
2026-06-30 17:46:50.284 [DefaultDispatcher-worker-13 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:45839/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 17:46:50.286 [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-30 17:46:50.287 [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-30 17:46:50.296 [DefaultDispatcher-worker-6 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45839/api/school/xapi/statements
2026-06-30 17:46:50.297 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45839/api/school/xapi/statements
2026-06-30 17:46:50.297 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45839/api/school/xapi/statements
2026-06-30 17:46:50.297 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45839/api/school/xapi/statements.
2026-06-30 17:46:52.398 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 17:46:52.398 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 17:46:52.401 [DefaultDispatcher-worker-14 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36203
2026-06-30 17:46:52.447 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36203/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:46:52.447 [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:36203/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 17:46:52.447 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36203/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:46:52.450 [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-30 17:46:52.453 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36203/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:46:52.454 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36203/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:46:52.454 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36203/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 17:46:52.454 [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:36203/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 18:06:23.695 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:23.857 [Test worker] INFO  io.ktor.server.Application - Application started in 0.358 seconds.
2026-06-30 18:06:23.958 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34697
2026-06-30 18:06:25.018 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34697/resources/index.json
2026-06-30 18:06:25.019 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34697/resources/index.json.
2026-06-30 18:06:25.019 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34697/resources/index.json
2026-06-30 18:06:25.176 [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-30 18:06:25.242 [eventLoopGroupProxy-4-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 73ms
2026-06-30 18:06:25.246 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34697/resources/index.json
2026-06-30 18:06:25.248 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34697/resources/index.json
2026-06-30 18:06:25.249 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34697/resources/index.json
2026-06-30 18:06:25.276 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:34697/resources/index.json.
2026-06-30 18:06:25.320 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34697/resources/index.json
2026-06-30 18:06:25.321 [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:34697/resources/index.json.
2026-06-30 18:06:25.321 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34697/resources/index.json
2026-06-30 18:06:25.325 [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-30 18:06:25.330 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 4ms
2026-06-30 18:06:25.331 [DefaultDispatcher-worker-3 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34697/resources/index.json
2026-06-30 18:06:25.333 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34697/resources/index.json
2026-06-30 18:06:25.333 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34697/resources/index.json
2026-06-30 18:06:27.351 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:27.351 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 18:06:27.352 [DefaultDispatcher-worker-3 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36303
2026-06-30 18:06:27.410 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36303/resources/index.json
2026-06-30 18:06:27.410 [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:36303/resources/index.json.
2026-06-30 18:06:27.410 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36303/resources/index.json
2026-06-30 18:06:27.413 [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-30 18:06:27.414 [DefaultDispatcher-worker-5 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 18:06:27.415 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36303/resources/index.json
2026-06-30 18:06:27.415 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36303/resources/index.json
2026-06-30 18:06:27.415 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36303/resources/index.json
2026-06-30 18:06:27.415 [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:36303/resources/index.json.
2026-06-30 18:06:27.419 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36303/resources/index.json
2026-06-30 18:06:27.419 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36303/resources/index.json.
2026-06-30 18:06:27.419 [DefaultDispatcher-worker-3 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36303/resources/index.json
2026-06-30 18:06:27.420 [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-30 18:06:27.421 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 18:06:27.421 [DefaultDispatcher-worker-5 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36303/resources/index.json
2026-06-30 18:06:27.421 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36303/resources/index.json
2026-06-30 18:06:27.421 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36303/resources/index.json
2026-06-30 18:06:29.427 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:29.428 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 18:06:29.429 [DefaultDispatcher-worker-5 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33169
2026-06-30 18:06:29.434 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33169/resources/lesson001.json
2026-06-30 18:06:29.434 [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:33169/resources/lesson001.json.
2026-06-30 18:06:29.434 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33169/resources/lesson001.json
2026-06-30 18:06:29.438 [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-30 18:06:29.439 [eventLoopGroupProxy-10-1 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 18:06:29.440 [DefaultDispatcher-worker-4 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33169/resources/lesson001.json
2026-06-30 18:06:29.440 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33169/resources/lesson001.json
2026-06-30 18:06:29.440 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33169/resources/lesson001.json
2026-06-30 18:06:29.443 [DefaultDispatcher-worker-3 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:33169/resources/lesson001.json.
2026-06-30 18:06:31.749 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:31.755 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.135 seconds.
2026-06-30 18:06:31.757 [DefaultDispatcher-worker-4 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35047
2026-06-30 18:06:31.765 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35047/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:31.765 [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:35047/api/school/respect/schoolpermissiongrant.
2026-06-30 18:06:31.765 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35047/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:31.770 [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-30 18:06:31.781 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35047/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:31.781 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35047/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:31.781 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35047/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:31.783 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35047/api/school/respect/schoolpermissiongrant.
2026-06-30 18:06:31.847 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.848 [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:35047/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:31.848 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.849 [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-30 18:06:31.866 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.866 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.866 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.867 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35047/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:31.873 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.873 [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:35047/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:31.873 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.875 [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-30 18:06:31.877 [DefaultDispatcher-worker-2 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:06:31.877 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.878 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:31.878 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35047/api/school/respect/person?includeRelated=false
2026-06-30 18:06:34.087 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:34.088 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.119 seconds.
2026-06-30 18:06:34.089 [DefaultDispatcher-worker-2 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34835
2026-06-30 18:06:34.090 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34835/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:34.090 [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:34835/api/school/respect/schoolpermissiongrant.
2026-06-30 18:06:34.090 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34835/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:34.092 [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-30 18:06:34.094 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34835/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:34.095 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34835/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:34.095 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34835/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:34.095 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34835/api/school/respect/schoolpermissiongrant.
2026-06-30 18:06:34.178 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34835/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:06:34.178 [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:34835/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 18:06:34.178 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34835/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:06:34.180 [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-30 18:06:34.183 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34835/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:06:34.183 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34835/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:06:34.183 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34835/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:06:34.184 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34835/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 18:06:36.309 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:36.309 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 18:06:36.311 [DefaultDispatcher-worker-2 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:32803
2026-06-30 18:06:36.313 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32803/api/school/respect/person?includeRelated=false
2026-06-30 18:06:36.313 [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:32803/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:36.313 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32803/api/school/respect/person?includeRelated=false
2026-06-30 18:06:36.316 [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-30 18:06:36.319 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32803/api/school/respect/person?includeRelated=false
2026-06-30 18:06:36.319 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32803/api/school/respect/person?includeRelated=false
2026-06-30 18:06:36.319 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32803/api/school/respect/person?includeRelated=false
2026-06-30 18:06:36.320 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:32803/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:36.371 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32803/api/school/respect/person?since=2026-06-30T14%3A06%3A36.316323343Z&includeRelated=false
2026-06-30 18:06:36.371 [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:32803/api/school/respect/person?since=2026-06-30T14%3A06%3A36.316323343Z&includeRelated=false.
2026-06-30 18:06:36.371 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32803/api/school/respect/person?since=2026-06-30T14%3A06%3A36.316323343Z&includeRelated=false
2026-06-30 18:06:36.373 [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-30 18:06:36.376 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32803/api/school/respect/person?since=2026-06-30T14%3A06%3A36.316323343Z&includeRelated=false
2026-06-30 18:06:36.376 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32803/api/school/respect/person?since=2026-06-30T14%3A06%3A36.316323343Z&includeRelated=false
2026-06-30 18:06:36.376 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32803/api/school/respect/person?since=2026-06-30T14%3A06%3A36.316323343Z&includeRelated=false
2026-06-30 18:06:36.377 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:32803/api/school/respect/person?since=2026-06-30T14%3A06%3A36.316323343Z&includeRelated=false.
2026-06-30 18:06:38.500 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:38.500 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 18:06:38.502 [DefaultDispatcher-worker-2 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33393
2026-06-30 18:06:38.546 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33393/api/school/respect/person
2026-06-30 18:06:38.546 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5f8662bb for http://localhost:33393/api/school/respect/person
2026-06-30 18:06:38.546 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33393/api/school/respect/person
2026-06-30 18:06:38.546 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33393/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 18:06:38.549 [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-30 18:06:38.555 [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-30 18:06:38.556 [DefaultDispatcher-worker-5 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:06:38.557 [DefaultDispatcher-worker-2 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33393/api/school/respect/person
2026-06-30 18:06:38.557 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33393/api/school/respect/person
2026-06-30 18:06:38.557 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33393/api/school/respect/person
2026-06-30 18:06:40.672 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:40.673 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.047 seconds.
2026-06-30 18:06:40.674 [DefaultDispatcher-worker-5 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38399
2026-06-30 18:06:40.675 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38399/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:40.675 [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:38399/api/school/respect/schoolpermissiongrant.
2026-06-30 18:06:40.675 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38399/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:40.679 [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-30 18:06:40.681 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38399/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:40.681 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38399/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:40.681 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38399/api/school/respect/schoolpermissiongrant
2026-06-30 18:06:40.681 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38399/api/school/respect/schoolpermissiongrant.
2026-06-30 18:06:40.722 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:40.722 [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:38399/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:40.722 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:40.723 [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-30 18:06:40.728 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:40.728 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:40.728 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:40.729 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38399/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:42.734 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:42.734 [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:38399/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:42.734 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:42.735 [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-30 18:06:42.738 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:42.738 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:42.739 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38399/api/school/respect/person?includeRelated=false
2026-06-30 18:06:42.739 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38399/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:44.907 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:44.908 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.054 seconds.
2026-06-30 18:06:44.909 [DefaultDispatcher-worker-5 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41397
2026-06-30 18:06:44.911 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41397/api/school/respect/person?includeRelated=false
2026-06-30 18:06:44.911 [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:41397/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:44.911 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41397/api/school/respect/person?includeRelated=false
2026-06-30 18:06:44.913 [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-30 18:06:44.917 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41397/api/school/respect/person?includeRelated=false
2026-06-30 18:06:44.917 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41397/api/school/respect/person?includeRelated=false
2026-06-30 18:06:44.917 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41397/api/school/respect/person?includeRelated=false
2026-06-30 18:06:44.918 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41397/api/school/respect/person?includeRelated=false.
2026-06-30 18:06:44.960 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41397/api/school/respect/person?since=2026-06-30T14%3A06%3A44.914147241Z&includeRelated=false
2026-06-30 18:06:44.960 [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:41397/api/school/respect/person?since=2026-06-30T14%3A06%3A44.914147241Z&includeRelated=false.
2026-06-30 18:06:44.960 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41397/api/school/respect/person?since=2026-06-30T14%3A06%3A44.914147241Z&includeRelated=false
2026-06-30 18:06:44.961 [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-30 18:06:44.963 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41397/api/school/respect/person?since=2026-06-30T14%3A06%3A44.914147241Z&includeRelated=false
2026-06-30 18:06:44.963 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41397/api/school/respect/person?since=2026-06-30T14%3A06%3A44.914147241Z&includeRelated=false
2026-06-30 18:06:44.963 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41397/api/school/respect/person?since=2026-06-30T14%3A06%3A44.914147241Z&includeRelated=false
2026-06-30 18:06:44.964 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41397/api/school/respect/person?since=2026-06-30T14%3A06%3A44.914147241Z&includeRelated=false.
2026-06-30 18:06:47.086 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:47.087 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.051 seconds.
2026-06-30 18:06:47.088 [DefaultDispatcher-worker-1 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43055
2026-06-30 18:06:47.090 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43055/playlist/ee4457cb-92a3-4784-af21-a15db8f51334
2026-06-30 18:06:47.090 [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:43055/playlist/ee4457cb-92a3-4784-af21-a15db8f51334.
2026-06-30 18:06:47.090 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43055/playlist/ee4457cb-92a3-4784-af21-a15db8f51334
2026-06-30 18:06:47.092 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, ee4457cb-92a3-4784-af21-a15db8f51334]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[ee4457cb-92a3-4784-af21-a15db8f51334]] @ /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=[ee4457cb-92a3-4784-af21-a15db8f51334]] @ /playlist/{uuid}/(method:GET)
2026-06-30 18:06:47.098 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43055/playlist/ee4457cb-92a3-4784-af21-a15db8f51334
2026-06-30 18:06:47.098 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43055/playlist/ee4457cb-92a3-4784-af21-a15db8f51334
2026-06-30 18:06:47.098 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43055/playlist/ee4457cb-92a3-4784-af21-a15db8f51334
2026-06-30 18:06:47.098 [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:43055/playlist/ee4457cb-92a3-4784-af21-a15db8f51334.
2026-06-30 18:06:49.259 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:49.259 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.046 seconds.
2026-06-30 18:06:49.260 [DefaultDispatcher-worker-1 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35353
2026-06-30 18:06:49.301 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35353/playlist/fec8dce9-01e7-4966-8292-05014ebf640f
2026-06-30 18:06:49.301 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@48a18ee6 for http://localhost:35353/playlist/fec8dce9-01e7-4966-8292-05014ebf640f
2026-06-30 18:06:49.301 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35353/playlist/fec8dce9-01e7-4966-8292-05014ebf640f
2026-06-30 18:06:49.301 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:35353/playlist/fec8dce9-01e7-4966-8292-05014ebf640f from class io.ktor.http.content.TextContent
2026-06-30 18:06:49.303 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, fec8dce9-01e7-4966-8292-05014ebf640f]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[fec8dce9-01e7-4966-8292-05014ebf640f]] @ /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=[fec8dce9-01e7-4966-8292-05014ebf640f]] @ /playlist/{uuid}/(method:POST)
2026-06-30 18:06:49.304 [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/fec8dce9-01e7-4966-8292-05014ebf640f
2026-06-30 18:06:49.305 [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/fec8dce9-01e7-4966-8292-05014ebf640f request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:06:49.305 [DefaultDispatcher-worker-2 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35353/playlist/fec8dce9-01e7-4966-8292-05014ebf640f
2026-06-30 18:06:49.305 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35353/playlist/fec8dce9-01e7-4966-8292-05014ebf640f
2026-06-30 18:06:49.306 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35353/playlist/fec8dce9-01e7-4966-8292-05014ebf640f
2026-06-30 18:06:51.424 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:51.425 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 18:06:51.426 [DefaultDispatcher-worker-10 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33151
2026-06-30 18:06:51.501 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33151/api/school/xapi/statements
2026-06-30 18:06:51.502 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3f5f7fc0 for http://localhost:33151/api/school/xapi/statements
2026-06-30 18:06:51.502 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33151/api/school/xapi/statements
2026-06-30 18:06:51.502 [DefaultDispatcher-worker-2 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33151/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 18:06:51.505 [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-30 18:06:51.505 [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-30 18:06:51.514 [DefaultDispatcher-worker-3 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33151/api/school/xapi/statements
2026-06-30 18:06:51.514 [DefaultDispatcher-worker-3 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33151/api/school/xapi/statements
2026-06-30 18:06:51.514 [DefaultDispatcher-worker-3 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33151/api/school/xapi/statements
2026-06-30 18:06:51.515 [DefaultDispatcher-worker-3 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33151/api/school/xapi/statements.
2026-06-30 18:06:53.625 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:06:53.626 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.047 seconds.
2026-06-30 18:06:53.627 [DefaultDispatcher-worker-3 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41797
2026-06-30 18:06:53.680 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41797/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:06:53.681 [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:41797/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 18:06:53.681 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41797/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:06:53.683 [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-30 18:06:53.687 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41797/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:06:53.687 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41797/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:06:53.687 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41797/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:06:53.688 [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:41797/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 18:26:07.019 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:07.182 [Test worker] INFO  io.ktor.server.Application - Application started in 0.339 seconds.
2026-06-30 18:26:07.287 [DefaultDispatcher-worker-2 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34773
2026-06-30 18:26:08.261 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34773/resources/index.json
2026-06-30 18:26:08.262 [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:34773/resources/index.json.
2026-06-30 18:26:08.262 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34773/resources/index.json
2026-06-30 18:26:08.385 [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-30 18:26:08.426 [eventLoopGroupProxy-4-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 46ms
2026-06-30 18:26:08.430 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34773/resources/index.json
2026-06-30 18:26:08.432 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34773/resources/index.json
2026-06-30 18:26:08.432 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34773/resources/index.json
2026-06-30 18:26:08.451 [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:34773/resources/index.json.
2026-06-30 18:26:08.485 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34773/resources/index.json
2026-06-30 18:26:08.485 [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:34773/resources/index.json.
2026-06-30 18:26:08.485 [DefaultDispatcher-worker-2 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34773/resources/index.json
2026-06-30 18:26:08.487 [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-30 18:26:08.489 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 18:26:08.490 [DefaultDispatcher-worker-2 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34773/resources/index.json
2026-06-30 18:26:08.490 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34773/resources/index.json
2026-06-30 18:26:08.490 [DefaultDispatcher-worker-4 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34773/resources/index.json
2026-06-30 18:26:09.497 [eventLoopGroupProxy-3-1] WARN  i.n.u.c.AbstractEventExecutor - A task raised an exception. Task: io.netty.channel.AbstractChannel$AbstractUnsafe$8@d039d47
java.util.concurrent.RejectedExecutionException: event executor terminated
	at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:1005)
	at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:388)
	at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:381)
	at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:907)
	at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:873)
	at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:863)
	at io.netty.channel.DefaultChannelPipeline.destroyUp(DefaultChannelPipeline.java:816)
	at io.netty.channel.DefaultChannelPipeline.destroy(DefaultChannelPipeline.java:801)
	at io.netty.channel.DefaultChannelPipeline.access$700(DefaultChannelPipeline.java:45)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelUnregistered(DefaultChannelPipeline.java:1411)
	at io.netty.channel.DefaultChannelPipeline.fireChannelUnregistered(DefaultChannelPipeline.java:780)
	at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:692)
	at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:148)
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:141)
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:507)
	at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:183)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1073)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:1583)
2026-06-30 18:26:10.504 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:10.504 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 18:26:10.505 [DefaultDispatcher-worker-4 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38565
2026-06-30 18:26:10.562 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38565/resources/index.json
2026-06-30 18:26:10.562 [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:38565/resources/index.json.
2026-06-30 18:26:10.562 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38565/resources/index.json
2026-06-30 18:26:10.565 [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-30 18:26:10.566 [DefaultDispatcher-worker-2 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 18:26:10.567 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38565/resources/index.json
2026-06-30 18:26:10.567 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38565/resources/index.json
2026-06-30 18:26:10.567 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38565/resources/index.json
2026-06-30 18:26:10.568 [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:38565/resources/index.json.
2026-06-30 18:26:10.572 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38565/resources/index.json
2026-06-30 18:26:10.572 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38565/resources/index.json.
2026-06-30 18:26:10.572 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38565/resources/index.json
2026-06-30 18:26:10.573 [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-30 18:26:10.573 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 0ms
2026-06-30 18:26:10.573 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38565/resources/index.json
2026-06-30 18:26:10.574 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38565/resources/index.json
2026-06-30 18:26:10.574 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38565/resources/index.json
2026-06-30 18:26:12.580 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:12.581 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 18:26:12.582 [DefaultDispatcher-worker-2 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40955
2026-06-30 18:26:12.587 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40955/resources/lesson001.json
2026-06-30 18:26:12.587 [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:40955/resources/lesson001.json.
2026-06-30 18:26:12.587 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40955/resources/lesson001.json
2026-06-30 18:26:12.589 [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-30 18:26:12.591 [DefaultDispatcher-worker-1 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 2ms
2026-06-30 18:26:12.591 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40955/resources/lesson001.json
2026-06-30 18:26:12.591 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40955/resources/lesson001.json
2026-06-30 18:26:12.591 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40955/resources/lesson001.json
2026-06-30 18:26:12.594 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:40955/resources/lesson001.json.
2026-06-30 18:26:14.823 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:14.829 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.103 seconds.
2026-06-30 18:26:14.831 [DefaultDispatcher-worker-4 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:32819
2026-06-30 18:26:14.839 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32819/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:14.840 [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:32819/api/school/respect/schoolpermissiongrant.
2026-06-30 18:26:14.840 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32819/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:14.844 [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-30 18:26:14.856 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32819/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:14.856 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32819/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:14.856 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32819/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:14.857 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:32819/api/school/respect/schoolpermissiongrant.
2026-06-30 18:26:14.918 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.919 [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:32819/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:14.919 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.920 [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-30 18:26:14.939 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.939 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.939 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.940 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:32819/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:14.946 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.946 [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:32819/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:14.946 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.948 [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-30 18:26:14.950 [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-30 18:26:14.951 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.951 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:14.951 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:32819/api/school/respect/person?includeRelated=false
2026-06-30 18:26:17.069 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:17.070 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 18:26:17.071 [DefaultDispatcher-worker-4 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41031
2026-06-30 18:26:17.072 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41031/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:17.072 [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:41031/api/school/respect/schoolpermissiongrant.
2026-06-30 18:26:17.072 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41031/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:17.075 [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-30 18:26:17.076 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41031/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:17.077 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41031/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:17.077 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41031/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:17.077 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41031/api/school/respect/schoolpermissiongrant.
2026-06-30 18:26:17.124 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41031/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:26:17.124 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:41031/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 18:26:17.124 [DefaultDispatcher-worker-2 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41031/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:26:17.125 [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-30 18:26:17.128 [DefaultDispatcher-worker-5 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41031/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:26:17.128 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41031/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:26:17.128 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41031/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:26:17.129 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41031/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 18:26:19.248 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:19.249 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.045 seconds.
2026-06-30 18:26:19.250 [DefaultDispatcher-worker-2 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41873
2026-06-30 18:26:19.253 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41873/api/school/respect/person?includeRelated=false
2026-06-30 18:26:19.253 [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:41873/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:19.253 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41873/api/school/respect/person?includeRelated=false
2026-06-30 18:26:19.256 [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-30 18:26:19.260 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41873/api/school/respect/person?includeRelated=false
2026-06-30 18:26:19.260 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41873/api/school/respect/person?includeRelated=false
2026-06-30 18:26:19.260 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41873/api/school/respect/person?includeRelated=false
2026-06-30 18:26:19.261 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41873/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:19.323 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41873/api/school/respect/person?since=2026-06-30T14%3A26%3A19.256850824Z&includeRelated=false
2026-06-30 18:26:19.323 [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:41873/api/school/respect/person?since=2026-06-30T14%3A26%3A19.256850824Z&includeRelated=false.
2026-06-30 18:26:19.323 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41873/api/school/respect/person?since=2026-06-30T14%3A26%3A19.256850824Z&includeRelated=false
2026-06-30 18:26:19.324 [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-30 18:26:19.328 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41873/api/school/respect/person?since=2026-06-30T14%3A26%3A19.256850824Z&includeRelated=false
2026-06-30 18:26:19.328 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41873/api/school/respect/person?since=2026-06-30T14%3A26%3A19.256850824Z&includeRelated=false
2026-06-30 18:26:19.328 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41873/api/school/respect/person?since=2026-06-30T14%3A26%3A19.256850824Z&includeRelated=false
2026-06-30 18:26:19.328 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:41873/api/school/respect/person?since=2026-06-30T14%3A26%3A19.256850824Z&includeRelated=false.
2026-06-30 18:26:21.452 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:21.453 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.045 seconds.
2026-06-30 18:26:21.454 [DefaultDispatcher-worker-5 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36281
2026-06-30 18:26:21.499 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36281/api/school/respect/person
2026-06-30 18:26:21.499 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@5cce8923 for http://localhost:36281/api/school/respect/person
2026-06-30 18:26:21.499 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36281/api/school/respect/person
2026-06-30 18:26:21.500 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36281/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 18:26:21.503 [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-30 18:26:21.508 [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-30 18:26:21.510 [DefaultDispatcher-worker-4 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:26:21.511 [DefaultDispatcher-worker-5 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36281/api/school/respect/person
2026-06-30 18:26:21.511 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36281/api/school/respect/person
2026-06-30 18:26:21.511 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36281/api/school/respect/person
2026-06-30 18:26:23.621 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:23.622 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 18:26:23.624 [DefaultDispatcher-worker-5 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38847
2026-06-30 18:26:23.625 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38847/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:23.625 [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:38847/api/school/respect/schoolpermissiongrant.
2026-06-30 18:26:23.625 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38847/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:23.627 [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-30 18:26:23.629 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38847/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:23.629 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38847/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:23.629 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38847/api/school/respect/schoolpermissiongrant
2026-06-30 18:26:23.630 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38847/api/school/respect/schoolpermissiongrant.
2026-06-30 18:26:23.686 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:23.687 [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:38847/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:23.687 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:23.688 [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-30 18:26:23.693 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:23.694 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:23.694 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:23.694 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38847/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:25.699 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:25.699 [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:38847/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:25.700 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:25.701 [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-30 18:26:25.704 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:25.704 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:25.704 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38847/api/school/respect/person?includeRelated=false
2026-06-30 18:26:25.705 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38847/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:27.815 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:27.816 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 18:26:27.817 [DefaultDispatcher-worker-3 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36547
2026-06-30 18:26:27.820 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36547/api/school/respect/person?includeRelated=false
2026-06-30 18:26:27.820 [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:36547/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:27.820 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36547/api/school/respect/person?includeRelated=false
2026-06-30 18:26:27.822 [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-30 18:26:27.826 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36547/api/school/respect/person?includeRelated=false
2026-06-30 18:26:27.826 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36547/api/school/respect/person?includeRelated=false
2026-06-30 18:26:27.826 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36547/api/school/respect/person?includeRelated=false
2026-06-30 18:26:27.827 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36547/api/school/respect/person?includeRelated=false.
2026-06-30 18:26:27.869 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36547/api/school/respect/person?since=2026-06-30T14%3A26%3A27.822863507Z&includeRelated=false
2026-06-30 18:26:27.869 [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:36547/api/school/respect/person?since=2026-06-30T14%3A26%3A27.822863507Z&includeRelated=false.
2026-06-30 18:26:27.869 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36547/api/school/respect/person?since=2026-06-30T14%3A26%3A27.822863507Z&includeRelated=false
2026-06-30 18:26:27.870 [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-30 18:26:27.873 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36547/api/school/respect/person?since=2026-06-30T14%3A26%3A27.822863507Z&includeRelated=false
2026-06-30 18:26:27.873 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36547/api/school/respect/person?since=2026-06-30T14%3A26%3A27.822863507Z&includeRelated=false
2026-06-30 18:26:27.873 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36547/api/school/respect/person?since=2026-06-30T14%3A26%3A27.822863507Z&includeRelated=false
2026-06-30 18:26:27.874 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:36547/api/school/respect/person?since=2026-06-30T14%3A26%3A27.822863507Z&includeRelated=false.
2026-06-30 18:26:29.994 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:29.995 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 18:26:29.996 [DefaultDispatcher-worker-1 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33525
2026-06-30 18:26:29.998 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33525/playlist/7dd3af35-92cb-42ec-9af7-de793d1ae4cb
2026-06-30 18:26:29.998 [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:33525/playlist/7dd3af35-92cb-42ec-9af7-de793d1ae4cb.
2026-06-30 18:26:29.998 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33525/playlist/7dd3af35-92cb-42ec-9af7-de793d1ae4cb
2026-06-30 18:26:30.000 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 7dd3af35-92cb-42ec-9af7-de793d1ae4cb]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[7dd3af35-92cb-42ec-9af7-de793d1ae4cb]] @ /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=[7dd3af35-92cb-42ec-9af7-de793d1ae4cb]] @ /playlist/{uuid}/(method:GET)
2026-06-30 18:26:30.006 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33525/playlist/7dd3af35-92cb-42ec-9af7-de793d1ae4cb
2026-06-30 18:26:30.006 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33525/playlist/7dd3af35-92cb-42ec-9af7-de793d1ae4cb
2026-06-30 18:26:30.006 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33525/playlist/7dd3af35-92cb-42ec-9af7-de793d1ae4cb
2026-06-30 18:26:30.006 [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:33525/playlist/7dd3af35-92cb-42ec-9af7-de793d1ae4cb.
2026-06-30 18:26:32.161 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:32.161 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.048 seconds.
2026-06-30 18:26:32.162 [DefaultDispatcher-worker-3 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:41405
2026-06-30 18:26:32.212 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:41405/playlist/10d75bae-c16f-4522-8460-d67e760c966a
2026-06-30 18:26:32.213 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@4e7a217a for http://localhost:41405/playlist/10d75bae-c16f-4522-8460-d67e760c966a
2026-06-30 18:26:32.213 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:41405/playlist/10d75bae-c16f-4522-8460-d67e760c966a
2026-06-30 18:26:32.213 [DefaultDispatcher-worker-2 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:41405/playlist/10d75bae-c16f-4522-8460-d67e760c966a from class io.ktor.http.content.TextContent
2026-06-30 18:26:32.215 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 10d75bae-c16f-4522-8460-d67e760c966a]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[10d75bae-c16f-4522-8460-d67e760c966a]] @ /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=[10d75bae-c16f-4522-8460-d67e760c966a]] @ /playlist/{uuid}/(method:POST)
2026-06-30 18:26:32.216 [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/10d75bae-c16f-4522-8460-d67e760c966a
2026-06-30 18:26:32.217 [DefaultDispatcher-worker-2 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/10d75bae-c16f-4522-8460-d67e760c966a request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:26:32.218 [DefaultDispatcher-worker-13 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:41405/playlist/10d75bae-c16f-4522-8460-d67e760c966a
2026-06-30 18:26:32.218 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:41405/playlist/10d75bae-c16f-4522-8460-d67e760c966a
2026-06-30 18:26:32.218 [DefaultDispatcher-worker-13 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:41405/playlist/10d75bae-c16f-4522-8460-d67e760c966a
2026-06-30 18:26:34.313 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:34.314 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.046 seconds.
2026-06-30 18:26:34.315 [DefaultDispatcher-worker-13 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:37963
2026-06-30 18:26:34.397 [DefaultDispatcher-worker-14 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37963/api/school/xapi/statements
2026-06-30 18:26:34.399 [DefaultDispatcher-worker-14 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@eb8e00e for http://localhost:37963/api/school/xapi/statements
2026-06-30 18:26:34.399 [DefaultDispatcher-worker-14 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37963/api/school/xapi/statements
2026-06-30 18:26:34.399 [DefaultDispatcher-worker-14 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:37963/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 18:26:34.402 [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-30 18:26:34.402 [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-30 18:26:34.412 [DefaultDispatcher-worker-13 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37963/api/school/xapi/statements
2026-06-30 18:26:34.412 [DefaultDispatcher-worker-13 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37963/api/school/xapi/statements
2026-06-30 18:26:34.412 [DefaultDispatcher-worker-13 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37963/api/school/xapi/statements
2026-06-30 18:26:34.412 [DefaultDispatcher-worker-13 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:37963/api/school/xapi/statements.
2026-06-30 18:26:36.516 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:26:36.517 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 18:26:36.518 [DefaultDispatcher-worker-1 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45687
2026-06-30 18:26:36.565 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45687/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:26:36.565 [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:45687/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 18:26:36.565 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45687/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:26:36.567 [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-30 18:26:36.571 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45687/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:26:36.571 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45687/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:26:36.571 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45687/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:26:36.572 [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:45687/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 18:35:43.649 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:35:43.796 [Test worker] INFO  io.ktor.server.Application - Application started in 0.341 seconds.
2026-06-30 18:35:43.913 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42593
2026-06-30 18:35:44.679 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42593/resources/index.json
2026-06-30 18:35:44.679 [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:42593/resources/index.json.
2026-06-30 18:35:44.680 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42593/resources/index.json
2026-06-30 18:35:44.798 [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-30 18:35:44.846 [eventLoopGroupProxy-4-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 53ms
2026-06-30 18:35:44.851 [DefaultDispatcher-worker-2 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42593/resources/index.json
2026-06-30 18:35:44.853 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42593/resources/index.json
2026-06-30 18:35:44.853 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42593/resources/index.json
2026-06-30 18:35:44.879 [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:42593/resources/index.json.
2026-06-30 18:35:44.918 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42593/resources/index.json
2026-06-30 18:35:44.918 [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:42593/resources/index.json.
2026-06-30 18:35:44.918 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42593/resources/index.json
2026-06-30 18:35:44.921 [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-30 18:35:44.922 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 2ms
2026-06-30 18:35:44.923 [DefaultDispatcher-worker-3 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42593/resources/index.json
2026-06-30 18:35:44.923 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42593/resources/index.json
2026-06-30 18:35:44.924 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42593/resources/index.json
2026-06-30 18:35:46.936 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:35:46.936 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 18:35:46.937 [DefaultDispatcher-worker-1 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43295
2026-06-30 18:35:47.040 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43295/resources/index.json
2026-06-30 18:35:47.040 [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:43295/resources/index.json.
2026-06-30 18:35:47.040 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43295/resources/index.json
2026-06-30 18:35:47.043 [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-30 18:35:47.044 [eventLoopGroupProxy-7-1 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 18:35:47.045 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43295/resources/index.json
2026-06-30 18:35:47.045 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43295/resources/index.json
2026-06-30 18:35:47.045 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43295/resources/index.json
2026-06-30 18:35:47.045 [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:43295/resources/index.json.
2026-06-30 18:35:47.049 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43295/resources/index.json
2026-06-30 18:35:47.049 [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:43295/resources/index.json.
2026-06-30 18:35:47.049 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43295/resources/index.json
2026-06-30 18:35:47.050 [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-30 18:35:47.051 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 18:35:47.051 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43295/resources/index.json
2026-06-30 18:35:47.051 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43295/resources/index.json
2026-06-30 18:35:47.051 [DefaultDispatcher-worker-2 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43295/resources/index.json
2026-06-30 18:35:49.059 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:35:49.059 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 18:35:49.061 [DefaultDispatcher-worker-2 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43509
2026-06-30 18:35:49.066 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43509/resources/lesson001.json
2026-06-30 18:35:49.066 [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:43509/resources/lesson001.json.
2026-06-30 18:35:49.066 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43509/resources/lesson001.json
2026-06-30 18:35:49.068 [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-30 18:35:49.069 [DefaultDispatcher-worker-1 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 18:35:49.070 [DefaultDispatcher-worker-1 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43509/resources/lesson001.json
2026-06-30 18:35:49.070 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43509/resources/lesson001.json
2026-06-30 18:35:49.070 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43509/resources/lesson001.json
2026-06-30 18:35:49.072 [DefaultDispatcher-worker-5 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:43509/resources/lesson001.json.
2026-06-30 18:35:51.324 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:35:51.330 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.103 seconds.
2026-06-30 18:35:51.332 [DefaultDispatcher-worker-2 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:40923
2026-06-30 18:35:51.339 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40923/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:51.339 [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:40923/api/school/respect/schoolpermissiongrant.
2026-06-30 18:35:51.339 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40923/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:51.344 [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-30 18:35:51.356 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40923/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:51.356 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40923/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:51.356 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40923/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:51.357 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40923/api/school/respect/schoolpermissiongrant.
2026-06-30 18:35:51.418 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.419 [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:40923/api/school/respect/person?includeRelated=false.
2026-06-30 18:35:51.419 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.421 [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-30 18:35:51.440 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.440 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.440 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.441 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:40923/api/school/respect/person?includeRelated=false.
2026-06-30 18:35:51.447 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.448 [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:40923/api/school/respect/person?includeRelated=false.
2026-06-30 18:35:51.448 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.449 [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-30 18:35:51.452 [DefaultDispatcher-worker-5 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:35:51.452 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.453 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:51.453 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:40923/api/school/respect/person?includeRelated=false
2026-06-30 18:35:53.552 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:35:53.553 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.041 seconds.
2026-06-30 18:35:53.554 [DefaultDispatcher-worker-4 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42691
2026-06-30 18:35:53.555 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42691/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:53.555 [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:42691/api/school/respect/schoolpermissiongrant.
2026-06-30 18:35:53.555 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42691/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:53.558 [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-30 18:35:53.560 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42691/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:53.560 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42691/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:53.560 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42691/api/school/respect/schoolpermissiongrant
2026-06-30 18:35:53.560 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42691/api/school/respect/schoolpermissiongrant.
2026-06-30 18:35:53.608 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42691/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:35:53.608 [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:42691/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 18:35:53.609 [DefaultDispatcher-worker-5 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42691/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:35:53.610 [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-30 18:35:53.613 [DefaultDispatcher-worker-4 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42691/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:35:53.613 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42691/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:35:53.613 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42691/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 18:35:53.614 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42691/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 18:35:55.715 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:35:55.716 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 18:35:55.717 [DefaultDispatcher-worker-1 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33445
2026-06-30 18:35:55.720 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33445/api/school/respect/person?includeRelated=false
2026-06-30 18:35:55.720 [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:33445/api/school/respect/person?includeRelated=false.
2026-06-30 18:35:55.720 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33445/api/school/respect/person?includeRelated=false
2026-06-30 18:35:55.722 [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-30 18:35:55.726 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33445/api/school/respect/person?includeRelated=false
2026-06-30 18:35:55.726 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33445/api/school/respect/person?includeRelated=false
2026-06-30 18:35:55.726 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33445/api/school/respect/person?includeRelated=false
2026-06-30 18:35:55.727 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33445/api/school/respect/person?includeRelated=false.
2026-06-30 18:35:55.778 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33445/api/school/respect/person?since=2026-06-30T14%3A35%3A55.722954548Z&includeRelated=false
2026-06-30 18:35:55.778 [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:33445/api/school/respect/person?since=2026-06-30T14%3A35%3A55.722954548Z&includeRelated=false.
2026-06-30 18:35:55.778 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33445/api/school/respect/person?since=2026-06-30T14%3A35%3A55.722954548Z&includeRelated=false
2026-06-30 18:35:55.780 [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-30 18:35:55.782 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33445/api/school/respect/person?since=2026-06-30T14%3A35%3A55.722954548Z&includeRelated=false
2026-06-30 18:35:55.782 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33445/api/school/respect/person?since=2026-06-30T14%3A35%3A55.722954548Z&includeRelated=false
2026-06-30 18:35:55.782 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33445/api/school/respect/person?since=2026-06-30T14%3A35%3A55.722954548Z&includeRelated=false
2026-06-30 18:35:55.783 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:33445/api/school/respect/person?since=2026-06-30T14%3A35%3A55.722954548Z&includeRelated=false.
2026-06-30 18:35:57.907 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:35:57.908 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 18:35:57.909 [DefaultDispatcher-worker-2 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36887
2026-06-30 18:35:57.952 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36887/api/school/respect/person
2026-06-30 18:35:57.953 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3ff339f3 for http://localhost:36887/api/school/respect/person
2026-06-30 18:35:57.953 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36887/api/school/respect/person
2026-06-30 18:35:57.953 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:36887/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 18:35:57.956 [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-30 18:35:57.963 [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-30 18:35:57.965 [DefaultDispatcher-worker-3 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:35:57.966 [DefaultDispatcher-worker-5 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36887/api/school/respect/person
2026-06-30 18:35:57.966 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36887/api/school/respect/person
2026-06-30 18:35:57.966 [DefaultDispatcher-worker-5 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36887/api/school/respect/person
2026-06-30 18:36:00.073 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:36:00.073 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 18:36:00.074 [DefaultDispatcher-worker-3 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35521
2026-06-30 18:36:00.075 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35521/api/school/respect/schoolpermissiongrant
2026-06-30 18:36:00.075 [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:35521/api/school/respect/schoolpermissiongrant.
2026-06-30 18:36:00.075 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35521/api/school/respect/schoolpermissiongrant
2026-06-30 18:36:00.078 [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-30 18:36:00.079 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35521/api/school/respect/schoolpermissiongrant
2026-06-30 18:36:00.080 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35521/api/school/respect/schoolpermissiongrant
2026-06-30 18:36:00.080 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35521/api/school/respect/schoolpermissiongrant
2026-06-30 18:36:00.080 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35521/api/school/respect/schoolpermissiongrant.
2026-06-30 18:36:00.121 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:00.122 [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:35521/api/school/respect/person?includeRelated=false.
2026-06-30 18:36:00.122 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:00.123 [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-30 18:36:00.128 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:00.128 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:00.128 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:00.129 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35521/api/school/respect/person?includeRelated=false.
2026-06-30 18:36:02.133 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:02.134 [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:35521/api/school/respect/person?includeRelated=false.
2026-06-30 18:36:02.134 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:02.135 [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-30 18:36:02.138 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:02.138 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:02.138 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35521/api/school/respect/person?includeRelated=false
2026-06-30 18:36:02.139 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35521/api/school/respect/person?includeRelated=false.
2026-06-30 18:36:04.299 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:36:04.300 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.082 seconds.
2026-06-30 18:36:04.301 [DefaultDispatcher-worker-3 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43957
2026-06-30 18:36:04.303 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43957/api/school/respect/person?includeRelated=false
2026-06-30 18:36:04.303 [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:43957/api/school/respect/person?includeRelated=false.
2026-06-30 18:36:04.303 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43957/api/school/respect/person?includeRelated=false
2026-06-30 18:36:04.306 [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-30 18:36:04.309 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43957/api/school/respect/person?includeRelated=false
2026-06-30 18:36:04.309 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43957/api/school/respect/person?includeRelated=false
2026-06-30 18:36:04.309 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43957/api/school/respect/person?includeRelated=false
2026-06-30 18:36:04.310 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43957/api/school/respect/person?includeRelated=false.
2026-06-30 18:36:04.392 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43957/api/school/respect/person?since=2026-06-30T14%3A36%3A04.306359849Z&includeRelated=false
2026-06-30 18:36:04.392 [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:43957/api/school/respect/person?since=2026-06-30T14%3A36%3A04.306359849Z&includeRelated=false.
2026-06-30 18:36:04.392 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43957/api/school/respect/person?since=2026-06-30T14%3A36%3A04.306359849Z&includeRelated=false
2026-06-30 18:36:04.394 [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-30 18:36:04.396 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43957/api/school/respect/person?since=2026-06-30T14%3A36%3A04.306359849Z&includeRelated=false
2026-06-30 18:36:04.396 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43957/api/school/respect/person?since=2026-06-30T14%3A36%3A04.306359849Z&includeRelated=false
2026-06-30 18:36:04.396 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43957/api/school/respect/person?since=2026-06-30T14%3A36%3A04.306359849Z&includeRelated=false
2026-06-30 18:36:04.397 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43957/api/school/respect/person?since=2026-06-30T14%3A36%3A04.306359849Z&includeRelated=false.
2026-06-30 18:36:06.497 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:36:06.499 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.043 seconds.
2026-06-30 18:36:06.500 [DefaultDispatcher-worker-1 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45185
2026-06-30 18:36:06.501 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45185/playlist/b4fddeed-5581-4b38-b564-3c230ee49872
2026-06-30 18:36:06.501 [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:45185/playlist/b4fddeed-5581-4b38-b564-3c230ee49872.
2026-06-30 18:36:06.501 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45185/playlist/b4fddeed-5581-4b38-b564-3c230ee49872
2026-06-30 18:36:06.504 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, b4fddeed-5581-4b38-b564-3c230ee49872]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[b4fddeed-5581-4b38-b564-3c230ee49872]] @ /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=[b4fddeed-5581-4b38-b564-3c230ee49872]] @ /playlist/{uuid}/(method:GET)
2026-06-30 18:36:06.509 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45185/playlist/b4fddeed-5581-4b38-b564-3c230ee49872
2026-06-30 18:36:06.510 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45185/playlist/b4fddeed-5581-4b38-b564-3c230ee49872
2026-06-30 18:36:06.510 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45185/playlist/b4fddeed-5581-4b38-b564-3c230ee49872
2026-06-30 18:36:06.510 [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:45185/playlist/b4fddeed-5581-4b38-b564-3c230ee49872.
2026-06-30 18:36:08.677 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:36:08.677 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.057 seconds.
2026-06-30 18:36:08.678 [DefaultDispatcher-worker-2 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33179
2026-06-30 18:36:08.721 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33179/playlist/52b81503-5b35-4515-a52c-27f5bee15f5d
2026-06-30 18:36:08.722 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@74da219d for http://localhost:33179/playlist/52b81503-5b35-4515-a52c-27f5bee15f5d
2026-06-30 18:36:08.722 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33179/playlist/52b81503-5b35-4515-a52c-27f5bee15f5d
2026-06-30 18:36:08.722 [DefaultDispatcher-worker-5 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33179/playlist/52b81503-5b35-4515-a52c-27f5bee15f5d from class io.ktor.http.content.TextContent
2026-06-30 18:36:08.724 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 52b81503-5b35-4515-a52c-27f5bee15f5d]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[52b81503-5b35-4515-a52c-27f5bee15f5d]] @ /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=[52b81503-5b35-4515-a52c-27f5bee15f5d]] @ /playlist/{uuid}/(method:POST)
2026-06-30 18:36:08.724 [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/52b81503-5b35-4515-a52c-27f5bee15f5d
2026-06-30 18:36:08.726 [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/52b81503-5b35-4515-a52c-27f5bee15f5d request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 18:36:08.726 [DefaultDispatcher-worker-6 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33179/playlist/52b81503-5b35-4515-a52c-27f5bee15f5d
2026-06-30 18:36:08.726 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33179/playlist/52b81503-5b35-4515-a52c-27f5bee15f5d
2026-06-30 18:36:08.726 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33179/playlist/52b81503-5b35-4515-a52c-27f5bee15f5d
2026-06-30 18:36:10.842 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:36:10.844 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.041 seconds.
2026-06-30 18:36:10.845 [DefaultDispatcher-worker-11 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34373
2026-06-30 18:36:10.927 [DefaultDispatcher-worker-11 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34373/api/school/xapi/statements
2026-06-30 18:36:10.929 [DefaultDispatcher-worker-11 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@4f9f4148 for http://localhost:34373/api/school/xapi/statements
2026-06-30 18:36:10.929 [DefaultDispatcher-worker-11 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34373/api/school/xapi/statements
2026-06-30 18:36:10.929 [DefaultDispatcher-worker-11 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:34373/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 18:36:10.932 [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-30 18:36:10.932 [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-30 18:36:10.942 [DefaultDispatcher-worker-12 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34373/api/school/xapi/statements
2026-06-30 18:36:10.942 [DefaultDispatcher-worker-12 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34373/api/school/xapi/statements
2026-06-30 18:36:10.942 [DefaultDispatcher-worker-12 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34373/api/school/xapi/statements
2026-06-30 18:36:10.942 [DefaultDispatcher-worker-12 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34373/api/school/xapi/statements.
2026-06-30 18:36:13.037 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 18:36:13.038 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.038 seconds.
2026-06-30 18:36:13.039 [DefaultDispatcher-worker-11 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33637
2026-06-30 18:36:13.091 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33637/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:36:13.091 [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:33637/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 18:36:13.092 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33637/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:36:13.094 [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-30 18:36:13.098 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33637/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:36:13.098 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33637/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:36:13.098 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33637/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 18:36:13.099 [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:33637/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 19:10:30.117 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:30.319 [Test worker] INFO  io.ktor.server.Application - Application started in 0.453 seconds.
2026-06-30 19:10:30.456 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43381
2026-06-30 19:10:31.463 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43381/resources/index.json
2026-06-30 19:10:31.464 [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:43381/resources/index.json.
2026-06-30 19:10:31.464 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43381/resources/index.json
2026-06-30 19:10:31.558 [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-30 19:10:31.601 [DefaultDispatcher-worker-3 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 47ms
2026-06-30 19:10:31.605 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43381/resources/index.json
2026-06-30 19:10:31.607 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43381/resources/index.json
2026-06-30 19:10:31.607 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43381/resources/index.json
2026-06-30 19:10:31.624 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:43381/resources/index.json.
2026-06-30 19:10:31.650 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43381/resources/index.json
2026-06-30 19:10:31.650 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:43381/resources/index.json.
2026-06-30 19:10:31.650 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43381/resources/index.json
2026-06-30 19:10:31.652 [eventLoopGroupProxy-4-1 @call-handler#22] TRACE io.ktor.server.routing.Routing - Trace for [resources, index.json]
/, segment:0 -> SUCCESS @ /
  /(staticContent), segment:0 -> SUCCESS @ /(staticContent)
    /(staticContent)/resources, segment:1 -> SUCCESS @ /(staticContent)/resources
      /(staticContent)/resources/{...}, segment:2 -> SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}
        /(staticContent)/resources/{...}/(method:GET), segment:2 -> SUCCESS @ /(staticContent)/resources/{...}/(method:GET)
Matched routes:
  "" -> "(staticContent)" -> "resources" -> "{...}" -> "(method:GET)"
Routing resolve result:
  SUCCESS; Parameters [static-content-path-parameter=[index.json]] @ /(staticContent)/resources/{...}/(method:GET)
2026-06-30 19:10:31.653 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 19:10:31.653 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43381/resources/index.json
2026-06-30 19:10:31.654 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43381/resources/index.json
2026-06-30 19:10:31.654 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43381/resources/index.json
2026-06-30 19:10:33.666 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:33.667 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 19:10:33.668 [DefaultDispatcher-worker-1 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:37021
2026-06-30 19:10:33.751 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37021/resources/index.json
2026-06-30 19:10:33.751 [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:37021/resources/index.json.
2026-06-30 19:10:33.751 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37021/resources/index.json
2026-06-30 19:10:33.754 [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-30 19:10:33.755 [DefaultDispatcher-worker-2 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 19:10:33.755 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37021/resources/index.json
2026-06-30 19:10:33.755 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37021/resources/index.json
2026-06-30 19:10:33.755 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37021/resources/index.json
2026-06-30 19:10:33.756 [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:37021/resources/index.json.
2026-06-30 19:10:33.761 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:37021/resources/index.json
2026-06-30 19:10:33.761 [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:37021/resources/index.json.
2026-06-30 19:10:33.761 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:37021/resources/index.json
2026-06-30 19:10:33.762 [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-30 19:10:33.762 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 0ms
2026-06-30 19:10:33.763 [DefaultDispatcher-worker-2 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:37021/resources/index.json
2026-06-30 19:10:33.763 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:37021/resources/index.json
2026-06-30 19:10:33.763 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:37021/resources/index.json
2026-06-30 19:10:35.769 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:35.770 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 19:10:35.771 [DefaultDispatcher-worker-1 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42521
2026-06-30 19:10:35.776 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42521/resources/lesson001.json
2026-06-30 19:10:35.776 [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:42521/resources/lesson001.json.
2026-06-30 19:10:35.776 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42521/resources/lesson001.json
2026-06-30 19:10:35.779 [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-30 19:10:35.780 [eventLoopGroupProxy-10-1 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 19:10:35.780 [DefaultDispatcher-worker-2 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42521/resources/lesson001.json
2026-06-30 19:10:35.781 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42521/resources/lesson001.json
2026-06-30 19:10:35.781 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42521/resources/lesson001.json
2026-06-30 19:10:35.783 [DefaultDispatcher-worker-2 @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class kotlinx.serialization.json.JsonObject for http://localhost:42521/resources/lesson001.json.
2026-06-30 19:10:38.023 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:38.029 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.106 seconds.
2026-06-30 19:10:38.031 [DefaultDispatcher-worker-1 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38055
2026-06-30 19:10:38.039 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38055/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:38.039 [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:38055/api/school/respect/schoolpermissiongrant.
2026-06-30 19:10:38.039 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38055/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:38.043 [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-30 19:10:38.054 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38055/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:38.054 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38055/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:38.054 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38055/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:38.056 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38055/api/school/respect/schoolpermissiongrant.
2026-06-30 19:10:38.121 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.121 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:38055/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:38.121 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.123 [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-30 19:10:38.140 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.140 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.140 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.141 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38055/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:38.146 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.147 [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:38055/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:38.147 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.148 [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-30 19:10:38.150 [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-30 19:10:38.151 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.151 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:38.151 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38055/api/school/respect/person?includeRelated=false
2026-06-30 19:10:40.274 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:40.275 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.046 seconds.
2026-06-30 19:10:40.276 [DefaultDispatcher-worker-1 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34329
2026-06-30 19:10:40.277 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34329/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:40.277 [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:34329/api/school/respect/schoolpermissiongrant.
2026-06-30 19:10:40.277 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34329/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:40.280 [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-30 19:10:40.282 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34329/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:40.282 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34329/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:40.282 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34329/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:40.283 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34329/api/school/respect/schoolpermissiongrant.
2026-06-30 19:10:40.336 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34329/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:10:40.336 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:34329/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 19:10:40.336 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34329/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:10:40.337 [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-30 19:10:40.341 [DefaultDispatcher-worker-1 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34329/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:10:40.341 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34329/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:10:40.341 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34329/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:10:40.341 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34329/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 19:10:42.449 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:42.450 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.04 seconds.
2026-06-30 19:10:42.451 [DefaultDispatcher-worker-5 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34915
2026-06-30 19:10:42.454 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34915/api/school/respect/person?includeRelated=false
2026-06-30 19:10:42.454 [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:34915/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:42.454 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34915/api/school/respect/person?includeRelated=false
2026-06-30 19:10:42.456 [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-30 19:10:42.460 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34915/api/school/respect/person?includeRelated=false
2026-06-30 19:10:42.460 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34915/api/school/respect/person?includeRelated=false
2026-06-30 19:10:42.460 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34915/api/school/respect/person?includeRelated=false
2026-06-30 19:10:42.461 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34915/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:42.513 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34915/api/school/respect/person?since=2026-06-30T15%3A10%3A42.457208287Z&includeRelated=false
2026-06-30 19:10:42.513 [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:34915/api/school/respect/person?since=2026-06-30T15%3A10%3A42.457208287Z&includeRelated=false.
2026-06-30 19:10:42.513 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34915/api/school/respect/person?since=2026-06-30T15%3A10%3A42.457208287Z&includeRelated=false
2026-06-30 19:10:42.515 [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-30 19:10:42.518 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34915/api/school/respect/person?since=2026-06-30T15%3A10%3A42.457208287Z&includeRelated=false
2026-06-30 19:10:42.518 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34915/api/school/respect/person?since=2026-06-30T15%3A10%3A42.457208287Z&includeRelated=false
2026-06-30 19:10:42.518 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34915/api/school/respect/person?since=2026-06-30T15%3A10%3A42.457208287Z&includeRelated=false
2026-06-30 19:10:42.518 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34915/api/school/respect/person?since=2026-06-30T15%3A10%3A42.457208287Z&includeRelated=false.
2026-06-30 19:10:44.630 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:44.631 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:10:44.632 [DefaultDispatcher-worker-2 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43311
2026-06-30 19:10:44.683 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43311/api/school/respect/person
2026-06-30 19:10:44.684 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3faa1649 for http://localhost:43311/api/school/respect/person
2026-06-30 19:10:44.684 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43311/api/school/respect/person
2026-06-30 19:10:44.684 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43311/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 19:10:44.687 [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-30 19:10:44.693 [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-30 19:10:44.695 [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-30 19:10:44.696 [DefaultDispatcher-worker-3 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43311/api/school/respect/person
2026-06-30 19:10:44.696 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43311/api/school/respect/person
2026-06-30 19:10:44.696 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43311/api/school/respect/person
2026-06-30 19:10:46.803 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:46.804 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:10:46.805 [DefaultDispatcher-worker-1 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35421
2026-06-30 19:10:46.806 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35421/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:46.806 [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:35421/api/school/respect/schoolpermissiongrant.
2026-06-30 19:10:46.806 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35421/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:46.808 [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-30 19:10:46.810 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35421/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:46.810 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35421/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:46.810 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35421/api/school/respect/schoolpermissiongrant
2026-06-30 19:10:46.810 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35421/api/school/respect/schoolpermissiongrant.
2026-06-30 19:10:46.851 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:46.851 [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:35421/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:46.851 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:46.852 [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-30 19:10:46.858 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:46.858 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:46.858 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:46.859 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35421/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:48.864 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:48.864 [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:35421/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:48.864 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:48.865 [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-30 19:10:48.868 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:48.868 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:48.868 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35421/api/school/respect/person?includeRelated=false
2026-06-30 19:10:48.869 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:35421/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:50.984 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:50.985 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.038 seconds.
2026-06-30 19:10:50.986 [DefaultDispatcher-worker-3 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38213
2026-06-30 19:10:50.988 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38213/api/school/respect/person?includeRelated=false
2026-06-30 19:10:50.988 [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:38213/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:50.988 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38213/api/school/respect/person?includeRelated=false
2026-06-30 19:10:50.990 [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-30 19:10:50.995 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38213/api/school/respect/person?includeRelated=false
2026-06-30 19:10:50.995 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38213/api/school/respect/person?includeRelated=false
2026-06-30 19:10:50.995 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38213/api/school/respect/person?includeRelated=false
2026-06-30 19:10:50.996 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38213/api/school/respect/person?includeRelated=false.
2026-06-30 19:10:51.045 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38213/api/school/respect/person?since=2026-06-30T15%3A10%3A50.991299249Z&includeRelated=false
2026-06-30 19:10:51.045 [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:38213/api/school/respect/person?since=2026-06-30T15%3A10%3A50.991299249Z&includeRelated=false.
2026-06-30 19:10:51.045 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38213/api/school/respect/person?since=2026-06-30T15%3A10%3A50.991299249Z&includeRelated=false
2026-06-30 19:10:51.047 [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-30 19:10:51.049 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38213/api/school/respect/person?since=2026-06-30T15%3A10%3A50.991299249Z&includeRelated=false
2026-06-30 19:10:51.049 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38213/api/school/respect/person?since=2026-06-30T15%3A10%3A50.991299249Z&includeRelated=false
2026-06-30 19:10:51.049 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38213/api/school/respect/person?since=2026-06-30T15%3A10%3A50.991299249Z&includeRelated=false
2026-06-30 19:10:51.050 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:38213/api/school/respect/person?since=2026-06-30T15%3A10%3A50.991299249Z&includeRelated=false.
2026-06-30 19:10:53.161 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:53.162 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.042 seconds.
2026-06-30 19:10:53.163 [DefaultDispatcher-worker-6 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35417
2026-06-30 19:10:53.165 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35417/playlist/b911f7be-98e5-459f-845b-324885b9d7ea
2026-06-30 19:10:53.165 [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:35417/playlist/b911f7be-98e5-459f-845b-324885b9d7ea.
2026-06-30 19:10:53.165 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35417/playlist/b911f7be-98e5-459f-845b-324885b9d7ea
2026-06-30 19:10:53.168 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, b911f7be-98e5-459f-845b-324885b9d7ea]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[b911f7be-98e5-459f-845b-324885b9d7ea]] @ /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=[b911f7be-98e5-459f-845b-324885b9d7ea]] @ /playlist/{uuid}/(method:GET)
2026-06-30 19:10:53.173 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35417/playlist/b911f7be-98e5-459f-845b-324885b9d7ea
2026-06-30 19:10:53.173 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35417/playlist/b911f7be-98e5-459f-845b-324885b9d7ea
2026-06-30 19:10:53.173 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35417/playlist/b911f7be-98e5-459f-845b-324885b9d7ea
2026-06-30 19:10:53.174 [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:35417/playlist/b911f7be-98e5-459f-845b-324885b9d7ea.
2026-06-30 19:10:55.325 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:55.326 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:10:55.327 [DefaultDispatcher-worker-5 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43617
2026-06-30 19:10:55.368 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43617/playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316
2026-06-30 19:10:55.368 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@3f2b143 for http://localhost:43617/playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316
2026-06-30 19:10:55.368 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43617/playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316
2026-06-30 19:10:55.368 [DefaultDispatcher-worker-3 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:43617/playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316 from class io.ktor.http.content.TextContent
2026-06-30 19:10:55.370 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 683ee3e8-ffc5-4154-a4fa-2dd705bfe316]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[683ee3e8-ffc5-4154-a4fa-2dd705bfe316]] @ /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=[683ee3e8-ffc5-4154-a4fa-2dd705bfe316]] @ /playlist/{uuid}/(method:POST)
2026-06-30 19:10:55.371 [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/683ee3e8-ffc5-4154-a4fa-2dd705bfe316
2026-06-30 19:10:55.372 [DefaultDispatcher-worker-3 @call-handler#266] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316 request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 19:10:55.372 [DefaultDispatcher-worker-6 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43617/playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316
2026-06-30 19:10:55.372 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43617/playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316
2026-06-30 19:10:55.372 [DefaultDispatcher-worker-6 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43617/playlist/683ee3e8-ffc5-4154-a4fa-2dd705bfe316
2026-06-30 19:10:57.497 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:57.498 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:10:57.499 [DefaultDispatcher-worker-3 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:46087
2026-06-30 19:10:57.589 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:46087/api/school/xapi/statements
2026-06-30 19:10:57.590 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@1f52c840 for http://localhost:46087/api/school/xapi/statements
2026-06-30 19:10:57.590 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:46087/api/school/xapi/statements
2026-06-30 19:10:57.590 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:46087/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 19:10:57.593 [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-30 19:10:57.593 [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-30 19:10:57.602 [DefaultDispatcher-worker-6 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:46087/api/school/xapi/statements
2026-06-30 19:10:57.603 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:46087/api/school/xapi/statements
2026-06-30 19:10:57.603 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:46087/api/school/xapi/statements
2026-06-30 19:10:57.603 [DefaultDispatcher-worker-6 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:46087/api/school/xapi/statements.
2026-06-30 19:10:59.693 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:10:59.694 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:10:59.695 [DefaultDispatcher-worker-2 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:35483
2026-06-30 19:10:59.739 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:35483/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:10:59.740 [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:35483/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 19:10:59.740 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:35483/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:10:59.742 [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-30 19:10:59.745 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:35483/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:10:59.746 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:35483/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:10:59.746 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:35483/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:10:59.746 [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:35483/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 19:20:17.845 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:17.979 [Test worker] INFO  io.ktor.server.Application - Application started in 0.283 seconds.
2026-06-30 19:20:18.081 [DefaultDispatcher-worker-1 @coroutine#2] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:36109
2026-06-30 19:20:18.855 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36109/resources/index.json
2026-06-30 19:20:18.856 [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:36109/resources/index.json.
2026-06-30 19:20:18.856 [DefaultDispatcher-worker-2 @coroutine#8] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36109/resources/index.json
2026-06-30 19:20:18.996 [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-30 19:20:19.035 [DefaultDispatcher-worker-1 @call-handler#12] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 43ms
2026-06-30 19:20:19.039 [DefaultDispatcher-worker-1 @coroutine#8] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36109/resources/index.json
2026-06-30 19:20:19.040 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36109/resources/index.json
2026-06-30 19:20:19.041 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36109/resources/index.json
2026-06-30 19:20:19.060 [DefaultDispatcher-worker-1 @coroutine#8] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class world.respect.lib.opds.model.OpdsFeed for http://localhost:36109/resources/index.json.
2026-06-30 19:20:19.092 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:36109/resources/index.json
2026-06-30 19:20:19.092 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:36109/resources/index.json.
2026-06-30 19:20:19.092 [DefaultDispatcher-worker-1 @coroutine#20] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:36109/resources/index.json
2026-06-30 19:20:19.094 [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-30 19:20:19.095 [eventLoopGroupProxy-4-1 @call-handler#22] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 19:20:19.096 [DefaultDispatcher-worker-1 @coroutine#20] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:36109/resources/index.json
2026-06-30 19:20:19.096 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:36109/resources/index.json
2026-06-30 19:20:19.096 [DefaultDispatcher-worker-3 @coroutine#20] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:36109/resources/index.json
2026-06-30 19:20:21.110 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:21.110 [Test worker] INFO  io.ktor.server.Application - Application started in 0.0 seconds.
2026-06-30 19:20:21.112 [DefaultDispatcher-worker-3 @coroutine#26] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43317
2026-06-30 19:20:21.183 [Test worker @coroutine#30] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43317/resources/index.json
2026-06-30 19:20:21.183 [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:43317/resources/index.json.
2026-06-30 19:20:21.183 [Test worker @coroutine#30] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43317/resources/index.json
2026-06-30 19:20:21.186 [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-30 19:20:21.187 [DefaultDispatcher-worker-1 @call-handler#35] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 19:20:21.188 [Test worker @coroutine#30] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43317/resources/index.json
2026-06-30 19:20:21.188 [Test worker @coroutine#30] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43317/resources/index.json
2026-06-30 19:20:21.188 [Test worker @coroutine#30] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43317/resources/index.json
2026-06-30 19:20:21.189 [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:43317/resources/index.json.
2026-06-30 19:20:21.193 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43317/resources/index.json
2026-06-30 19:20:21.193 [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:43317/resources/index.json.
2026-06-30 19:20:21.193 [DefaultDispatcher-worker-5 @coroutine#43] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43317/resources/index.json
2026-06-30 19:20:21.195 [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-30 19:20:21.195 [eventLoopGroupProxy-7-1 @call-handler#45] INFO  io.ktor.server.Application - [33m304 Not Modified[m: [36mGET[m - /resources/index.json in 1ms
2026-06-30 19:20:21.195 [DefaultDispatcher-worker-1 @coroutine#43] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43317/resources/index.json
2026-06-30 19:20:21.196 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43317/resources/index.json
2026-06-30 19:20:21.196 [DefaultDispatcher-worker-1 @coroutine#43] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43317/resources/index.json
2026-06-30 19:20:23.204 [Test worker] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:23.204 [Test worker] INFO  io.ktor.server.Application - Application started in 0.001 seconds.
2026-06-30 19:20:23.205 [DefaultDispatcher-worker-1 @coroutine#49] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33259
2026-06-30 19:20:23.210 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33259/resources/lesson001.json
2026-06-30 19:20:23.210 [Test worker @coroutine#55] TRACE i.k.c.p.c.ContentNegotiation - Body type class io.ktor.client.utils.EmptyContent is in ignored types. Skipping ContentNegotiation for http://localhost:33259/resources/lesson001.json.
2026-06-30 19:20:23.210 [Test worker @coroutine#55] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33259/resources/lesson001.json
2026-06-30 19:20:23.213 [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-30 19:20:23.214 [DefaultDispatcher-worker-5 @call-handler#59] INFO  io.ktor.server.Application - [32m200 OK[m: [36mGET[m - /resources/lesson001.json in 1ms
2026-06-30 19:20:23.215 [DefaultDispatcher-worker-5 @coroutine#55] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33259/resources/lesson001.json
2026-06-30 19:20:23.215 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33259/resources/lesson001.json
2026-06-30 19:20:23.215 [DefaultDispatcher-worker-4 @coroutine#55] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33259/resources/lesson001.json
2026-06-30 19:20:23.217 [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:33259/resources/lesson001.json.
2026-06-30 19:20:25.453 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:25.460 [Test worker @coroutine#65] INFO  io.ktor.server.Application - Application started in 0.105 seconds.
2026-06-30 19:20:25.462 [DefaultDispatcher-worker-2 @coroutine#74] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45597
2026-06-30 19:20:25.470 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45597/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:25.470 [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:45597/api/school/respect/schoolpermissiongrant.
2026-06-30 19:20:25.470 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45597/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:25.475 [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-30 19:20:25.489 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45597/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:25.489 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45597/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:25.489 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45597/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:25.491 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45597/api/school/respect/schoolpermissiongrant.
2026-06-30 19:20:25.552 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.552 [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:45597/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:25.552 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.554 [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-30 19:20:25.572 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.573 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.573 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.574 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45597/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:25.580 [Test worker @coroutine#65] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.580 [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:45597/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:25.580 [Test worker @coroutine#65] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.582 [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-30 19:20:25.584 [DefaultDispatcher-worker-3 @call-handler#90] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the GET /api/school/respect/person?includeRelated=false request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 19:20:25.585 [Test worker @coroutine#65] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.586 [Test worker @coroutine#65] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:25.586 [Test worker @coroutine#65] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45597/api/school/respect/person?includeRelated=false
2026-06-30 19:20:27.717 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:27.718 [Test worker @coroutine#94] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:20:27.719 [DefaultDispatcher-worker-1 @coroutine#103] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:45909
2026-06-30 19:20:27.720 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45909/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:27.720 [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:45909/api/school/respect/schoolpermissiongrant.
2026-06-30 19:20:27.720 [Test worker @coroutine#94] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45909/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:27.723 [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-30 19:20:27.725 [Test worker @coroutine#94] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45909/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:27.725 [Test worker @coroutine#94] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45909/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:27.725 [Test worker @coroutine#94] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45909/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:27.726 [Test worker @coroutine#94] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45909/api/school/respect/schoolpermissiongrant.
2026-06-30 19:20:27.773 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:45909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:20:27.773 [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:45909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 19:20:27.773 [DefaultDispatcher-worker-4 @coroutine#113] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:45909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:20:27.774 [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-30 19:20:27.777 [DefaultDispatcher-worker-1 @coroutine#113] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:45909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:20:27.777 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:45909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:20:27.777 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:45909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100
2026-06-30 19:20:27.778 [DefaultDispatcher-worker-1 @coroutine#113] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:45909/api/school/respect/person?includeDeleted=true&includeRelated=false&offset=0&limit=100.
2026-06-30 19:20:29.896 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:29.897 [Test worker @coroutine#122] INFO  io.ktor.server.Application - Application started in 0.047 seconds.
2026-06-30 19:20:29.898 [DefaultDispatcher-worker-1 @coroutine#131] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:34169
2026-06-30 19:20:29.900 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34169/api/school/respect/person?includeRelated=false
2026-06-30 19:20:29.900 [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:34169/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:29.900 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34169/api/school/respect/person?includeRelated=false
2026-06-30 19:20:29.903 [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-30 19:20:29.906 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34169/api/school/respect/person?includeRelated=false
2026-06-30 19:20:29.906 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34169/api/school/respect/person?includeRelated=false
2026-06-30 19:20:29.906 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34169/api/school/respect/person?includeRelated=false
2026-06-30 19:20:29.907 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34169/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:29.957 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:34169/api/school/respect/person?since=2026-06-30T15%3A20%3A29.903806563Z&includeRelated=false
2026-06-30 19:20:29.957 [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:34169/api/school/respect/person?since=2026-06-30T15%3A20%3A29.903806563Z&includeRelated=false.
2026-06-30 19:20:29.957 [Test worker @coroutine#122] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:34169/api/school/respect/person?since=2026-06-30T15%3A20%3A29.903806563Z&includeRelated=false
2026-06-30 19:20:29.959 [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-30 19:20:29.962 [Test worker @coroutine#122] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:34169/api/school/respect/person?since=2026-06-30T15%3A20%3A29.903806563Z&includeRelated=false
2026-06-30 19:20:29.962 [Test worker @coroutine#122] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:34169/api/school/respect/person?since=2026-06-30T15%3A20%3A29.903806563Z&includeRelated=false
2026-06-30 19:20:29.962 [Test worker @coroutine#122] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:34169/api/school/respect/person?since=2026-06-30T15%3A20%3A29.903806563Z&includeRelated=false
2026-06-30 19:20:29.962 [Test worker @coroutine#122] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:34169/api/school/respect/person?since=2026-06-30T15%3A20%3A29.903806563Z&includeRelated=false.
2026-06-30 19:20:32.065 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:32.066 [Test worker @coroutine#148] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:20:32.068 [DefaultDispatcher-worker-4 @coroutine#157] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:38349
2026-06-30 19:20:32.113 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:38349/api/school/respect/person
2026-06-30 19:20:32.113 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@15c86391 for http://localhost:38349/api/school/respect/person
2026-06-30 19:20:32.113 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:38349/api/school/respect/person
2026-06-30 19:20:32.113 [DefaultDispatcher-worker-3 @coroutine#155] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:38349/api/school/respect/person from class io.ktor.http.content.TextContent
2026-06-30 19:20:32.116 [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-30 19:20:32.122 [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-30 19:20:32.123 [DefaultDispatcher-worker-3 @call-handler#167] TRACE i.k.s.p.c.ContentNegotiation - Skipping response body transformation from HttpStatusCode to OutgoingContent for the POST /api/school/respect/person request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 19:20:32.124 [DefaultDispatcher-worker-2 @coroutine#155] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:38349/api/school/respect/person
2026-06-30 19:20:32.124 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:38349/api/school/respect/person
2026-06-30 19:20:32.124 [DefaultDispatcher-worker-2 @coroutine#155] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:38349/api/school/respect/person
2026-06-30 19:20:34.227 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:34.228 [Test worker @coroutine#172] INFO  io.ktor.server.Application - Application started in 0.045 seconds.
2026-06-30 19:20:34.229 [DefaultDispatcher-worker-2 @coroutine#181] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:39439
2026-06-30 19:20:34.229 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39439/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:34.229 [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:39439/api/school/respect/schoolpermissiongrant.
2026-06-30 19:20:34.229 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39439/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:34.232 [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-30 19:20:34.234 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39439/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:34.234 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39439/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:34.234 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39439/api/school/respect/schoolpermissiongrant
2026-06-30 19:20:34.234 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39439/api/school/respect/schoolpermissiongrant.
2026-06-30 19:20:34.278 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:34.278 [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:39439/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:34.278 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:34.279 [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-30 19:20:34.284 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:34.285 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:34.285 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:34.285 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39439/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:36.290 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:36.291 [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:39439/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:36.291 [Test worker @coroutine#172] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:36.292 [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-30 19:20:36.295 [Test worker @coroutine#172] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:36.295 [Test worker @coroutine#172] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:36.295 [Test worker @coroutine#172] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:39439/api/school/respect/person?includeRelated=false
2026-06-30 19:20:36.296 [Test worker @coroutine#172] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:39439/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:38.410 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:38.411 [Test worker @coroutine#204] INFO  io.ktor.server.Application - Application started in 0.038 seconds.
2026-06-30 19:20:38.412 [DefaultDispatcher-worker-4 @coroutine#213] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43533
2026-06-30 19:20:38.414 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43533/api/school/respect/person?includeRelated=false
2026-06-30 19:20:38.414 [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:43533/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:38.414 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43533/api/school/respect/person?includeRelated=false
2026-06-30 19:20:38.416 [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-30 19:20:38.420 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43533/api/school/respect/person?includeRelated=false
2026-06-30 19:20:38.420 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43533/api/school/respect/person?includeRelated=false
2026-06-30 19:20:38.420 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43533/api/school/respect/person?includeRelated=false
2026-06-30 19:20:38.421 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43533/api/school/respect/person?includeRelated=false.
2026-06-30 19:20:38.471 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43533/api/school/respect/person?since=2026-06-30T15%3A20%3A38.417177030Z&includeRelated=false
2026-06-30 19:20:38.471 [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:43533/api/school/respect/person?since=2026-06-30T15%3A20%3A38.417177030Z&includeRelated=false.
2026-06-30 19:20:38.471 [Test worker @coroutine#204] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43533/api/school/respect/person?since=2026-06-30T15%3A20%3A38.417177030Z&includeRelated=false
2026-06-30 19:20:38.472 [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-30 19:20:38.475 [Test worker @coroutine#204] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43533/api/school/respect/person?since=2026-06-30T15%3A20%3A38.417177030Z&includeRelated=false
2026-06-30 19:20:38.475 [Test worker @coroutine#204] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43533/api/school/respect/person?since=2026-06-30T15%3A20%3A38.417177030Z&includeRelated=false
2026-06-30 19:20:38.475 [Test worker @coroutine#204] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43533/api/school/respect/person?since=2026-06-30T15%3A20%3A38.417177030Z&includeRelated=false
2026-06-30 19:20:38.476 [Test worker @coroutine#204] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:43533/api/school/respect/person?since=2026-06-30T15%3A20%3A38.417177030Z&includeRelated=false.
2026-06-30 19:20:40.594 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:40.595 [Test worker @coroutine#231] INFO  io.ktor.server.Application - Application started in 0.048 seconds.
2026-06-30 19:20:40.596 [DefaultDispatcher-worker-2 @coroutine#241] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:44915
2026-06-30 19:20:40.597 [Test worker @coroutine#231] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:44915/playlist/80fd7bbc-76df-4240-aac7-9e2e68823b12
2026-06-30 19:20:40.598 [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:44915/playlist/80fd7bbc-76df-4240-aac7-9e2e68823b12.
2026-06-30 19:20:40.598 [Test worker @coroutine#231] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:44915/playlist/80fd7bbc-76df-4240-aac7-9e2e68823b12
2026-06-30 19:20:40.600 [eventLoopGroupProxy-31-1 @call-handler#245] TRACE io.ktor.server.routing.Routing - Trace for [playlist, 80fd7bbc-76df-4240-aac7-9e2e68823b12]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[80fd7bbc-76df-4240-aac7-9e2e68823b12]] @ /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=[80fd7bbc-76df-4240-aac7-9e2e68823b12]] @ /playlist/{uuid}/(method:GET)
2026-06-30 19:20:40.605 [Test worker @coroutine#231] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:44915/playlist/80fd7bbc-76df-4240-aac7-9e2e68823b12
2026-06-30 19:20:40.605 [Test worker @coroutine#231] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:44915/playlist/80fd7bbc-76df-4240-aac7-9e2e68823b12
2026-06-30 19:20:40.605 [Test worker @coroutine#231] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:44915/playlist/80fd7bbc-76df-4240-aac7-9e2e68823b12
2026-06-30 19:20:40.606 [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:44915/playlist/80fd7bbc-76df-4240-aac7-9e2e68823b12.
2026-06-30 19:20:42.758 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:42.758 [Test worker @coroutine#249] INFO  io.ktor.server.Application - Application started in 0.039 seconds.
2026-06-30 19:20:42.759 [DefaultDispatcher-worker-4 @coroutine#258] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:33081
2026-06-30 19:20:42.800 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:33081/playlist/ec2bc3ab-9c0d-4501-849a-2568cbefc26d
2026-06-30 19:20:42.800 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@85d710e for http://localhost:33081/playlist/ec2bc3ab-9c0d-4501-849a-2568cbefc26d
2026-06-30 19:20:42.800 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:33081/playlist/ec2bc3ab-9c0d-4501-849a-2568cbefc26d
2026-06-30 19:20:42.800 [DefaultDispatcher-worker-4 @coroutine#256] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:33081/playlist/ec2bc3ab-9c0d-4501-849a-2568cbefc26d from class io.ktor.http.content.TextContent
2026-06-30 19:20:42.802 [eventLoopGroupProxy-34-1 @call-handler#266] TRACE io.ktor.server.routing.Routing - Trace for [playlist, ec2bc3ab-9c0d-4501-849a-2568cbefc26d]
/, segment:0 -> SUCCESS @ /
  /playlist, segment:1 -> SUCCESS @ /playlist
    /playlist/{uuid}, segment:2 -> SUCCESS; Parameters [uuid=[ec2bc3ab-9c0d-4501-849a-2568cbefc26d]] @ /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=[ec2bc3ab-9c0d-4501-849a-2568cbefc26d]] @ /playlist/{uuid}/(method:POST)
2026-06-30 19:20:42.803 [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/ec2bc3ab-9c0d-4501-849a-2568cbefc26d
2026-06-30 19:20:42.804 [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/ec2bc3ab-9c0d-4501-849a-2568cbefc26d request because the HttpStatusCode type is ignored. See [ContentNegotiationConfig::ignoreType].
2026-06-30 19:20:42.804 [DefaultDispatcher-worker-12 @coroutine#256] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:33081/playlist/ec2bc3ab-9c0d-4501-849a-2568cbefc26d
2026-06-30 19:20:42.805 [DefaultDispatcher-worker-12 @coroutine#256] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:33081/playlist/ec2bc3ab-9c0d-4501-849a-2568cbefc26d
2026-06-30 19:20:42.805 [DefaultDispatcher-worker-12 @coroutine#256] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:33081/playlist/ec2bc3ab-9c0d-4501-849a-2568cbefc26d
2026-06-30 19:20:44.919 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:44.921 [Test worker @coroutine#271] INFO  io.ktor.server.Application - Application started in 0.045 seconds.
2026-06-30 19:20:44.922 [DefaultDispatcher-worker-14 @coroutine#280] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:42315
2026-06-30 19:20:45.002 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:42315/api/school/xapi/statements
2026-06-30 19:20:45.004 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Converted request body using io.ktor.serialization.kotlinx.KotlinxSerializationConverter@76d43598 for http://localhost:42315/api/school/xapi/statements
2026-06-30 19:20:45.004 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:42315/api/school/xapi/statements
2026-06-30 19:20:45.004 [DefaultDispatcher-worker-7 @coroutine#278] TRACE i.k.c.plugins.defaultTransformers - Transformed with default transformers request body for http://localhost:42315/api/school/xapi/statements from class io.ktor.http.content.TextContent
2026-06-30 19:20:45.006 [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-30 19:20:45.007 [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-30 19:20:45.017 [DefaultDispatcher-worker-14 @coroutine#278] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:42315/api/school/xapi/statements
2026-06-30 19:20:45.018 [DefaultDispatcher-worker-14 @coroutine#278] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:42315/api/school/xapi/statements
2026-06-30 19:20:45.018 [DefaultDispatcher-worker-14 @coroutine#278] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:42315/api/school/xapi/statements
2026-06-30 19:20:45.018 [DefaultDispatcher-worker-14 @coroutine#278] TRACE i.k.c.p.c.ContentNegotiation - Response body was converted to class java.util.ArrayList for http://localhost:42315/api/school/xapi/statements.
2026-06-30 19:20:47.110 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Autoreload is disabled because the development mode is off.
2026-06-30 19:20:47.111 [Test worker @coroutine#296] INFO  io.ktor.server.Application - Application started in 0.038 seconds.
2026-06-30 19:20:47.113 [DefaultDispatcher-worker-15 @coroutine#305] INFO  io.ktor.server.Application - Responding at http://0.0.0.0:43201
2026-06-30 19:20:47.167 [Test worker @coroutine#296] TRACE i.k.c.p.c.ContentNegotiation - Adding Accept=application/json header for http://localhost:43201/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:20:47.167 [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:43201/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
2026-06-30 19:20:47.167 [Test worker @coroutine#296] TRACE i.ktor.client.plugins.HttpPlainText - Adding Accept-Charset=UTF-8 to http://localhost:43201/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:20:47.170 [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-30 19:20:47.174 [Test worker @coroutine#296] TRACE io.ktor.client.plugins.SaveBody - Saving body for http://localhost:43201/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:20:47.174 [Test worker @coroutine#296] TRACE i.k.client.plugins.HttpCallValidator - Validating response for request http://localhost:43201/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:20:47.174 [Test worker @coroutine#296] TRACE i.k.c.p.DefaultResponseValidation - Skipping default response validation for http://localhost:43201/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false
2026-06-30 19:20:47.175 [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:43201/api/school/xapi/statements?statementId=6690e6c9-3ef0-4ed3-8b37-7f3964730bee&related_activities=false&related_agents=false&format=exact&attachments=false&ascending=false.
