$ /nix/store/wkkwxc04gdw6b263l1h29pjarjnjdyb6-coreutils-9.8/bin/timeout --kill-after=15s 1800s /nix/store/99b1z08awpxj8b6mzggn59gp1shljnff-nix-2.34.5/bin/nix --extra-experimental-features nix-command --extra-experimental-features flakes build --no-link git+https://codeberg.org/mtlynch/little-moments?ref=email-auth&rev=78ddd619a908f4a8b4c616ee369813d64d7f9ecf#packages.x86_64-linux.e2e-tests --print-build-logs error (ignored): SQLite database '/var/cache/private/nix-ci-worker/eval-cache-v6/3fb2ed600f9f59e0f4e291628d5a1ac768d0f0a64c1ca1972f578e746705a071.sqlite' is busy these 3 derivations will be built: /nix/store/3h6b1a137ggyyk7856k1wws4sfnfmcjs-import-from-tinybeans-0.0.1.drv /nix/store/g12jw3nyhjabn41in7hdlqif08lvcmkg-little-moments-dev-0.0.1.drv /nix/store/im08dpc4znpfk15k53na4cbly7hvcplr-little-moments-e2e-0.0.1.drv building '/nix/store/g12jw3nyhjabn41in7hdlqif08lvcmkg-little-moments-dev-0.0.1.drv'... little-moments-dev> Running phase: unpackPhase little-moments-dev> unpacking source archive /nix/store/0xx485ddvjiq9xxz0dqs4c74r7k547w5-source little-moments-dev> source root is source little-moments-dev> Running phase: patchPhase little-moments-dev> Running phase: updateAutotoolsGnuConfigScriptsPhase little-moments-dev> Running phase: configurePhase little-moments-dev> Running phase: buildPhase little-moments-dev> Building subPackage ./cmd/app little-moments-dev> Running phase: checkPhase little-moments-dev> ? codeberg.org/mtlynch/little-moments/cmd/app [no test files] little-moments-dev> Running phase: installPhase little-moments-dev> Running phase: fixupPhase little-moments-dev> shrinking RPATHs of ELF executables and libraries in /nix/store/2l9h984ii93r2822lj3671iad3fzdmjz-little-moments-dev-0.0.1 little-moments-dev> shrinking /nix/store/2l9h984ii93r2822lj3671iad3fzdmjz-little-moments-dev-0.0.1/bin/app-dev little-moments-dev> patchelf: cannot find section '.dynamic'. The input file is most likely statically linked little-moments-dev> checking for references to /build/ in /nix/store/2l9h984ii93r2822lj3671iad3fzdmjz-little-moments-dev-0.0.1... little-moments-dev> patchelf: cannot find section '.dynamic'. The input file is most likely statically linked little-moments-dev> patching script interpreter paths in /nix/store/2l9h984ii93r2822lj3671iad3fzdmjz-little-moments-dev-0.0.1 little-moments-dev> stripping (with command strip and flags -S -p) in /nix/store/2l9h984ii93r2822lj3671iad3fzdmjz-little-moments-dev-0.0.1/bin little-moments-dev (post)> Uploading paths from nix-ci to the NixCI cache /nix/store/2l9h984ii93r2822lj3671iad3fzdmjz-little-moments-dev-0.0.1 little-moments-dev (post)> warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead little-moments-dev (post)> copying 1 paths... little-moments-dev (post)> copying path '/nix/store/2l9h984ii93r2822lj3671iad3fzdmjz-little-moments-dev-0.0.1' to 'https://cache.nix-ci.com'... little-moments-dev (post)> warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead little-moments-dev (post)> copying 0 paths... building '/nix/store/im08dpc4znpfk15k53na4cbly7hvcplr-little-moments-e2e-0.0.1.drv'... little-moments-e2e> Running phase: unpackPhase little-moments-e2e> unpacking source archive /nix/store/0xx485ddvjiq9xxz0dqs4c74r7k547w5-source little-moments-e2e> source root is source little-moments-e2e> Running phase: patchPhase little-moments-e2e> Executing npmConfigHook little-moments-e2e> Configuring npm little-moments-e2e> Validating consistency between /build/source/package-lock.json and /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps/package-lock.json little-moments-e2e> Setting npm_config_cache to /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps little-moments-e2e> Installing dependencies little-moments-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. little-moments-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm. little-moments-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm. little-moments-e2e> little-moments-e2e> added 100 packages, and audited 101 packages in 669ms little-moments-e2e> little-moments-e2e> 25 packages are looking for funding little-moments-e2e> run `npm fund` for details little-moments-e2e> little-moments-e2e> found 0 vulnerabilities little-moments-e2e> patching script interpreter paths in node_modules little-moments-e2e> node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" little-moments-e2e> node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh" little-moments-e2e> node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" little-moments-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. little-moments-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm. little-moments-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm. little-moments-e2e> rebuilt dependencies successfully little-moments-e2e> patching script interpreter paths in node_modules little-moments-e2e> Finished npmConfigHook little-moments-e2e> Running phase: updateAutotoolsGnuConfigScriptsPhase little-moments-e2e> Running phase: configurePhase little-moments-e2e> no configure script, doing nothing little-moments-e2e> Running phase: buildPhase little-moments-e2e> no Makefile or custom buildPhase, doing nothing little-moments-e2e> Running phase: checkPhase little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-full.avif little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied 2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied 2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-150px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 4c6f4290-b04c-45ec-a40b-b79bab5d7774-full.mp4 little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied 4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied 4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-150px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 2b553229-c005-4ef1-977c-e2fd9b9b1a67-full.mp4 little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied 2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied 2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-150px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 7bad2784-330f-4a6c-9f21-c22c97729d57-full.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied 7bad2784-330f-4a6c-9f21-c22c97729d57-850px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 7bad2784-330f-4a6c-9f21-c22c97729d57-150px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied c4827a1f-f77e-4365-8013-1d4d0e9c0858-full.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied c4827a1f-f77e-4365-8013-1d4d0e9c0858-850px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied c4827a1f-f77e-4365-8013-1d4d0e9c0858-150px.jpg little-moments-e2e> 2026/04/13 00:11:23 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from /build/source/test-imported-media/test-store.db little-moments-e2e> 2026/04/13 00:11:24 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:140: wrote /build/source/test-imported-media/test-store.db little-moments-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. little-moments-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm. little-moments-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm. little-moments-e2e> [WebServer] 2026/04/13 00:11:25 codeberg.org/mtlynch/little-moments/cmd/app/main.go:20: starting little-moments server little-moments-e2e> [WebServer] 2026/04/13 00:11:25 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from /build/source/test-imported-media/test-store.db little-moments-e2e> [WebServer] 2026/04/13 00:11:26 codeberg.org/mtlynch/little-moments/handlers/csp.go:43: CSP media origin: "" little-moments-e2e> [WebServer] 2026/04/13 00:11:26 codeberg.org/mtlynch/little-moments/cmd/app/main.go:78: listening on http://localhost:6001 little-moments-e2e> little-moments-e2e> Running 14 tests using 1 worker little-moments-e2e> Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 303 33 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:27 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /logout 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6740 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /logout 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 303 33 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6740 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:29 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:30 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1000 200 7974 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/swipe-events.js 200 1608 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-full.avif 200 262753 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6740 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1001 200 9330 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/swipe-events.js 200 1608 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-full.mp4 206 13136 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-full.avif 200 262753 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1002 200 8266 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-full.mp4 206 12623 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-850px.jpg 200 14082 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1003 200 9708 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-850px.jpg 200 14295 little-moments-e2e> [WebServer] 2026/04/13 00:11:31 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1002 200 8266 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1002 200 8266 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/swipe-events.js 200 1608 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-full.mp4 206 12623 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-850px.jpg 200 14082 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1003 200 9708 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-850px.jpg 200 14295 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1002 200 8258 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:32 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1002 200 8258 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/swipe-events.js 200 1608 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-850px.jpg 200 14082 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-full.mp4 206 12623 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1003 200 9708 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-850px.jpg 200 14295 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1002 200 8258 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:33 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6740 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1000 200 7966 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/swipe-events.js 200 1608 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-full.avif 200 262753 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1001 200 9330 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-full.mp4 206 13136 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1004 200 8076 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-850px.jpg 200 14295 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-850px.jpg 200 14082 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6740 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1004 200 8076 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/swipe-events.js 200 1608 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-850px.jpg 200 14295 little-moments-e2e> [WebServer] 2026/04/13 00:11:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-850px.jpg 200 14082 little-moments-e2e> ·[WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login 200 2970 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/store/sqlite/login_tokens.go:17: inserting login token for user 700001 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/login_dev.go:47: login: generated token for homer@example.com (user 700001) little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /login/confirm 200 2840 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/login.go:95: login confirm: consumed token for user 700001 (homer@example.com) little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /login/confirm 303 0 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2fc8d5e3-2c3e-434c-ac8b-af6b95003e5a-250px.jpg 200 3217 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/4c6f4290-b04c-45ec-a40b-b79bab5d7774-thumb-250px.jpg 200 3190 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/2b553229-c005-4ef1-977c-e2fd9b9b1a67-thumb-250px.jpg 200 3063 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-250px.jpg 200 3228 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-250px.jpg 200 3134 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 6736 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /m/1003 200 9724 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/swipe-events.js 200 1608 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/7bad2784-330f-4a6c-9f21-c22c97729d57-850px.jpg 200 14082 little-moments-e2e> [WebServer] 2026/04/13 00:11:35 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /media/c4827a1f-f77e-4365-8013-1d4d0e9c0858-850px.jpg 200 14295 little-moments-e2e> · little-moments-e2e> 14 passed (10.0s) little-moments-e2e> Running phase: installPhase little-moments-e2e> Running phase: fixupPhase little-moments-e2e> shrinking RPATHs of ELF executables and libraries in /nix/store/20jcnz9br6fx7w0wy0bj9nvdi9jvc30h-little-moments-e2e-0.0.1 little-moments-e2e> checking for references to /build/ in /nix/store/20jcnz9br6fx7w0wy0bj9nvdi9jvc30h-little-moments-e2e-0.0.1... little-moments-e2e> patching script interpreter paths in /nix/store/20jcnz9br6fx7w0wy0bj9nvdi9jvc30h-little-moments-e2e-0.0.1 little-moments-e2e (post)> Uploading paths from nix-ci to the NixCI cache /nix/store/20jcnz9br6fx7w0wy0bj9nvdi9jvc30h-little-moments-e2e-0.0.1 little-moments-e2e (post)> warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead little-moments-e2e (post)> copying 1 paths... little-moments-e2e (post)> copying path '/nix/store/20jcnz9br6fx7w0wy0bj9nvdi9jvc30h-little-moments-e2e-0.0.1' to 'https://cache.nix-ci.com'... little-moments-e2e (post)> warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead little-moments-e2e (post)> copying 2 paths... little-moments-e2e (post)> copying path '/nix/store/1yl8n8z03wgj2nqccifa86q7ppif82dc-little-moments-e2e-0.0.1-npm-deps.drv' to 'https://cache.nix-ci.com'... little-moments-e2e (post)> copying path '/nix/store/im08dpc4znpfk15k53na4cbly7hvcplr-little-moments-e2e-0.0.1.drv' to 'https://cache.nix-ci.com'...