From 12ffae3d53b22719787d71dea213f6a98eae7f9e Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Tue, 6 Oct 2026 21:22:53 +0200 Subject: [PATCH] R-762: wger server question measured on the bench (gunicorn 2 workers, 41 % of 384M) Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS --- .../night-burndown-2026-10-06/NIGHT-LOG.md | 1 + .../night-burndown-2026-10-06/r762/RESULT.md | 40 ++ .../r762/bench/compose.yml | 41 ++ .../r762/bench/out-gunicorn1/anon-max | 1 + .../r762/bench/out-gunicorn1/cg.txt | 1 + .../r762/bench/out-gunicorn1/down.txt | 16 + .../r762/bench/out-gunicorn1/events.txt | 2 + .../r762/bench/out-gunicorn1/inspect.txt | 1 + .../r762/bench/out-gunicorn1/loads.txt | 44 +++ .../r762/bench/out-gunicorn1/memory.peak | 1 + .../r762/bench/out-gunicorn1/ready.txt | 2 + .../r762/bench/out-gunicorn1/server-lines.txt | 4 + .../out-gunicorn1/signed-in-logout-links.txt | 1 + .../r762/bench/out-gunicorn1/stat-end.txt | 2 + .../r762/bench/out-gunicorn1/up.txt | 16 + .../r762/bench/out-gunicorn1/wger.log | 300 +++++++++++++++ .../r762/bench/out-gunicorn2/anon-max | 1 + .../r762/bench/out-gunicorn2/cg.txt | 1 + .../r762/bench/out-gunicorn2/down.txt | 16 + .../r762/bench/out-gunicorn2/events.txt | 2 + .../r762/bench/out-gunicorn2/inspect.txt | 1 + .../r762/bench/out-gunicorn2/loads.txt | 44 +++ .../r762/bench/out-gunicorn2/memory.peak | 1 + .../r762/bench/out-gunicorn2/ready.txt | 2 + .../r762/bench/out-gunicorn2/server-lines.txt | 5 + .../out-gunicorn2/signed-in-logout-links.txt | 1 + .../r762/bench/out-gunicorn2/stat-end.txt | 2 + .../r762/bench/out-gunicorn2/up.txt | 16 + .../r762/bench/out-gunicorn2/wger.log | 301 +++++++++++++++ .../r762/bench/out-runserver/anon-max | 1 + .../r762/bench/out-runserver/cg.txt | 1 + .../r762/bench/out-runserver/down.txt | 16 + .../r762/bench/out-runserver/events.txt | 2 + .../r762/bench/out-runserver/inspect.txt | 1 + .../r762/bench/out-runserver/loads.txt | 44 +++ .../r762/bench/out-runserver/memory.peak | 1 + .../r762/bench/out-runserver/ready.txt | 2 + .../r762/bench/out-runserver/server-lines.txt | 2 + .../out-runserver/signed-in-logout-links.txt | 1 + .../r762/bench/out-runserver/stat-end.txt | 2 + .../r762/bench/out-runserver/up.txt | 16 + .../r762/bench/out-runserver/wger.log | 352 ++++++++++++++++++ .../r762/bench/run.sh | 36 ++ documentation/backlog/OPEN-ITEMS.md | 2 +- 44 files changed, 1344 insertions(+), 1 deletion(-) create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/RESULT.md create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/compose.yml create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/anon-max create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/cg.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/down.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/events.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/inspect.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/loads.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/memory.peak create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/ready.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/server-lines.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/signed-in-logout-links.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/stat-end.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/up.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/wger.log create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/anon-max create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/cg.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/down.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/events.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/inspect.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/loads.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/memory.peak create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/ready.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/server-lines.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/signed-in-logout-links.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/stat-end.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/up.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/wger.log create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/anon-max create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/cg.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/down.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/events.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/inspect.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/loads.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/memory.peak create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/ready.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/server-lines.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/signed-in-logout-links.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/stat-end.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/up.txt create mode 100644 documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/wger.log create mode 100755 documentation/audits/night-burndown-2026-10-06/r762/bench/run.sh diff --git a/documentation/audits/night-burndown-2026-10-06/NIGHT-LOG.md b/documentation/audits/night-burndown-2026-10-06/NIGHT-LOG.md index 3e6e21cd..f264c8e4 100644 --- a/documentation/audits/night-burndown-2026-10-06/NIGHT-LOG.md +++ b/documentation/audits/night-burndown-2026-10-06/NIGHT-LOG.md @@ -49,3 +49,4 @@ no reboot. | R-392 | **closed** — `architecture/12-agent-tooling.md` written (a map, points at the doc-authoring skill); routed from `.claude/rules/docs.md` (instruction-file edit: one table row added) | 25 | (this batch) | | (DooPlex fence) | **A helper ran the catalog's full gate run on DooPlex**, whose `volume-persistence` gate builds and runs canary containers on the local Docker (`scripts/check-volume-persistence.py` canary self-test). Read at 21:20: no container and no volume left; one local image `felhom-volgate-canary:1` (alpine, built ~21:10) remains — left in place (not mine to prune; it may have existed before). The helper reports the gate's self-test fails on DooPlex for every app, also on `main` — not investigated: running it again would act on DooPlex. Fence repeated to the next helper | 5 | — | | R-896 | **OPENED** — the volume-persistence gate runs Docker locally (acts on DooPlex); its self-test fails here | 5 | (this batch) | +| R-762 | **measured** on the bench (runserver 52 %, gunicorn 1w 43 %, 2w 41 % of 384M; no kills); the numbers pick gunicorn with 2 workers; template change not built. Bench back to stopped; no Docker on DooPlex | 25 | (this batch) | diff --git a/documentation/audits/night-burndown-2026-10-06/r762/RESULT.md b/documentation/audits/night-burndown-2026-10-06/r762/RESULT.md new file mode 100644 index 00000000..ba227731 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/RESULT.md @@ -0,0 +1,40 @@ +# R-762 second half — wger under gunicorn, measured (2026-10-06 night, bench 9401) + +**What was measured.** wger 2.7 (`wger/server:2.7`, the catalog template on `main` `d63ea35`: `DJANGO_DEBUG=False` and the +`wger-files` nginx), the template's limit **384M** (`deploy.resources.limits.memory: 384M`; the file server 32M). Three +runs, each on fresh volumes, on test bench VM 9401 (demo-hp): Django `runserver` (today's template), and gunicorn with +1 and 2 workers. No traefik: ports on the bench's loopback (wger 18000, the file server 18080). Script and compose: +`bench/run.sh`, `bench/compose.yml`; raw outputs `bench/out-*/`. + +**How the worker count is set.** The image's entrypoint runs `gunicorn wger.wsgi:application --preload --bind +0.0.0.0:$PORT` when `WGER_USE_GUNICORN=True` — no `-w` and no config file in the image, so gunicorn's own default +applies: `WEB_CONCURRENCY` (unset = 1). **Control from a different channel** — the container's own log +(`bench/out-*/server-lines.txt`): 1 × „Booting worker" for gunicorn1, 2 × for gunicorn2, „Starting development server" +for runserver. + +| Mode | Workers | anon peak (MB) | % of 384M | oom_kill | restarts | ready after | login page (10 × seq.) | its CSS via wger-files | 20 GETs, 10 parallel | +|---|---|---|---|---|---|---|---|---|---| +| runserver (today) | — | 201 | 52 % | 0 | 0 | 81 s | 200, avg 32 ms | 200, 1 ms | 200 ×20, avg 394 ms | +| gunicorn | 1 | 165 | 43 % | 0 | 0 | 75 s | 200, avg 31 ms | 200, 1 ms | 200 ×20, avg 241 ms | +| gunicorn | 2 | 157 | 41 % | 0 | 0 | 72 s | 200, avg 43 ms | 200, 1 ms | 200 ×20, avg 124 ms | + +- anon peak: the highest `anon` in the container's `memory.stat`, sampled every 0.5 s from start to the end of the load + (MB = MiB). `memory.peak` read **384 MiB in all three runs** — the file cache fills the limit (collectstatic and the + sqlite file); it is not the app's memory and caused no kill (memory note: `memory.peak` counts the page cache). +- With `--preload`, the two workers share the app's pages with the master, so 2 workers did not cost more `anon` than 1 + here (157 vs 165 MB; the difference is run-to-run noise, not a saving). +- ready after: from `compose up` to the first 200 on the login page — dominated by bootstrap, collectstatic and migrate + on a fresh volume, not by the server. + +**Not measured:** a signed-in page. The scripted sign-in did not take (the form came back 200; the dashboard answered +302 to the login) and the brief said „if cheap". Nothing else was tried. + +**Pick the numbers support: gunicorn with 2 workers** (`WGER_USE_GUNICORN=True`, `WEB_CONCURRENCY=2`): 41 % of the +limit, no kill, and half the wait of 1 worker when ten requests arrive together. 1 worker also fits; runserver is the +heaviest and is a development server. + +**Teardown.** Bench 9401 was stopped when found; started 21:16, stopped again after the runs (`pct status`: stopped). +The project's containers, volumes and network were removed by `docker compose down -v` on the project `r762` only +(0 left by name); `/root/r762` deleted. The two images were already on the bench and stay. No prune of any kind. No +Docker command ran on DooPlex. Host: nothing created (the copy files in `/tmp` were deleted). Hub: nothing. +The image's default admin password appears in its own bootstrap log line; it is redacted in these files. diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/compose.yml b/documentation/audits/night-burndown-2026-10-06/r762/bench/compose.yml new file mode 100644 index 00000000..21f082c3 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/compose.yml @@ -0,0 +1,41 @@ +name: r762 +services: + wger: + image: wger/server:2.7 + container_name: r762-wger + environment: + - TZ=Europe/Budapest + - SECRET_KEY=${SECRET_KEY} + - CSRF_TRUSTED_ORIGINS=http://127.0.0.1:18000 + - DJANGO_PERFORM_MIGRATIONS=True + - ALLOW_REGISTRATION=False + - ALLOW_GUEST_USERS=False + - ENABLE_EMAIL=False + - DJANGO_DB_ENGINE=django.db.backends.sqlite3 + - DJANGO_DB_DATABASE=/home/wger/db/database.sqlite + - DJANGO_DB_USER=wger + - DJANGO_DB_PASSWORD=wger + - DJANGO_DB_HOST=localhost + - DJANGO_DB_PORT=5432 + - SITE_URL=http://127.0.0.1:18000 + - DJANGO_DEBUG=False + - WGER_USE_GUNICORN=${USE_GUNICORN} + - WEB_CONCURRENCY=${WORKERS} + volumes: + - r762_data:/home/wger/db + - r762_media:/home/wger/media + - r762_static:/home/wger/static + ports: ["127.0.0.1:18000:8000"] + deploy: {resources: {limits: {memory: 384M}}} + files: + image: nginx:1.30.5-alpine + container_name: r762-files + volumes: + - r762_static:/usr/share/nginx/html/static:ro + - r762_media:/usr/share/nginx/html/media:ro + ports: ["127.0.0.1:18080:80"] + deploy: {resources: {limits: {memory: 32M}}} +volumes: + r762_data: + r762_media: + r762_static: diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/anon-max b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/anon-max new file mode 100644 index 00000000..7bde1e1b --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/anon-max @@ -0,0 +1 @@ +173166592 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/cg.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/cg.txt new file mode 100644 index 00000000..a04efe77 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/cg.txt @@ -0,0 +1 @@ +cg=/sys/fs/cgroup/system.slice/docker-0fe5407dd081b37892db0bc386a4b3bf29691fd48aa024e6b467e67802171516.scope diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/down.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/down.txt new file mode 100644 index 00000000..a2988166 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/down.txt @@ -0,0 +1,16 @@ + Container r762-files Stopping + Container r762-wger Stopping + Container r762-files Stopped + Container r762-files Removing + Container r762-files Removed + Container r762-wger Stopped + Container r762-wger Removing + Container r762-wger Removed + Volume r762_r762_static Removing + Volume r762_r762_media Removing + Volume r762_r762_data Removing + Network r762_default Removing + Volume r762_r762_media Removed + Network r762_default Removed + Volume r762_r762_static Removed + Volume r762_r762_data Removed diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/events.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/events.txt new file mode 100644 index 00000000..a0829c28 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/events.txt @@ -0,0 +1,2 @@ +oom 0 +oom_kill 0 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/inspect.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/inspect.txt new file mode 100644 index 00000000..bd62f137 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/inspect.txt @@ -0,0 +1 @@ +restarts=0 oomkilled=false status=running diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/loads.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/loads.txt new file mode 100644 index 00000000..649a4db8 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/loads.txt @@ -0,0 +1,44 @@ +login 200 0.029225 +css 200 0.000990 +login 200 0.030157 +css 200 0.000852 +login 200 0.028203 +css 200 0.000778 +login 200 0.028003 +css 200 0.000780 +login 200 0.042576 +css 200 0.000725 +login 200 0.027264 +css 200 0.000684 +login 200 0.027799 +css 200 0.000653 +login 200 0.028705 +css 200 0.000756 +login 200 0.036473 +css 200 0.000788 +login 200 0.035939 +css 200 0.000807 +conc 200 0.033693 +conc 200 0.061308 +conc 200 0.089760 +conc 200 0.117106 +conc 200 0.141659 +conc 200 0.165625 +conc 200 0.191559 +conc 200 0.218629 +conc 200 0.243975 +conc 200 0.270413 +conc 200 0.273171 +conc 200 0.273157 +conc 200 0.274259 +conc 200 0.269569 +conc 200 0.272369 +conc 200 0.275821 +conc 200 0.412664 +conc 200 0.412170 +conc 200 0.409205 +conc 200 0.407689 +signin 200 0.028778 +dashboard 302 0.002369 +dashboard 302 0.002113 +dashboard 302 0.004232 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/memory.peak b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/memory.peak new file mode 100644 index 00000000..256ead9f --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/memory.peak @@ -0,0 +1 @@ +402657280 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/ready.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/ready.txt new file mode 100644 index 00000000..e2fa9321 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/ready.txt @@ -0,0 +1,2 @@ +ready_after_s=75 code=200 +css=/static/css/workout-manager.7007d84ce531.css diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/server-lines.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/server-lines.txt new file mode 100644 index 00000000..eee3966e --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/server-lines.txt @@ -0,0 +1,4 @@ +Using gunicorn on port 8000... +[2026-10-06 21:19:10 +0200] [11] [INFO] Starting gunicorn 26.1.0 +[2026-10-06 21:19:10 +0200] [11] [INFO] Listening at: http://0.0.0.0:8000 (11) +[2026-10-06 21:19:10 +0200] [12] [INFO] Booting worker with pid: 12 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/signed-in-logout-links.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/signed-in-logout-links.txt new file mode 100644 index 00000000..573541ac --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/signed-in-logout-links.txt @@ -0,0 +1 @@ +0 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/stat-end.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/stat-end.txt new file mode 100644 index 00000000..195cce8c --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/stat-end.txt @@ -0,0 +1,2 @@ +anon 173166592 +file 177762304 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/up.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/up.txt new file mode 100644 index 00000000..4f476d40 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/up.txt @@ -0,0 +1,16 @@ + Network r762_default Creating + Network r762_default Created + Volume "r762_r762_data" Creating + Volume "r762_r762_data" Created + Volume "r762_r762_media" Creating + Volume "r762_r762_media" Created + Volume "r762_r762_static" Creating + Volume "r762_r762_static" Created + Container r762-files Creating + Container r762-wger Creating + Container r762-wger Created + Container r762-files Created + Container r762-wger Starting + Container r762-files Starting + Container r762-files Started + Container r762-wger Started diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/wger.log b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/wger.log new file mode 100644 index 00000000..911f0142 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn1/wger.log @@ -0,0 +1,300 @@ +*** Using settings from env: settings.main +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:17:58,281 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +*** Database is empty or incomplete, setting it up now +*** Using settings from env: settings.main +Operations to perform: + Apply all migrations: account, actstream, allauth_idp_oidc, auth, authtoken, axes, config, contenttypes, core, easy_thumbnails, exercises, gallery, gym, mailer, manager, measurements, mfa, nutrition, sessions, sites, socialaccount, token_blacklist, trophies, weight +Running migrations: + Applying contenttypes.0001_initial... OK + Applying auth.0001_initial... OK + Applying account.0001_initial... OK + Applying account.0002_email_max_length... OK + Applying account.0003_alter_emailaddress_create_unique_verified_email... OK + Applying account.0004_alter_emailaddress_drop_unique_email... OK + Applying account.0005_emailaddress_idx_upper_email... OK + Applying account.0006_emailaddress_lower... OK + Applying account.0007_emailaddress_idx_email... OK + Applying account.0008_emailaddress_unique_primary_email_fixup... OK + Applying account.0009_emailaddress_unique_primary_email... OK + Applying actstream.0001_initial... OK + Applying actstream.0002_remove_action_data... OK + Applying actstream.0003_add_follow_flag... OK + Applying allauth_idp_oidc.0001_initial... OK + Applying allauth_idp_oidc.0002_client_default_scopes... OK + Applying allauth_idp_oidc.0003_client_allow_uri_wildcards... OK + Applying contenttypes.0002_remove_content_type_name... OK + Applying auth.0002_alter_permission_name_max_length... OK + Applying auth.0003_alter_user_email_max_length... OK + Applying auth.0004_alter_user_username_opts... OK + Applying auth.0005_alter_user_last_login_null... OK + Applying auth.0006_require_contenttypes_0002... OK + Applying auth.0007_alter_validators_add_error_messages... OK + Applying auth.0008_alter_user_username_max_length... OK + Applying auth.0009_alter_user_last_name_max_length... OK + Applying auth.0010_alter_group_name_max_length... OK + Applying auth.0011_update_proxy_permissions... OK + Applying auth.0012_alter_user_first_name_max_length... OK + Applying authtoken.0001_initial... OK + Applying authtoken.0002_auto_20160226_1747... OK + Applying authtoken.0003_tokenproxy... OK + Applying authtoken.0004_alter_tokenproxy_options... OK + Applying axes.0001_initial... OK + Applying axes.0002_auto_20151217_2044... OK + Applying axes.0003_auto_20160322_0929... OK + Applying axes.0004_auto_20181024_1538... OK + Applying axes.0005_remove_accessattempt_trusted... OK + Applying axes.0006_remove_accesslog_trusted... OK + Applying axes.0007_alter_accessattempt_unique_together... OK + Applying axes.0008_accessfailurelog... OK + Applying axes.0009_add_session_hash... OK + Applying axes.0010_accessattemptexpiration... OK + Applying gym.0001_initial... OK + Applying core.0001_initial... OK + Applying config.0001_initial... OK + Applying config.0002_auto_20190618_1617... OK + Applying config.0003_delete_languageconfig... OK + Applying sessions.0001_initial... OK + Applying weight.0001_initial... OK + Applying weight.0002_auto_20150604_2139... OK + Applying weight.0003_auto_20160416_1030... OK + Applying weight.0004_multiple_weight_entries_per_day... OK + Applying weight.0005_add_uuid... OK + Applying nutrition.0001_initial... OK + Applying nutrition.0002_auto_20170101_1538... OK + Applying nutrition.0003_auto_20170118_2308... OK + Applying nutrition.0004_auto_20200819_2310... OK + Applying nutrition.0005_logitem... OK + Applying nutrition.0006_auto_20201201_0653... OK + Applying nutrition.0007_auto_20201214_0013... OK + Applying nutrition.0008_auto_20210102_1446... OK + Applying nutrition.0009_meal_name... OK + Applying nutrition.0010_logitem_meal... OK + Applying nutrition.0011_alter_logitem_datetime... OK + Applying nutrition.0012_alter_ingredient_license_author... OK + Applying gym.0002_auto_20151003_1944... OK + Applying gym.0003_auto_20151003_2008... OK + Applying gym.0004_auto_20151003_2357... OK + Applying gym.0005_auto_20151023_1522... OK + Applying gym.0006_auto_20160214_1013... OK + Applying gym.0007_auto_20170123_0920... OK + Applying gym.0008_auto_20190618_1617... OK + Applying exercises.0001_initial... OK + Applying manager.0001_initial... OK + Applying manager.0002_auto_20150202_2040... OK + Applying manager.0004_auto_20150609_1603... OK + Applying core.0002_auto_20141225_1512... OK + Applying core.0003_auto_20150217_1554... OK + Applying core.0004_auto_20150217_1914... OK + Applying core.0005_auto_20151025_2236... OK + Applying core.0006_auto_20151025_2237... OK + Applying core.0007_repetitionunit... OK + Applying core.0008_weightunit... OK + Applying core.0009_auto_20160303_2340... OK + Applying core.0010_auto_20170403_0144... OK + Applying core.0011_auto_20201201_0653... OK + Applying core.0012_auto_20210210_1228... OK + Applying core.0013_auto_20210726_1729... OK + Applying nutrition.0013_ingredient_image... OK + Applying nutrition.0014_license_information... OK + Applying nutrition.0015_alter_ingredient_creation_date_and_more... OK + Applying nutrition.0016_alter_logitem_options_and_more... OK + Applying nutrition.0017_remove_nutritionplan_language_alter_logitem_meal... OK + Applying nutrition.0018_nutritionplan_goal_carbs_nutritionplan_goal_energy_and_more... OK + Applying nutrition.0019_alter_image_license_author_and_more... OK + Applying nutrition.0020_full_text_search... OK + Applying nutrition.0021_add_fibers_field... OK + Applying nutrition.0022_add_remote_id_increase_author_field_length... OK + Applying nutrition.0023_fiber_spelling... OK + Applying nutrition.0024_remove_ingredient_status... OK + Applying nutrition.0025_add_last_image_check... OK + Applying nutrition.0026_add_start_and_end_fields... OK + Applying nutrition.0027_prefill_end_date... OK + Applying nutrition.0028_ingredient_dietary_properties... OK + Applying nutrition.0029_ingredient_nutriscore... OK + Applying manager.0005_auto_20160303_2008... OK + Applying manager.0006_auto_20160303_2138... OK + Applying manager.0007_auto_20160311_2258... OK + Applying manager.0008_auto_20190618_1617... OK + Applying manager.0009_auto_20201202_1559... OK + Applying manager.0010_auto_20210102_1446... OK + Applying manager.0011_remove_set_exercises... OK + Applying manager.0012_auto_20210430_1449... OK + Applying manager.0013_set_comment... OK + Applying manager.0014_auto_20210717_1858... OK + Applying manager.0015_auto_20211028_1113... OK + Applying exercises.0002_auto_20150307_1841... OK + Applying exercises.0003_auto_20160921_2000... OK + Applying exercises.0004_auto_20170404_0114... OK + Applying exercises.0005_auto_20190618_1617... OK + Applying exercises.0006_auto_20201203_0203... OK + Applying exercises.0007_auto_20201203_1042... OK + Applying exercises.0008_exercisebase... OK + Applying exercises.0009_auto_20201211_0139... OK + Applying exercises.0010_auto_20201211_0205... OK + Applying exercises.0011_auto_20201214_0033... OK + Applying exercises.0012_auto_20210327_1219... OK + Applying exercises.0013_auto_20210503_1232... OK + Applying exercises.0014_exerciseimage_style... OK + Applying exercises.0015_exercise_videos... OK + Applying exercises.0016_exercisealias... OK + Applying exercises.0017_muscle_name_en... OK + Applying core.0013_userprofile_email_verified... OK + Applying core.0014_merge_20210818_1735... OK + Applying exercises.0018_delete_pending_exercises... OK + Applying exercises.0019_exercise_crowdsourcing_changes... OK + Applying manager.0016_move_to_exercise_base... OK + Applying manager.0017_alter_workoutlog_exercise_base... OK + Applying exercises.0020_historicalexerciseimage_historicalexercisevideo... OK + Applying exercises.0021_deletionlog... OK + Applying exercises.0022_alter_exercise_license_author_and_more... OK + Applying exercises.0023_make_uuid_unique... OK + Applying exercises.0024_license_information... OK + Applying exercises.0025_rename_update_date_exercise_last_update_and_more... OK + Applying exercises.0026_deletionlog_replaced_by... OK + Applying exercises.0027_alter_deletionlog_replaced_by_and_more... OK + Applying exercises.0028_add_uuid_alias_and_comments... OK + Applying exercises.0029_full_text_search... OK + Applying exercises.0030_increase_author_field_length... OK + Applying exercises.0032_rename_exercise... OK + Applying core.0015_alter_language_short_name... OK + Applying core.0016_alter_language_short_name... OK + Applying manager.0018_flexible_routines... OK + Applying manager.0019_flexible_routines_migration... OK + Applying manager.0021_flexible_routines_cleanup... OK + Applying core.0017_language_full_name_en... OK + Applying core.0018_rounding... OK + Applying core.0019_delete_daysofweek... OK + Applying core.0020_add_trophies_enabled_to_userprofile... OK + Applying core.0021_add_unit_type_to_repetitionunit... OK + Applying nutrition.0030_add_indices... OK + Applying nutrition.0031_start_weight_unit_merge... OK + Applying nutrition.0032_continue_weight_unit_merge... OK + Applying nutrition.0033_finalize_weight_unit_merge... OK + Applying nutrition.0034_ingredient_trigram_gin_index... OK + Applying nutrition.0035_add_uuids... OK + Applying nutrition.0036_alter_image_license_author_and_more... OK + Applying nutrition.0037_powersync_synced_ingredient_tables... OK + Applying measurements.0001_initial... OK + Applying measurements.0002_auto_20210722_1042... OK + Applying measurements.0003_alter_measurement_unique_together_and_more... OK + Applying measurements.0004_add_uuids... OK + Applying measurements.0005_alter_measurement_date... OK + Applying trophies.0001_initial... OK + Applying trophies.0002_load_initial_trophies... OK + Applying manager.0022_alter_rir_type... OK + Applying manager.0023_change_validators... OK + Applying manager.0024_log_and_session_uuid... OK + Applying manager.0025_change_pk_to_uuid... OK + Applying trophies.0003_migrate_context_data_uuids... OK + Applying manager.0026_change_pk_to_uuid_swap... OK + Applying core.0022_move_email_verified_to_emailaddress... OK + Applying core.0023_create_publication... OK + Applying manager.0027_cleanup_fields... OK + Applying manager.0028_backfill_session_day... OK + Applying gallery.0001_initial... OK + Applying exercises.0033_uniqueness_constraint_translations... OK + Applying exercises.0034_add_exercise_image_dimensions... OK + Applying exercises.0035_add_is_ai_generated... OK + Applying exercises.0036_add_markdown_description_field... OK + Applying exercises.0037_replace_variation_with_uuid_field... OK + Applying exercises.0038_sync_model_changes... OK + Applying exercises.0039_translation_alias_trigram_gin_index... OK + Applying exercises.0040_alter_exercise_license_author_and_more... OK + Applying core.0024_backfill_emailaddress... OK + Applying core.0025_remove_unused_fields_in_userprofile... OK + Applying core.0026_alter_userprofile_birthdate_alter_userprofile_height... OK + Applying core.0027_powersync_publication... OK + Applying core.0028_longlivedsession... OK + Applying core.0029_userprofile_timezone... OK + Applying easy_thumbnails.0001_initial... OK + Applying easy_thumbnails.0002_thumbnaildimensions... OK + Applying mailer.0001_initial... OK + Applying mailer.0002_auto_20190618_1617... OK + Applying mailer.0003_auto_20201201_0653... OK + Applying manager.0029_alter_workoutsession_options_and_more... OK + Applying measurements.0006_health_sync... OK + Applying measurements.0007_migrate_weight... OK + Applying measurements.0008_dynamic_type... OK + Applying mfa.0001_initial... OK + Applying mfa.0002_authenticator_timestamps... OK + Applying mfa.0003_authenticator_type_uniq... OK + Applying sites.0001_initial... OK + Applying sites.0002_alter_domain_unique... OK + Applying socialaccount.0001_initial... OK + Applying socialaccount.0002_token_max_lengths... OK + Applying socialaccount.0003_extra_data_default_dict... OK + Applying socialaccount.0004_app_provider_id_settings... OK + Applying socialaccount.0005_socialtoken_nullable_app... OK + Applying socialaccount.0006_alter_socialaccount_extra_data... OK + Applying token_blacklist.0001_initial... OK + Applying token_blacklist.0002_outstandingtoken_jti_hex... OK + Applying token_blacklist.0003_auto_20171017_2007... OK + Applying token_blacklist.0004_auto_20171017_2013... OK + Applying token_blacklist.0005_remove_outstandingtoken_jti... OK + Applying token_blacklist.0006_auto_20171017_2113... OK + Applying token_blacklist.0007_auto_20171017_2214... OK + Applying token_blacklist.0008_migrate_to_bigautofield... OK + Applying token_blacklist.0010_fix_migrate_to_bigautofield... OK + Applying token_blacklist.0011_linearizes_history... OK + Applying token_blacklist.0012_alter_outstandingtoken_user... OK + Applying token_blacklist.0013_alter_blacklistedtoken_options_and_more... OK + Applying weight.0006_delete_weightentry... OK +*** Using settings from env: settings.main +Installed 1 object(s) from 1 fixture(s) +Installed 33 object(s) from 1 fixture(s) +Installed 7 object(s) from 1 fixture(s) +Installed 3 object(s) from 1 fixture(s) +Installed 5 object(s) from 1 fixture(s) +Installed 8 object(s) from 1 fixture(s) +Installed 6 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 12 object(s) from 1 fixture(s) +Installed 16 object(s) from 1 fixture(s) +Installed 8 object(s) from 1 fixture(s) +Installed 872 object(s) from 1 fixture(s) +Installed 2429 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +*** Using settings from env: settings.main +*** Password for user admin was reset to '' +Installed 3 object(s) from 1 fixture(s) +Running in production mode, running collectstatic now +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:18:45,187 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address + +11362 static files copied to '/home/wger/static', 11362 post-processed. +Performing database migrations +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:19:04,477 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +System check identified some issues: + +WARNINGS: +?: (axes.W001) You are using the django-axes cache handler for login attempt tracking. Your cache configuration is however invalid and will not work correctly with django-axes. This can leave security holes in your login systems as attempts are not tracked correctly. Reconfigure settings.AXES_CACHE and settings.CACHES per django-axes configuration documentation. +Operations to perform: + Apply all migrations: account, actstream, allauth_idp_oidc, auth, authtoken, axes, config, contenttypes, core, easy_thumbnails, exercises, gallery, gym, mailer, manager, measurements, mfa, nutrition, sessions, sites, socialaccount, token_blacklist, trophies, weight +Running migrations: + No migrations to apply. + Your models in app(s): 'exercises', 'gallery' have changes that are not yet reflected in a migration, and so won't be applied. + Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them. +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:19:07,339 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +System check identified some issues: + +WARNINGS: +?: (axes.W001) You are using the django-axes cache handler for login attempt tracking. Your cache configuration is however invalid and will not work correctly with django-axes. This can leave security holes in your login systems as attempts are not tracked correctly. Reconfigure settings.AXES_CACHE and settings.CACHES per django-axes configuration documentation. +Set site URL to 127.0.0.1:18000 +Using gunicorn on port 8000... +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:19:09,558 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +[2026-10-06 21:19:10 +0200] [11] [INFO] Starting gunicorn 26.1.0 +[2026-10-06 21:19:10 +0200] [11] [INFO] Listening at: http://0.0.0.0:8000 (11) +[2026-10-06 21:19:10 +0200] [11] [INFO] Using worker: sync +[2026-10-06 21:19:10 +0200] [12] [INFO] Booting worker with pid: 12 +[2026-10-06 21:19:10 +0200] [11] [INFO] Control socket listening at /home/wger/.gunicorn/gunicorn.ctl diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/anon-max b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/anon-max new file mode 100644 index 00000000..0dbc3052 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/anon-max @@ -0,0 +1 @@ +165064704 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/cg.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/cg.txt new file mode 100644 index 00000000..2c04ced2 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/cg.txt @@ -0,0 +1 @@ +cg=/sys/fs/cgroup/system.slice/docker-43e2bbaf77cce593c3c45bb339313ed1b7e4487b86e42096a2b98bc800c0ea2f.scope diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/down.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/down.txt new file mode 100644 index 00000000..e31201ff --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/down.txt @@ -0,0 +1,16 @@ + Container r762-files Stopping + Container r762-wger Stopping + Container r762-files Stopped + Container r762-files Removing + Container r762-files Removed + Container r762-wger Stopped + Container r762-wger Removing + Container r762-wger Removed + Volume r762_r762_static Removing + Volume r762_r762_media Removing + Volume r762_r762_data Removing + Network r762_default Removing + Network r762_default Removed + Volume r762_r762_static Removed + Volume r762_r762_media Removed + Volume r762_r762_data Removed diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/events.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/events.txt new file mode 100644 index 00000000..a0829c28 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/events.txt @@ -0,0 +1,2 @@ +oom 0 +oom_kill 0 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/inspect.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/inspect.txt new file mode 100644 index 00000000..bd62f137 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/inspect.txt @@ -0,0 +1 @@ +restarts=0 oomkilled=false status=running diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/loads.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/loads.txt new file mode 100644 index 00000000..f630e3ee --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/loads.txt @@ -0,0 +1,44 @@ +login 200 0.027505 +css 200 0.001036 +login 200 0.167486 +css 200 0.000875 +login 200 0.035283 +css 200 0.000725 +login 200 0.030707 +css 200 0.000748 +login 200 0.029255 +css 200 0.000693 +login 200 0.027881 +css 200 0.000801 +login 200 0.029632 +css 200 0.000685 +login 200 0.027624 +css 200 0.000707 +login 200 0.028084 +css 200 0.000761 +login 200 0.029816 +css 200 0.000739 +conc 200 0.039183 +conc 200 0.046380 +conc 200 0.072315 +conc 200 0.076656 +conc 200 0.103310 +conc 200 0.097737 +conc 200 0.125782 +conc 200 0.123173 +conc 200 0.147026 +conc 200 0.152308 +conc 200 0.147579 +conc 200 0.151358 +conc 200 0.147262 +conc 200 0.145966 +conc 200 0.145188 +conc 200 0.142898 +conc 200 0.151948 +conc 200 0.150439 +conc 200 0.150489 +conc 200 0.160370 +signin 200 0.036947 +dashboard 302 0.002328 +dashboard 302 0.002854 +dashboard 302 0.001981 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/memory.peak b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/memory.peak new file mode 100644 index 00000000..256ead9f --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/memory.peak @@ -0,0 +1 @@ +402657280 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/ready.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/ready.txt new file mode 100644 index 00000000..d001113a --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/ready.txt @@ -0,0 +1,2 @@ +ready_after_s=72 code=200 +css=/static/css/workout-manager.7007d84ce531.css diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/server-lines.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/server-lines.txt new file mode 100644 index 00000000..d132966c --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/server-lines.txt @@ -0,0 +1,5 @@ +Using gunicorn on port 8000... +[2026-10-06 21:20:40 +0200] [12] [INFO] Starting gunicorn 26.1.0 +[2026-10-06 21:20:40 +0200] [12] [INFO] Listening at: http://0.0.0.0:8000 (12) +[2026-10-06 21:20:40 +0200] [13] [INFO] Booting worker with pid: 13 +[2026-10-06 21:20:40 +0200] [14] [INFO] Booting worker with pid: 14 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/signed-in-logout-links.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/signed-in-logout-links.txt new file mode 100644 index 00000000..573541ac --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/signed-in-logout-links.txt @@ -0,0 +1 @@ +0 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/stat-end.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/stat-end.txt new file mode 100644 index 00000000..1b49e812 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/stat-end.txt @@ -0,0 +1,2 @@ +anon 165064704 +file 183894016 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/up.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/up.txt new file mode 100644 index 00000000..82429d9b --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/up.txt @@ -0,0 +1,16 @@ + Network r762_default Creating + Network r762_default Created + Volume "r762_r762_static" Creating + Volume "r762_r762_static" Created + Volume "r762_r762_data" Creating + Volume "r762_r762_data" Created + Volume "r762_r762_media" Creating + Volume "r762_r762_media" Created + Container r762-files Creating + Container r762-wger Creating + Container r762-files Created + Container r762-wger Created + Container r762-files Starting + Container r762-wger Starting + Container r762-files Started + Container r762-wger Started diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/wger.log b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/wger.log new file mode 100644 index 00000000..f73f4a7e --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-gunicorn2/wger.log @@ -0,0 +1,301 @@ +*** Using settings from env: settings.main +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:19:29,633 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +*** Database is empty or incomplete, setting it up now +*** Using settings from env: settings.main +Operations to perform: + Apply all migrations: account, actstream, allauth_idp_oidc, auth, authtoken, axes, config, contenttypes, core, easy_thumbnails, exercises, gallery, gym, mailer, manager, measurements, mfa, nutrition, sessions, sites, socialaccount, token_blacklist, trophies, weight +Running migrations: + Applying contenttypes.0001_initial... OK + Applying auth.0001_initial... OK + Applying account.0001_initial... OK + Applying account.0002_email_max_length... OK + Applying account.0003_alter_emailaddress_create_unique_verified_email... OK + Applying account.0004_alter_emailaddress_drop_unique_email... OK + Applying account.0005_emailaddress_idx_upper_email... OK + Applying account.0006_emailaddress_lower... OK + Applying account.0007_emailaddress_idx_email... OK + Applying account.0008_emailaddress_unique_primary_email_fixup... OK + Applying account.0009_emailaddress_unique_primary_email... OK + Applying actstream.0001_initial... OK + Applying actstream.0002_remove_action_data... OK + Applying actstream.0003_add_follow_flag... OK + Applying allauth_idp_oidc.0001_initial... OK + Applying allauth_idp_oidc.0002_client_default_scopes... OK + Applying allauth_idp_oidc.0003_client_allow_uri_wildcards... OK + Applying contenttypes.0002_remove_content_type_name... OK + Applying auth.0002_alter_permission_name_max_length... OK + Applying auth.0003_alter_user_email_max_length... OK + Applying auth.0004_alter_user_username_opts... OK + Applying auth.0005_alter_user_last_login_null... OK + Applying auth.0006_require_contenttypes_0002... OK + Applying auth.0007_alter_validators_add_error_messages... OK + Applying auth.0008_alter_user_username_max_length... OK + Applying auth.0009_alter_user_last_name_max_length... OK + Applying auth.0010_alter_group_name_max_length... OK + Applying auth.0011_update_proxy_permissions... OK + Applying auth.0012_alter_user_first_name_max_length... OK + Applying authtoken.0001_initial... OK + Applying authtoken.0002_auto_20160226_1747... OK + Applying authtoken.0003_tokenproxy... OK + Applying authtoken.0004_alter_tokenproxy_options... OK + Applying axes.0001_initial... OK + Applying axes.0002_auto_20151217_2044... OK + Applying axes.0003_auto_20160322_0929... OK + Applying axes.0004_auto_20181024_1538... OK + Applying axes.0005_remove_accessattempt_trusted... OK + Applying axes.0006_remove_accesslog_trusted... OK + Applying axes.0007_alter_accessattempt_unique_together... OK + Applying axes.0008_accessfailurelog... OK + Applying axes.0009_add_session_hash... OK + Applying axes.0010_accessattemptexpiration... OK + Applying gym.0001_initial... OK + Applying core.0001_initial... OK + Applying config.0001_initial... OK + Applying config.0002_auto_20190618_1617... OK + Applying config.0003_delete_languageconfig... OK + Applying sessions.0001_initial... OK + Applying weight.0001_initial... OK + Applying weight.0002_auto_20150604_2139... OK + Applying weight.0003_auto_20160416_1030... OK + Applying weight.0004_multiple_weight_entries_per_day... OK + Applying weight.0005_add_uuid... OK + Applying nutrition.0001_initial... OK + Applying nutrition.0002_auto_20170101_1538... OK + Applying nutrition.0003_auto_20170118_2308... OK + Applying nutrition.0004_auto_20200819_2310... OK + Applying nutrition.0005_logitem... OK + Applying nutrition.0006_auto_20201201_0653... OK + Applying nutrition.0007_auto_20201214_0013... OK + Applying nutrition.0008_auto_20210102_1446... OK + Applying nutrition.0009_meal_name... OK + Applying nutrition.0010_logitem_meal... OK + Applying nutrition.0011_alter_logitem_datetime... OK + Applying nutrition.0012_alter_ingredient_license_author... OK + Applying gym.0002_auto_20151003_1944... OK + Applying gym.0003_auto_20151003_2008... OK + Applying gym.0004_auto_20151003_2357... OK + Applying gym.0005_auto_20151023_1522... OK + Applying gym.0006_auto_20160214_1013... OK + Applying gym.0007_auto_20170123_0920... OK + Applying gym.0008_auto_20190618_1617... OK + Applying exercises.0001_initial... OK + Applying manager.0001_initial... OK + Applying manager.0002_auto_20150202_2040... OK + Applying manager.0004_auto_20150609_1603... OK + Applying core.0002_auto_20141225_1512... OK + Applying core.0003_auto_20150217_1554... OK + Applying core.0004_auto_20150217_1914... OK + Applying core.0005_auto_20151025_2236... OK + Applying core.0006_auto_20151025_2237... OK + Applying core.0007_repetitionunit... OK + Applying core.0008_weightunit... OK + Applying core.0009_auto_20160303_2340... OK + Applying core.0010_auto_20170403_0144... OK + Applying core.0011_auto_20201201_0653... OK + Applying core.0012_auto_20210210_1228... OK + Applying core.0013_auto_20210726_1729... OK + Applying nutrition.0013_ingredient_image... OK + Applying nutrition.0014_license_information... OK + Applying nutrition.0015_alter_ingredient_creation_date_and_more... OK + Applying nutrition.0016_alter_logitem_options_and_more... OK + Applying nutrition.0017_remove_nutritionplan_language_alter_logitem_meal... OK + Applying nutrition.0018_nutritionplan_goal_carbs_nutritionplan_goal_energy_and_more... OK + Applying nutrition.0019_alter_image_license_author_and_more... OK + Applying nutrition.0020_full_text_search... OK + Applying nutrition.0021_add_fibers_field... OK + Applying nutrition.0022_add_remote_id_increase_author_field_length... OK + Applying nutrition.0023_fiber_spelling... OK + Applying nutrition.0024_remove_ingredient_status... OK + Applying nutrition.0025_add_last_image_check... OK + Applying nutrition.0026_add_start_and_end_fields... OK + Applying nutrition.0027_prefill_end_date... OK + Applying nutrition.0028_ingredient_dietary_properties... OK + Applying nutrition.0029_ingredient_nutriscore... OK + Applying manager.0005_auto_20160303_2008... OK + Applying manager.0006_auto_20160303_2138... OK + Applying manager.0007_auto_20160311_2258... OK + Applying manager.0008_auto_20190618_1617... OK + Applying manager.0009_auto_20201202_1559... OK + Applying manager.0010_auto_20210102_1446... OK + Applying manager.0011_remove_set_exercises... OK + Applying manager.0012_auto_20210430_1449... OK + Applying manager.0013_set_comment... OK + Applying manager.0014_auto_20210717_1858... OK + Applying manager.0015_auto_20211028_1113... OK + Applying exercises.0002_auto_20150307_1841... OK + Applying exercises.0003_auto_20160921_2000... OK + Applying exercises.0004_auto_20170404_0114... OK + Applying exercises.0005_auto_20190618_1617... OK + Applying exercises.0006_auto_20201203_0203... OK + Applying exercises.0007_auto_20201203_1042... OK + Applying exercises.0008_exercisebase... OK + Applying exercises.0009_auto_20201211_0139... OK + Applying exercises.0010_auto_20201211_0205... OK + Applying exercises.0011_auto_20201214_0033... OK + Applying exercises.0012_auto_20210327_1219... OK + Applying exercises.0013_auto_20210503_1232... OK + Applying exercises.0014_exerciseimage_style... OK + Applying exercises.0015_exercise_videos... OK + Applying exercises.0016_exercisealias... OK + Applying exercises.0017_muscle_name_en... OK + Applying core.0013_userprofile_email_verified... OK + Applying core.0014_merge_20210818_1735... OK + Applying exercises.0018_delete_pending_exercises... OK + Applying exercises.0019_exercise_crowdsourcing_changes... OK + Applying manager.0016_move_to_exercise_base... OK + Applying manager.0017_alter_workoutlog_exercise_base... OK + Applying exercises.0020_historicalexerciseimage_historicalexercisevideo... OK + Applying exercises.0021_deletionlog... OK + Applying exercises.0022_alter_exercise_license_author_and_more... OK + Applying exercises.0023_make_uuid_unique... OK + Applying exercises.0024_license_information... OK + Applying exercises.0025_rename_update_date_exercise_last_update_and_more... OK + Applying exercises.0026_deletionlog_replaced_by... OK + Applying exercises.0027_alter_deletionlog_replaced_by_and_more... OK + Applying exercises.0028_add_uuid_alias_and_comments... OK + Applying exercises.0029_full_text_search... OK + Applying exercises.0030_increase_author_field_length... OK + Applying exercises.0032_rename_exercise... OK + Applying core.0015_alter_language_short_name... OK + Applying core.0016_alter_language_short_name... OK + Applying manager.0018_flexible_routines... OK + Applying manager.0019_flexible_routines_migration... OK + Applying manager.0021_flexible_routines_cleanup... OK + Applying core.0017_language_full_name_en... OK + Applying core.0018_rounding... OK + Applying core.0019_delete_daysofweek... OK + Applying core.0020_add_trophies_enabled_to_userprofile... OK + Applying core.0021_add_unit_type_to_repetitionunit... OK + Applying nutrition.0030_add_indices... OK + Applying nutrition.0031_start_weight_unit_merge... OK + Applying nutrition.0032_continue_weight_unit_merge... OK + Applying nutrition.0033_finalize_weight_unit_merge... OK + Applying nutrition.0034_ingredient_trigram_gin_index... OK + Applying nutrition.0035_add_uuids... OK + Applying nutrition.0036_alter_image_license_author_and_more... OK + Applying nutrition.0037_powersync_synced_ingredient_tables... OK + Applying measurements.0001_initial... OK + Applying measurements.0002_auto_20210722_1042... OK + Applying measurements.0003_alter_measurement_unique_together_and_more... OK + Applying measurements.0004_add_uuids... OK + Applying measurements.0005_alter_measurement_date... OK + Applying trophies.0001_initial... OK + Applying trophies.0002_load_initial_trophies... OK + Applying manager.0022_alter_rir_type... OK + Applying manager.0023_change_validators... OK + Applying manager.0024_log_and_session_uuid... OK + Applying manager.0025_change_pk_to_uuid... OK + Applying trophies.0003_migrate_context_data_uuids... OK + Applying manager.0026_change_pk_to_uuid_swap... OK + Applying core.0022_move_email_verified_to_emailaddress... OK + Applying core.0023_create_publication... OK + Applying manager.0027_cleanup_fields... OK + Applying manager.0028_backfill_session_day... OK + Applying gallery.0001_initial... OK + Applying exercises.0033_uniqueness_constraint_translations... OK + Applying exercises.0034_add_exercise_image_dimensions... OK + Applying exercises.0035_add_is_ai_generated... OK + Applying exercises.0036_add_markdown_description_field... OK + Applying exercises.0037_replace_variation_with_uuid_field... OK + Applying exercises.0038_sync_model_changes... OK + Applying exercises.0039_translation_alias_trigram_gin_index... OK + Applying exercises.0040_alter_exercise_license_author_and_more... OK + Applying core.0024_backfill_emailaddress... OK + Applying core.0025_remove_unused_fields_in_userprofile... OK + Applying core.0026_alter_userprofile_birthdate_alter_userprofile_height... OK + Applying core.0027_powersync_publication... OK + Applying core.0028_longlivedsession... OK + Applying core.0029_userprofile_timezone... OK + Applying easy_thumbnails.0001_initial... OK + Applying easy_thumbnails.0002_thumbnaildimensions... OK + Applying mailer.0001_initial... OK + Applying mailer.0002_auto_20190618_1617... OK + Applying mailer.0003_auto_20201201_0653... OK + Applying manager.0029_alter_workoutsession_options_and_more... OK + Applying measurements.0006_health_sync... OK + Applying measurements.0007_migrate_weight... OK + Applying measurements.0008_dynamic_type... OK + Applying mfa.0001_initial... OK + Applying mfa.0002_authenticator_timestamps... OK + Applying mfa.0003_authenticator_type_uniq... OK + Applying sites.0001_initial... OK + Applying sites.0002_alter_domain_unique... OK + Applying socialaccount.0001_initial... OK + Applying socialaccount.0002_token_max_lengths... OK + Applying socialaccount.0003_extra_data_default_dict... OK + Applying socialaccount.0004_app_provider_id_settings... OK + Applying socialaccount.0005_socialtoken_nullable_app... OK + Applying socialaccount.0006_alter_socialaccount_extra_data... OK + Applying token_blacklist.0001_initial... OK + Applying token_blacklist.0002_outstandingtoken_jti_hex... OK + Applying token_blacklist.0003_auto_20171017_2007... OK + Applying token_blacklist.0004_auto_20171017_2013... OK + Applying token_blacklist.0005_remove_outstandingtoken_jti... OK + Applying token_blacklist.0006_auto_20171017_2113... OK + Applying token_blacklist.0007_auto_20171017_2214... OK + Applying token_blacklist.0008_migrate_to_bigautofield... OK + Applying token_blacklist.0010_fix_migrate_to_bigautofield... OK + Applying token_blacklist.0011_linearizes_history... OK + Applying token_blacklist.0012_alter_outstandingtoken_user... OK + Applying token_blacklist.0013_alter_blacklistedtoken_options_and_more... OK + Applying weight.0006_delete_weightentry... OK +*** Using settings from env: settings.main +Installed 1 object(s) from 1 fixture(s) +Installed 33 object(s) from 1 fixture(s) +Installed 7 object(s) from 1 fixture(s) +Installed 3 object(s) from 1 fixture(s) +Installed 5 object(s) from 1 fixture(s) +Installed 8 object(s) from 1 fixture(s) +Installed 6 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 12 object(s) from 1 fixture(s) +Installed 16 object(s) from 1 fixture(s) +Installed 8 object(s) from 1 fixture(s) +Installed 872 object(s) from 1 fixture(s) +Installed 2429 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +*** Using settings from env: settings.main +*** Password for user admin was reset to '' +Installed 3 object(s) from 1 fixture(s) +Running in production mode, running collectstatic now +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:20:16,693 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address + +11362 static files copied to '/home/wger/static', 11362 post-processed. +Performing database migrations +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:20:34,441 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +System check identified some issues: + +WARNINGS: +?: (axes.W001) You are using the django-axes cache handler for login attempt tracking. Your cache configuration is however invalid and will not work correctly with django-axes. This can leave security holes in your login systems as attempts are not tracked correctly. Reconfigure settings.AXES_CACHE and settings.CACHES per django-axes configuration documentation. +Operations to perform: + Apply all migrations: account, actstream, allauth_idp_oidc, auth, authtoken, axes, config, contenttypes, core, easy_thumbnails, exercises, gallery, gym, mailer, manager, measurements, mfa, nutrition, sessions, sites, socialaccount, token_blacklist, trophies, weight +Running migrations: + No migrations to apply. + Your models in app(s): 'exercises', 'gallery' have changes that are not yet reflected in a migration, and so won't be applied. + Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them. +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:20:37,318 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +System check identified some issues: + +WARNINGS: +?: (axes.W001) You are using the django-axes cache handler for login attempt tracking. Your cache configuration is however invalid and will not work correctly with django-axes. This can leave security holes in your login systems as attempts are not tracked correctly. Reconfigure settings.AXES_CACHE and settings.CACHES per django-axes configuration documentation. +Set site URL to 127.0.0.1:18000 +Using gunicorn on port 8000... +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:20:39,609 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +[2026-10-06 21:20:40 +0200] [12] [INFO] Starting gunicorn 26.1.0 +[2026-10-06 21:20:40 +0200] [12] [INFO] Listening at: http://0.0.0.0:8000 (12) +[2026-10-06 21:20:40 +0200] [12] [INFO] Using worker: sync +[2026-10-06 21:20:40 +0200] [13] [INFO] Booting worker with pid: 13 +[2026-10-06 21:20:40 +0200] [14] [INFO] Booting worker with pid: 14 +[2026-10-06 21:20:40 +0200] [12] [INFO] Control socket listening at /home/wger/.gunicorn/gunicorn.ctl diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/anon-max b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/anon-max new file mode 100644 index 00000000..c8b52380 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/anon-max @@ -0,0 +1 @@ +210657280 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/cg.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/cg.txt new file mode 100644 index 00000000..04d5ebc1 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/cg.txt @@ -0,0 +1 @@ +cg=/sys/fs/cgroup/system.slice/docker-c9e47eae7d10b29d467f256f0e54de5e695ee74c29b90b43564118361e38bba4.scope diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/down.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/down.txt new file mode 100644 index 00000000..d0aeffd1 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/down.txt @@ -0,0 +1,16 @@ + Container r762-files Stopping + Container r762-wger Stopping + Container r762-files Stopped + Container r762-files Removing + Container r762-files Removed + Container r762-wger Stopped + Container r762-wger Removing + Container r762-wger Removed + Volume r762_r762_data Removing + Volume r762_r762_static Removing + Volume r762_r762_media Removing + Network r762_default Removing + Volume r762_r762_data Removed + Network r762_default Removed + Volume r762_r762_static Removed + Volume r762_r762_media Removed diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/events.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/events.txt new file mode 100644 index 00000000..a0829c28 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/events.txt @@ -0,0 +1,2 @@ +oom 0 +oom_kill 0 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/inspect.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/inspect.txt new file mode 100644 index 00000000..bd62f137 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/inspect.txt @@ -0,0 +1 @@ +restarts=0 oomkilled=false status=running diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/loads.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/loads.txt new file mode 100644 index 00000000..33ef2364 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/loads.txt @@ -0,0 +1,44 @@ +login 200 0.035321 +css 200 0.000971 +login 200 0.031548 +css 200 0.000792 +login 200 0.029122 +css 200 0.000825 +login 200 0.028041 +css 200 0.000757 +login 200 0.027987 +css 200 0.000694 +login 200 0.030125 +css 200 0.000763 +login 200 0.036617 +css 200 0.000838 +login 200 0.036226 +css 200 0.000969 +login 200 0.033944 +css 200 0.000696 +login 200 0.031335 +css 200 0.000720 +conc 200 0.410949 +conc 200 0.443611 +conc 200 0.448561 +conc 200 0.454908 +conc 200 0.461576 +conc 200 0.471760 +conc 200 0.463850 +conc 200 0.480722 +conc 200 0.507565 +conc 200 0.510700 +conc 200 0.349673 +conc 200 0.287485 +conc 200 0.324582 +conc 200 0.310080 +conc 200 0.356899 +conc 200 0.332309 +conc 200 0.340294 +conc 200 0.328755 +conc 200 0.295187 +conc 200 0.294409 +signin 200 0.033918 +dashboard 302 0.002958 +dashboard 302 0.002211 +dashboard 302 0.002689 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/memory.peak b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/memory.peak new file mode 100644 index 00000000..4854b40a --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/memory.peak @@ -0,0 +1 @@ +402653184 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/ready.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/ready.txt new file mode 100644 index 00000000..237d7ee0 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/ready.txt @@ -0,0 +1,2 @@ +ready_after_s=81 code=200 +css=/static/css/workout-manager.7007d84ce531.css diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/server-lines.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/server-lines.txt new file mode 100644 index 00000000..67100a92 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/server-lines.txt @@ -0,0 +1,2 @@ +Using django's development server on port 8000... +Starting development server at http://0.0.0.0:8000/ diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/signed-in-logout-links.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/signed-in-logout-links.txt new file mode 100644 index 00000000..573541ac --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/signed-in-logout-links.txt @@ -0,0 +1 @@ +0 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/stat-end.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/stat-end.txt new file mode 100644 index 00000000..7877ad28 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/stat-end.txt @@ -0,0 +1,2 @@ +anon 210644992 +file 115146752 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/up.txt b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/up.txt new file mode 100644 index 00000000..e194e240 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/up.txt @@ -0,0 +1,16 @@ + Network r762_default Creating + Network r762_default Created + Volume "r762_r762_static" Creating + Volume "r762_r762_static" Created + Volume "r762_r762_media" Creating + Volume "r762_r762_media" Created + Volume "r762_r762_data" Creating + Volume "r762_r762_data" Created + Container r762-wger Creating + Container r762-files Creating + Container r762-wger Created + Container r762-files Created + Container r762-wger Starting + Container r762-files Starting + Container r762-files Started + Container r762-wger Started diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/wger.log b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/wger.log new file mode 100644 index 00000000..3d4a9ccf --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/out-runserver/wger.log @@ -0,0 +1,352 @@ +*** Using settings from env: settings.main +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:16:21,126 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +*** Database is empty or incomplete, setting it up now +*** Using settings from env: settings.main +Operations to perform: + Apply all migrations: account, actstream, allauth_idp_oidc, auth, authtoken, axes, config, contenttypes, core, easy_thumbnails, exercises, gallery, gym, mailer, manager, measurements, mfa, nutrition, sessions, sites, socialaccount, token_blacklist, trophies, weight +Running migrations: + Applying contenttypes.0001_initial... OK + Applying auth.0001_initial... OK + Applying account.0001_initial... OK + Applying account.0002_email_max_length... OK + Applying account.0003_alter_emailaddress_create_unique_verified_email... OK + Applying account.0004_alter_emailaddress_drop_unique_email... OK + Applying account.0005_emailaddress_idx_upper_email... OK + Applying account.0006_emailaddress_lower... OK + Applying account.0007_emailaddress_idx_email... OK + Applying account.0008_emailaddress_unique_primary_email_fixup... OK + Applying account.0009_emailaddress_unique_primary_email... OK + Applying actstream.0001_initial... OK + Applying actstream.0002_remove_action_data... OK + Applying actstream.0003_add_follow_flag... OK + Applying allauth_idp_oidc.0001_initial... OK + Applying allauth_idp_oidc.0002_client_default_scopes... OK + Applying allauth_idp_oidc.0003_client_allow_uri_wildcards... OK + Applying contenttypes.0002_remove_content_type_name... OK + Applying auth.0002_alter_permission_name_max_length... OK + Applying auth.0003_alter_user_email_max_length... OK + Applying auth.0004_alter_user_username_opts... OK + Applying auth.0005_alter_user_last_login_null... OK + Applying auth.0006_require_contenttypes_0002... OK + Applying auth.0007_alter_validators_add_error_messages... OK + Applying auth.0008_alter_user_username_max_length... OK + Applying auth.0009_alter_user_last_name_max_length... OK + Applying auth.0010_alter_group_name_max_length... OK + Applying auth.0011_update_proxy_permissions... OK + Applying auth.0012_alter_user_first_name_max_length... OK + Applying authtoken.0001_initial... OK + Applying authtoken.0002_auto_20160226_1747... OK + Applying authtoken.0003_tokenproxy... OK + Applying authtoken.0004_alter_tokenproxy_options... OK + Applying axes.0001_initial... OK + Applying axes.0002_auto_20151217_2044... OK + Applying axes.0003_auto_20160322_0929... OK + Applying axes.0004_auto_20181024_1538... OK + Applying axes.0005_remove_accessattempt_trusted... OK + Applying axes.0006_remove_accesslog_trusted... OK + Applying axes.0007_alter_accessattempt_unique_together... OK + Applying axes.0008_accessfailurelog... OK + Applying axes.0009_add_session_hash... OK + Applying axes.0010_accessattemptexpiration... OK + Applying gym.0001_initial... OK + Applying core.0001_initial... OK + Applying config.0001_initial... OK + Applying config.0002_auto_20190618_1617... OK + Applying config.0003_delete_languageconfig... OK + Applying sessions.0001_initial... OK + Applying weight.0001_initial... OK + Applying weight.0002_auto_20150604_2139... OK + Applying weight.0003_auto_20160416_1030... OK + Applying weight.0004_multiple_weight_entries_per_day... OK + Applying weight.0005_add_uuid... OK + Applying nutrition.0001_initial... OK + Applying nutrition.0002_auto_20170101_1538... OK + Applying nutrition.0003_auto_20170118_2308... OK + Applying nutrition.0004_auto_20200819_2310... OK + Applying nutrition.0005_logitem... OK + Applying nutrition.0006_auto_20201201_0653... OK + Applying nutrition.0007_auto_20201214_0013... OK + Applying nutrition.0008_auto_20210102_1446... OK + Applying nutrition.0009_meal_name... OK + Applying nutrition.0010_logitem_meal... OK + Applying nutrition.0011_alter_logitem_datetime... OK + Applying nutrition.0012_alter_ingredient_license_author... OK + Applying gym.0002_auto_20151003_1944... OK + Applying gym.0003_auto_20151003_2008... OK + Applying gym.0004_auto_20151003_2357... OK + Applying gym.0005_auto_20151023_1522... OK + Applying gym.0006_auto_20160214_1013... OK + Applying gym.0007_auto_20170123_0920... OK + Applying gym.0008_auto_20190618_1617... OK + Applying exercises.0001_initial... OK + Applying manager.0001_initial... OK + Applying manager.0002_auto_20150202_2040... OK + Applying manager.0004_auto_20150609_1603... OK + Applying core.0002_auto_20141225_1512... OK + Applying core.0003_auto_20150217_1554... OK + Applying core.0004_auto_20150217_1914... OK + Applying core.0005_auto_20151025_2236... OK + Applying core.0006_auto_20151025_2237... OK + Applying core.0007_repetitionunit... OK + Applying core.0008_weightunit... OK + Applying core.0009_auto_20160303_2340... OK + Applying core.0010_auto_20170403_0144... OK + Applying core.0011_auto_20201201_0653... OK + Applying core.0012_auto_20210210_1228... OK + Applying core.0013_auto_20210726_1729... OK + Applying nutrition.0013_ingredient_image... OK + Applying nutrition.0014_license_information... OK + Applying nutrition.0015_alter_ingredient_creation_date_and_more... OK + Applying nutrition.0016_alter_logitem_options_and_more... OK + Applying nutrition.0017_remove_nutritionplan_language_alter_logitem_meal... OK + Applying nutrition.0018_nutritionplan_goal_carbs_nutritionplan_goal_energy_and_more... OK + Applying nutrition.0019_alter_image_license_author_and_more... OK + Applying nutrition.0020_full_text_search... OK + Applying nutrition.0021_add_fibers_field... OK + Applying nutrition.0022_add_remote_id_increase_author_field_length... OK + Applying nutrition.0023_fiber_spelling... OK + Applying nutrition.0024_remove_ingredient_status... OK + Applying nutrition.0025_add_last_image_check... OK + Applying nutrition.0026_add_start_and_end_fields... OK + Applying nutrition.0027_prefill_end_date... OK + Applying nutrition.0028_ingredient_dietary_properties... OK + Applying nutrition.0029_ingredient_nutriscore... OK + Applying manager.0005_auto_20160303_2008... OK + Applying manager.0006_auto_20160303_2138... OK + Applying manager.0007_auto_20160311_2258... OK + Applying manager.0008_auto_20190618_1617... OK + Applying manager.0009_auto_20201202_1559... OK + Applying manager.0010_auto_20210102_1446... OK + Applying manager.0011_remove_set_exercises... OK + Applying manager.0012_auto_20210430_1449... OK + Applying manager.0013_set_comment... OK + Applying manager.0014_auto_20210717_1858... OK + Applying manager.0015_auto_20211028_1113... OK + Applying exercises.0002_auto_20150307_1841... OK + Applying exercises.0003_auto_20160921_2000... OK + Applying exercises.0004_auto_20170404_0114... OK + Applying exercises.0005_auto_20190618_1617... OK + Applying exercises.0006_auto_20201203_0203... OK + Applying exercises.0007_auto_20201203_1042... OK + Applying exercises.0008_exercisebase... OK + Applying exercises.0009_auto_20201211_0139... OK + Applying exercises.0010_auto_20201211_0205... OK + Applying exercises.0011_auto_20201214_0033... OK + Applying exercises.0012_auto_20210327_1219... OK + Applying exercises.0013_auto_20210503_1232... OK + Applying exercises.0014_exerciseimage_style... OK + Applying exercises.0015_exercise_videos... OK + Applying exercises.0016_exercisealias... OK + Applying exercises.0017_muscle_name_en... OK + Applying core.0013_userprofile_email_verified... OK + Applying core.0014_merge_20210818_1735... OK + Applying exercises.0018_delete_pending_exercises... OK + Applying exercises.0019_exercise_crowdsourcing_changes... OK + Applying manager.0016_move_to_exercise_base... OK + Applying manager.0017_alter_workoutlog_exercise_base... OK + Applying exercises.0020_historicalexerciseimage_historicalexercisevideo... OK + Applying exercises.0021_deletionlog... OK + Applying exercises.0022_alter_exercise_license_author_and_more... OK + Applying exercises.0023_make_uuid_unique... OK + Applying exercises.0024_license_information... OK + Applying exercises.0025_rename_update_date_exercise_last_update_and_more... OK + Applying exercises.0026_deletionlog_replaced_by... OK + Applying exercises.0027_alter_deletionlog_replaced_by_and_more... OK + Applying exercises.0028_add_uuid_alias_and_comments... OK + Applying exercises.0029_full_text_search... OK + Applying exercises.0030_increase_author_field_length... OK + Applying exercises.0032_rename_exercise... OK + Applying core.0015_alter_language_short_name... OK + Applying core.0016_alter_language_short_name... OK + Applying manager.0018_flexible_routines... OK + Applying manager.0019_flexible_routines_migration... OK + Applying manager.0021_flexible_routines_cleanup... OK + Applying core.0017_language_full_name_en... OK + Applying core.0018_rounding... OK + Applying core.0019_delete_daysofweek... OK + Applying core.0020_add_trophies_enabled_to_userprofile... OK + Applying core.0021_add_unit_type_to_repetitionunit... OK + Applying nutrition.0030_add_indices... OK + Applying nutrition.0031_start_weight_unit_merge... OK + Applying nutrition.0032_continue_weight_unit_merge... OK + Applying nutrition.0033_finalize_weight_unit_merge... OK + Applying nutrition.0034_ingredient_trigram_gin_index... OK + Applying nutrition.0035_add_uuids... OK + Applying nutrition.0036_alter_image_license_author_and_more... OK + Applying nutrition.0037_powersync_synced_ingredient_tables... OK + Applying measurements.0001_initial... OK + Applying measurements.0002_auto_20210722_1042... OK + Applying measurements.0003_alter_measurement_unique_together_and_more... OK + Applying measurements.0004_add_uuids... OK + Applying measurements.0005_alter_measurement_date... OK + Applying trophies.0001_initial... OK + Applying trophies.0002_load_initial_trophies... OK + Applying manager.0022_alter_rir_type... OK + Applying manager.0023_change_validators... OK + Applying manager.0024_log_and_session_uuid... OK + Applying manager.0025_change_pk_to_uuid... OK + Applying trophies.0003_migrate_context_data_uuids... OK + Applying manager.0026_change_pk_to_uuid_swap... OK + Applying core.0022_move_email_verified_to_emailaddress... OK + Applying core.0023_create_publication... OK + Applying manager.0027_cleanup_fields... OK + Applying manager.0028_backfill_session_day... OK + Applying gallery.0001_initial... OK + Applying exercises.0033_uniqueness_constraint_translations... OK + Applying exercises.0034_add_exercise_image_dimensions... OK + Applying exercises.0035_add_is_ai_generated... OK + Applying exercises.0036_add_markdown_description_field... OK + Applying exercises.0037_replace_variation_with_uuid_field... OK + Applying exercises.0038_sync_model_changes... OK + Applying exercises.0039_translation_alias_trigram_gin_index... OK + Applying exercises.0040_alter_exercise_license_author_and_more... OK + Applying core.0024_backfill_emailaddress... OK + Applying core.0025_remove_unused_fields_in_userprofile... OK + Applying core.0026_alter_userprofile_birthdate_alter_userprofile_height... OK + Applying core.0027_powersync_publication... OK + Applying core.0028_longlivedsession... OK + Applying core.0029_userprofile_timezone... OK + Applying easy_thumbnails.0001_initial... OK + Applying easy_thumbnails.0002_thumbnaildimensions... OK + Applying mailer.0001_initial... OK + Applying mailer.0002_auto_20190618_1617... OK + Applying mailer.0003_auto_20201201_0653... OK + Applying manager.0029_alter_workoutsession_options_and_more... OK + Applying measurements.0006_health_sync... OK + Applying measurements.0007_migrate_weight... OK + Applying measurements.0008_dynamic_type... OK + Applying mfa.0001_initial... OK + Applying mfa.0002_authenticator_timestamps... OK + Applying mfa.0003_authenticator_type_uniq... OK + Applying sites.0001_initial... OK + Applying sites.0002_alter_domain_unique... OK + Applying socialaccount.0001_initial... OK + Applying socialaccount.0002_token_max_lengths... OK + Applying socialaccount.0003_extra_data_default_dict... OK + Applying socialaccount.0004_app_provider_id_settings... OK + Applying socialaccount.0005_socialtoken_nullable_app... OK + Applying socialaccount.0006_alter_socialaccount_extra_data... OK + Applying token_blacklist.0001_initial... OK + Applying token_blacklist.0002_outstandingtoken_jti_hex... OK + Applying token_blacklist.0003_auto_20171017_2007... OK + Applying token_blacklist.0004_auto_20171017_2013... OK + Applying token_blacklist.0005_remove_outstandingtoken_jti... OK + Applying token_blacklist.0006_auto_20171017_2113... OK + Applying token_blacklist.0007_auto_20171017_2214... OK + Applying token_blacklist.0008_migrate_to_bigautofield... OK + Applying token_blacklist.0010_fix_migrate_to_bigautofield... OK + Applying token_blacklist.0011_linearizes_history... OK + Applying token_blacklist.0012_alter_outstandingtoken_user... OK + Applying token_blacklist.0013_alter_blacklistedtoken_options_and_more... OK + Applying weight.0006_delete_weightentry... OK +*** Using settings from env: settings.main +Installed 1 object(s) from 1 fixture(s) +Installed 33 object(s) from 1 fixture(s) +Installed 7 object(s) from 1 fixture(s) +Installed 3 object(s) from 1 fixture(s) +Installed 5 object(s) from 1 fixture(s) +Installed 8 object(s) from 1 fixture(s) +Installed 6 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 12 object(s) from 1 fixture(s) +Installed 16 object(s) from 1 fixture(s) +Installed 8 object(s) from 1 fixture(s) +Installed 872 object(s) from 1 fixture(s) +Installed 2429 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +Installed 1 object(s) from 1 fixture(s) +*** Using settings from env: settings.main +*** Password for user admin was reset to '' +Installed 3 object(s) from 1 fixture(s) +Running in production mode, running collectstatic now +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:17:08,412 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address + +11362 static files copied to '/home/wger/static', 11362 post-processed. +Performing database migrations +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:17:30,632 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +System check identified some issues: + +WARNINGS: +?: (axes.W001) You are using the django-axes cache handler for login attempt tracking. Your cache configuration is however invalid and will not work correctly with django-axes. This can leave security holes in your login systems as attempts are not tracked correctly. Reconfigure settings.AXES_CACHE and settings.CACHES per django-axes configuration documentation. +Operations to perform: + Apply all migrations: account, actstream, allauth_idp_oidc, auth, authtoken, axes, config, contenttypes, core, easy_thumbnails, exercises, gallery, gym, mailer, manager, measurements, mfa, nutrition, sessions, sites, socialaccount, token_blacklist, trophies, weight +Running migrations: + No migrations to apply. + Your models in app(s): 'exercises', 'gallery' have changes that are not yet reflected in a migration, and so won't be applied. + Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them. +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:17:33,736 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +System check identified some issues: + +WARNINGS: +?: (axes.W001) You are using the django-axes cache handler for login attempt tracking. Your cache configuration is however invalid and will not work correctly with django-axes. This can leave security holes in your login systems as attempts are not tracked correctly. Reconfigure settings.AXES_CACHE and settings.CACHES per django-axes configuration documentation. +Set site URL to 127.0.0.1:18000 +Using django's development server on port 8000... +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:17:36,005 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +/home/wger/src/settings/main.py:117: UserWarning: JWT_PRIVATE_KEY / JWT_PUBLIC_KEY are not set. JWT authentication will not work until you run `./manage.py generate-jwt-keys` and add the output to your environment. + warnings.warn( +level=INFO ts=2026-10-06 21:17:37,185 module=apps path=/home/wger/.local/lib/python3.12/site-packages/axes/apps.py line=53 message=AXES: BEGIN version 8.3.1, blocking by ip_address +level=INFO ts=2026-10-06 21:17:37,196 module=autoreload path=/home/wger/.local/lib/python3.12/site-packages/django/utils/autoreload.py line=681 message=Watching for file changes with StatReloader +Performing system checks... + +System check identified some issues: + +WARNINGS: +?: (axes.W001) You are using the django-axes cache handler for login attempt tracking. Your cache configuration is however invalid and will not work correctly with django-axes. This can leave security holes in your login systems as attempts are not tracked correctly. Reconfigure settings.AXES_CACHE and settings.CACHES per django-axes configuration documentation. + +System check identified 1 issue (0 silenced). +October 06, 2026 - 21:17:38 +Django version 6.0.8, using settings 'settings.main' +Starting development server at http://0.0.0.0:8000/ +Quit the server with CONTROL-C. + +WARNING: This is a development server. Do not use it in a production setting. Use a production WSGI or ASGI server instead. +For more information on production servers see: https://docs.djangoproject.com/en/6.0/howto/deployment/ +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:39] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "GET /en/user/login HTTP/1.1" 200 43815 +[06/Oct/2026 21:17:40] "POST /en/user/login HTTP/1.1" 200 44014 +[06/Oct/2026 21:17:40] "GET /en/dashboard HTTP/1.1" 302 0 +[06/Oct/2026 21:17:40] "GET /en/dashboard HTTP/1.1" 302 0 +[06/Oct/2026 21:17:40] "GET /en/dashboard HTTP/1.1" 302 0 +[06/Oct/2026 21:17:40] "GET /en/dashboard HTTP/1.1" 302 0 diff --git a/documentation/audits/night-burndown-2026-10-06/r762/bench/run.sh b/documentation/audits/night-burndown-2026-10-06/r762/bench/run.sh new file mode 100755 index 00000000..c428e8e8 --- /dev/null +++ b/documentation/audits/night-burndown-2026-10-06/r762/bench/run.sh @@ -0,0 +1,36 @@ +#!/bin/bash +# usage: run.sh