$ /nix/store/vzx1mi9c0xfadmsm9dhd83d005cb1qs9-coreutils-9.8/bin/timeout --kill-after=15s 7200s /nix/store/86n4l5yri6hys3zk2mwy2azcv9prqb8j-nix-2.31.4/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=log-not-sign&rev=336a72deaf82382e33aca6fcf5c81f443fa5511a#packages.x86_64-linux.e2e-tests --print-build-logs  Building e2e-tests [e2e-tests] Phase: unpackPhase [e2e-tests] unpacking source archive /nix/store/i115d1ainf6k72c4dkwrd5n762cqv8c8-source [e2e-tests] source root is source [e2e-tests] Phase: patchPhase [e2e-tests] Phase: updateAutotoolsGnuConfigScriptsPhase [e2e-tests] Phase: configurePhase [e2e-tests] no configure script, doing nothing [e2e-tests] Executing pnpmConfigHook [e2e-tests] Using fetcherVersion: 2 [e2e-tests] Configuring pnpm store [e2e-tests] /build /build/source [e2e-tests] /build/source [e2e-tests] Installing dependencies [e2e-tests] Lockfile is up to date, resolution step is skipped [e2e-tests] Progress: resolved 1, reused 0, downloaded 0, added 0 [e2e-tests] Packages: +101 [e2e-tests]  [e2e-tests] Progress: resolved 1, reused 0, downloaded 0, added 0 [e2e-tests] Progress: resolved 101, reused 101, downloaded 0, added 101, done [e2e-tests]  [e2e-tests] devDependencies: [e2e-tests] + @playwright/test 1.58.2 [e2e-tests] + eslint 9.39.2 [e2e-tests] + eslint-plugin-playwright 2.2.0 [e2e-tests] + isomorphic-fetch 3.0.0 [e2e-tests] + playwright 1.58.2 [e2e-tests] + prettier 3.8.1 [e2e-tests] + prettier-plugin-go-template 0.0.15 [e2e-tests]  [e2e-tests] Done in 504ms using pnpm v10.25.0 [e2e-tests] Patching scripts [e2e-tests] patching script interpreter paths in node_modules/@playwright node_modules/eslint node_modules/eslint-plugin-playwright node_modules/isomorphic-fetch node_modules/playwright node_modules/prettier node_modules/prettier-plugin-go-template node_modules/.bin node_modules/.modules.yaml node_modules/.pnpm node_modules/.pnpm-workspace-state-v1.json [e2e-tests] node_modules/.bin/playwright: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.bin/prettier: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/node_modules/.bin/node-which: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/node_modules/.bin/playwright-core: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/node_modules/.bin/ulid: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/@eslint-community+eslint-utils@4.9.1_eslint@9.39.2/node_modules/@eslint-community/eslint-utils/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/travis-gh-pages: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/info: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/prepare-tests: interpreter directive changed from "#!/usr/bin/env sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/publish-built-version: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/node_modules/.bin/node-which: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/ulid@2.4.0/node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/acorn-jsx@5.3.2_acorn@8.16.0/node_modules/acorn-jsx/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/prettier@3.8.1/node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/@eslint+eslintrc@3.3.5/node_modules/@eslint/eslintrc/node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/which@2.0.2/node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/eslint@9.39.2/node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/acorn@8.16.0/node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/espree@10.4.0/node_modules/espree/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/@playwright+test@1.58.2/node_modules/@playwright/test/node_modules/.bin/playwright: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/@playwright+test@1.58.2/node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/js-yaml@4.2.0/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" [e2e-tests] node_modules/.pnpm/playwright@1.58.2/node_modules/playwright/node_modules/.bin/playwright-core: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/playwright@1.58.2/node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] node_modules/.pnpm/eslint-plugin-playwright@2.2.0_eslint@9.39.2/node_modules/eslint-plugin-playwright/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/prettier-plugin-go-template@0.0.15_prettier@3.8.1/node_modules/prettier-plugin-go-template/node_modules/.bin/prettier: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] node_modules/.pnpm/prettier-plugin-go-template@0.0.15_prettier@3.8.1/node_modules/prettier-plugin-go-template/node_modules/.bin/ulid: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" [e2e-tests] Finished pnpmConfigHook [e2e-tests] Phase: buildPhase [e2e-tests] patching script interpreter paths in ./dev-scripts [e2e-tests] ./dev-scripts/run-go-tests: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/populate-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/check-go-test-packages: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/render-design-doc: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/check-trailing-whitespace: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/run-e2e-tests: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/check-trailing-newline: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/upload-prod-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/serve: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/check-frontend: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/download-prod-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/run-single-go-test: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/reset-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/git-hooks/pre-commit: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/package-binaries: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/check-bash: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/check-go-formatting: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/enable-git-hooks: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/lint-sql: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/serve-docker: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/serve-design-doc: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" [e2e-tests] ./dev-scripts/build-backend: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] ./dev-scripts/enable-multiarch-docker: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 1b5d7cfb-cebf-481e-a771-45c56014e688-full.avif [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:122: copied 1b5d7cfb-cebf-481e-a771-45c56014e688-250px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:122: copied 1b5d7cfb-cebf-481e-a771-45c56014e688-150px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 413330f7-ab1c-411b-8e7e-7a329268054d-full.mp4 [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 413330f7-ab1c-411b-8e7e-7a329268054d-thumb-250px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 413330f7-ab1c-411b-8e7e-7a329268054d-thumb-150px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 2dd7e826-f4b0-415e-a591-8b10e1942a9b-full.mp4 [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 2dd7e826-f4b0-415e-a591-8b10e1942a9b-thumb-250px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 2dd7e826-f4b0-415e-a591-8b10e1942a9b-thumb-150px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied bae4714a-328f-4d09-bf18-22f777255600-full.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:109: copied bae4714a-328f-4d09-bf18-22f777255600-850px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied bae4714a-328f-4d09-bf18-22f777255600-250px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied bae4714a-328f-4d09-bf18-22f777255600-150px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-full.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:109: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-850px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-250px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-150px.jpg [e2e-tests] 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:27: reading DB from /build/source/test-imported-media/test-store.db [e2e-tests] 2026/06/06 15:09:01 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:145: wrote /build/source/test-imported-media/test-store.db [e2e-tests]  [e2e-tests] Running 10 tests using 8 workers [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] FFFFFFFFSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. [e2e-tests] FF [e2e-tests]  [e2e-tests]  1) [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  2) [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  3) [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  4) [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  5) [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  6) [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  7) [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  8) [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  9) [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/browse.spec.ts:65:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  10) [chromium] › e2e/media.spec.ts:6:7 › View media › shows reaction with a tooltip of the exact date [e2e-tests]  [e2e-tests]  Error: expect(locator).toBeVisible() failed [e2e-tests]  [e2e-tests]  Locator: getByRole('heading', { name: 'Sign in' }) [e2e-tests]  Expected: visible [e2e-tests]  Timeout: 5000ms [e2e-tests]  Error: element(s) not found [e2e-tests]  [e2e-tests]  Call log: [e2e-tests]   - Expect "toBeVisible" with timeout 5000ms [e2e-tests]   - waiting for getByRole('heading', { name: 'Sign in' }) [e2e-tests]  [e2e-tests]  [e2e-tests]  at fixtures.ts:201 [e2e-tests]  [e2e-tests]  199 | export async function logIn(page: Page): Promise { [e2e-tests]  200 | await page.goto("/"); [e2e-tests]  > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); [e2e-tests]  | ^ [e2e-tests]  202 | await page.getByLabel("Password").fill(e2eSharedSecret); [e2e-tests]  203 | await page.getByRole("button", { name: "Sign in" }).click(); [e2e-tests]  204 | await expect(page).toHaveURL("/"); [e2e-tests]  at logIn (/build/source/e2e/fixtures.ts:201:64) [e2e-tests]  at /build/source/e2e/media.spec.ts:7:5 [e2e-tests]  [e2e-tests]  attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── [e2e-tests]  e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/video.webm [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  Error Context: e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/error-context.md [e2e-tests]  [e2e-tests]  attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── [e2e-tests]  e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip [e2e-tests]  Usage: [e2e-tests]  [e2e-tests]  pnpm exec playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip [e2e-tests]  [e2e-tests]  ──────────────────────────────────────────────────────────────────────────────────────────────── [e2e-tests]  [e2e-tests]  10 failed [e2e-tests]  [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page [e2e-tests]  [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest [e2e-tests]  [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only [e2e-tests]  [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details [e2e-tests]  [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links [e2e-tests]  [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys [e2e-tests]  [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile [e2e-tests]  [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list [e2e-tests]  [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media [e2e-tests]  [chromium] › e2e/media.spec.ts:6:7 › View media › shows reaction with a tooltip of the exact date Progress: 0 of 1 built (1 failed) Cannot build '/nix/store/2cr9bj4f4gvdvrfsl064i5p5m5d7wb99-e2e-tests-0.0.0.drv'. Reason: builder failed with exit code 1. Output paths: /nix/store/0hxc059vgrmn92kr6p3h8s4b8vn4x7s7-e2e-tests-0.0.0 Last 544 log lines: > Running phase: unpackPhase > unpacking source archive /nix/store/i115d1ainf6k72c4dkwrd5n762cqv8c8-source > source root is source > Running phase: patchPhase > Running phase: updateAutotoolsGnuConfigScriptsPhase > Running phase: configurePhase > no configure script, doing nothing > Executing pnpmConfigHook > Using fetcherVersion: 2 > Configuring pnpm store > /build /build/source > /build/source > Installing dependencies > Lockfile is up to date, resolution step is skipped > Progress: resolved 1, reused 0, downloaded 0, added 0 > Packages: +101 > > Progress: resolved 1, reused 0, downloaded 0, added 0 > Progress: resolved 101, reused 101, downloaded 0, added 101, done > > devDependencies: > + @playwright/test 1.58.2 > + eslint 9.39.2 > + eslint-plugin-playwright 2.2.0 > + isomorphic-fetch 3.0.0 > + playwright 1.58.2 > + prettier 3.8.1 > + prettier-plugin-go-template 0.0.15 > > Done in 504ms using pnpm v10.25.0 > Patching scripts > patching script interpreter paths in node_modules/@playwright node_modules/eslint node_modules/eslint-plugin-playwright node_modules/isomorphic-fetch node_modules/playwright node_modules/prettier node_modules/prettier-plugin-go-template node_modules/.bin node_modules/.modules.yaml node_modules/.pnpm node_modules/.pnpm-workspace-state-v1.json > node_modules/.bin/playwright: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.bin/prettier: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/node_modules/.bin/node-which: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/node_modules/.bin/playwright-core: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/node_modules/.bin/ulid: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/@eslint-community+eslint-utils@4.9.1_eslint@9.39.2/node_modules/@eslint-community/eslint-utils/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/travis-gh-pages: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/info: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/prepare-tests: interpreter directive changed from "#!/usr/bin/env sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/ajv@6.15.0/node_modules/ajv/scripts/publish-built-version: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/node_modules/.bin/node-which: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/ulid@2.4.0/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/.pnpm/acorn-jsx@5.3.2_acorn@8.16.0/node_modules/acorn-jsx/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/prettier@3.8.1/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/.pnpm/@eslint+eslintrc@3.3.5/node_modules/@eslint/eslintrc/node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/which@2.0.2/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/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > node_modules/.pnpm/playwright-core@1.58.2/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/.pnpm/playwright-core@1.58.2/node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/eslint@9.39.2/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/.pnpm/acorn@8.16.0/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/.pnpm/espree@10.4.0/node_modules/espree/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/@playwright+test@1.58.2/node_modules/@playwright/test/node_modules/.bin/playwright: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/@playwright+test@1.58.2/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/.pnpm/js-yaml@4.2.0/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" > node_modules/.pnpm/playwright@1.58.2/node_modules/playwright/node_modules/.bin/playwright-core: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/playwright@1.58.2/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/.pnpm/eslint-plugin-playwright@2.2.0_eslint@9.39.2/node_modules/eslint-plugin-playwright/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/prettier-plugin-go-template@0.0.15_prettier@3.8.1/node_modules/prettier-plugin-go-template/node_modules/.bin/prettier: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > node_modules/.pnpm/prettier-plugin-go-template@0.0.15_prettier@3.8.1/node_modules/prettier-plugin-go-template/node_modules/.bin/ulid: interpreter directive changed from "#!/bin/sh" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/sh" > Finished pnpmConfigHook > Running phase: buildPhase > patching script interpreter paths in ./dev-scripts > ./dev-scripts/run-go-tests: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/populate-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/check-go-test-packages: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/render-design-doc: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/check-trailing-whitespace: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/run-e2e-tests: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/check-trailing-newline: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/upload-prod-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/serve: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/check-frontend: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/download-prod-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/run-single-go-test: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/reset-db: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/git-hooks/pre-commit: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/package-binaries: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/check-bash: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/check-go-formatting: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/enable-git-hooks: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/lint-sql: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/serve-docker: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/serve-design-doc: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node" > ./dev-scripts/build-backend: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > ./dev-scripts/enable-multiarch-docker: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/0550j0i8bmzxbcnzrg1g51zigj7y12ih-bash-interactive-5.3p9/bin/bash" > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 1b5d7cfb-cebf-481e-a771-45c56014e688-full.avif > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:122: copied 1b5d7cfb-cebf-481e-a771-45c56014e688-250px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:122: copied 1b5d7cfb-cebf-481e-a771-45c56014e688-150px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 413330f7-ab1c-411b-8e7e-7a329268054d-full.mp4 > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 413330f7-ab1c-411b-8e7e-7a329268054d-thumb-250px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 413330f7-ab1c-411b-8e7e-7a329268054d-thumb-150px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 2dd7e826-f4b0-415e-a591-8b10e1942a9b-full.mp4 > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 2dd7e826-f4b0-415e-a591-8b10e1942a9b-thumb-250px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:129: copied 2dd7e826-f4b0-415e-a591-8b10e1942a9b-thumb-150px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied bae4714a-328f-4d09-bf18-22f777255600-full.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:109: copied bae4714a-328f-4d09-bf18-22f777255600-850px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied bae4714a-328f-4d09-bf18-22f777255600-250px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied bae4714a-328f-4d09-bf18-22f777255600-150px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:101: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-full.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:109: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-850px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-250px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:115: copied 8a1c8dbc-1a56-43c6-af4d-393be8c3a96d-150px.jpg > 2026/06/06 15:09:00 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:27: reading DB from /build/source/test-imported-media/test-store.db > 2026/06/06 15:09:01 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:145: wrote /build/source/test-imported-media/test-store.db > > Running 10 tests using 8 workers > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > FFFFFFFFSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set. > FF > > 1) [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 2) [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 3) [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 4) [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 5) [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 6) [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 7) [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 8) [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 9) [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/browse.spec.ts:65:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 10) [chromium] › e2e/media.spec.ts:6:7 › View media › shows reaction with a tooltip of the exact date > > Error: expect(locator).toBeVisible() failed > > Locator: getByRole('heading', { name: 'Sign in' }) > Expected: visible > Timeout: 5000ms > Error: element(s) not found > > Call log: >  - Expect "toBeVisible" with timeout 5000ms >  - waiting for getByRole('heading', { name: 'Sign in' }) > > > at fixtures.ts:201 > > 199 | export async function logIn(page: Page): Promise { > 200 | await page.goto("/"); > > 201 | await expect(page.getByRole("heading", { name: "Sign in" })).toBeVisible(); > | ^ > 202 | await page.getByLabel("Password").fill(e2eSharedSecret); > 203 | await page.getByRole("button", { name: "Sign in" }).click(); > 204 | await expect(page).toHaveURL("/"); > at logIn (/build/source/e2e/fixtures.ts:201:64) > at /build/source/e2e/media.spec.ts:7:5 > > attachment #1: video (video/webm) ────────────────────────────────────────────────────────────── > e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/video.webm > ──────────────────────────────────────────────────────────────────────────────────────────────── > > Error Context: e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/error-context.md > > attachment #3: trace (application/zip) ───────────────────────────────────────────────────────── > e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip > Usage: > > pnpm exec playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip > > ──────────────────────────────────────────────────────────────────────────────────────────────── > > 10 failed > [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:6:7 › View media › shows reaction with a tooltip of the exact date For full logs, run: nix log /nix/store/2cr9bj4f4gvdvrfsl064i5p5m5d7wb99-e2e-tests-0.0.0.drv