{
  "schema_version": 3,
  "app": "authentik",
  "display_name": "authentik",
  "upstream_repo": "https://github.com/goauthentik/authentik",
  "docs_url": "https://docs.goauthentik.io/install-config/install/docker-compose/",
  "status": "ok",
  "summary": {
    "primary_service": "server",
    "app_version": "2026.8.4",
    "app_version_pinned": true,
    "runs": 3,
    "publishable": true,
    "publishable_note": null,
    "idle_total_mem_mib": 942.02,
    "idle_total_cpu_pct": 3.43,
    "peak_total_mem_mib": 1092.0,
    "peak_is_under_load": true,
    "startup_seconds": 103.6,
    "startup_peak_total_mem_mib": 977.5,
    "settled": true,
    "settle_seconds_used": 121.1,
    "peak_max_mib": 1110.3,
    "sizing_peak_mib": 1110.3,
    "idle_mem_mib": {
      "median": 942.02,
      "min": 843.05,
      "max": 1063.11,
      "values": [
        942.02,
        843.05,
        1063.11
      ]
    },
    "idle_cpu_pct": {
      "median": 3.43,
      "min": 0.57,
      "max": 3.55,
      "values": [
        3.55,
        0.57,
        3.43
      ]
    },
    "peak_mem_mib": {
      "median": 1092.0,
      "min": 1011.7,
      "max": 1110.3,
      "values": [
        1092.0,
        1011.7,
        1110.3
      ]
    },
    "startup_peak_mem_mib": {
      "median": 977.5,
      "min": 859.38,
      "max": 1063.53,
      "values": [
        977.5,
        859.38,
        1063.53
      ]
    },
    "startup_s": {
      "median": 103.6,
      "min": 103.5,
      "max": 104.2,
      "values": [
        103.6,
        103.5,
        104.2
      ]
    },
    "settled_after_healthy_s": {
      "median": 163.3,
      "min": 158.2,
      "max": 164.3,
      "values": [
        163.3,
        158.2,
        164.3
      ]
    },
    "settled_runs": 3,
    "per_service": {
      "postgresql": {
        "idle_mem_mib": {
          "median": 77.26,
          "min": 76.92,
          "max": 77.52,
          "values": [
            77.52,
            76.92,
            77.26
          ]
        },
        "peak_mem_mib": {
          "median": 114.0,
          "min": 108.6,
          "max": 115.3,
          "values": [
            114.0,
            115.3,
            108.6
          ]
        }
      },
      "server": {
        "idle_mem_mib": {
          "median": 563.4,
          "min": 464.94,
          "max": 681.78,
          "values": [
            563.4,
            464.94,
            681.78
          ]
        },
        "peak_mem_mib": {
          "median": 676.1,
          "min": 606.2,
          "max": 709.9,
          "values": [
            676.1,
            606.2,
            709.9
          ]
        }
      },
      "worker": {
        "idle_mem_mib": {
          "median": 301.18,
          "min": 301.1,
          "max": 304.06,
          "values": [
            301.1,
            301.18,
            304.06
          ]
        },
        "peak_mem_mib": {
          "median": 318.9,
          "min": 315.0,
          "max": 322.5,
          "values": [
            322.5,
            318.9,
            315.0
          ]
        }
      }
    },
    "variance_flag": null,
    "representative_run": 1,
    "cpu_models": [
      "AMD EPYC 7763 64-Core Processor"
    ],
    "cpu_model_mismatch": false,
    "rule": "idle = median of the run idle means; peak = median of the run peaks (highest simultaneous total, under load when the app has a load step); peak_max_mib = highest run peak; sizing_peak_mib = highest over runs of max(run peak, run startup peak); variance_flag when max/min over runs is above 1.5 for idle or peak."
  },
  "run": {
    "started_at": "2026-10-20T04:22:24Z",
    "date": "2026-10-20",
    "harness_version": "3.0.0",
    "runs_requested": 3,
    "docker_host": null,
    "remote": false,
    "runs_completed": 3
  },
  "host": {
    "label": "github-actions ubuntu-latest (2 vCPU, 8 GB)",
    "ci": {
      "runs_on": "ubuntu-latest",
      "runner_environment": "github-hosted",
      "runner_os": "Linux",
      "runner_arch": "X64",
      "image_os": "ubuntu24",
      "image_version": "20261012.334.1"
    },
    "cpu_model": "AMD EPYC 7763 64-Core Processor",
    "cpu_model_note": null,
    "cores": 2,
    "mem_total_mib": 7938,
    "kernel": "6.17.0-1022-azure",
    "os": "Ubuntu 24.04.5 LTS",
    "arch": "x86_64",
    "oci_arch": "amd64",
    "docker_server_version": "28.0.4",
    "docker_client_version": "28.0.4",
    "compose_client_version": "2.38.2",
    "storage_driver": "overlay2",
    "containerd_image_store": false,
    "source": "docker info + throwaway container reading /proc/cpuinfo on the daemon host",
    "compose_note": "Compose runs on the client machine; Docker server fields are from the daemon host"
  },
  "helper_images": {
    "curlimages/curl:latest": {
      "pulled_as": "curlimages/curl:latest",
      "digest": "curlimages/curl@sha256:a134550be58ab783810e613ae96fd253c38f7bdd16d9bf9be350700c7a29ac06"
    },
    "python:3.12-slim": {
      "pulled_as": "python:3.12-slim",
      "digest": "python@sha256:a6e34c598f2467ed0e9a8d349809fcd8b5c603269512df273a0bb1784edc11b1"
    }
  },
  "pull_seconds": 38.3,
  "finished_at": "2026-10-20T04:45:51Z",
  "elapsed_seconds": 1406.9,
  "services": {
    "postgresql": {
      "image_ref": "docker.io/library/postgres:16.15-alpine",
      "image_repo": "docker.io/library/postgres",
      "image_tag": "16.15-alpine",
      "digest": "sha256:721873c34ceb9f8d8fc265984940dc982404c105f19ad51be9fdc5970a6080ea",
      "digest_note": null,
      "version": "16.15",
      "version_source": "exec",
      "version_pinned": true,
      "version_note": null,
      "resolved_tag": "16.15-alpine",
      "resolved_tag_note": null,
      "image_size": {
        "unpacked_mb": 294.0,
        "unpacked_source": "docker image ls Size: unpacked image on the daemon host, rounded by docker to 3 significant figures",
        "compressed_mb": 116.1,
        "compressed_source": "sum of compressed layer sizes in the registry manifest for linux/amd64",
        "compressed_null_reason": null,
        "unit_note": "MB = 10^6 bytes. unpacked = disk used on the host; compressed = what is downloaded"
      },
      "compose_image": "docker.io/library/postgres:16.15-alpine",
      "compose_comment": "sha256:721873c34ceb9f8d8fc265984940dc982404c105f19ad51be9fdc5970a6080ea  (version 16.15, from exec)",
      "restart_count": 0,
      "oom_killed": false
    },
    "server": {
      "image_ref": "ghcr.io/goauthentik/server:2026.8.4",
      "image_repo": "ghcr.io/goauthentik/server",
      "image_tag": "2026.8.4",
      "digest": "sha256:e7226ae116dac5aa0a5643803e735b010038f492c401e08e16b3bf1ac54c090c",
      "digest_note": null,
      "version": "2026.8.4",
      "version_source": "exec",
      "version_pinned": true,
      "version_note": "version taken from the running app (prefer_exec), not from the image label",
      "resolved_tag": "2026.8.4",
      "resolved_tag_note": null,
      "image_size": {
        "unpacked_mb": 1310.0,
        "unpacked_source": "docker image ls Size: unpacked image on the daemon host, rounded by docker to 3 significant figures",
        "compressed_mb": 382.5,
        "compressed_source": "sum of compressed layer sizes in the registry manifest for linux/amd64",
        "compressed_null_reason": null,
        "unit_note": "MB = 10^6 bytes. unpacked = disk used on the host; compressed = what is downloaded"
      },
      "compose_image": "ghcr.io/goauthentik/server:2026.8.4",
      "compose_comment": "sha256:e7226ae116dac5aa0a5643803e735b010038f492c401e08e16b3bf1ac54c090c  (version 2026.8.4, from exec)",
      "restart_count": 0,
      "oom_killed": false
    },
    "worker": {
      "image_ref": "ghcr.io/goauthentik/server:2026.8.4",
      "image_repo": "ghcr.io/goauthentik/server",
      "image_tag": "2026.8.4",
      "digest": "sha256:e7226ae116dac5aa0a5643803e735b010038f492c401e08e16b3bf1ac54c090c",
      "digest_note": null,
      "version": "2026.8.4",
      "version_source": "exec",
      "version_pinned": true,
      "version_note": "version taken from the running app (prefer_exec), not from the image label",
      "resolved_tag": "2026.8.4",
      "resolved_tag_note": null,
      "image_size": {
        "unpacked_mb": 1310.0,
        "unpacked_source": "docker image ls Size: unpacked image on the daemon host, rounded by docker to 3 significant figures",
        "compressed_mb": 382.5,
        "compressed_source": "sum of compressed layer sizes in the registry manifest for linux/amd64",
        "compressed_null_reason": null,
        "unit_note": "MB = 10^6 bytes. unpacked = disk used on the host; compressed = what is downloaded"
      },
      "compose_image": "ghcr.io/goauthentik/server:2026.8.4",
      "compose_comment": "sha256:e7226ae116dac5aa0a5643803e735b010038f492c401e08e16b3bf1ac54c090c  (version 2026.8.4, from exec)",
      "restart_count": 0,
      "oom_killed": false
    }
  },
  "runs": [
    {
      "run": 1,
      "started_at": "2026-10-20T04:23:07Z",
      "host": {
        "label": "github-actions ubuntu-latest (2 vCPU, 8 GB)",
        "ci": {
          "runs_on": "ubuntu-latest",
          "runner_environment": "github-hosted",
          "runner_os": "Linux",
          "runner_arch": "X64",
          "image_os": "ubuntu24",
          "image_version": "20261012.334.1"
        },
        "cpu_model": "AMD EPYC 7763 64-Core Processor",
        "cpu_model_note": null,
        "cores": 2,
        "mem_total_mib": 7938,
        "kernel": "6.17.0-1022-azure",
        "os": "Ubuntu 24.04.5 LTS",
        "arch": "x86_64",
        "oci_arch": "amd64",
        "docker_server_version": "28.0.4",
        "docker_client_version": "28.0.4",
        "compose_client_version": "2.38.2",
        "storage_driver": "overlay2",
        "containerd_image_store": false,
        "source": "docker info + throwaway container reading /proc/cpuinfo on the daemon host",
        "compose_note": "Compose runs on the client machine; Docker server fields are from the daemon host"
      },
      "date": "2026-10-20",
      "startup": {
        "seconds": 103.6,
        "ok": true,
        "checks": [
          {
            "type": "http",
            "url": "http://server:9000/-/health/ready/",
            "expect_status": [
              200
            ],
            "ok": true,
            "ready_after_s": 103.6,
            "detail": "OK 200"
          }
        ],
        "up_command_seconds": 6.1,
        "definition": "wall clock from starting `docker compose up -d` until every health check passed; checks poll every 0.5 s from a throwaway container on the compose network, so resolution is about +/- 1 s"
      },
      "versions": {
        "postgresql": "16.15",
        "server": "2026.8.4",
        "worker": "2026.8.4"
      },
      "setup": [
        {
          "exit_code": 0,
          "duration_s": 35.7,
          "reported": {
            "authentik_version": "2026.8.4",
            "forward_auth_endpoint": "/outpost.goauthentik.io/auth/traefik",
            "provider_mode": "forward_single",
            "external_host": "https://app.example.com",
            "outpost_answers_for_protected_host": true,
            "setup_seconds": 34.9
          },
          "output_tail": [
            "API with the bootstrap token: ready after 0 s",
            "default flows: ready after 23 s",
            "embedded outpost for app.example.com: ready after 10 s"
          ],
          "description": "Wait until the first start is complete (the API answers for the bootstrap token and the worker has applied the default flows), then make a proxy provider in forward-auth (single application) mode for https://app.example.com, an application that uses it, and attach it to the embedded outpost, and wait until the outpost redirects an unauthenticated forward-auth check. No password is used here: the password checks (wrong password refused, login, single sign-on handshake, authorised check 200) run at the start of the load step, just before its measured window, so that the idle figure belongs to an instance nobody has logged in to."
        },
        {
          "exit_code": 0,
          "duration_s": 0.1,
          "reported": {
            "password_hash_algorithm": "pbkdf2_sha256",
            "password_hash_iterations": "1000000"
          },
          "output_tail": [
            "stored password hash format: pbkdf2_sha256$1000000"
          ],
          "description": "Read, inside the PostgreSQL container, the algorithm and iteration count of the stored password hash of the admin user (the part before the salt only; the salt and the hash are cut off and never printed). This records which password hashing authentik really uses."
        }
      ],
      "idle": {
        "per_service": {
          "postgresql": {
            "samples": 11,
            "mem_mean_mib": 77.52,
            "mem_max_mib": 77.85,
            "cpu_mean_pct": 0.31,
            "cpu_max_pct": 1.48
          },
          "server": {
            "samples": 11,
            "mem_mean_mib": 563.4,
            "mem_max_mib": 563.6,
            "cpu_mean_pct": 3.09,
            "cpu_max_pct": 30.03
          },
          "worker": {
            "samples": 11,
            "mem_mean_mib": 301.1,
            "mem_max_mib": 301.3,
            "cpu_mean_pct": 0.14,
            "cpu_max_pct": 0.68
          }
        },
        "total": {
          "samples": 11,
          "dropped_for_total": 0,
          "mem_mean_mib": 942.02,
          "mem_max_mib": 942.55,
          "cpu_mean_pct": 3.55,
          "cpu_max_pct": 30.13
        },
        "window_seconds": 30.3,
        "series": [
          {
            "t_offset_s": 0.0,
            "total_mem_mib": 942.35,
            "total_cpu_pct": 0.4
          },
          {
            "t_offset_s": 3.0,
            "total_mem_mib": 941.91,
            "total_cpu_pct": 0.38
          },
          {
            "t_offset_s": 6.1,
            "total_mem_mib": 941.91,
            "total_cpu_pct": 0.41
          },
          {
            "t_offset_s": 9.1,
            "total_mem_mib": 941.98,
            "total_cpu_pct": 0.44
          },
          {
            "t_offset_s": 12.1,
            "total_mem_mib": 942.09,
            "total_cpu_pct": 0.42
          },
          {
            "t_offset_s": 15.1,
            "total_mem_mib": 941.75,
            "total_cpu_pct": 0.41
          },
          {
            "t_offset_s": 18.2,
            "total_mem_mib": 942.05,
            "total_cpu_pct": 1.77
          },
          {
            "t_offset_s": 21.2,
            "total_mem_mib": 942.55,
            "total_cpu_pct": 2.79
          },
          {
            "t_offset_s": 24.2,
            "total_mem_mib": 941.99,
            "total_cpu_pct": 30.13
          },
          {
            "t_offset_s": 27.2,
            "total_mem_mib": 941.93,
            "total_cpu_pct": 1.47
          },
          {
            "t_offset_s": 30.3,
            "total_mem_mib": 941.75,
            "total_cpu_pct": 0.39
          }
        ],
        "memory_stat": {
          "read_at": "2026-10-20T04:28:05Z",
          "per_service": {
            "postgresql": {
              "cgroup": "v2",
              "anon_mib": 26.77,
              "file_mib": 120.55,
              "active_file_mib": 0.07,
              "inactive_file_mib": 82.78,
              "shmem_mib": 37.7
            },
            "server": {
              "cgroup": "v2",
              "anon_mib": 547.94,
              "file_mib": 0.19,
              "active_file_mib": 0.02,
              "inactive_file_mib": 0.0,
              "shmem_mib": 0.19
            },
            "worker": {
              "cgroup": "v2",
              "anon_mib": 288.6,
              "file_mib": 0.23,
              "active_file_mib": 0.01,
              "inactive_file_mib": 0.03,
              "shmem_mib": 0.21
            }
          },
          "read_lag_s": 0.2,
          "method": "docker exec <container> cat /sys/fs/cgroup/memory.stat (cgroup v1: /sys/fs/cgroup/memory/memory.stat); MiB; splits what docker stats shows as one number into anon (heap) and file cache; a field that is absent was not printed by the kernel or not readable (see reason)",
          "taken": "right after the idle window"
        }
      },
      "settle": {
        "settled": true,
        "mode": "detected",
        "settle_seconds_used": 121.1,
        "settle_started_after_healthy_s": 42.2,
        "params": {
          "window_seconds": 60,
          "threshold_pct": 2.0,
          "threshold_min_mib": 10.0,
          "min_seconds": 120,
          "max_seconds": 600
        },
        "last_window": {
          "n": 21,
          "mean_mib": 941.95,
          "min_mib": 941.4,
          "max_mib": 942.35,
          "spread_mib": 0.95,
          "threshold_mib": 18.84
        },
        "rechecks": 0,
        "rule": "settled = over the last window_seconds the stack total varied (max - min) by less than max(threshold_pct of the window mean, threshold_min_mib); not before min_seconds, at the latest max_seconds, both counted from the end of the setup steps; the idle window must also be flat and agree with it. If max_seconds passes without settling, settled=false and the idle window is measured anyway."
      },
      "startup_peak": {
        "per_service_mem_mib": {
          "postgresql": 113.0,
          "server": 563.7,
          "worker": 321.5
        },
        "total_mem_mib": 977.5,
        "samples": 55,
        "note": "highest value across docker stats samples (about one every 2-3 s) from healthy until the stack settled; shorter spikes between samples are not seen"
      },
      "timeline": {
        "step_s": 10,
        "t0": "healthy",
        "offsets_s": [
          10,
          20,
          30,
          40,
          50,
          60,
          70,
          80,
          90,
          100,
          110,
          120,
          130,
          140,
          150,
          160,
          170,
          180,
          190,
          200
        ],
        "total_mem_mib": [
          745.0,
          808.0,
          808.8,
          936.5,
          941.5,
          941.7,
          942.2,
          975.3,
          941.6,
          941.7,
          941.8,
          941.9,
          941.9,
          941.8,
          942.0,
          942.1,
          942.1,
          941.9,
          942.2,
          941.8
        ],
        "per_service_mem_mib": {
          "postgresql": [
            62.7,
            76.4,
            77.7,
            81.3,
            77.2,
            77.4,
            77.5,
            110.8,
            77.3,
            77.4,
            77.6,
            77.5,
            77.5,
            77.4,
            77.6,
            77.4,
            77.5,
            77.4,
            77.6,
            77.5
          ],
          "server": [
            415.4,
            429.1,
            430.1,
            553.9,
            563.2,
            563.2,
            563.6,
            563.3,
            563.2,
            563.2,
            563.2,
            563.4,
            563.3,
            563.2,
            563.4,
            563.5,
            563.4,
            563.4,
            563.5,
            563.3
          ],
          "worker": [
            266.9,
            302.5,
            301.0,
            301.3,
            301.1,
            301.0,
            301.2,
            301.3,
            301.1,
            301.1,
            301.1,
            301.0,
            301.1,
            301.1,
            301.1,
            301.2,
            301.2,
            301.1,
            301.1,
            301.0
          ]
        }
      },
      "load": {
        "per_service": {
          "postgresql": {
            "samples": 74,
            "mem_mean_mib": 93.52,
            "mem_max_mib": 114.0,
            "cpu_mean_pct": 95.85,
            "cpu_max_pct": 128.05
          },
          "server": {
            "samples": 74,
            "mem_mean_mib": 672.39,
            "mem_max_mib": 676.1,
            "cpu_mean_pct": 66.9,
            "cpu_max_pct": 106.04
          },
          "worker": {
            "samples": 74,
            "mem_mean_mib": 304.13,
            "mem_max_mib": 322.5,
            "cpu_mean_pct": 24.11,
            "cpu_max_pct": 52.9
          }
        },
        "total": {
          "samples": 74,
          "dropped_for_total": 0,
          "mem_mean_mib": 1070.04,
          "mem_max_mib": 1092.0,
          "cpu_mean_pct": 186.85,
          "cpu_max_pct": 196.74
        },
        "description": "One user (the admin account), over plain HTTP on the Compose network, from one Python script that plays the part of the reverse proxy (the proxy itself is not in the stack). First 60 password logins, 4 at a time, each from a fresh client with no cookies: the default authentication flow through the flow executor API (identification, password, login; about 6 requests), then one single sign-on handshake with the embedded outpost (3 requests: the outpost's start, the authorize call, the outpost's callback) so that the session can be used behind a forward-auth proxy. Then 3,000 authorisation checks, 8 at a time, spread evenly over the 60 sessions (50 each): GET /outpost.goauthentik.io/auth/traefik with the X-Forwarded-Method, -Proto, -Host and -URI headers and the proxy session cookie, which must answer 200. The Authelia app runs the same script with the same counts (60 logins, 4 at a time; 3,000 checks, 8 at a time). No browser, no MFA, no OAuth/OIDC clients, no LDAP or other sources, no policies beyond the defaults, one user. Just before the measured window (not counted) a pre-flight checks that a wrong password is refused, a right one logs in, an authorised check returns 200 with the user name and a check without a session is redirected.",
        "duration_s": 144.9,
        "window": "from LAB_MARK load_start (or step start) until 2 s after the step ended",
        "reported_by_script": {
          "auth_load": {
            "app": "authentik",
            "logins_requested": 60,
            "logins_ok": 60,
            "login_concurrency": 4,
            "login_phase_seconds": 103.41,
            "logins_per_second": 0.58,
            "login_latency_ms": {
              "n": 60,
              "p50": 6893.47,
              "p95": 7501.32,
              "p99": 7788.09,
              "max": 7788.09,
              "mean": 6823.87
            },
            "http_requests_per_login_incl_handshake": 9.0,
            "sso_handshake_requests_per_login": 3,
            "preflight_ok": true,
            "checks_requested": 3000,
            "checks_sent": 3000,
            "checks_ok": 3000,
            "check_concurrency": 8,
            "check_phase_seconds": 41.35,
            "checks_per_second": 72.6,
            "check_latency_ms": {
              "n": 3000,
              "p50": 95.41,
              "p95": 180.82,
              "p99": 220.7,
              "max": 279.67,
              "mean": 110.16
            },
            "check_statuses": {
              "200": 3000
            },
            "requests_total": 3540,
            "requests_failed": 0,
            "login_errors": []
          },
          "logins_ok": 60,
          "checks_ok": 3000,
          "requests_total": 3540,
          "requests_failed": 0
        },
        "output_tail": [
          "authentik: 60 logins at 4 at a time, then 3000 checks at 8 at a time",
          "pre-flight ok: wrong password refused, login works, authorised check 200, check without session refused",
          "logins ok 60/60 in 103.4 s"
        ],
        "series": [
          {
            "t_offset_s": 0.0,
            "total_mem_mib": 1049.51,
            "total_cpu_pct": 129.26,
            "mem_mib": [
              80.31,
              666.7,
              302.5
            ],
            "cpu_pct": [
              67.54,
              47.04,
              14.68
            ]
          },
          {
            "t_offset_s": 2.0,
            "total_mem_mib": 1063.71,
            "total_cpu_pct": 195.53,
            "mem_mib": [
              92.51,
              669.1,
              302.1
            ],
            "cpu_pct": [
              128.05,
              57.14,
              10.34
            ]
          },
          {
            "t_offset_s": 4.0,
            "total_mem_mib": 1077.2,
            "total_cpu_pct": 193.99,
            "mem_mib": [
              105.6,
              669.4,
              302.2
            ],
            "cpu_pct": [
              114.51,
              71.31,
              8.17
            ]
          },
          {
            "t_offset_s": 6.0,
            "total_mem_mib": 1080.6,
            "total_cpu_pct": 190.33,
            "mem_mib": [
              108.4,
              669.9,
              302.3
            ],
            "cpu_pct": [
              111.74,
              47.93,
              30.66
            ]
          },
          {
            "t_offset_s": 8.1,
            "total_mem_mib": 1079.1,
            "total_cpu_pct": 194.33,
            "mem_mib": [
              106.6,
              670.1,
              302.4
            ],
            "cpu_pct": [
              120.4,
              45.09,
              28.84
            ]
          },
          {
            "t_offset_s": 10.1,
            "total_mem_mib": 1063.62,
            "total_cpu_pct": 188.72,
            "mem_mib": [
              90.62,
              670.5,
              302.5
            ],
            "cpu_pct": [
              69.66,
              83.55,
              35.51
            ]
          },
          {
            "t_offset_s": 12.1,
            "total_mem_mib": 1063.64,
            "total_cpu_pct": 195.7,
            "mem_mib": [
              90.94,
              670.4,
              302.3
            ],
            "cpu_pct": [
              109.12,
              56.39,
              30.19
            ]
          },
          {
            "t_offset_s": 14.1,
            "total_mem_mib": 1072.07,
            "total_cpu_pct": 193.86,
            "mem_mib": [
              98.77,
              670.7,
              302.6
            ],
            "cpu_pct": [
              120.43,
              44.21,
              29.22
            ]
          },
          {
            "t_offset_s": 16.1,
            "total_mem_mib": 1067.82,
            "total_cpu_pct": 195.95,
            "mem_mib": [
              94.62,
              670.8,
              302.4
            ],
            "cpu_pct": [
              95.23,
              71.1,
              29.62
            ]
          },
          {
            "t_offset_s": 18.1,
            "total_mem_mib": 1066.14,
            "total_cpu_pct": 194.56,
            "mem_mib": [
              92.84,
              670.7,
              302.6
            ],
            "cpu_pct": [
              112.27,
              50.83,
              31.46
            ]
          },
          {
            "t_offset_s": 20.2,
            "total_mem_mib": 1073.52,
            "total_cpu_pct": 192.43,
            "mem_mib": [
              98.02,
              673.2,
              302.3
            ],
            "cpu_pct": [
              95.16,
              68.93,
              28.34
            ]
          },
          {
            "t_offset_s": 22.2,
            "total_mem_mib": 1065.17,
            "total_cpu_pct": 180.07,
            "mem_mib": [
              92.07,
              671.0,
              302.1
            ],
            "cpu_pct": [
              99.47,
              51.61,
              28.99
            ]
          },
          {
            "t_offset_s": 24.2,
            "total_mem_mib": 1069.29,
            "total_cpu_pct": 195.24,
            "mem_mib": [
              95.89,
              671.1,
              302.3
            ],
            "cpu_pct": [
              89.19,
              77.33,
              28.72
            ]
          },
          {
            "t_offset_s": 26.2,
            "total_mem_mib": 1072.43,
            "total_cpu_pct": 184.52,
            "mem_mib": [
              98.83,
              671.3,
              302.3
            ],
            "cpu_pct": [
              108.44,
              45.05,
              31.03
            ]
          },
          {
            "t_offset_s": 28.2,
            "total_mem_mib": 1092.0,
            "total_cpu_pct": 190.98,
            "mem_mib": [
              100.7,
              671.3,
              320.0
            ],
            "cpu_pct": [
              99.81,
              39.91,
              51.26
            ]
          },
          {
            "t_offset_s": 30.2,
            "total_mem_mib": 1068.72,
            "total_cpu_pct": 193.88,
            "mem_mib": [
              94.42,
              671.7,
              302.6
            ],
            "cpu_pct": [
              82.41,
              84.56,
              26.91
            ]
          },
          {
            "t_offset_s": 32.2,
            "total_mem_mib": 1071.87,
            "total_cpu_pct": 196.02,
            "mem_mib": [
              97.97,
              671.5,
              302.4
            ],
            "cpu_pct": [
              113.09,
              52.11,
              30.82
            ]
          },
          {
            "t_offset_s": 34.3,
            "total_mem_mib": 1078.2,
            "total_cpu_pct": 194.9,
            "mem_mib": [
              104.5,
              671.3,
              302.4
            ],
            "cpu_pct": [
              118.54,
              49.68,
              26.68
            ]
          },
          {
            "t_offset_s": 36.3,
            "total_mem_mib": 1065.23,
            "total_cpu_pct": 172.69,
            "mem_mib": [
              91.13,
              671.6,
              302.5
            ],
            "cpu_pct": [
              91.91,
              49.53,
              31.25
            ]
          },
          {
            "t_offset_s": 38.3,
            "total_mem_mib": 1071.29,
            "total_cpu_pct": 196.54,
            "mem_mib": [
              97.39,
              671.4,
              302.5
            ],
            "cpu_pct": [
              105.78,
              63.62,
              27.14
            ]
          },
          {
            "t_offset_s": 40.3,
            "total_mem_mib": 1065.95,
            "total_cpu_pct": 195.86,
            "mem_mib": [
              92.25,
              671.3,
              302.4
            ],
            "cpu_pct": [
              113.58,
              53.74,
              28.54
            ]
          },
          {
            "t_offset_s": 42.3,
            "total_mem_mib": 1068.19,
            "total_cpu_pct": 194.79,
            "mem_mib": [
              93.79,
              672.0,
              302.4
            ],
            "cpu_pct": [
              119.82,
              45.01,
              29.96
            ]
          },
          {
            "t_offset_s": 44.3,
            "total_mem_mib": 1066.54,
            "total_cpu_pct": 195.02,
            "mem_mib": [
              92.14,
              671.8,
              302.6
            ],
            "cpu_pct": [
              73.77,
              81.51,
              39.74
            ]
          },
          {
            "t_offset_s": 46.3,
            "total_mem_mib": 1066.66,
            "total_cpu_pct": 184.12,
            "mem_mib": [
              91.96,
              672.1,
              302.6
            ],
            "cpu_pct": [
              103.7,
              53.02,
              27.4
            ]
          },
          {
            "t_offset_s": 48.4,
            "total_mem_mib": 1088.7,
            "total_cpu_pct": 192.93,
            "mem_mib": [
              114.0,
              672.1,
              302.6
            ],
            "cpu_pct": [
              123.85,
              44.28,
              24.8
            ]
          },
          {
            "t_offset_s": 50.4,
            "total_mem_mib": 1068.27,
            "total_cpu_pct": 193.28,
            "mem_mib": [
              93.37,
              672.1,
              302.8
            ],
            "cpu_pct": [
              86.05,
              71.67,
              35.56
            ]
          },
          {
            "t_offset_s": 52.4,
            "total_mem_mib": 1071.42,
            "total_cpu_pct": 195.25,
            "mem_mib": [
              94.02,
              674.6,
              302.8
            ],
            "cpu_pct": [
              93.73,
              72.34,
              29.18
            ]
          },
          {
            "t_offset_s": 54.4,
            "total_mem_mib": 1067.89,
            "total_cpu_pct": 195.88,
            "mem_mib": [
              92.79,
              672.1,
              303.0
            ],
            "cpu_pct": [
              111.14,
              59.37,
              25.37
            ]
          },
          {
            "t_offset_s": 56.4,
            "total_mem_mib": 1071.99,
            "total_cpu_pct": 187.05,
            "mem_mib": [
              97.19,
              672.1,
              302.7
            ],
            "cpu_pct": [
              119.88,
              42.24,
              24.93
            ]
          },
          {
            "t_offset_s": 58.4,
            "total_mem_mib": 1069.26,
            "total_cpu_pct": 196.74,
            "mem_mib": [
              94.56,
              672.2,
              302.5
            ],
            "cpu_pct": [
              61.07,
              91.18,
              44.49
            ]
          },
          {
            "t_offset_s": 60.4,
            "total_mem_mib": 1069.77,
            "total_cpu_pct": 192.59,
            "mem_mib": [
              93.97,
              672.2,
              303.6
            ],
            "cpu_pct": [
              116.5,
              48.32,
              27.77
            ]
          },
          {
            "t_offset_s": 62.5,
            "total_mem_mib": 1084.5,
            "total_cpu_pct": 195.29,
            "mem_mib": [
              108.5,
              672.2,
              303.8
            ],
            "cpu_pct": [
              120.49,
              48.38,
              26.42
            ]
          },
          {
            "t_offset_s": 64.5,
            "total_mem_mib": 1070.21,
            "total_cpu_pct": 195.95,
            "mem_mib": [
              94.21,
              672.1,
              303.9
            ],
            "cpu_pct": [
              106.59,
              62.68,
              26.68
            ]
          },
          {
            "t_offset_s": 66.5,
            "total_mem_mib": 1074.09,
            "total_cpu_pct": 184.34,
            "mem_mib": [
              98.09,
              672.3,
              303.7
            ],
            "cpu_pct": [
              99.04,
              50.63,
              34.67
            ]
          },
          {
            "t_offset_s": 68.5,
            "total_mem_mib": 1068.28,
            "total_cpu_pct": 194.71,
            "mem_mib": [
              92.48,
              672.2,
              303.6
            ],
            "cpu_pct": [
              106.87,
              59.42,
              28.42
            ]
          },
          {
            "t_offset_s": 70.5,
            "total_mem_mib": 1070.26,
            "total_cpu_pct": 193.13,
            "mem_mib": [
              94.16,
              672.2,
              303.9
            ],
            "cpu_pct": [
              123.51,
              41.69,
              27.93
            ]
          },
          {
            "t_offset_s": 72.5,
            "total_mem_mib": 1068.12,
            "total_cpu_pct": 196.23,
            "mem_mib": [
              92.02,
              672.2,
              303.9
            ],
            "cpu_pct": [
              66.64,
              86.58,
              43.01
            ]
          },
          {
            "t_offset_s": 74.5,
            "total_mem_mib": 1070.8,
            "total_cpu_pct": 191.6,
            "mem_mib": [
              94.5,
              672.5,
              303.8
            ],
            "cpu_pct": [
              111.72,
              53.3,
              26.58
            ]
          },
          {
            "t_offset_s": 76.6,
            "total_mem_mib": 1077.8,
            "total_cpu_pct": 186.39,
            "mem_mib": [
              101.4,
              672.5,
              303.9
            ],
            "cpu_pct": [
              113.73,
              46.0,
              26.66
            ]
          },
          {
            "t_offset_s": 78.6,
            "total_mem_mib": 1077.5,
            "total_cpu_pct": 196.5,
            "mem_mib": [
              101.2,
              672.5,
              303.8
            ],
            "cpu_pct": [
              86.34,
              84.9,
              25.26
            ]
          },
          {
            "t_offset_s": 80.6,
            "total_mem_mib": 1072.58,
            "total_cpu_pct": 192.41,
            "mem_mib": [
              95.88,
              672.4,
              304.3
            ],
            "cpu_pct": [
              111.12,
              47.24,
              34.05
            ]
          },
          {
            "t_offset_s": 82.6,
            "total_mem_mib": 1084.1,
            "total_cpu_pct": 194.88,
            "mem_mib": [
              107.5,
              672.3,
              304.3
            ],
            "cpu_pct": [
              115.22,
              47.98,
              31.68
            ]
          },
          {
            "t_offset_s": 84.6,
            "total_mem_mib": 1074.41,
            "total_cpu_pct": 194.9,
            "mem_mib": [
              95.21,
              674.8,
              304.4
            ],
            "cpu_pct": [
              103.21,
              67.25,
              24.44
            ]
          },
          {
            "t_offset_s": 86.6,
            "total_mem_mib": 1072.3,
            "total_cpu_pct": 190.33,
            "mem_mib": [
              95.5,
              672.6,
              304.2
            ],
            "cpu_pct": [
              68.05,
              89.97,
              32.31
            ]
          },
          {
            "t_offset_s": 88.6,
            "total_mem_mib": 1070.98,
            "total_cpu_pct": 196.17,
            "mem_mib": [
              94.48,
              672.4,
              304.1
            ],
            "cpu_pct": [
              114.32,
              51.45,
              30.4
            ]
          },
          {
            "t_offset_s": 90.7,
            "total_mem_mib": 1071.34,
            "total_cpu_pct": 192.99,
            "mem_mib": [
              94.24,
              672.6,
              304.5
            ],
            "cpu_pct": [
              98.67,
              41.42,
              52.9
            ]
          },
          {
            "t_offset_s": 92.7,
            "total_mem_mib": 1074.82,
            "total_cpu_pct": 187.25,
            "mem_mib": [
              97.82,
              672.4,
              304.6
            ],
            "cpu_pct": [
              107.53,
              51.18,
              28.54
            ]
          },
          {
            "t_offset_s": 94.7,
            "total_mem_mib": 1075.2,
            "total_cpu_pct": 195.11,
            "mem_mib": [
              98.4,
              672.4,
              304.4
            ],
            "cpu_pct": [
              103.49,
              58.15,
              33.47
            ]
          },
          {
            "t_offset_s": 96.7,
            "total_mem_mib": 1071.87,
            "total_cpu_pct": 182.77,
            "mem_mib": [
              94.57,
              672.7,
              304.6
            ],
            "cpu_pct": [
              104.94,
              52.19,
              25.64
            ]
          },
          {
            "t_offset_s": 98.7,
            "total_mem_mib": 1070.03,
            "total_cpu_pct": 194.92,
            "mem_mib": [
              93.23,
              672.5,
              304.3
            ],
            "cpu_pct": [
              117.92,
              49.94,
              27.06
            ]
          },
          {
            "t_offset_s": 100.7,
            "total_mem_mib": 1070.97,
            "total_cpu_pct": 192.97,
            "mem_mib": [
              94.17,
              672.4,
              304.4
            ],
            "cpu_pct": [
              98.91,
              63.86,
              30.2
            ]
          },
          {
            "t_offset_s": 102.7,
            "total_mem_mib": 1067.23,
            "total_cpu_pct": 187.66,
            "mem_mib": [
              90.03,
              672.6,
              304.6
            ],
            "cpu_pct": [
              107.7,
              42.43,
              37.53
            ]
          },
          {
            "t_offset_s": 104.8,
            "total_mem_mib": 1066.35,
            "total_cpu_pct": 187.02,
            "mem_mib": [
              88.55,
              672.9,
              304.9
            ],
            "cpu_pct": [
              90.04,
              70.91,
              26.07
            ]
          },
          {
            "t_offset_s": 106.8,
            "total_mem_mib": 1067.65,
            "total_cpu_pct": 189.92,
            "mem_mib": [
              90.05,
              672.7,
              304.9
            ],
            "cpu_pct": [
              85.32,
              78.81,
              25.79
            ]
          },
          {
            "t_offset_s": 108.8,
            "total_mem_mib": 1067.89,
            "total_cpu_pct": 189.0,
            "mem_mib": [
              89.79,
              673.2,
              304.9
            ],
            "cpu_pct": [
              87.88,
              85.22,
              15.9
            ]
          },
          {
            "t_offset_s": 110.8,
            "total_mem_mib": 1064.97,
            "total_cpu_pct": 186.5,
            "mem_mib": [
              86.97,
              673.2,
              304.8
            ],
            "cpu_pct": [
              85.29,
              79.3,
              21.91
            ]
          },
          {
            "t_offset_s": 112.8,
            "total_mem_mib": 1067.76,
            "total_cpu_pct": 180.13,
            "mem_mib": [
              89.56,
              673.2,
              305.0
            ],
            "cpu_pct": [
              81.78,
              78.06,
              20.29
            ]
          },
          {
            "t_offset_s": 114.9,
            "total_mem_mib": 1065.16,
            "total_cpu_pct": 188.75,
            "mem_mib": [
              87.46,
              673.0,
              304.7
            ],
            "cpu_pct": [
              89.11,
              75.62,
              24.02
            ]
          },
          {
            "t_offset_s": 116.9,
            "total_mem_mib": 1066.13,
            "total_cpu_pct": 189.31,
            "mem_mib": [
              85.63,
              675.6,
              304.9
            ],
            "cpu_pct": [
              83.24,
              87.12,
              18.95
            ]
          },
          {
            "t_offset_s": 118.9,
            "total_mem_mib": 1063.12,
            "total_cpu_pct": 189.9,
            "mem_mib": [
              84.92,
              673.3,
              304.9
            ],
            "cpu_pct": [
              85.01,
              82.81,
              22.08
            ]
          },
          {
            "t_offset_s": 120.9,
            "total_mem_mib": 1081.29,
            "total_cpu_pct": 184.99,
            "mem_mib": [
              85.39,
              673.4,
              322.5
            ],
            "cpu_pct": [
              65.71,
              70.69,
              48.59
            ]
          },
          {
            "t_offset_s": 122.9,
            "total_mem_mib": 1065.06,
            "total_cpu_pct": 179.51,
            "mem_mib": [
              86.86,
              673.4,
              304.8
            ],
            "cpu_pct": [
              82.28,
              89.94,
              7.29
            ]
          },
          {
            "t_offset_s": 124.9,
            "total_mem_mib": 1063.8,
            "total_cpu_pct": 186.34,
            "mem_mib": [
              85.8,
              673.4,
              304.6
            ],
            "cpu_pct": [
              82.03,
              104.23,
              0.08
            ]
          },
          {
            "t_offset_s": 127.0,
            "total_mem_mib": 1066.28,
            "total_cpu_pct": 185.07,
            "mem_mib": [
              88.38,
              673.4,
              304.5
            ],
            "cpu_pct": [
              82.9,
              102.06,
              0.11
            ]
          },
          {
            "t_offset_s": 129.0,
            "total_mem_mib": 1065.6,
            "total_cpu_pct": 187.45,
            "mem_mib": [
              87.5,
              673.6,
              304.5
            ],
            "cpu_pct": [
              82.93,
              104.43,
              0.09
            ]
          },
          {
            "t_offset_s": 131.0,
            "total_mem_mib": 1064.41,
            "total_cpu_pct": 185.14,
            "mem_mib": [
              86.11,
              673.8,
              304.5
            ],
            "cpu_pct": [
              81.07,
              103.99,
              0.08
            ]
          },
          {
            "t_offset_s": 133.0,
            "total_mem_mib": 1064.71,
            "total_cpu_pct": 177.44,
            "mem_mib": [
              86.31,
              673.7,
              304.7
            ],
            "cpu_pct": [
              77.52,
              99.83,
              0.09
            ]
          },
          {
            "t_offset_s": 135.0,
            "total_mem_mib": 1065.39,
            "total_cpu_pct": 186.54,
            "mem_mib": [
              86.79,
              673.9,
              304.7
            ],
            "cpu_pct": [
              80.42,
              106.04,
              0.08
            ]
          },
          {
            "t_offset_s": 137.0,
            "total_mem_mib": 1065.34,
            "total_cpu_pct": 185.56,
            "mem_mib": [
              86.34,
              674.0,
              305.0
            ],
            "cpu_pct": [
              82.98,
              101.93,
              0.65
            ]
          },
          {
            "t_offset_s": 139.0,
            "total_mem_mib": 1065.38,
            "total_cpu_pct": 187.64,
            "mem_mib": [
              86.78,
              673.9,
              304.7
            ],
            "cpu_pct": [
              82.68,
              104.87,
              0.09
            ]
          },
          {
            "t_offset_s": 141.1,
            "total_mem_mib": 1064.76,
            "total_cpu_pct": 183.47,
            "mem_mib": [
              86.16,
              673.9,
              304.7
            ],
            "cpu_pct": [
              82.17,
              101.2,
              0.1
            ]
          },
          {
            "t_offset_s": 143.1,
            "total_mem_mib": 1067.68,
            "total_cpu_pct": 178.49,
            "mem_mib": [
              86.68,
              675.9,
              305.1
            ],
            "cpu_pct": [
              78.4,
              100.0,
              0.09
            ]
          },
          {
            "t_offset_s": 145.1,
            "total_mem_mib": 1066.53,
            "total_cpu_pct": 186.98,
            "mem_mib": [
              85.33,
              676.1,
              305.1
            ],
            "cpu_pct": [
              81.01,
              105.88,
              0.09
            ]
          },
          {
            "t_offset_s": 147.1,
            "total_mem_mib": 1064.42,
            "total_cpu_pct": 2.3,
            "mem_mib": [
              83.32,
              676.0,
              305.1
            ],
            "cpu_pct": [
              0.96,
              1.23,
              0.11
            ]
          }
        ],
        "series_start_offset_s": 0.1,
        "peak_note": "peak = highest value seen across docker stats samples (about one every 2-3 s); shorter spikes between samples are not seen",
        "peak_memory_stat": {
          "read_at": "2026-10-20T04:28:37Z",
          "per_service": {
            "postgresql": {
              "cgroup": "v2",
              "anon_mib": 32.84,
              "file_mib": 124.38,
              "active_file_mib": 0.07,
              "inactive_file_mib": 84.58,
              "shmem_mib": 39.73
            },
            "server": {
              "cgroup": "v2",
              "anon_mib": 655.59,
              "file_mib": 0.42,
              "active_file_mib": 0.02,
              "inactive_file_mib": 0.0,
              "shmem_mib": 0.42
            },
            "worker": {
              "cgroup": "v2",
              "anon_mib": 288.68,
              "file_mib": 0.23,
              "active_file_mib": 0.01,
              "inactive_file_mib": 0.03,
              "shmem_mib": 0.21
            }
          },
          "read_lag_s": 0.4,
          "series_index": 14,
          "sample_t_offset_s": 28.2,
          "total_mem_mib": 1092.0
        },
        "series_services": [
          "postgresql",
          "server",
          "worker"
        ]
      },
      "container_end_state": {
        "postgresql": {
          "restart_count": 0,
          "oom_killed": false
        },
        "server": {
          "restart_count": 0,
          "oom_killed": false
        },
        "worker": {
          "restart_count": 0,
          "oom_killed": false
        }
      },
      "teardown": {
        "done": true,
        "volumes_removed": true,
        "images_removed": false,
        "error": null
      },
      "warnings": [],
      "finished_at": "2026-10-20T04:30:41Z",
      "elapsed_seconds": 454.0
    },
    {
      "run": 2,
      "started_at": "2026-10-20T04:30:41Z",
      "host": {
        "label": "github-actions ubuntu-latest (2 vCPU, 8 GB)",
        "ci": {
          "runs_on": "ubuntu-latest",
          "runner_environment": "github-hosted",
          "runner_os": "Linux",
          "runner_arch": "X64",
          "image_os": "ubuntu24",
          "image_version": "20261012.334.1"
        },
        "cpu_model": "AMD EPYC 7763 64-Core Processor",
        "cpu_model_note": null,
        "cores": 2,
        "mem_total_mib": 7938,
        "kernel": "6.17.0-1022-azure",
        "os": "Ubuntu 24.04.5 LTS",
        "arch": "x86_64",
        "oci_arch": "amd64",
        "docker_server_version": "28.0.4",
        "docker_client_version": "28.0.4",
        "compose_client_version": "2.38.2",
        "storage_driver": "overlay2",
        "containerd_image_store": false,
        "source": "docker info + throwaway container reading /proc/cpuinfo on the daemon host",
        "compose_note": "Compose runs on the client machine; Docker server fields are from the daemon host"
      },
      "date": "2026-10-20",
      "startup": {
        "seconds": 103.5,
        "ok": true,
        "checks": [
          {
            "type": "http",
            "url": "http://server:9000/-/health/ready/",
            "expect_status": [
              200
            ],
            "ok": true,
            "ready_after_s": 103.5,
            "detail": "OK 200"
          }
        ],
        "up_command_seconds": 6.1,
        "definition": "wall clock from starting `docker compose up -d` until every health check passed; checks poll every 0.5 s from a throwaway container on the compose network, so resolution is about +/- 1 s"
      },
      "versions": {
        "postgresql": "16.15",
        "server": "2026.8.4",
        "worker": "2026.8.4"
      },
      "setup": [
        {
          "exit_code": 0,
          "duration_s": 36.2,
          "reported": {
            "authentik_version": "2026.8.4",
            "forward_auth_endpoint": "/outpost.goauthentik.io/auth/traefik",
            "provider_mode": "forward_single",
            "external_host": "https://app.example.com",
            "outpost_answers_for_protected_host": true,
            "setup_seconds": 35.3
          },
          "output_tail": [
            "API with the bootstrap token: ready after 7 s",
            "default flows: ready after 17 s",
            "embedded outpost for app.example.com: ready after 10 s"
          ],
          "description": "Wait until the first start is complete (the API answers for the bootstrap token and the worker has applied the default flows), then make a proxy provider in forward-auth (single application) mode for https://app.example.com, an application that uses it, and attach it to the embedded outpost, and wait until the outpost redirects an unauthenticated forward-auth check. No password is used here: the password checks (wrong password refused, login, single sign-on handshake, authorised check 200) run at the start of the load step, just before its measured window, so that the idle figure belongs to an instance nobody has logged in to."
        },
        {
          "exit_code": 0,
          "duration_s": 0.1,
          "reported": {
            "password_hash_algorithm": "pbkdf2_sha256",
            "password_hash_iterations": "1000000"
          },
          "output_tail": [
            "stored password hash format: pbkdf2_sha256$1000000"
          ],
          "description": "Read, inside the PostgreSQL container, the algorithm and iteration count of the stored password hash of the admin user (the part before the salt only; the salt and the hash are cut off and never printed). This records which password hashing authentik really uses."
        }
      ],
      "idle": {
        "per_service": {
          "postgresql": {
            "samples": 12,
            "mem_mean_mib": 76.92,
            "mem_max_mib": 77.14,
            "cpu_mean_pct": 0.07,
            "cpu_max_pct": 0.78
          },
          "server": {
            "samples": 12,
            "mem_mean_mib": 464.94,
            "mem_max_mib": 465.3,
            "cpu_mean_pct": 0.37,
            "cpu_max_pct": 1.19
          },
          "worker": {
            "samples": 12,
            "mem_mean_mib": 301.18,
            "mem_max_mib": 301.4,
            "cpu_mean_pct": 0.12,
            "cpu_max_pct": 0.56
          }
        },
        "total": {
          "samples": 12,
          "dropped_for_total": 0,
          "mem_mean_mib": 843.05,
          "mem_max_mib": 843.52,
          "cpu_mean_pct": 0.57,
          "cpu_max_pct": 1.26
        },
        "window_seconds": 32.3,
        "series": [
          {
            "t_offset_s": 0.0,
            "total_mem_mib": 841.82,
            "total_cpu_pct": 0.38
          },
          {
            "t_offset_s": 3.0,
            "total_mem_mib": 841.81,
            "total_cpu_pct": 0.36
          },
          {
            "t_offset_s": 6.1,
            "total_mem_mib": 843.11,
            "total_cpu_pct": 0.45
          },
          {
            "t_offset_s": 9.1,
            "total_mem_mib": 843.52,
            "total_cpu_pct": 1.16
          },
          {
            "t_offset_s": 12.1,
            "total_mem_mib": 843.46,
            "total_cpu_pct": 0.4
          },
          {
            "t_offset_s": 15.1,
            "total_mem_mib": 843.38,
            "total_cpu_pct": 0.36
          },
          {
            "t_offset_s": 18.2,
            "total_mem_mib": 843.22,
            "total_cpu_pct": 1.26
          },
          {
            "t_offset_s": 21.2,
            "total_mem_mib": 843.43,
            "total_cpu_pct": 0.4
          },
          {
            "t_offset_s": 24.2,
            "total_mem_mib": 843.34,
            "total_cpu_pct": 0.39
          },
          {
            "t_offset_s": 27.2,
            "total_mem_mib": 842.92,
            "total_cpu_pct": 0.42
          },
          {
            "t_offset_s": 29.3,
            "total_mem_mib": 843.16,
            "total_cpu_pct": 0.39
          },
          {
            "t_offset_s": 32.3,
            "total_mem_mib": 843.43,
            "total_cpu_pct": 0.86
          }
        ],
        "memory_stat": {
          "read_at": "2026-10-20T04:35:36Z",
          "per_service": {
            "postgresql": {
              "cgroup": "v2",
              "anon_mib": 26.77,
              "file_mib": 119.96,
              "active_file_mib": 0.0,
              "inactive_file_mib": 82.45,
              "shmem_mib": 37.51
            },
            "server": {
              "cgroup": "v2",
              "anon_mib": 449.95,
              "file_mib": 0.21,
              "active_file_mib": 0.04,
              "inactive_file_mib": 0.0,
              "shmem_mib": 0.19
            },
            "worker": {
              "cgroup": "v2",
              "anon_mib": 288.41,
              "file_mib": 0.23,
              "active_file_mib": 0.01,
              "inactive_file_mib": 0.02,
              "shmem_mib": 0.21
            }
          },
          "read_lag_s": 0.2,
          "method": "docker exec <container> cat /sys/fs/cgroup/memory.stat (cgroup v1: /sys/fs/cgroup/memory/memory.stat); MiB; splits what docker stats shows as one number into anon (heap) and file cache; a field that is absent was not printed by the kernel or not readable (see reason)",
          "taken": "right after the idle window"
        }
      },
      "settle": {
        "settled": true,
        "mode": "detected",
        "settle_seconds_used": 120.1,
        "settle_started_after_healthy_s": 38.1,
        "params": {
          "window_seconds": 60,
          "threshold_pct": 2.0,
          "threshold_min_mib": 10.0,
          "min_seconds": 120,
          "max_seconds": 600
        },
        "last_window": {
          "n": 20,
          "mean_mib": 842.76,
          "min_mib": 841.72,
          "max_mib": 857.31,
          "spread_mib": 15.59,
          "threshold_mib": 16.86
        },
        "rechecks": 0,
        "rule": "settled = over the last window_seconds the stack total varied (max - min) by less than max(threshold_pct of the window mean, threshold_min_mib); not before min_seconds, at the latest max_seconds, both counted from the end of the setup steps; the idle window must also be flat and agree with it. If max_seconds passes without settling, settled=false and the idle window is measured anyway."
      },
      "startup_peak": {
        "per_service_mem_mib": {
          "postgresql": 86.53,
          "server": 481.7,
          "worker": 305.4
        },
        "total_mem_mib": 859.38,
        "samples": 53,
        "note": "highest value across docker stats samples (about one every 2-3 s) from healthy until the stack settled; shorter spikes between samples are not seen"
      },
      "timeline": {
        "step_s": 10,
        "t0": "healthy",
        "offsets_s": [
          10,
          20,
          30,
          40,
          50,
          60,
          70,
          80,
          90,
          100,
          110,
          120,
          130,
          140,
          150,
          160,
          170,
          180,
          190,
          200
        ],
        "total_mem_mib": [
          721.6,
          810.0,
          828.8,
          835.8,
          838.6,
          839.5,
          840.0,
          839.2,
          842.0,
          847.5,
          842.0,
          842.0,
          847.3,
          841.9,
          842.0,
          841.9,
          842.8,
          843.4,
          843.1,
          843.4
        ],
        "per_service_mem_mib": {
          "postgresql": [
            62.0,
            72.0,
            83.3,
            78.0,
            76.6,
            76.7,
            76.7,
            76.6,
            76.6,
            76.7,
            76.9,
            76.9,
            77.1,
            77.0,
            77.0,
            77.0,
            76.9,
            76.9,
            76.9,
            77.0
          ],
          "server": [
            408.1,
            435.1,
            444.4,
            456.5,
            461.0,
            461.4,
            462.1,
            461.3,
            464.2,
            469.9,
            463.9,
            464.1,
            469.2,
            463.9,
            464.0,
            463.9,
            464.8,
            465.2,
            465.1,
            465.0
          ],
          "worker": [
            251.5,
            303.0,
            301.1,
            301.3,
            301.0,
            301.3,
            301.2,
            301.2,
            301.2,
            301.0,
            301.2,
            301.0,
            301.0,
            301.0,
            301.0,
            301.0,
            301.1,
            301.3,
            301.1,
            301.4
          ]
        }
      },
      "load": {
        "per_service": {
          "postgresql": {
            "samples": 75,
            "mem_mean_mib": 94.31,
            "mem_max_mib": 115.3,
            "cpu_mean_pct": 95.25,
            "cpu_max_pct": 121.36
          },
          "server": {
            "samples": 75,
            "mem_mean_mib": 559.6,
            "mem_max_mib": 606.2,
            "cpu_mean_pct": 66.47,
            "cpu_max_pct": 105.84
          },
          "worker": {
            "samples": 75,
            "mem_mean_mib": 303.94,
            "mem_max_mib": 318.9,
            "cpu_mean_pct": 23.97,
            "cpu_max_pct": 61.13
          }
        },
        "total": {
          "samples": 75,
          "dropped_for_total": 0,
          "mem_mean_mib": 957.85,
          "mem_max_mib": 1011.7,
          "cpu_mean_pct": 185.69,
          "cpu_max_pct": 196.71
        },
        "description": "One user (the admin account), over plain HTTP on the Compose network, from one Python script that plays the part of the reverse proxy (the proxy itself is not in the stack). First 60 password logins, 4 at a time, each from a fresh client with no cookies: the default authentication flow through the flow executor API (identification, password, login; about 6 requests), then one single sign-on handshake with the embedded outpost (3 requests: the outpost's start, the authorize call, the outpost's callback) so that the session can be used behind a forward-auth proxy. Then 3,000 authorisation checks, 8 at a time, spread evenly over the 60 sessions (50 each): GET /outpost.goauthentik.io/auth/traefik with the X-Forwarded-Method, -Proto, -Host and -URI headers and the proxy session cookie, which must answer 200. The Authelia app runs the same script with the same counts (60 logins, 4 at a time; 3,000 checks, 8 at a time). No browser, no MFA, no OAuth/OIDC clients, no LDAP or other sources, no policies beyond the defaults, one user. Just before the measured window (not counted) a pre-flight checks that a wrong password is refused, a right one logs in, an authorised check returns 200 with the user name and a check without a session is redirected.",
        "duration_s": 146.5,
        "window": "from LAB_MARK load_start (or step start) until 2 s after the step ended",
        "reported_by_script": {
          "auth_load": {
            "app": "authentik",
            "logins_requested": 60,
            "logins_ok": 60,
            "login_concurrency": 4,
            "login_phase_seconds": 104.05,
            "logins_per_second": 0.58,
            "login_latency_ms": {
              "n": 60,
              "p50": 6828.98,
              "p95": 7925.11,
              "p99": 8661.23,
              "max": 8661.23,
              "mean": 6820.17
            },
            "http_requests_per_login_incl_handshake": 9.0,
            "sso_handshake_requests_per_login": 3,
            "preflight_ok": true,
            "checks_requested": 3000,
            "checks_sent": 3000,
            "checks_ok": 3000,
            "check_concurrency": 8,
            "check_phase_seconds": 42.38,
            "checks_per_second": 70.8,
            "check_latency_ms": {
              "n": 3000,
              "p50": 98.81,
              "p95": 181.37,
              "p99": 221.73,
              "max": 307.18,
              "mean": 112.93
            },
            "check_statuses": {
              "200": 3000
            },
            "requests_total": 3540,
            "requests_failed": 0,
            "login_errors": []
          },
          "logins_ok": 60,
          "checks_ok": 3000,
          "requests_total": 3540,
          "requests_failed": 0
        },
        "output_tail": [
          "authentik: 60 logins at 4 at a time, then 3000 checks at 8 at a time",
          "pre-flight ok: wrong password refused, login works, authorised check 200, check without session refused",
          "logins ok 60/60 in 104.0 s"
        ],
        "series": [
          {
            "t_offset_s": 0.0,
            "total_mem_mib": 865.84,
            "total_cpu_pct": 173.93,
            "mem_mib": [
              91.54,
              472.6,
              301.7
            ],
            "cpu_pct": [
              95.86,
              41.3,
              36.77
            ]
          },
          {
            "t_offset_s": 2.0,
            "total_mem_mib": 889.4,
            "total_cpu_pct": 195.73,
            "mem_mib": [
              106.5,
              481.6,
              301.3
            ],
            "cpu_pct": [
              112.67,
              69.87,
              13.19
            ]
          },
          {
            "t_offset_s": 4.0,
            "total_mem_mib": 886.02,
            "total_cpu_pct": 195.08,
            "mem_mib": [
              98.32,
              486.4,
              301.3
            ],
            "cpu_pct": [
              118.24,
              64.59,
              12.25
            ]
          },
          {
            "t_offset_s": 6.0,
            "total_mem_mib": 896.2,
            "total_cpu_pct": 193.67,
            "mem_mib": [
              106.9,
              487.8,
              301.5
            ],
            "cpu_pct": [
              118.53,
              46.21,
              28.93
            ]
          },
          {
            "t_offset_s": 8.1,
            "total_mem_mib": 878.08,
            "total_cpu_pct": 184.62,
            "mem_mib": [
              87.98,
              488.5,
              301.6
            ],
            "cpu_pct": [
              93.38,
              65.42,
              25.82
            ]
          },
          {
            "t_offset_s": 10.1,
            "total_mem_mib": 884.3,
            "total_cpu_pct": 192.24,
            "mem_mib": [
              93.2,
              489.2,
              301.9
            ],
            "cpu_pct": [
              87.0,
              81.54,
              23.7
            ]
          },
          {
            "t_offset_s": 12.1,
            "total_mem_mib": 898.4,
            "total_cpu_pct": 194.54,
            "mem_mib": [
              106.5,
              490.2,
              301.7
            ],
            "cpu_pct": [
              111.04,
              54.73,
              28.77
            ]
          },
          {
            "t_offset_s": 14.1,
            "total_mem_mib": 892.8,
            "total_cpu_pct": 195.13,
            "mem_mib": [
              100.0,
              491.0,
              301.8
            ],
            "cpu_pct": [
              118.73,
              48.24,
              28.16
            ]
          },
          {
            "t_offset_s": 16.1,
            "total_mem_mib": 881.05,
            "total_cpu_pct": 195.91,
            "mem_mib": [
              87.95,
              491.3,
              301.8
            ],
            "cpu_pct": [
              91.43,
              70.6,
              33.88
            ]
          },
          {
            "t_offset_s": 18.1,
            "total_mem_mib": 884.24,
            "total_cpu_pct": 191.48,
            "mem_mib": [
              90.94,
              491.4,
              301.9
            ],
            "cpu_pct": [
              110.9,
              51.79,
              28.79
            ]
          },
          {
            "t_offset_s": 20.2,
            "total_mem_mib": 899.2,
            "total_cpu_pct": 192.53,
            "mem_mib": [
              105.0,
              492.2,
              302.0
            ],
            "cpu_pct": [
              115.23,
              47.59,
              29.71
            ]
          },
          {
            "t_offset_s": 22.2,
            "total_mem_mib": 902.11,
            "total_cpu_pct": 193.56,
            "mem_mib": [
              90.11,
              509.9,
              302.1
            ],
            "cpu_pct": [
              82.21,
              86.12,
              25.23
            ]
          },
          {
            "t_offset_s": 24.2,
            "total_mem_mib": 887.84,
            "total_cpu_pct": 186.09,
            "mem_mib": [
              92.84,
              492.9,
              302.1
            ],
            "cpu_pct": [
              101.83,
              55.45,
              28.81
            ]
          },
          {
            "t_offset_s": 26.2,
            "total_mem_mib": 894.75,
            "total_cpu_pct": 195.21,
            "mem_mib": [
              99.45,
              493.1,
              302.2
            ],
            "cpu_pct": [
              120.66,
              46.33,
              28.22
            ]
          },
          {
            "t_offset_s": 28.2,
            "total_mem_mib": 887.3,
            "total_cpu_pct": 193.87,
            "mem_mib": [
              91.4,
              493.6,
              302.3
            ],
            "cpu_pct": [
              102.55,
              61.58,
              29.74
            ]
          },
          {
            "t_offset_s": 30.2,
            "total_mem_mib": 894.63,
            "total_cpu_pct": 193.98,
            "mem_mib": [
              97.73,
              494.0,
              302.9
            ],
            "cpu_pct": [
              102.55,
              63.2,
              28.23
            ]
          },
          {
            "t_offset_s": 32.2,
            "total_mem_mib": 898.0,
            "total_cpu_pct": 195.02,
            "mem_mib": [
              100.5,
              494.4,
              303.1
            ],
            "cpu_pct": [
              90.16,
              43.73,
              61.13
            ]
          },
          {
            "t_offset_s": 34.3,
            "total_mem_mib": 890.85,
            "total_cpu_pct": 185.63,
            "mem_mib": [
              93.05,
              494.6,
              303.2
            ],
            "cpu_pct": [
              113.87,
              47.48,
              24.28
            ]
          },
          {
            "t_offset_s": 36.3,
            "total_mem_mib": 901.8,
            "total_cpu_pct": 195.74,
            "mem_mib": [
              103.4,
              495.2,
              303.2
            ],
            "cpu_pct": [
              86.2,
              71.9,
              37.64
            ]
          },
          {
            "t_offset_s": 38.3,
            "total_mem_mib": 891.23,
            "total_cpu_pct": 194.62,
            "mem_mib": [
              92.83,
              495.3,
              303.1
            ],
            "cpu_pct": [
              98.33,
              68.68,
              27.61
            ]
          },
          {
            "t_offset_s": 40.3,
            "total_mem_mib": 899.9,
            "total_cpu_pct": 191.91,
            "mem_mib": [
              100.7,
              496.0,
              303.2
            ],
            "cpu_pct": [
              114.13,
              52.01,
              25.77
            ]
          },
          {
            "t_offset_s": 42.3,
            "total_mem_mib": 897.16,
            "total_cpu_pct": 195.01,
            "mem_mib": [
              98.06,
              496.0,
              303.1
            ],
            "cpu_pct": [
              100.01,
              66.32,
              28.68
            ]
          },
          {
            "t_offset_s": 44.3,
            "total_mem_mib": 897.84,
            "total_cpu_pct": 186.36,
            "mem_mib": [
              98.04,
              496.5,
              303.3
            ],
            "cpu_pct": [
              86.03,
              74.94,
              25.39
            ]
          },
          {
            "t_offset_s": 46.3,
            "total_mem_mib": 900.5,
            "total_cpu_pct": 181.67,
            "mem_mib": [
              100.3,
              496.9,
              303.3
            ],
            "cpu_pct": [
              104.52,
              50.59,
              26.56
            ]
          },
          {
            "t_offset_s": 48.4,
            "total_mem_mib": 893.85,
            "total_cpu_pct": 195.76,
            "mem_mib": [
              93.35,
              497.2,
              303.3
            ],
            "cpu_pct": [
              102.1,
              65.53,
              28.13
            ]
          },
          {
            "t_offset_s": 50.4,
            "total_mem_mib": 908.7,
            "total_cpu_pct": 193.35,
            "mem_mib": [
              107.8,
              497.2,
              303.7
            ],
            "cpu_pct": [
              89.57,
              74.96,
              28.82
            ]
          },
          {
            "t_offset_s": 52.4,
            "total_mem_mib": 993.78,
            "total_cpu_pct": 196.71,
            "mem_mib": [
              98.98,
              591.2,
              303.6
            ],
            "cpu_pct": [
              93.24,
              71.26,
              32.21
            ]
          },
          {
            "t_offset_s": 54.4,
            "total_mem_mib": 1001.0,
            "total_cpu_pct": 186.37,
            "mem_mib": [
              103.8,
              593.5,
              303.7
            ],
            "cpu_pct": [
              74.66,
              89.02,
              22.69
            ]
          },
          {
            "t_offset_s": 56.4,
            "total_mem_mib": 985.74,
            "total_cpu_pct": 193.75,
            "mem_mib": [
              90.84,
              591.1,
              303.8
            ],
            "cpu_pct": [
              113.61,
              54.63,
              25.51
            ]
          },
          {
            "t_offset_s": 58.4,
            "total_mem_mib": 985.31,
            "total_cpu_pct": 195.56,
            "mem_mib": [
              90.41,
              591.2,
              303.7
            ],
            "cpu_pct": [
              105.6,
              62.42,
              27.54
            ]
          },
          {
            "t_offset_s": 60.5,
            "total_mem_mib": 992.85,
            "total_cpu_pct": 193.18,
            "mem_mib": [
              97.65,
              591.3,
              303.9
            ],
            "cpu_pct": [
              107.36,
              53.48,
              32.34
            ]
          },
          {
            "t_offset_s": 62.5,
            "total_mem_mib": 1005.75,
            "total_cpu_pct": 191.89,
            "mem_mib": [
              95.45,
              591.4,
              318.9
            ],
            "cpu_pct": [
              98.54,
              47.53,
              45.82
            ]
          },
          {
            "t_offset_s": 64.5,
            "total_mem_mib": 987.54,
            "total_cpu_pct": 184.87,
            "mem_mib": [
              92.14,
              591.5,
              303.9
            ],
            "cpu_pct": [
              116.27,
              40.95,
              27.65
            ]
          },
          {
            "t_offset_s": 66.5,
            "total_mem_mib": 991.75,
            "total_cpu_pct": 195.47,
            "mem_mib": [
              96.25,
              591.6,
              303.9
            ],
            "cpu_pct": [
              74.85,
              92.54,
              28.08
            ]
          },
          {
            "t_offset_s": 68.5,
            "total_mem_mib": 990.11,
            "total_cpu_pct": 195.1,
            "mem_mib": [
              94.81,
              591.5,
              303.8
            ],
            "cpu_pct": [
              107.56,
              60.77,
              26.77
            ]
          },
          {
            "t_offset_s": 70.5,
            "total_mem_mib": 991.56,
            "total_cpu_pct": 193.33,
            "mem_mib": [
              96.46,
              591.2,
              303.9
            ],
            "cpu_pct": [
              115.68,
              49.05,
              28.6
            ]
          },
          {
            "t_offset_s": 72.6,
            "total_mem_mib": 997.0,
            "total_cpu_pct": 196.51,
            "mem_mib": [
              101.5,
              591.6,
              303.9
            ],
            "cpu_pct": [
              102.69,
              64.98,
              28.84
            ]
          },
          {
            "t_offset_s": 74.6,
            "total_mem_mib": 990.37,
            "total_cpu_pct": 184.88,
            "mem_mib": [
              94.97,
              591.5,
              303.9
            ],
            "cpu_pct": [
              76.77,
              74.42,
              33.69
            ]
          },
          {
            "t_offset_s": 76.6,
            "total_mem_mib": 1006.4,
            "total_cpu_pct": 196.28,
            "mem_mib": [
              110.4,
              592.0,
              304.0
            ],
            "cpu_pct": [
              114.43,
              52.45,
              29.4
            ]
          },
          {
            "t_offset_s": 78.6,
            "total_mem_mib": 987.35,
            "total_cpu_pct": 194.96,
            "mem_mib": [
              91.15,
              592.2,
              304.0
            ],
            "cpu_pct": [
              121.36,
              44.14,
              29.46
            ]
          },
          {
            "t_offset_s": 80.6,
            "total_mem_mib": 995.42,
            "total_cpu_pct": 193.24,
            "mem_mib": [
              99.12,
              592.1,
              304.2
            ],
            "cpu_pct": [
              88.98,
              78.92,
              25.34
            ]
          },
          {
            "t_offset_s": 82.6,
            "total_mem_mib": 998.2,
            "total_cpu_pct": 196.29,
            "mem_mib": [
              101.8,
              592.1,
              304.3
            ],
            "cpu_pct": [
              116.83,
              51.2,
              28.26
            ]
          },
          {
            "t_offset_s": 84.7,
            "total_mem_mib": 1004.4,
            "total_cpu_pct": 185.5,
            "mem_mib": [
              108.2,
              592.0,
              304.2
            ],
            "cpu_pct": [
              117.4,
              40.16,
              27.94
            ]
          },
          {
            "t_offset_s": 86.7,
            "total_mem_mib": 1002.2,
            "total_cpu_pct": 195.39,
            "mem_mib": [
              103.0,
              594.8,
              304.4
            ],
            "cpu_pct": [
              86.83,
              76.65,
              31.91
            ]
          },
          {
            "t_offset_s": 88.7,
            "total_mem_mib": 1011.7,
            "total_cpu_pct": 196.32,
            "mem_mib": [
              115.3,
              592.2,
              304.2
            ],
            "cpu_pct": [
              114.21,
              53.42,
              28.69
            ]
          },
          {
            "t_offset_s": 90.7,
            "total_mem_mib": 1005.2,
            "total_cpu_pct": 192.77,
            "mem_mib": [
              108.2,
              592.6,
              304.4
            ],
            "cpu_pct": [
              110.23,
              52.76,
              29.78
            ]
          },
          {
            "t_offset_s": 92.7,
            "total_mem_mib": 992.83,
            "total_cpu_pct": 193.94,
            "mem_mib": [
              96.23,
              592.3,
              304.3
            ],
            "cpu_pct": [
              119.13,
              43.69,
              31.12
            ]
          },
          {
            "t_offset_s": 94.7,
            "total_mem_mib": 989.94,
            "total_cpu_pct": 188.66,
            "mem_mib": [
              93.14,
              592.4,
              304.4
            ],
            "cpu_pct": [
              78.98,
              81.16,
              28.52
            ]
          },
          {
            "t_offset_s": 96.8,
            "total_mem_mib": 992.71,
            "total_cpu_pct": 195.16,
            "mem_mib": [
              95.81,
              592.6,
              304.3
            ],
            "cpu_pct": [
              113.55,
              51.25,
              30.36
            ]
          },
          {
            "t_offset_s": 98.8,
            "total_mem_mib": 997.1,
            "total_cpu_pct": 194.35,
            "mem_mib": [
              100.4,
              592.4,
              304.3
            ],
            "cpu_pct": [
              117.65,
              44.39,
              32.31
            ]
          },
          {
            "t_offset_s": 100.8,
            "total_mem_mib": 990.09,
            "total_cpu_pct": 187.67,
            "mem_mib": [
              91.19,
              592.6,
              306.3
            ],
            "cpu_pct": [
              103.07,
              51.29,
              33.31
            ]
          },
          {
            "t_offset_s": 102.8,
            "total_mem_mib": 986.02,
            "total_cpu_pct": 195.61,
            "mem_mib": [
              89.32,
              592.3,
              304.4
            ],
            "cpu_pct": [
              114.08,
              45.82,
              35.71
            ]
          },
          {
            "t_offset_s": 104.8,
            "total_mem_mib": 982.3,
            "total_cpu_pct": 189.39,
            "mem_mib": [
              85.2,
              592.4,
              304.7
            ],
            "cpu_pct": [
              89.3,
              72.52,
              27.57
            ]
          },
          {
            "t_offset_s": 106.8,
            "total_mem_mib": 984.13,
            "total_cpu_pct": 188.32,
            "mem_mib": [
              86.83,
              592.6,
              304.7
            ],
            "cpu_pct": [
              87.76,
              76.45,
              24.11
            ]
          },
          {
            "t_offset_s": 108.8,
            "total_mem_mib": 980.66,
            "total_cpu_pct": 189.4,
            "mem_mib": [
              83.46,
              592.8,
              304.4
            ],
            "cpu_pct": [
              88.78,
              77.4,
              23.22
            ]
          },
          {
            "t_offset_s": 110.9,
            "total_mem_mib": 981.33,
            "total_cpu_pct": 178.72,
            "mem_mib": [
              84.33,
              592.6,
              304.4
            ],
            "cpu_pct": [
              83.74,
              73.9,
              21.08
            ]
          },
          {
            "t_offset_s": 112.9,
            "total_mem_mib": 994.81,
            "total_cpu_pct": 189.72,
            "mem_mib": [
              95.51,
              594.2,
              305.1
            ],
            "cpu_pct": [
              90.17,
              74.53,
              25.02
            ]
          },
          {
            "t_offset_s": 114.9,
            "total_mem_mib": 984.24,
            "total_cpu_pct": 188.6,
            "mem_mib": [
              84.84,
              594.6,
              304.8
            ],
            "cpu_pct": [
              88.32,
              76.36,
              23.92
            ]
          },
          {
            "t_offset_s": 116.9,
            "total_mem_mib": 987.2,
            "total_cpu_pct": 185.02,
            "mem_mib": [
              84.6,
              597.5,
              305.1
            ],
            "cpu_pct": [
              86.17,
              76.89,
              21.96
            ]
          },
          {
            "t_offset_s": 118.9,
            "total_mem_mib": 990.1,
            "total_cpu_pct": 191.04,
            "mem_mib": [
              90.3,
              594.7,
              305.1
            ],
            "cpu_pct": [
              94.81,
              76.1,
              20.13
            ]
          },
          {
            "t_offset_s": 121.0,
            "total_mem_mib": 986.33,
            "total_cpu_pct": 178.4,
            "mem_mib": [
              86.93,
              594.5,
              304.9
            ],
            "cpu_pct": [
              82.75,
              73.71,
              21.94
            ]
          },
          {
            "t_offset_s": 123.0,
            "total_mem_mib": 990.78,
            "total_cpu_pct": 190.23,
            "mem_mib": [
              86.98,
              598.8,
              305.0
            ],
            "cpu_pct": [
              85.57,
              81.98,
              22.68
            ]
          },
          {
            "t_offset_s": 125.0,
            "total_mem_mib": 990.8,
            "total_cpu_pct": 182.19,
            "mem_mib": [
              86.6,
              599.0,
              305.2
            ],
            "cpu_pct": [
              74.31,
              69.09,
              38.79
            ]
          },
          {
            "t_offset_s": 127.0,
            "total_mem_mib": 988.91,
            "total_cpu_pct": 187.83,
            "mem_mib": [
              84.81,
              599.2,
              304.9
            ],
            "cpu_pct": [
              83.87,
              103.87,
              0.09
            ]
          },
          {
            "t_offset_s": 129.0,
            "total_mem_mib": 995.63,
            "total_cpu_pct": 180.76,
            "mem_mib": [
              91.53,
              599.3,
              304.8
            ],
            "cpu_pct": [
              79.64,
              101.03,
              0.09
            ]
          },
          {
            "t_offset_s": 131.1,
            "total_mem_mib": 988.4,
            "total_cpu_pct": 174.55,
            "mem_mib": [
              84.5,
              599.1,
              304.8
            ],
            "cpu_pct": [
              78.25,
              96.21,
              0.09
            ]
          },
          {
            "t_offset_s": 133.1,
            "total_mem_mib": 993.15,
            "total_cpu_pct": 187.29,
            "mem_mib": [
              86.05,
              602.3,
              304.8
            ],
            "cpu_pct": [
              81.81,
              105.38,
              0.1
            ]
          },
          {
            "t_offset_s": 135.1,
            "total_mem_mib": 993.95,
            "total_cpu_pct": 186.86,
            "mem_mib": [
              86.65,
              602.5,
              304.8
            ],
            "cpu_pct": [
              82.69,
              104.04,
              0.13
            ]
          },
          {
            "t_offset_s": 137.1,
            "total_mem_mib": 993.95,
            "total_cpu_pct": 185.47,
            "mem_mib": [
              86.45,
              602.7,
              304.8
            ],
            "cpu_pct": [
              82.62,
              102.75,
              0.1
            ]
          },
          {
            "t_offset_s": 139.1,
            "total_mem_mib": 992.32,
            "total_cpu_pct": 185.59,
            "mem_mib": [
              85.12,
              602.4,
              304.8
            ],
            "cpu_pct": [
              83.15,
              102.34,
              0.1
            ]
          },
          {
            "t_offset_s": 141.1,
            "total_mem_mib": 992.21,
            "total_cpu_pct": 174.92,
            "mem_mib": [
              84.91,
              602.6,
              304.7
            ],
            "cpu_pct": [
              76.49,
              98.34,
              0.09
            ]
          },
          {
            "t_offset_s": 143.1,
            "total_mem_mib": 994.4,
            "total_cpu_pct": 186.71,
            "mem_mib": [
              85.6,
              604.1,
              304.7
            ],
            "cpu_pct": [
              83.61,
              103.01,
              0.09
            ]
          },
          {
            "t_offset_s": 145.2,
            "total_mem_mib": 993.7,
            "total_cpu_pct": 188.47,
            "mem_mib": [
              85.1,
              603.9,
              304.7
            ],
            "cpu_pct": [
              82.52,
              105.84,
              0.11
            ]
          },
          {
            "t_offset_s": 147.2,
            "total_mem_mib": 991.65,
            "total_cpu_pct": 15.06,
            "mem_mib": [
              82.95,
              604.0,
              304.7
            ],
            "cpu_pct": [
              6.39,
              8.59,
              0.08
            ]
          },
          {
            "t_offset_s": 149.2,
            "total_mem_mib": 993.82,
            "total_cpu_pct": 26.04,
            "mem_mib": [
              82.92,
              606.2,
              304.7
            ],
            "cpu_pct": [
              0.08,
              25.88,
              0.08
            ]
          }
        ],
        "series_start_offset_s": 0.7,
        "peak_note": "peak = highest value seen across docker stats samples (about one every 2-3 s); shorter spikes between samples are not seen",
        "peak_memory_stat": {
          "read_at": "2026-10-20T04:37:09Z",
          "per_service": {
            "postgresql": {
              "cgroup": "v2",
              "anon_mib": 39.7,
              "file_mib": 144.22,
              "active_file_mib": 0.0,
              "inactive_file_mib": 102.45,
              "shmem_mib": 41.77
            },
            "server": {
              "cgroup": "v2",
              "anon_mib": 576.65,
              "file_mib": 0.45,
              "active_file_mib": 0.04,
              "inactive_file_mib": 0.0,
              "shmem_mib": 0.43
            },
            "worker": {
              "cgroup": "v2",
              "anon_mib": 291.05,
              "file_mib": 0.23,
              "active_file_mib": 0.01,
              "inactive_file_mib": 0.02,
              "shmem_mib": 0.21
            }
          },
          "read_lag_s": 0.5,
          "series_index": 44,
          "sample_t_offset_s": 88.7,
          "total_mem_mib": 1011.7
        },
        "series_services": [
          "postgresql",
          "server",
          "worker"
        ]
      },
      "container_end_state": {
        "postgresql": {
          "restart_count": 0,
          "oom_killed": false
        },
        "server": {
          "restart_count": 0,
          "oom_killed": false
        },
        "worker": {
          "restart_count": 0,
          "oom_killed": false
        }
      },
      "teardown": {
        "done": true,
        "volumes_removed": true,
        "images_removed": false,
        "error": null
      },
      "warnings": [],
      "finished_at": "2026-10-20T04:38:16Z",
      "elapsed_seconds": 454.1
    },
    {
      "run": 3,
      "started_at": "2026-10-20T04:38:16Z",
      "host": {
        "label": "github-actions ubuntu-latest (2 vCPU, 8 GB)",
        "ci": {
          "runs_on": "ubuntu-latest",
          "runner_environment": "github-hosted",
          "runner_os": "Linux",
          "runner_arch": "X64",
          "image_os": "ubuntu24",
          "image_version": "20261012.334.1"
        },
        "cpu_model": "AMD EPYC 7763 64-Core Processor",
        "cpu_model_note": null,
        "cores": 2,
        "mem_total_mib": 7938,
        "kernel": "6.17.0-1022-azure",
        "os": "Ubuntu 24.04.5 LTS",
        "arch": "x86_64",
        "oci_arch": "amd64",
        "docker_server_version": "28.0.4",
        "docker_client_version": "28.0.4",
        "compose_client_version": "2.38.2",
        "storage_driver": "overlay2",
        "containerd_image_store": false,
        "source": "docker info + throwaway container reading /proc/cpuinfo on the daemon host",
        "compose_note": "Compose runs on the client machine; Docker server fields are from the daemon host"
      },
      "date": "2026-10-20",
      "startup": {
        "seconds": 104.2,
        "ok": true,
        "checks": [
          {
            "type": "http",
            "url": "http://server:9000/-/health/ready/",
            "expect_status": [
              200
            ],
            "ok": true,
            "ready_after_s": 104.2,
            "detail": "OK 200"
          }
        ],
        "up_command_seconds": 6.1,
        "definition": "wall clock from starting `docker compose up -d` until every health check passed; checks poll every 0.5 s from a throwaway container on the compose network, so resolution is about +/- 1 s"
      },
      "versions": {
        "postgresql": "16.15",
        "server": "2026.8.4",
        "worker": "2026.8.4"
      },
      "setup": [
        {
          "exit_code": 0,
          "duration_s": 40.3,
          "reported": {
            "authentik_version": "2026.8.4",
            "forward_auth_endpoint": "/outpost.goauthentik.io/auth/traefik",
            "provider_mode": "forward_single",
            "external_host": "https://app.example.com",
            "outpost_answers_for_protected_host": true,
            "setup_seconds": 39.4
          },
          "output_tail": [
            "API with the bootstrap token: ready after 3 s",
            "default flows: ready after 21 s",
            "embedded outpost for app.example.com: ready after 13 s"
          ],
          "description": "Wait until the first start is complete (the API answers for the bootstrap token and the worker has applied the default flows), then make a proxy provider in forward-auth (single application) mode for https://app.example.com, an application that uses it, and attach it to the embedded outpost, and wait until the outpost redirects an unauthenticated forward-auth check. No password is used here: the password checks (wrong password refused, login, single sign-on handshake, authorised check 200) run at the start of the load step, just before its measured window, so that the idle figure belongs to an instance nobody has logged in to."
        },
        {
          "exit_code": 0,
          "duration_s": 0.1,
          "reported": {
            "password_hash_algorithm": "pbkdf2_sha256",
            "password_hash_iterations": "1000000"
          },
          "output_tail": [
            "stored password hash format: pbkdf2_sha256$1000000"
          ],
          "description": "Read, inside the PostgreSQL container, the algorithm and iteration count of the stored password hash of the admin user (the part before the salt only; the salt and the hash are cut off and never printed). This records which password hashing authentik really uses."
        }
      ],
      "idle": {
        "per_service": {
          "postgresql": {
            "samples": 11,
            "mem_mean_mib": 77.26,
            "mem_max_mib": 77.48,
            "cpu_mean_pct": 0.01,
            "cpu_max_pct": 0.04
          },
          "server": {
            "samples": 11,
            "mem_mean_mib": 681.78,
            "mem_max_mib": 682.6,
            "cpu_mean_pct": 3.29,
            "cpu_max_pct": 32.27
          },
          "worker": {
            "samples": 11,
            "mem_mean_mib": 304.06,
            "mem_max_mib": 304.2,
            "cpu_mean_pct": 0.13,
            "cpu_max_pct": 0.6
          }
        },
        "total": {
          "samples": 11,
          "dropped_for_total": 0,
          "mem_mean_mib": 1063.11,
          "mem_max_mib": 1064.17,
          "cpu_mean_pct": 3.43,
          "cpu_max_pct": 32.36
        },
        "window_seconds": 30.3,
        "series": [
          {
            "t_offset_s": 0.0,
            "total_mem_mib": 1062.75,
            "total_cpu_pct": 0.41
          },
          {
            "t_offset_s": 3.0,
            "total_mem_mib": 1063.15,
            "total_cpu_pct": 0.38
          },
          {
            "t_offset_s": 6.1,
            "total_mem_mib": 1062.74,
            "total_cpu_pct": 0.5
          },
          {
            "t_offset_s": 9.1,
            "total_mem_mib": 1062.92,
            "total_cpu_pct": 0.41
          },
          {
            "t_offset_s": 12.1,
            "total_mem_mib": 1063.04,
            "total_cpu_pct": 1.26
          },
          {
            "t_offset_s": 15.1,
            "total_mem_mib": 1062.74,
            "total_cpu_pct": 0.34
          },
          {
            "t_offset_s": 18.2,
            "total_mem_mib": 1062.83,
            "total_cpu_pct": 0.39
          },
          {
            "t_offset_s": 21.2,
            "total_mem_mib": 1063.05,
            "total_cpu_pct": 32.36
          },
          {
            "t_offset_s": 24.2,
            "total_mem_mib": 1063.18,
            "total_cpu_pct": 0.9
          },
          {
            "t_offset_s": 27.2,
            "total_mem_mib": 1064.17,
            "total_cpu_pct": 0.39
          },
          {
            "t_offset_s": 30.3,
            "total_mem_mib": 1063.64,
            "total_cpu_pct": 0.41
          }
        ],
        "memory_stat": {
          "read_at": "2026-10-20T04:43:15Z",
          "per_service": {
            "postgresql": {
              "cgroup": "v2",
              "anon_mib": 26.85,
              "file_mib": 120.02,
              "active_file_mib": 0.0,
              "inactive_file_mib": 82.48,
              "shmem_mib": 37.54
            },
            "server": {
              "cgroup": "v2",
              "anon_mib": 667.5,
              "file_mib": 0.19,
              "active_file_mib": 0.02,
              "inactive_file_mib": 0.0,
              "shmem_mib": 0.19
            },
            "worker": {
              "cgroup": "v2",
              "anon_mib": 291.27,
              "file_mib": 0.24,
              "active_file_mib": 0.02,
              "inactive_file_mib": 0.02,
              "shmem_mib": 0.21
            }
          },
          "read_lag_s": 0.2,
          "method": "docker exec <container> cat /sys/fs/cgroup/memory.stat (cgroup v1: /sys/fs/cgroup/memory/memory.stat); MiB; splits what docker stats shows as one number into anon (heap) and file cache; a field that is absent was not printed by the kernel or not readable (see reason)",
          "taken": "right after the idle window"
        }
      },
      "settle": {
        "settled": true,
        "mode": "detected",
        "settle_seconds_used": 122.1,
        "settle_started_after_healthy_s": 42.2,
        "params": {
          "window_seconds": 60,
          "threshold_pct": 2.0,
          "threshold_min_mib": 10.0,
          "min_seconds": 120,
          "max_seconds": 600
        },
        "last_window": {
          "n": 20,
          "mean_mib": 1060.5,
          "min_mib": 1059.12,
          "max_mib": 1063.53,
          "spread_mib": 4.41,
          "threshold_mib": 21.21
        },
        "rechecks": 0,
        "rule": "settled = over the last window_seconds the stack total varied (max - min) by less than max(threshold_pct of the window mean, threshold_min_mib); not before min_seconds, at the latest max_seconds, both counted from the end of the setup steps; the idle window must also be flat and agree with it. If max_seconds passes without settling, settled=false and the idle window is measured anyway."
      },
      "startup_peak": {
        "per_service_mem_mib": {
          "postgresql": 82.18,
          "server": 681.6,
          "worker": 304.9
        },
        "total_mem_mib": 1063.53,
        "samples": 55,
        "note": "highest value across docker stats samples (about one every 2-3 s) from healthy until the stack settled; shorter spikes between samples are not seen"
      },
      "timeline": {
        "step_s": 10,
        "t0": "healthy",
        "offsets_s": [
          10,
          20,
          30,
          40,
          50,
          60,
          70,
          80,
          90,
          100,
          110,
          120,
          130,
          140,
          150,
          160,
          170,
          180,
          190,
          200
        ],
        "total_mem_mib": [
          714.8,
          811.9,
          936.5,
          1057.5,
          1057.5,
          1057.8,
          1057.9,
          1058.5,
          1059.0,
          1059.0,
          1059.3,
          1059.5,
          1059.5,
          1059.7,
          1060.5,
          1062.7,
          1062.9,
          1062.9,
          1063.0,
          1063.9
        ],
        "per_service_mem_mib": {
          "postgresql": [
            55.9,
            74.5,
            77.6,
            78.6,
            77.1,
            77.3,
            77.1,
            77.1,
            77.3,
            77.2,
            77.3,
            77.4,
            77.3,
            77.4,
            77.4,
            77.3,
            77.3,
            77.2,
            77.4,
            77.3
          ],
          "server": [
            408.9,
            434.0,
            557.4,
            677.2,
            678.7,
            678.8,
            678.9,
            678.8,
            678.8,
            678.8,
            678.5,
            678.6,
            678.5,
            678.5,
            679.2,
            681.0,
            681.5,
            681.7,
            681.6,
            682.5
          ],
          "worker": [
            249.9,
            303.3,
            301.5,
            301.7,
            301.7,
            301.6,
            301.9,
            302.7,
            302.9,
            303.1,
            303.4,
            303.4,
            303.7,
            303.8,
            303.8,
            304.3,
            304.0,
            304.0,
            304.1,
            304.2
          ]
        }
      },
      "load": {
        "per_service": {
          "postgresql": {
            "samples": 74,
            "mem_mean_mib": 93.48,
            "mem_max_mib": 108.6,
            "cpu_mean_pct": 95.66,
            "cpu_max_pct": 124.46
          },
          "server": {
            "samples": 74,
            "mem_mean_mib": 695.19,
            "mem_max_mib": 709.9,
            "cpu_mean_pct": 66.53,
            "cpu_max_pct": 105.93
          },
          "worker": {
            "samples": 74,
            "mem_mean_mib": 304.56,
            "mem_max_mib": 315.0,
            "cpu_mean_pct": 23.49,
            "cpu_max_pct": 60.4
          }
        },
        "total": {
          "samples": 74,
          "dropped_for_total": 0,
          "mem_mean_mib": 1093.24,
          "mem_max_mib": 1110.3,
          "cpu_mean_pct": 185.68,
          "cpu_max_pct": 197.13
        },
        "description": "One user (the admin account), over plain HTTP on the Compose network, from one Python script that plays the part of the reverse proxy (the proxy itself is not in the stack). First 60 password logins, 4 at a time, each from a fresh client with no cookies: the default authentication flow through the flow executor API (identification, password, login; about 6 requests), then one single sign-on handshake with the embedded outpost (3 requests: the outpost's start, the authorize call, the outpost's callback) so that the session can be used behind a forward-auth proxy. Then 3,000 authorisation checks, 8 at a time, spread evenly over the 60 sessions (50 each): GET /outpost.goauthentik.io/auth/traefik with the X-Forwarded-Method, -Proto, -Host and -URI headers and the proxy session cookie, which must answer 200. The Authelia app runs the same script with the same counts (60 logins, 4 at a time; 3,000 checks, 8 at a time). No browser, no MFA, no OAuth/OIDC clients, no LDAP or other sources, no policies beyond the defaults, one user. Just before the measured window (not counted) a pre-flight checks that a wrong password is refused, a right one logs in, an authorised check returns 200 with the user name and a check without a session is redirected.",
        "duration_s": 144.3,
        "window": "from LAB_MARK load_start (or step start) until 2 s after the step ended",
        "reported_by_script": {
          "auth_load": {
            "app": "authentik",
            "logins_requested": 60,
            "logins_ok": 60,
            "login_concurrency": 4,
            "login_phase_seconds": 102.84,
            "logins_per_second": 0.58,
            "login_latency_ms": {
              "n": 60,
              "p50": 6787.79,
              "p95": 7714.16,
              "p99": 7963.16,
              "max": 7963.16,
              "mean": 6730.64
            },
            "http_requests_per_login_incl_handshake": 9.0,
            "sso_handshake_requests_per_login": 3,
            "preflight_ok": true,
            "checks_requested": 3000,
            "checks_sent": 3000,
            "checks_ok": 3000,
            "check_concurrency": 8,
            "check_phase_seconds": 41.31,
            "checks_per_second": 72.6,
            "check_latency_ms": {
              "n": 3000,
              "p50": 94.48,
              "p95": 179.58,
              "p99": 210.54,
              "max": 446.44,
              "mean": 110.05
            },
            "check_statuses": {
              "200": 3000
            },
            "requests_total": 3540,
            "requests_failed": 0,
            "login_errors": []
          },
          "logins_ok": 60,
          "checks_ok": 3000,
          "requests_total": 3540,
          "requests_failed": 0
        },
        "output_tail": [
          "authentik: 60 logins at 4 at a time, then 3000 checks at 8 at a time",
          "pre-flight ok: wrong password refused, login works, authorised check 200, check without session refused",
          "logins ok 60/60 in 102.8 s"
        ],
        "series": [
          {
            "t_offset_s": 0.0,
            "total_mem_mib": 1085.61,
            "total_cpu_pct": 175.94,
            "mem_mib": [
              95.91,
              685.2,
              304.5
            ],
            "cpu_pct": [
              98.95,
              40.32,
              36.67
            ]
          },
          {
            "t_offset_s": 2.0,
            "total_mem_mib": 1082.77,
            "total_cpu_pct": 194.6,
            "mem_mib": [
              91.67,
              687.0,
              304.1
            ],
            "cpu_pct": [
              88.6,
              105.93,
              0.07
            ]
          },
          {
            "t_offset_s": 4.0,
            "total_mem_mib": 1091.1,
            "total_cpu_pct": 183.66,
            "mem_mib": [
              98.8,
              688.0,
              304.3
            ],
            "cpu_pct": [
              112.58,
              42.76,
              28.32
            ]
          },
          {
            "t_offset_s": 6.0,
            "total_mem_mib": 1083.13,
            "total_cpu_pct": 195.16,
            "mem_mib": [
              90.33,
              688.7,
              304.1
            ],
            "cpu_pct": [
              118.36,
              49.03,
              27.77
            ]
          },
          {
            "t_offset_s": 8.1,
            "total_mem_mib": 1086.03,
            "total_cpu_pct": 196.48,
            "mem_mib": [
              93.13,
              688.6,
              304.3
            ],
            "cpu_pct": [
              101.47,
              68.15,
              26.86
            ]
          },
          {
            "t_offset_s": 10.1,
            "total_mem_mib": 1092.91,
            "total_cpu_pct": 195.82,
            "mem_mib": [
              99.91,
              688.5,
              304.5
            ],
            "cpu_pct": [
              110.81,
              57.28,
              27.73
            ]
          },
          {
            "t_offset_s": 12.1,
            "total_mem_mib": 1088.8,
            "total_cpu_pct": 194.28,
            "mem_mib": [
              95.2,
              689.0,
              304.6
            ],
            "cpu_pct": [
              111.88,
              52.46,
              29.94
            ]
          },
          {
            "t_offset_s": 14.1,
            "total_mem_mib": 1095.1,
            "total_cpu_pct": 189.16,
            "mem_mib": [
              101.9,
              688.7,
              304.5
            ],
            "cpu_pct": [
              103.68,
              58.61,
              26.87
            ]
          },
          {
            "t_offset_s": 16.1,
            "total_mem_mib": 1082.5,
            "total_cpu_pct": 195.75,
            "mem_mib": [
              89.1,
              689.1,
              304.3
            ],
            "cpu_pct": [
              77.48,
              81.35,
              36.92
            ]
          },
          {
            "t_offset_s": 18.1,
            "total_mem_mib": 1099.5,
            "total_cpu_pct": 197.13,
            "mem_mib": [
              103.6,
              691.6,
              304.3
            ],
            "cpu_pct": [
              103.92,
              68.63,
              24.58
            ]
          },
          {
            "t_offset_s": 20.1,
            "total_mem_mib": 1095.0,
            "total_cpu_pct": 195.55,
            "mem_mib": [
              101.3,
              689.5,
              304.2
            ],
            "cpu_pct": [
              114.23,
              49.68,
              31.64
            ]
          },
          {
            "t_offset_s": 22.2,
            "total_mem_mib": 1098.5,
            "total_cpu_pct": 192.77,
            "mem_mib": [
              103.4,
              690.8,
              304.3
            ],
            "cpu_pct": [
              124.46,
              41.14,
              27.17
            ]
          },
          {
            "t_offset_s": 24.2,
            "total_mem_mib": 1087.97,
            "total_cpu_pct": 188.21,
            "mem_mib": [
              92.57,
              691.0,
              304.4
            ],
            "cpu_pct": [
              73.49,
              83.82,
              30.9
            ]
          },
          {
            "t_offset_s": 26.2,
            "total_mem_mib": 1085.25,
            "total_cpu_pct": 185.8,
            "mem_mib": [
              89.75,
              691.2,
              304.3
            ],
            "cpu_pct": [
              106.92,
              51.41,
              27.47
            ]
          },
          {
            "t_offset_s": 28.2,
            "total_mem_mib": 1104.2,
            "total_cpu_pct": 195.3,
            "mem_mib": [
              108.6,
              691.2,
              304.4
            ],
            "cpu_pct": [
              102.38,
              44.71,
              48.21
            ]
          },
          {
            "t_offset_s": 30.2,
            "total_mem_mib": 1091.82,
            "total_cpu_pct": 195.52,
            "mem_mib": [
              96.32,
              691.3,
              304.2
            ],
            "cpu_pct": [
              98.39,
              72.16,
              24.97
            ]
          },
          {
            "t_offset_s": 32.2,
            "total_mem_mib": 1094.99,
            "total_cpu_pct": 192.22,
            "mem_mib": [
              98.89,
              691.7,
              304.4
            ],
            "cpu_pct": [
              115.95,
              50.2,
              26.07
            ]
          },
          {
            "t_offset_s": 34.3,
            "total_mem_mib": 1088.17,
            "total_cpu_pct": 184.32,
            "mem_mib": [
              92.27,
              691.5,
              304.4
            ],
            "cpu_pct": [
              84.7,
              68.62,
              31.0
            ]
          },
          {
            "t_offset_s": 36.3,
            "total_mem_mib": 1084.89,
            "total_cpu_pct": 194.47,
            "mem_mib": [
              88.99,
              691.6,
              304.3
            ],
            "cpu_pct": [
              119.14,
              44.8,
              30.53
            ]
          },
          {
            "t_offset_s": 38.3,
            "total_mem_mib": 1086.18,
            "total_cpu_pct": 196.99,
            "mem_mib": [
              90.38,
              691.3,
              304.5
            ],
            "cpu_pct": [
              83.32,
              84.64,
              29.03
            ]
          },
          {
            "t_offset_s": 40.3,
            "total_mem_mib": 1084.97,
            "total_cpu_pct": 194.69,
            "mem_mib": [
              89.07,
              691.5,
              304.4
            ],
            "cpu_pct": [
              79.13,
              85.44,
              30.12
            ]
          },
          {
            "t_offset_s": 42.4,
            "total_mem_mib": 1099.6,
            "total_cpu_pct": 193.04,
            "mem_mib": [
              103.1,
              692.1,
              304.4
            ],
            "cpu_pct": [
              121.06,
              44.6,
              27.38
            ]
          },
          {
            "t_offset_s": 44.4,
            "total_mem_mib": 1092.5,
            "total_cpu_pct": 187.56,
            "mem_mib": [
              95.7,
              692.2,
              304.6
            ],
            "cpu_pct": [
              90.14,
              72.96,
              24.46
            ]
          },
          {
            "t_offset_s": 46.4,
            "total_mem_mib": 1095.92,
            "total_cpu_pct": 195.52,
            "mem_mib": [
              99.02,
              692.3,
              304.6
            ],
            "cpu_pct": [
              121.55,
              45.5,
              28.47
            ]
          },
          {
            "t_offset_s": 48.4,
            "total_mem_mib": 1103.0,
            "total_cpu_pct": 195.45,
            "mem_mib": [
              105.9,
              692.5,
              304.6
            ],
            "cpu_pct": [
              117.01,
              48.14,
              30.3
            ]
          },
          {
            "t_offset_s": 50.4,
            "total_mem_mib": 1089.95,
            "total_cpu_pct": 195.02,
            "mem_mib": [
              93.15,
              692.4,
              304.4
            ],
            "cpu_pct": [
              118.55,
              48.64,
              27.83
            ]
          },
          {
            "t_offset_s": 52.4,
            "total_mem_mib": 1094.42,
            "total_cpu_pct": 190.77,
            "mem_mib": [
              96.92,
              693.1,
              304.4
            ],
            "cpu_pct": [
              84.74,
              82.09,
              23.94
            ]
          },
          {
            "t_offset_s": 54.5,
            "total_mem_mib": 1093.97,
            "total_cpu_pct": 188.13,
            "mem_mib": [
              96.47,
              693.0,
              304.5
            ],
            "cpu_pct": [
              88.87,
              73.73,
              25.53
            ]
          },
          {
            "t_offset_s": 56.5,
            "total_mem_mib": 1090.31,
            "total_cpu_pct": 195.38,
            "mem_mib": [
              92.71,
              693.0,
              304.6
            ],
            "cpu_pct": [
              109.62,
              57.21,
              28.55
            ]
          },
          {
            "t_offset_s": 58.5,
            "total_mem_mib": 1093.1,
            "total_cpu_pct": 192.41,
            "mem_mib": [
              95.6,
              693.0,
              304.5
            ],
            "cpu_pct": [
              72.59,
              59.42,
              60.4
            ]
          },
          {
            "t_offset_s": 60.5,
            "total_mem_mib": 1090.0,
            "total_cpu_pct": 194.37,
            "mem_mib": [
              92.4,
              693.1,
              304.5
            ],
            "cpu_pct": [
              115.35,
              48.68,
              30.34
            ]
          },
          {
            "t_offset_s": 62.5,
            "total_mem_mib": 1092.35,
            "total_cpu_pct": 193.22,
            "mem_mib": [
              95.25,
              692.9,
              304.2
            ],
            "cpu_pct": [
              117.42,
              45.72,
              30.08
            ]
          },
          {
            "t_offset_s": 64.5,
            "total_mem_mib": 1087.56,
            "total_cpu_pct": 183.06,
            "mem_mib": [
              89.96,
              693.0,
              304.6
            ],
            "cpu_pct": [
              108.32,
              47.44,
              27.3
            ]
          },
          {
            "t_offset_s": 66.5,
            "total_mem_mib": 1088.88,
            "total_cpu_pct": 196.18,
            "mem_mib": [
              91.58,
              693.0,
              304.3
            ],
            "cpu_pct": [
              102.41,
              65.49,
              28.28
            ]
          },
          {
            "t_offset_s": 68.6,
            "total_mem_mib": 1095.9,
            "total_cpu_pct": 195.28,
            "mem_mib": [
              98.3,
              693.2,
              304.4
            ],
            "cpu_pct": [
              119.7,
              43.39,
              32.19
            ]
          },
          {
            "t_offset_s": 70.6,
            "total_mem_mib": 1101.0,
            "total_cpu_pct": 195.85,
            "mem_mib": [
              103.3,
              693.1,
              304.6
            ],
            "cpu_pct": [
              99.1,
              70.19,
              26.56
            ]
          },
          {
            "t_offset_s": 72.6,
            "total_mem_mib": 1087.54,
            "total_cpu_pct": 191.83,
            "mem_mib": [
              90.14,
              692.9,
              304.5
            ],
            "cpu_pct": [
              114.52,
              48.25,
              29.06
            ]
          },
          {
            "t_offset_s": 74.6,
            "total_mem_mib": 1089.2,
            "total_cpu_pct": 189.0,
            "mem_mib": [
              91.7,
              692.9,
              304.6
            ],
            "cpu_pct": [
              97.08,
              64.85,
              27.07
            ]
          },
          {
            "t_offset_s": 76.6,
            "total_mem_mib": 1105.9,
            "total_cpu_pct": 194.82,
            "mem_mib": [
              108.6,
              693.0,
              304.3
            ],
            "cpu_pct": [
              100.06,
              66.24,
              28.52
            ]
          },
          {
            "t_offset_s": 78.6,
            "total_mem_mib": 1094.78,
            "total_cpu_pct": 193.99,
            "mem_mib": [
              97.08,
              693.1,
              304.6
            ],
            "cpu_pct": [
              119.4,
              45.06,
              29.53
            ]
          },
          {
            "t_offset_s": 80.7,
            "total_mem_mib": 1104.18,
            "total_cpu_pct": 192.28,
            "mem_mib": [
              89.98,
              709.9,
              304.3
            ],
            "cpu_pct": [
              96.38,
              67.8,
              28.1
            ]
          },
          {
            "t_offset_s": 82.7,
            "total_mem_mib": 1087.05,
            "total_cpu_pct": 191.11,
            "mem_mib": [
              89.55,
              692.9,
              304.6
            ],
            "cpu_pct": [
              119.68,
              42.64,
              28.79
            ]
          },
          {
            "t_offset_s": 84.7,
            "total_mem_mib": 1094.13,
            "total_cpu_pct": 189.92,
            "mem_mib": [
              96.33,
              693.3,
              304.5
            ],
            "cpu_pct": [
              82.73,
              73.14,
              34.05
            ]
          },
          {
            "t_offset_s": 86.7,
            "total_mem_mib": 1098.7,
            "total_cpu_pct": 186.59,
            "mem_mib": [
              100.9,
              693.3,
              304.5
            ],
            "cpu_pct": [
              111.45,
              49.97,
              25.17
            ]
          },
          {
            "t_offset_s": 88.7,
            "total_mem_mib": 1110.3,
            "total_cpu_pct": 192.59,
            "mem_mib": [
              102.1,
              693.2,
              315.0
            ],
            "cpu_pct": [
              82.82,
              72.19,
              37.58
            ]
          },
          {
            "t_offset_s": 90.7,
            "total_mem_mib": 1099.8,
            "total_cpu_pct": 186.9,
            "mem_mib": [
              102.3,
              693.2,
              304.3
            ],
            "cpu_pct": [
              95.85,
              66.21,
              24.84
            ]
          },
          {
            "t_offset_s": 92.8,
            "total_mem_mib": 1100.1,
            "total_cpu_pct": 192.16,
            "mem_mib": [
              102.3,
              693.1,
              304.7
            ],
            "cpu_pct": [
              119.15,
              44.86,
              28.15
            ]
          },
          {
            "t_offset_s": 94.8,
            "total_mem_mib": 1093.91,
            "total_cpu_pct": 192.74,
            "mem_mib": [
              95.41,
              693.8,
              304.7
            ],
            "cpu_pct": [
              119.77,
              45.1,
              27.87
            ]
          },
          {
            "t_offset_s": 96.8,
            "total_mem_mib": 1093.88,
            "total_cpu_pct": 196.61,
            "mem_mib": [
              95.98,
              693.5,
              304.4
            ],
            "cpu_pct": [
              90.38,
              81.35,
              24.88
            ]
          },
          {
            "t_offset_s": 98.8,
            "total_mem_mib": 1095.28,
            "total_cpu_pct": 195.91,
            "mem_mib": [
              97.38,
              693.6,
              304.3
            ],
            "cpu_pct": [
              99.21,
              71.68,
              25.02
            ]
          },
          {
            "t_offset_s": 100.8,
            "total_mem_mib": 1087.14,
            "total_cpu_pct": 187.37,
            "mem_mib": [
              89.34,
              693.3,
              304.5
            ],
            "cpu_pct": [
              114.76,
              37.96,
              34.65
            ]
          },
          {
            "t_offset_s": 102.8,
            "total_mem_mib": 1085.24,
            "total_cpu_pct": 189.75,
            "mem_mib": [
              86.94,
              693.6,
              304.7
            ],
            "cpu_pct": [
              107.41,
              38.79,
              43.55
            ]
          },
          {
            "t_offset_s": 104.9,
            "total_mem_mib": 1088.74,
            "total_cpu_pct": 189.07,
            "mem_mib": [
              88.34,
              695.9,
              304.5
            ],
            "cpu_pct": [
              88.34,
              75.77,
              24.96
            ]
          },
          {
            "t_offset_s": 106.9,
            "total_mem_mib": 1093.25,
            "total_cpu_pct": 190.66,
            "mem_mib": [
              92.45,
              696.1,
              304.7
            ],
            "cpu_pct": [
              87.65,
              79.86,
              23.15
            ]
          },
          {
            "t_offset_s": 108.9,
            "total_mem_mib": 1088.37,
            "total_cpu_pct": 190.54,
            "mem_mib": [
              87.07,
              696.7,
              304.6
            ],
            "cpu_pct": [
              93.52,
              75.05,
              21.97
            ]
          },
          {
            "t_offset_s": 110.9,
            "total_mem_mib": 1090.1,
            "total_cpu_pct": 182.94,
            "mem_mib": [
              88.7,
              696.7,
              304.7
            ],
            "cpu_pct": [
              84.15,
              76.31,
              22.48
            ]
          },
          {
            "t_offset_s": 113.0,
            "total_mem_mib": 1088.09,
            "total_cpu_pct": 186.51,
            "mem_mib": [
              84.89,
              698.5,
              304.7
            ],
            "cpu_pct": [
              73.01,
              90.33,
              23.17
            ]
          },
          {
            "t_offset_s": 115.0,
            "total_mem_mib": 1092.25,
            "total_cpu_pct": 187.96,
            "mem_mib": [
              86.95,
              700.8,
              304.5
            ],
            "cpu_pct": [
              89.86,
              76.74,
              21.36
            ]
          },
          {
            "t_offset_s": 117.0,
            "total_mem_mib": 1098.29,
            "total_cpu_pct": 189.88,
            "mem_mib": [
              92.69,
              700.9,
              304.7
            ],
            "cpu_pct": [
              88.15,
              80.91,
              20.82
            ]
          },
          {
            "t_offset_s": 119.1,
            "total_mem_mib": 1094.6,
            "total_cpu_pct": 189.35,
            "mem_mib": [
              89.1,
              700.9,
              304.6
            ],
            "cpu_pct": [
              90.69,
              74.43,
              24.23
            ]
          },
          {
            "t_offset_s": 121.1,
            "total_mem_mib": 1092.39,
            "total_cpu_pct": 180.74,
            "mem_mib": [
              87.09,
              700.8,
              304.5
            ],
            "cpu_pct": [
              86.32,
              71.35,
              23.07
            ]
          },
          {
            "t_offset_s": 123.1,
            "total_mem_mib": 1093.35,
            "total_cpu_pct": 182.17,
            "mem_mib": [
              87.85,
              701.1,
              304.4
            ],
            "cpu_pct": [
              79.99,
              102.09,
              0.09
            ]
          },
          {
            "t_offset_s": 125.1,
            "total_mem_mib": 1095.76,
            "total_cpu_pct": 184.59,
            "mem_mib": [
              87.26,
              704.1,
              304.4
            ],
            "cpu_pct": [
              82.78,
              101.69,
              0.12
            ]
          },
          {
            "t_offset_s": 127.1,
            "total_mem_mib": 1094.35,
            "total_cpu_pct": 187.35,
            "mem_mib": [
              85.85,
              704.3,
              304.2
            ],
            "cpu_pct": [
              83.65,
              103.61,
              0.09
            ]
          },
          {
            "t_offset_s": 129.1,
            "total_mem_mib": 1093.76,
            "total_cpu_pct": 187.26,
            "mem_mib": [
              85.46,
              704.1,
              304.2
            ],
            "cpu_pct": [
              82.9,
              104.27,
              0.09
            ]
          },
          {
            "t_offset_s": 131.2,
            "total_mem_mib": 1096.26,
            "total_cpu_pct": 177.46,
            "mem_mib": [
              87.86,
              704.2,
              304.2
            ],
            "cpu_pct": [
              78.24,
              99.13,
              0.09
            ]
          },
          {
            "t_offset_s": 133.2,
            "total_mem_mib": 1096.35,
            "total_cpu_pct": 186.74,
            "mem_mib": [
              87.85,
              704.3,
              304.2
            ],
            "cpu_pct": [
              82.23,
              104.43,
              0.08
            ]
          },
          {
            "t_offset_s": 135.2,
            "total_mem_mib": 1095.69,
            "total_cpu_pct": 185.89,
            "mem_mib": [
              85.69,
              705.6,
              304.4
            ],
            "cpu_pct": [
              82.88,
              102.4,
              0.61
            ]
          },
          {
            "t_offset_s": 137.2,
            "total_mem_mib": 1097.92,
            "total_cpu_pct": 185.55,
            "mem_mib": [
              87.82,
              705.7,
              304.4
            ],
            "cpu_pct": [
              82.13,
              103.34,
              0.08
            ]
          },
          {
            "t_offset_s": 139.2,
            "total_mem_mib": 1097.74,
            "total_cpu_pct": 187.48,
            "mem_mib": [
              87.94,
              705.6,
              304.2
            ],
            "cpu_pct": [
              82.48,
              104.91,
              0.09
            ]
          },
          {
            "t_offset_s": 141.2,
            "total_mem_mib": 1096.98,
            "total_cpu_pct": 179.79,
            "mem_mib": [
              86.88,
              705.9,
              304.2
            ],
            "cpu_pct": [
              79.57,
              100.12,
              0.1
            ]
          },
          {
            "t_offset_s": 143.3,
            "total_mem_mib": 1097.31,
            "total_cpu_pct": 187.4,
            "mem_mib": [
              87.21,
              705.9,
              304.2
            ],
            "cpu_pct": [
              82.73,
              104.57,
              0.1
            ]
          },
          {
            "t_offset_s": 145.3,
            "total_mem_mib": 1096.58,
            "total_cpu_pct": 30.3,
            "mem_mib": [
              83.18,
              709.2,
              304.2
            ],
            "cpu_pct": [
              9.67,
              20.53,
              0.1
            ]
          },
          {
            "t_offset_s": 147.3,
            "total_mem_mib": 1096.51,
            "total_cpu_pct": 2.06,
            "mem_mib": [
              83.21,
              709.2,
              304.1
            ],
            "cpu_pct": [
              0.88,
              1.11,
              0.07
            ]
          }
        ],
        "series_start_offset_s": 0.7,
        "peak_note": "peak = highest value seen across docker stats samples (about one every 2-3 s); shorter spikes between samples are not seen",
        "peak_memory_stat": {
          "read_at": "2026-10-20T04:44:48Z",
          "per_service": {
            "postgresql": {
              "cgroup": "v2",
              "anon_mib": 43.86,
              "file_mib": 144.83,
              "active_file_mib": 0.0,
              "inactive_file_mib": 102.75,
              "shmem_mib": 42.08
            },
            "server": {
              "cgroup": "v2",
              "anon_mib": 677.5,
              "file_mib": 0.43,
              "active_file_mib": 0.02,
              "inactive_file_mib": 0.0,
              "shmem_mib": 0.43
            },
            "worker": {
              "cgroup": "v2",
              "anon_mib": 291.3,
              "file_mib": 0.24,
              "active_file_mib": 0.02,
              "inactive_file_mib": 0.02,
              "shmem_mib": 0.21
            }
          },
          "read_lag_s": 0.4,
          "series_index": 44,
          "sample_t_offset_s": 88.7,
          "total_mem_mib": 1110.3
        },
        "series_services": [
          "postgresql",
          "server",
          "worker"
        ]
      },
      "container_end_state": {
        "postgresql": {
          "restart_count": 0,
          "oom_killed": false
        },
        "server": {
          "restart_count": 0,
          "oom_killed": false
        },
        "worker": {
          "restart_count": 0,
          "oom_killed": false
        }
      },
      "teardown": {
        "done": true,
        "volumes_removed": true,
        "images_removed": false,
        "error": null
      },
      "warnings": [],
      "finished_at": "2026-10-20T04:45:51Z",
      "elapsed_seconds": 455.4
    }
  ],
  "load_defined": true,
  "notes": [
    "Redis: not used and not in the stack. authentik 2025.10 removed it (\"authentik no longer uses Redis at all\", https://docs.goauthentik.io/releases/2025.10/); the official 2026.8 compose file (https://docs.goauthentik.io/compose.yml) has PostgreSQL, server and worker only. Caching, sessions, tasks and websocket messaging now run on PostgreSQL, which is why PostgreSQL is part of the footprint.",
    "Compose file: the official 2026.8 file with the image tag pinned to 2026.8.4 (the file's own default), PostgreSQL pinned to 16.15-alpine (the file says 16-alpine, the same image today), the ./data, ./certs and ./custom-templates folders turned into named volumes, and the first-start values in .env. The worker keeps the Docker socket mount of the official file.",
    "First start without a browser: AUTHENTIK_BOOTSTRAP_PASSWORD, AUTHENTIK_BOOTSTRAP_TOKEN and AUTHENTIK_BOOTSTRAP_EMAIL in .env (https://docs.goauthentik.io/install-config/automated-install/); the published .env has the password, token and secret key lines commented out.",
    "The embedded outpost (the forward-auth endpoint) runs INSIDE the server container, so its memory is part of the server's number. A separate proxy outpost container would be one more container.",
    "Password hashing: authentik's own settings set no PASSWORD_HASHERS (authentik/root/settings.py at version/2026.8.4), so Django's default applies: PBKDF2 with SHA-256 and, in Django 5.2 (5.2.17 in this image, per its uv.lock), 1,000,000 iterations. The authentik docs do not state the parameters. The second setup step reads the algorithm and iteration count of the admin user's stored hash from the database (never the salt or the hash).",
    "Same load as the Authelia app: 60 password logins, 4 at a time, then 3,000 authorisation checks, 8 at a time, spread over the 60 sessions (50 each); the counts are in the test.yaml of both apps and a test fails if they differ. A pre-flight of a few requests (one wrong password, one login, two checks) runs just before the measured window and is not counted.",
    "NOT equivalent, on purpose and recorded: (1) one authentik login is the default authentication flow through the flow executor API, about 6 HTTP requests, plus a single sign-on handshake with the embedded outpost (3 requests) so that the session works behind a forward-auth proxy: 9 requests per login against Authelia's 1. (2) authentik's check goes to /outpost.goauthentik.io/auth/traefik (the embedded outpost inside the server container, https://docs.goauthentik.io/add-secure-apps/providers/proxy/server_traefik/) and needs the proxy session cookie the handshake sets; Authelia's check uses the one session cookie. (3) The two apps need very different time for the same counts, so the load window of this app is minutes and Authelia's is seconds. The memory peak is the highest simultaneous sample either way.",
    "Why the forward-auth endpoint and not only the flow API for the checks: the outpost endpoint is what a reverse proxy (Traefik, Caddy, nginx) calls for every request to a protected site, as Authelia's /api/authz/forward-auth is. Both were checked to work headless (plain HTTP with X-Forwarded-* headers, no browser).",
    "Startup: the server answers its readiness endpoint only after it has applied the database migrations on the first start (about 3 minutes on a 4-vCPU box), and the worker applies the blueprints (default flows, outposts) after that; the setup step waits for them. The stack is busy for several minutes after healthy, which the settle rule waits for."
  ],
  "warnings": [],
  "files": {
    "compose": "authentik.compose.yaml",
    "env": "authentik.env"
  },
  "definitions": {
    "memory": "cgroup working set as reported by `docker stats` (usage minus inactive file cache), MiB = 2^20 bytes",
    "cpu": "percent of ONE core as reported by `docker stats` (4 busy cores = 400)",
    "total": "stats over the sum of all containers at the same instant",
    "sample_interval": "docker stats --no-stream takes about 1-2 s per call, so samples are 2-3 s apart",
    "runs": "each run is a full fresh cycle (up, health, setup, settle, idle, load, down -v); the published figure is the median over the runs, shown with the min-max range; see summary.rule"
  }
}
