0.01 s
$ /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=prefetch&rev=4677f66da05a0b53400fe46ae41c5f1bedc7de9d#packages.x86_64-linux.e2e-tests --print-build-logs
2.80 s
this derivation will be built:
2.80 s
/nix/store/x758jd93qiaw54i0d18l2r36sv500727-little-moments-e2e-0.0.1.drv
3.11 s
building '/nix/store/x758jd93qiaw54i0d18l2r36sv500727-little-moments-e2e-0.0.1.drv'...
3.15 s
little-moments-e2e> Running phase: unpackPhase
3.15 s
little-moments-e2e> unpacking source archive /nix/store/hdz8g96s4zssw3rwfzw7qgzy0fkzxnwf-source
3.17 s
little-moments-e2e> source root is source
3.17 s
little-moments-e2e> Running phase: patchPhase
3.18 s
little-moments-e2e> Executing npmConfigHook
3.18 s
little-moments-e2e> Configuring npm
3.18 s
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
3.20 s
little-moments-e2e> Setting npm_config_cache to /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps
3.20 s
little-moments-e2e> Installing dependencies
3.27 s
little-moments-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
3.27 s
little-moments-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
3.27 s
little-moments-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
3.86 s
little-moments-e2e>
3.86 s
little-moments-e2e> added 100 packages, and audited 101 packages in 602ms
3.86 s
little-moments-e2e>
3.86 s
little-moments-e2e> 25 packages are looking for funding
3.86 s
little-moments-e2e> run `npm fund` for details
3.86 s
little-moments-e2e>
3.86 s
little-moments-e2e> found 0 vulnerabilities
3.90 s
little-moments-e2e> patching script interpreter paths in node_modules
3.91 s
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"
3.92 s
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"
3.93 s
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"
3.94 s
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"
3.94 s
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"
3.95 s
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"
3.96 s
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"
3.97 s
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"
3.98 s
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"
3.98 s
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"
3.99 s
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"
4.00 s
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"
4.01 s
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"
4.01 s
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"
4.02 s
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"
4.03 s
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"
4.04 s
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"
4.05 s
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"
4.05 s
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"
4.06 s
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"
4.13 s
little-moments-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
4.13 s
little-moments-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
4.13 s
little-moments-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
4.31 s
little-moments-e2e> rebuilt dependencies successfully
4.32 s
little-moments-e2e> patching script interpreter paths in node_modules
4.38 s
little-moments-e2e> Finished npmConfigHook
4.38 s
little-moments-e2e> Running phase: updateAutotoolsGnuConfigScriptsPhase
4.40 s
little-moments-e2e> Running phase: configurePhase
4.42 s
little-moments-e2e> no configure script, doing nothing
4.42 s
little-moments-e2e> Running phase: buildPhase
4.42 s
little-moments-e2e> no Makefile or custom buildPhase, doing nothing
4.43 s
little-moments-e2e> Running phase: checkPhase
4.50 s
little-moments-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
4.50 s
little-moments-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
4.50 s
little-moments-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
5.46 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/cmd/app/main.go:19: starting little-moments server
5.48 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from testdata/store.db
6.09 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/handlers/csp.go:43: CSP media origin: ""
6.09 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/cmd/app/main.go:72: listening on http://localhost:6001
6.33 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /api/debug/db/per-session 404 19
6.39 s
little-moments-e2e>
6.39 s
little-moments-e2e> Running 10 tests using 1 worker
7.12 s
little-moments-e2e> Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
7.22 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3292
7.22 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
7.22 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
7.22 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
7.22 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
7.22 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 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
7.22 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
7.23 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
7.23 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
7.23 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
13.25 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
13.34 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3292
13.34 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
13.34 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
13.35 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
13.35 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 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
13.35 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
13.35 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
13.35 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
13.35 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
13.35 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
19.29 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
19.39 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3296
19.39 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 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
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
19.40 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
25.43 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
25.51 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06: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
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06: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
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
25.52 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
31.45 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06: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
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06: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
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
31.55 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
31.56 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
31.56 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
37.58 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 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
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
37.67 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
43.69 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
43.78 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
43.78 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 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
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
43.79 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
43.87 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
43.87 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 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
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
43.88 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
49.73 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
49.82 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
49.82 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 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
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
49.83 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
55.85 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
55.94 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
55.94 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 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
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
55.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
61.86 s
little-moments-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
61.94 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
61.94 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
61.94 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
61.94 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
61.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 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
61.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
61.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
61.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
61.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
61.95 s
little-moments-e2e> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.16 s
little-moments-e2e> T
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 1) [chromium] › e2e/browse.spec.ts:66:7 › Browse media › shows the imported media entries on the browse page
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: expect(locator).toHaveCount(expected) failed
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Locator: getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> Expected: 5
67.17 s
little-moments-e2e> Received: 0
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - Expect "toHaveCount" with timeout 5000ms
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> 9 × locator resolved to 0 elements
67.17 s
little-moments-e2e> - unexpected value "0"
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 69 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 70 |
67.17 s
little-moments-e2e> > 71 | await expect(mediaLinks).toHaveCount(5);
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 72 | await expect(mediaLinks.nth(0)).toBeVisible();
67.17 s
little-moments-e2e> 73 | await expect(mediaLinks.nth(1)).toBeVisible();
67.17 s
little-moments-e2e> 74 | await expect(mediaLinks.nth(2)).toBeVisible();
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:71:30
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 2) [chromium] › e2e/browse.spec.ts:79:7 › Browse media › shows media thumbnails from newest to oldest
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: expect(locator).toHaveCount(expected) failed
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Locator: getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> Expected: 5
67.17 s
little-moments-e2e> Received: 0
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - Expect "toHaveCount" with timeout 5000ms
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> 9 × locator resolved to 0 elements
67.17 s
little-moments-e2e> - unexpected value "0"
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 80 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 81 |
67.17 s
little-moments-e2e> > 82 | await expect(mediaLinks).toHaveCount(5);
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 83 | await expect(mediaLinks.nth(0)).toHaveAttribute("href", "/m/1000");
67.17 s
little-moments-e2e> 84 | await expect(mediaLinks.nth(1)).toHaveAttribute("href", "/m/1001");
67.17 s
little-moments-e2e> 85 | await expect(mediaLinks.nth(2)).toHaveAttribute("href", "/m/1002");
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:82:30
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 3) [chromium] › e2e/browse.spec.ts:90:7 › Browse media › shows a video indicator on video thumbnails only
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: expect(locator).toHaveCount(expected) failed
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Locator: getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> Expected: 5
67.17 s
little-moments-e2e> Received: 0
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - Expect "toHaveCount" with timeout 5000ms
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> 9 × locator resolved to 0 elements
67.17 s
little-moments-e2e> - unexpected value "0"
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 91 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 92 |
67.17 s
little-moments-e2e> > 93 | await expect(mediaLinks).toHaveCount(5);
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 94 | await expect(
67.17 s
little-moments-e2e> 95 | mediaLinks.nth(0).getByTestId("video-thumbnail-indicator"),
67.17 s
little-moments-e2e> 96 | ).toHaveCount(0);
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:93:30
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 4) [chromium] › e2e/browse.spec.ts:111:7 › Browse media › opens the first entry from the browse page and shows its details
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: locator.click: Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link').first()
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 114 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 115 |
67.17 s
little-moments-e2e> > 116 | await mediaLinks.nth(0).click();
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 117 |
67.17 s
little-moments-e2e> 118 | const content = page.getByRole("main");
67.17 s
little-moments-e2e> 119 |
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:116:29
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 5) [chromium] › e2e/browse.spec.ts:133:7 › Browse media › moves through adjacent entries with Previous and Next links
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: locator.click: Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link').nth(1)
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 136 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 137 |
67.17 s
little-moments-e2e> > 138 | await mediaLinks.nth(1).click();
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 139 | await page.getByRole("main").getByRole("link", { name: "Next" }).click();
67.17 s
little-moments-e2e> 140 |
67.17 s
little-moments-e2e> 141 | const content = page.getByRole("main");
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:138:29
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 6) [chromium] › e2e/browse.spec.ts:164:7 › Browse media › moves through adjacent entries with left and right arrow keys
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: locator.click: Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link').nth(2)
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 167 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 168 |
67.17 s
little-moments-e2e> > 169 | await mediaLinks.nth(2).click();
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 170 |
67.17 s
little-moments-e2e> 171 | await expect(page).toHaveURL("/m/1002");
67.17 s
little-moments-e2e> 172 | await expect(page.getByRole("main")).toContainText("test video #1");
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:169:29
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 7) [chromium] › e2e/browse.spec.ts:185:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: locator.click: Test ended.
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link').nth(2)
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 193 |
67.17 s
little-moments-e2e> 194 | await mobilePage.goto("/");
67.17 s
little-moments-e2e> > 195 | await mobilePage.getByRole("main").getByRole("link").nth(2).click();
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 196 | await expect(mobilePage).toHaveURL("/m/1002");
67.17 s
little-moments-e2e> 197 | await expect(mobilePage.getByRole("main")).toContainText("test video #1");
67.17 s
little-moments-e2e> 198 |
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:195:65
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 8) [chromium] › e2e/browse.spec.ts:212:7 › Browse media › shows the current media position within the full list
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: locator.click: Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link').first()
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 215 | let mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 216 |
67.17 s
little-moments-e2e> > 217 | await mediaLinks.nth(0).click();
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 218 | await expect(page.getByRole("main")).toContainText("1 of 5");
67.17 s
little-moments-e2e> 219 |
67.17 s
little-moments-e2e> 220 | await page.getByRole("main").getByRole("link", { name: "Next" }).click();
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:217:29
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 9) [chromium] › e2e/browse.spec.ts:229:7 › Browse media › opens the last entry from the browse page and shows the oldest media
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: locator.click: Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link').nth(4)
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 232 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> 233 |
67.17 s
little-moments-e2e> > 234 | await mediaLinks.nth(4).click();
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 235 |
67.17 s
little-moments-e2e> 236 | const content = page.getByRole("main");
67.17 s
little-moments-e2e> 237 |
67.17 s
little-moments-e2e> at /build/source/e2e/browse.spec.ts:234:29
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 10) [chromium] › e2e/media.spec.ts:6:7 › View media › shows reaction with a tooltip of the exact date
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Test timeout of 5000ms exceeded.
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error: expect(locator).toHaveCount(expected) failed
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Locator: getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> Expected: 5
67.17 s
little-moments-e2e> Received: 0
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Call log:
67.17 s
little-moments-e2e> - Expect "toHaveCount" with timeout 5000ms
67.17 s
little-moments-e2e> - waiting for getByRole('main').getByRole('link')
67.17 s
little-moments-e2e> 9 × locator resolved to 0 elements
67.17 s
little-moments-e2e> - unexpected value "0"
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 9 | // Navigate to the entry that has a reaction (test photo #2).
67.17 s
little-moments-e2e> 10 | const mediaLinks = page.getByRole("main").getByRole("link");
67.17 s
little-moments-e2e> > 11 | await expect(mediaLinks).toHaveCount(5);
67.17 s
little-moments-e2e> | ^
67.17 s
little-moments-e2e> 12 | // Entry order is newest-first: animated photo, video #2, video #1, photo #2, photo #1.
67.17 s
little-moments-e2e> 13 | await mediaLinks.nth(3).click();
67.17 s
little-moments-e2e> 14 | await expect(page.getByRole("main")).toContainText("test photo #2");
67.17 s
little-moments-e2e> at /build/source/e2e/media.spec.ts:11:30
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/video.webm
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> Error Context: e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/error-context.md
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.17 s
little-moments-e2e> e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
67.17 s
little-moments-e2e> Usage:
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> npx playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
67.17 s
little-moments-e2e>
67.17 s
little-moments-e2e> 10 failed
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:66:7 › Browse media › shows the imported media entries on the browse page
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:79:7 › Browse media › shows media thumbnails from newest to oldest
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:90:7 › Browse media › shows a video indicator on video thumbnails only
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:111:7 › Browse media › opens the first entry from the browse page and shows its details
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:133:7 › Browse media › moves through adjacent entries with Previous and Next links
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:164:7 › Browse media › moves through adjacent entries with left and right arrow keys
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:185:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:212:7 › Browse media › shows the current media position within the full list
67.17 s
little-moments-e2e> [chromium] › e2e/browse.spec.ts:229:7 › Browse media › opens the last entry from the browse page and shows the oldest media
67.17 s
little-moments-e2e> [chromium] › e2e/media.spec.ts:6:7 › View media › shows reaction with a tooltip of the exact date
67.32 s
error: Cannot build '/nix/store/x758jd93qiaw54i0d18l2r36sv500727-little-moments-e2e-0.0.1.drv'.
67.32 s
Reason: builder failed with exit code 1.
67.32 s
Output paths:
67.32 s
/nix/store/ls9clrv1zlxgk4qf9w22cy1yss5jxlrj-little-moments-e2e-0.0.1
67.32 s
Last 547 log lines:
67.32 s
> Running phase: unpackPhase
67.32 s
> unpacking source archive /nix/store/hdz8g96s4zssw3rwfzw7qgzy0fkzxnwf-source
67.32 s
> source root is source
67.32 s
> Running phase: patchPhase
67.32 s
> Executing npmConfigHook
67.32 s
> Configuring npm
67.32 s
> Validating consistency between /build/source/package-lock.json and /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps/package-lock.json
67.32 s
> Setting npm_config_cache to /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps
67.32 s
> Installing dependencies
67.32 s
> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
67.32 s
> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
67.32 s
> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
67.32 s
>
67.32 s
> added 100 packages, and audited 101 packages in 602ms
67.32 s
>
67.32 s
> 25 packages are looking for funding
67.32 s
> run `npm fund` for details
67.32 s
>
67.32 s
> found 0 vulnerabilities
67.32 s
> patching script interpreter paths in node_modules
67.32 s
> node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> 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"
67.32 s
> node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh"
67.32 s
> node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> 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"
67.32 s
> node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
67.32 s
> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
67.32 s
> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
67.32 s
> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
67.32 s
> rebuilt dependencies successfully
67.32 s
> patching script interpreter paths in node_modules
67.32 s
> Finished npmConfigHook
67.32 s
> Running phase: updateAutotoolsGnuConfigScriptsPhase
67.32 s
> Running phase: configurePhase
67.32 s
> no configure script, doing nothing
67.32 s
> Running phase: buildPhase
67.32 s
> no Makefile or custom buildPhase, doing nothing
67.32 s
> Running phase: checkPhase
67.32 s
> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
67.32 s
> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
67.32 s
> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
67.32 s
> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/cmd/app/main.go:19: starting little-moments server
67.32 s
> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from testdata/store.db
67.32 s
> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/handlers/csp.go:43: CSP media origin: ""
67.32 s
> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/cmd/app/main.go:72: listening on http://localhost:6001
67.32 s
> [WebServer] 2026/04/11 15:06:08 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: POST /api/debug/db/per-session 404 19
67.32 s
>
67.32 s
> Running 10 tests using 1 worker
67.32 s
> Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3292
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:09 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
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:09 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3292
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:15 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
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:15 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3296
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:21 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
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:21 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06: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
67.32 s
> [WebServer] 2026/04/11 15:06: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
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:28 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06: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
67.32 s
> [WebServer] 2026/04/11 15:06: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
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:34 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:40 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
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:40 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:46 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
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:46 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
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:46 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:52 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
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:52 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:06:58 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
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:06:58 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET / 200 3288
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/css/style.css 200 25
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
67.32 s
> [WebServer] 2026/04/11 15:07:04 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
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/third-party/lucide@1.6.0/lucide.min.js 200 397128
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/lucide.js 200 478
67.32 s
> [WebServer] 2026/04/11 15:07:04 codeberg.org/mtlynch/little-moments/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
67.32 s
> T
67.32 s
>
67.32 s
> 1) [chromium] › e2e/browse.spec.ts:66:7 › Browse media › shows the imported media entries on the browse page
67.32 s
>
67.32 s
> Test timeout of 5000ms exceeded.
67.32 s
>
67.32 s
> Error: expect(locator).toHaveCount(expected) failed
67.32 s
>
67.32 s
> Locator: getByRole('main').getByRole('link')
67.32 s
> Expected: 5
67.32 s
> Received: 0
67.32 s
>
67.32 s
> Call log:
67.32 s
> - Expect "toHaveCount" with timeout 5000ms
67.32 s
> - waiting for getByRole('main').getByRole('link')
67.32 s
> 9 × locator resolved to 0 elements
67.32 s
> - unexpected value "0"
67.32 s
>
67.32 s
>
67.32 s
> 69 | const mediaLinks = page.getByRole("main").getByRole("link");
67.32 s
> 70 |
67.32 s
> > 71 | await expect(mediaLinks).toHaveCount(5);
67.32 s
> | ^
67.32 s
> 72 | await expect(mediaLinks.nth(0)).toBeVisible();
67.32 s
> 73 | await expect(mediaLinks.nth(1)).toBeVisible();
67.32 s
> 74 | await expect(mediaLinks.nth(2)).toBeVisible();
67.32 s
> at /build/source/e2e/browse.spec.ts:71:30
67.32 s
>
67.32 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.32 s
> e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/video.webm
67.32 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.32 s
>
67.32 s
> Error Context: e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/error-context.md
67.32 s
>
67.32 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.32 s
> e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
67.32 s
> Usage:
67.32 s
>
67.32 s
> npx playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
67.32 s
>
67.32 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.32 s
>
67.32 s
> 2) [chromium] › e2e/browse.spec.ts:79:7 › Browse media › shows media thumbnails from newest to oldest
67.32 s
>
67.32 s
> Test timeout of 5000ms exceeded.
67.32 s
>
67.32 s
> Error: expect(locator).toHaveCount(expected) failed
67.32 s
>
67.32 s
> Locator: getByRole('main').getByRole('link')
67.32 s
> Expected: 5
67.32 s
> Received: 0
67.32 s
>
67.32 s
> Call log:
67.33 s
> - Expect "toHaveCount" with timeout 5000ms
67.33 s
> - waiting for getByRole('main').getByRole('link')
67.33 s
> 9 × locator resolved to 0 elements
67.33 s
> - unexpected value "0"
67.33 s
>
67.33 s
>
67.33 s
> 80 | const mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> 81 |
67.33 s
> > 82 | await expect(mediaLinks).toHaveCount(5);
67.33 s
> | ^
67.33 s
> 83 | await expect(mediaLinks.nth(0)).toHaveAttribute("href", "/m/1000");
67.33 s
> 84 | await expect(mediaLinks.nth(1)).toHaveAttribute("href", "/m/1001");
67.33 s
> 85 | await expect(mediaLinks.nth(2)).toHaveAttribute("href", "/m/1002");
67.33 s
> at /build/source/e2e/browse.spec.ts:82:30
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 3) [chromium] › e2e/browse.spec.ts:90:7 › Browse media › shows a video indicator on video thumbnails only
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: expect(locator).toHaveCount(expected) failed
67.33 s
>
67.33 s
> Locator: getByRole('main').getByRole('link')
67.33 s
> Expected: 5
67.33 s
> Received: 0
67.33 s
>
67.33 s
> Call log:
67.33 s
> - Expect "toHaveCount" with timeout 5000ms
67.33 s
> - waiting for getByRole('main').getByRole('link')
67.33 s
> 9 × locator resolved to 0 elements
67.33 s
> - unexpected value "0"
67.33 s
>
67.33 s
>
67.33 s
> 91 | const mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> 92 |
67.33 s
> > 93 | await expect(mediaLinks).toHaveCount(5);
67.33 s
> | ^
67.33 s
> 94 | await expect(
67.33 s
> 95 | mediaLinks.nth(0).getByTestId("video-thumbnail-indicator"),
67.33 s
> 96 | ).toHaveCount(0);
67.33 s
> at /build/source/e2e/browse.spec.ts:93:30
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 4) [chromium] › e2e/browse.spec.ts:111:7 › Browse media › opens the first entry from the browse page and shows its details
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: locator.click: Test timeout of 5000ms exceeded.
67.33 s
> Call log:
67.33 s
> - waiting for getByRole('main').getByRole('link').first()
67.33 s
>
67.33 s
>
67.33 s
> 114 | const mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> 115 |
67.33 s
> > 116 | await mediaLinks.nth(0).click();
67.33 s
> | ^
67.33 s
> 117 |
67.33 s
> 118 | const content = page.getByRole("main");
67.33 s
> 119 |
67.33 s
> at /build/source/e2e/browse.spec.ts:116:29
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 5) [chromium] › e2e/browse.spec.ts:133:7 › Browse media › moves through adjacent entries with Previous and Next links
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: locator.click: Test timeout of 5000ms exceeded.
67.33 s
> Call log:
67.33 s
> - waiting for getByRole('main').getByRole('link').nth(1)
67.33 s
>
67.33 s
>
67.33 s
> 136 | const mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> 137 |
67.33 s
> > 138 | await mediaLinks.nth(1).click();
67.33 s
> | ^
67.33 s
> 139 | await page.getByRole("main").getByRole("link", { name: "Next" }).click();
67.33 s
> 140 |
67.33 s
> 141 | const content = page.getByRole("main");
67.33 s
> at /build/source/e2e/browse.spec.ts:138:29
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 6) [chromium] › e2e/browse.spec.ts:164:7 › Browse media › moves through adjacent entries with left and right arrow keys
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: locator.click: Test timeout of 5000ms exceeded.
67.33 s
> Call log:
67.33 s
> - waiting for getByRole('main').getByRole('link').nth(2)
67.33 s
>
67.33 s
>
67.33 s
> 167 | const mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> 168 |
67.33 s
> > 169 | await mediaLinks.nth(2).click();
67.33 s
> | ^
67.33 s
> 170 |
67.33 s
> 171 | await expect(page).toHaveURL("/m/1002");
67.33 s
> 172 | await expect(page.getByRole("main")).toContainText("test video #1");
67.33 s
> at /build/source/e2e/browse.spec.ts:169:29
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 7) [chromium] › e2e/browse.spec.ts:185:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: locator.click: Test ended.
67.33 s
> Call log:
67.33 s
> - waiting for getByRole('main').getByRole('link').nth(2)
67.33 s
>
67.33 s
>
67.33 s
> 193 |
67.33 s
> 194 | await mobilePage.goto("/");
67.33 s
> > 195 | await mobilePage.getByRole("main").getByRole("link").nth(2).click();
67.33 s
> | ^
67.33 s
> 196 | await expect(mobilePage).toHaveURL("/m/1002");
67.33 s
> 197 | await expect(mobilePage.getByRole("main")).toContainText("test video #1");
67.33 s
> 198 |
67.33 s
> at /build/source/e2e/browse.spec.ts:195:65
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 8) [chromium] › e2e/browse.spec.ts:212:7 › Browse media › shows the current media position within the full list
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: locator.click: Test timeout of 5000ms exceeded.
67.33 s
> Call log:
67.33 s
> - waiting for getByRole('main').getByRole('link').first()
67.33 s
>
67.33 s
>
67.33 s
> 215 | let mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> 216 |
67.33 s
> > 217 | await mediaLinks.nth(0).click();
67.33 s
> | ^
67.33 s
> 218 | await expect(page.getByRole("main")).toContainText("1 of 5");
67.33 s
> 219 |
67.33 s
> 220 | await page.getByRole("main").getByRole("link", { name: "Next" }).click();
67.33 s
> at /build/source/e2e/browse.spec.ts:217:29
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 9) [chromium] › e2e/browse.spec.ts:229:7 › Browse media › opens the last entry from the browse page and shows the oldest media
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: locator.click: Test timeout of 5000ms exceeded.
67.33 s
> Call log:
67.33 s
> - waiting for getByRole('main').getByRole('link').nth(4)
67.33 s
>
67.33 s
>
67.33 s
> 232 | const mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> 233 |
67.33 s
> > 234 | await mediaLinks.nth(4).click();
67.33 s
> | ^
67.33 s
> 235 |
67.33 s
> 236 | const content = page.getByRole("main");
67.33 s
> 237 |
67.33 s
> at /build/source/e2e/browse.spec.ts:234:29
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 10) [chromium] › e2e/media.spec.ts:6:7 › View media › shows reaction with a tooltip of the exact date
67.33 s
>
67.33 s
> Test timeout of 5000ms exceeded.
67.33 s
>
67.33 s
> Error: expect(locator).toHaveCount(expected) failed
67.33 s
>
67.33 s
> Locator: getByRole('main').getByRole('link')
67.33 s
> Expected: 5
67.33 s
> Received: 0
67.33 s
>
67.33 s
> Call log:
67.33 s
> - Expect "toHaveCount" with timeout 5000ms
67.33 s
> - waiting for getByRole('main').getByRole('link')
67.33 s
> 9 × locator resolved to 0 elements
67.33 s
> - unexpected value "0"
67.33 s
>
67.33 s
>
67.33 s
> 9 | // Navigate to the entry that has a reaction (test photo #2).
67.33 s
> 10 | const mediaLinks = page.getByRole("main").getByRole("link");
67.33 s
> > 11 | await expect(mediaLinks).toHaveCount(5);
67.33 s
> | ^
67.33 s
> 12 | // Entry order is newest-first: animated photo, video #2, video #1, photo #2, photo #1.
67.33 s
> 13 | await mediaLinks.nth(3).click();
67.33 s
> 14 | await expect(page.getByRole("main")).toContainText("test photo #2");
67.33 s
> at /build/source/e2e/media.spec.ts:11:30
67.33 s
>
67.33 s
> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
67.33 s
> e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/video.webm
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> Error Context: e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/error-context.md
67.33 s
>
67.33 s
> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
67.33 s
> e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
67.33 s
> Usage:
67.33 s
>
67.33 s
> npx playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
67.33 s
>
67.33 s
> ────────────────────────────────────────────────────────────────────────────────────────────────
67.33 s
>
67.33 s
> 10 failed
67.33 s
> [chromium] › e2e/browse.spec.ts:66:7 › Browse media › shows the imported media entries on the browse page
67.33 s
> [chromium] › e2e/browse.spec.ts:79:7 › Browse media › shows media thumbnails from newest to oldest
67.33 s
> [chromium] › e2e/browse.spec.ts:90:7 › Browse media › shows a video indicator on video thumbnails only
67.33 s
> [chromium] › e2e/browse.spec.ts:111:7 › Browse media › opens the first entry from the browse page and shows its details
67.33 s
> [chromium] › e2e/browse.spec.ts:133:7 › Browse media › moves through adjacent entries with Previous and Next links
67.33 s
> [chromium] › e2e/browse.spec.ts:164:7 › Browse media › moves through adjacent entries with left and right arrow keys
67.33 s
> [chromium] › e2e/browse.spec.ts:185:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
67.33 s
> [chromium] › e2e/browse.spec.ts:212:7 › Browse media › shows the current media position within the full list
67.33 s
> [chromium] › e2e/browse.spec.ts:229:7 › Browse media › opens the last entry from the browse page and shows the oldest media
67.33 s
> [chromium] › e2e/media.spec.ts:6:7 › View media › shows reaction with a tooltip of the exact date
67.33 s
For full logs, run:
67.33 s
nix log /nix/store/x758jd93qiaw54i0d18l2r36sv500727-little-moments-e2e-0.0.1.drv