$ /nix/store/vzx1mi9c0xfadmsm9dhd83d005cb1qs9-coreutils-9.8/bin/timeout --kill-after=15s 7200s /nix/store/99b1z08awpxj8b6mzggn59gp1shljnff-nix-2.34.5/bin/nix --extra-experimental-features nix-command --extra-experimental-features flakes --log-format internal-json build --no-link git+https://codeberg.org/mtlynch/little-moments?ref=email-auth&rev=e585bb7c678d8a914505b732d2c6290ec33aee11#packages.x86_64-linux.e2e-tests --print-build-logs error (ignored): SQLite database '/var/cache/private/nix-ci-worker/eval-cache-v6/f7e4f878ea97b66863f338fe9551a9fd4d0768eff0b4e060b1d2273f14b2b8b7.sqlite' is busy  Downloading cached dejavu-fonts-minimal from https://cache.nix-ci.com Waiting for lock on little-moments-dev Building import-from-tinybeans Building little-moments-e2e-0.0.1-npm-deps Progress: 0 of 5 built (2 building), 1 of 3 downloaded from cache [import-from-tinybeans] Phase: unpackPhase Downloading cached dejavu-fonts from https://cache.nix-ci.com [import-from-tinybeans] unpacking source archive /nix/store/8m685i8nzxjsd4x8bv0iyws1j0g88kl8-source [import-from-tinybeans] source root is source [little-moments-e2e-0.0.1-npm-deps] Phase: unpackPhase [little-moments-e2e-0.0.1-npm-deps] unpacking source archive /nix/store/8m685i8nzxjsd4x8bv0iyws1j0g88kl8-source [import-from-tinybeans] Phase: patchPhase [little-moments-e2e-0.0.1-npm-deps] source root is source [import-from-tinybeans] Phase: updateAutotoolsGnuConfigScriptsPhase [little-moments-e2e-0.0.1-npm-deps] Phase: patchPhase [little-moments-e2e-0.0.1-npm-deps] Phase: updateAutotoolsGnuConfigScriptsPhase [import-from-tinybeans] Phase: configurePhase [little-moments-e2e-0.0.1-npm-deps] Phase: configurePhase [little-moments-e2e-0.0.1-npm-deps] no configure script, doing nothing [little-moments-e2e-0.0.1-npm-deps] Phase: buildPhase Progress: 0 of 5 built (2 building), 2 of 3 downloaded from cache Downloading cached fonts.conf from https://cache.nix-ci.com Progress: 0 of 5 built (2 building), 3 of 3 downloaded from cache [import-from-tinybeans] Phase: buildPhase [import-from-tinybeans] Building subPackage ./cmd/import-from-tinybeans [little-moments-e2e-0.0.1-npm-deps] Phase: fixupPhase [little-moments-e2e-0.0.1-npm-deps] shrinking RPATHs of ELF executables and libraries in /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps [little-moments-e2e-0.0.1-npm-deps] checking for references to /build/ in /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps... [little-moments-e2e-0.0.1-npm-deps] patching script interpreter paths in /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps [post-build-hook] Uploading to the NixCI cache: /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps [post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead [post-build-hook] copying 1 paths... [post-build-hook] copying path '/nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps' to 'https://cache.nix-ci.com'... [post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead [post-build-hook] copying 1 paths... [post-build-hook] copying path '/nix/store/0r7bzphxsw4g7xa9fr0n5ndb6c7rlbw0-little-moments-e2e-0.0.1-npm-deps.drv' to 'https://cache.nix-ci.com'... Progress: 1 of 5 built (1 building), 3 of 3 downloaded from cache [import-from-tinybeans] Phase: checkPhase [import-from-tinybeans] ? codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans [no test files] [import-from-tinybeans] Phase: installPhase [import-from-tinybeans] Phase: fixupPhase [import-from-tinybeans] shrinking RPATHs of ELF executables and libraries in /nix/store/a2z1095g0nz3nr1m76lsnq51bdi2zs9h-import-from-tinybeans-0.0.1 [import-from-tinybeans] shrinking /nix/store/a2z1095g0nz3nr1m76lsnq51bdi2zs9h-import-from-tinybeans-0.0.1/bin/.import-from-tinybeans-wrapped [import-from-tinybeans] patchelf: cannot find section '.dynamic'. The input file is most likely statically linked [import-from-tinybeans] checking for references to /build/ in /nix/store/a2z1095g0nz3nr1m76lsnq51bdi2zs9h-import-from-tinybeans-0.0.1... [import-from-tinybeans] patchelf: cannot find section '.dynamic'. The input file is most likely statically linked [import-from-tinybeans] patching script interpreter paths in /nix/store/a2z1095g0nz3nr1m76lsnq51bdi2zs9h-import-from-tinybeans-0.0.1 [import-from-tinybeans] stripping (with command strip and flags -S -p) in /nix/store/a2z1095g0nz3nr1m76lsnq51bdi2zs9h-import-from-tinybeans-0.0.1/bin [post-build-hook] Uploading to the NixCI cache: /nix/store/a2z1095g0nz3nr1m76lsnq51bdi2zs9h-import-from-tinybeans-0.0.1 [post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead [post-build-hook] copying 1 paths... [post-build-hook] copying path '/nix/store/a2z1095g0nz3nr1m76lsnq51bdi2zs9h-import-from-tinybeans-0.0.1' to 'https://cache.nix-ci.com'... [post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead [post-build-hook] copying 0 paths... Progress: 2 of 4 built, 3 of 3 downloaded from cache Building little-moments-e2e [little-moments-e2e] Phase: unpackPhase [little-moments-e2e] unpacking source archive /nix/store/8m685i8nzxjsd4x8bv0iyws1j0g88kl8-source [little-moments-e2e] source root is source [little-moments-e2e] Phase: patchPhase [little-moments-e2e] Executing npmConfigHook [little-moments-e2e] Configuring npm [little-moments-e2e] Validating consistency between /build/source/package-lock.json and /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps/package-lock.json [little-moments-e2e] Setting npm_config_cache to /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps [little-moments-e2e] Installing dependencies [little-moments-e2e] npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. [little-moments-e2e] npm warn Unknown env config "platform". This will stop working in the next major version of npm. [little-moments-e2e] npm warn Unknown env config "arch". This will stop working in the next major version of npm. [little-moments-e2e]  [little-moments-e2e] added 100 packages, and audited 101 packages in 673ms [little-moments-e2e]  [little-moments-e2e] 25 packages are looking for funding [little-moments-e2e]  run `npm fund` for details [little-moments-e2e]  [little-moments-e2e] found 0 vulnerabilities [little-moments-e2e] patching script interpreter paths in node_modules [little-moments-e2e] node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash" [little-moments-e2e] node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [little-moments-e2e] npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. [little-moments-e2e] npm warn Unknown env config "platform". This will stop working in the next major version of npm. [little-moments-e2e] npm warn Unknown env config "arch". This will stop working in the next major version of npm. [little-moments-e2e] rebuilt dependencies successfully [little-moments-e2e] patching script interpreter paths in node_modules [little-moments-e2e] Finished npmConfigHook [little-moments-e2e] Phase: updateAutotoolsGnuConfigScriptsPhase [little-moments-e2e] Phase: configurePhase [little-moments-e2e] no configure script, doing nothing [little-moments-e2e] Phase: buildPhase [little-moments-e2e] no Makefile or custom buildPhase, doing nothing [little-moments-e2e] Phase: checkPhase [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied e2a3a3ad-2fb6-4d7f-b26b-66872f6db493-full.avif [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied e2a3a3ad-2fb6-4d7f-b26b-66872f6db493-250px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied e2a3a3ad-2fb6-4d7f-b26b-66872f6db493-150px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied fb33f016-ebcf-4890-a3fe-e5f57eda8e6c-full.mp4 [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied fb33f016-ebcf-4890-a3fe-e5f57eda8e6c-thumb-250px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied fb33f016-ebcf-4890-a3fe-e5f57eda8e6c-thumb-150px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied e1fadee8-6cc9-49bb-8276-2ad8f629713d-full.mp4 [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied e1fadee8-6cc9-49bb-8276-2ad8f629713d-thumb-250px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied e1fadee8-6cc9-49bb-8276-2ad8f629713d-thumb-150px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-full.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-850px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-250px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-150px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-full.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-850px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-250px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-150px.jpg [little-moments-e2e] 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from /build/source/test-imported-media/test-store.db [little-moments-e2e] 2026/05/24 12:36:26 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:140: wrote /build/source/test-imported-media/test-store.db [little-moments-e2e] npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. [little-moments-e2e] npm warn Unknown env config "platform". This will stop working in the next major version of npm. [little-moments-e2e] npm warn Unknown env config "arch". This will stop working in the next major version of npm. [little-moments-e2e]  [little-moments-e2e] Running 15 tests using 8 workers [little-moments-e2e] TTTTTTTTTTTTTTT [little-moments-e2e]  [little-moments-e2e]  1) [chromium] › e2e/auth.spec.ts:6:7 › Authentication › redirects unauthenticated users to the login page [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/auth-Authentication-redire-a63e4-ted-users-to-the-login-page-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/auth-Authentication-redire-a63e4-ted-users-to-the-login-page-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  2) [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ─────── [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  3) [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  4) [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  5) [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  6) [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  7) [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  8) [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  9) [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  10) [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  11) [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  12) [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  13) [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  14) [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  15) [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date [little-moments-e2e]  [little-moments-e2e]  Fixture "workerServer" timeout of 5000ms exceeded during setup. [little-moments-e2e]  [little-moments-e2e]  at fixtures.ts:96 [little-moments-e2e]  [little-moments-e2e]  94 | } [little-moments-e2e]  95 | [little-moments-e2e]  > 96 | export const test = base.extend< [little-moments-e2e]  | ^ [little-moments-e2e]  97 | { [little-moments-e2e]  98 | resetServer: void; [little-moments-e2e]  99 | }, [little-moments-e2e]  at /build/source/e2e/fixtures.ts:96:26 [little-moments-e2e]  [little-moments-e2e]  attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── [little-moments-e2e]  e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip [little-moments-e2e]  Usage: [little-moments-e2e]  [little-moments-e2e]  npx playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip [little-moments-e2e]  [little-moments-e2e]  ──────────────────────────────────────────────────────────────────────────────────────────────── [little-moments-e2e]  [little-moments-e2e]  15 failed [little-moments-e2e]  [chromium] › e2e/auth.spec.ts:6:7 › Authentication › redirects unauthenticated users to the login page [little-moments-e2e]  [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ──────── [little-moments-e2e]  [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login [little-moments-e2e]  [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page ─ [little-moments-e2e]  [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list [little-moments-e2e]  [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media [little-moments-e2e]  [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date Progress: 2 of 3 built (1 failed), 3 of 3 downloaded from cache Cannot build '/nix/store/z07a6h99jdmjw72hq4s6hr06h3i4p97a-little-moments-e2e-0.0.1.drv'. Reason: builder failed with exit code 1. Output paths: /nix/store/xm2qz57a6jpqphh75zrnvqx5cnsk5x0w-little-moments-e2e-0.0.1 Last 439 log lines: > Running phase: unpackPhase > unpacking source archive /nix/store/8m685i8nzxjsd4x8bv0iyws1j0g88kl8-source > source root is source > Running phase: patchPhase > Executing npmConfigHook > Configuring npm > Validating consistency between /build/source/package-lock.json and /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps/package-lock.json > Setting npm_config_cache to /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps > Installing dependencies > npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. > npm warn Unknown env config "platform". This will stop working in the next major version of npm. > npm warn Unknown env config "arch". This will stop working in the next major version of npm. > > added 100 packages, and audited 101 packages in 673ms > > 25 packages are looking for funding > run `npm fund` for details > > found 0 vulnerabilities > patching script interpreter paths in node_modules > node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh" > 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" > 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" > 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" > 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" > 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" > 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" > 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" > 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" > 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" > 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" > node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > 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" > npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. > npm warn Unknown env config "platform". This will stop working in the next major version of npm. > npm warn Unknown env config "arch". This will stop working in the next major version of npm. > rebuilt dependencies successfully > patching script interpreter paths in node_modules > Finished npmConfigHook > Running phase: updateAutotoolsGnuConfigScriptsPhase > Running phase: configurePhase > no configure script, doing nothing > Running phase: buildPhase > no Makefile or custom buildPhase, doing nothing > Running phase: checkPhase > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied e2a3a3ad-2fb6-4d7f-b26b-66872f6db493-full.avif > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied e2a3a3ad-2fb6-4d7f-b26b-66872f6db493-250px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied e2a3a3ad-2fb6-4d7f-b26b-66872f6db493-150px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied fb33f016-ebcf-4890-a3fe-e5f57eda8e6c-full.mp4 > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied fb33f016-ebcf-4890-a3fe-e5f57eda8e6c-thumb-250px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied fb33f016-ebcf-4890-a3fe-e5f57eda8e6c-thumb-150px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied e1fadee8-6cc9-49bb-8276-2ad8f629713d-full.mp4 > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied e1fadee8-6cc9-49bb-8276-2ad8f629713d-thumb-250px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied e1fadee8-6cc9-49bb-8276-2ad8f629713d-thumb-150px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-full.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-850px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-250px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 520c2baa-c66b-4e0c-942f-45935bc3813b-150px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-full.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-850px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-250px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied c6fcdfb6-92e2-47dc-b0f3-c71910d16929-150px.jpg > 2026/05/24 12:36:25 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from /build/source/test-imported-media/test-store.db > 2026/05/24 12:36:26 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:140: wrote /build/source/test-imported-media/test-store.db > npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. > npm warn Unknown env config "platform". This will stop working in the next major version of npm. > npm warn Unknown env config "arch". This will stop working in the next major version of npm. > > Running 15 tests using 8 workers > TTTTTTTTTTTTTTT > > 1) [chromium] › e2e/auth.spec.ts:6:7 › Authentication › redirects unauthenticated users to the login page > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/auth-Authentication-redire-a63e4-ted-users-to-the-login-page-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/auth-Authentication-redire-a63e4-ted-users-to-the-login-page-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 2) [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ─────── > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 3) [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 4) [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 5) [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 6) [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 7) [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 8) [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 9) [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 10) [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 11) [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 12) [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 13) [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 14) [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 15) [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date > > Fixture "workerServer" timeout of 5000ms exceeded during setup. > > at fixtures.ts:96 > > 94 | } > 95 | > > 96 | export const test = base.extend< > | ^ > 97 | { > 98 | resetServer: void; > 99 | }, > at /build/source/e2e/fixtures.ts:96:26 > > attachment #1: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip > Usage: > > npx playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 15 failed > [chromium] › e2e/auth.spec.ts:6:7 › Authentication › redirects unauthenticated users to the login page > [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ──────── > [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login > [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page ─ > [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out > [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page > [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest > [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only > [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details > [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links > [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys > [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile > [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list > [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media > [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date For full logs, run: nix log /nix/store/z07a6h99jdmjw72hq4s6hr06h3i4p97a-little-moments-e2e-0.0.1.drv