$ /nix/store/vzx1mi9c0xfadmsm9dhd83d005cb1qs9-coreutils-9.8/bin/timeout --kill-after=15s 1800s /nix/store/99b1z08awpxj8b6mzggn59gp1shljnff-nix-2.34.5/bin/nix --extra-experimental-features nix-command --extra-experimental-features flakes --log-format internal-json build --no-link git+https://codeberg.org/mtlynch/grosiree?ref=warn-on-section&rev=4bc0d58b38c0b165d2ba08b34b512e65f7acfe9f#packages.x86_64-linux.e2e-tests --print-build-logs[m
[2m[m
[1;34mBuilding grosiree-e2e[m
[2m[grosiree-e2e] [m[1;36mPhase: unpackPhase[m
[2m[grosiree-e2e] [munpacking source archive /nix/store/jh03p1x4gpnfgn5k9fv839f24g7clwwh-source
[2m[grosiree-e2e] [msource root is source
[2m[grosiree-e2e] [m[1;36mPhase: patchPhase[m
[2m[grosiree-e2e] [mExecuting npmConfigHook
[2m[grosiree-e2e] [mConfiguring npm
[2m[grosiree-e2e] [mValidating consistency between /build/source/package-lock.json and /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps/package-lock.json
[2m[grosiree-e2e] [mSetting npm_config_cache to /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps
[2m[grosiree-e2e] [mInstalling dependencies
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "nodedir". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "platform". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "arch". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [madded 100 packages, and audited 101 packages in 623ms
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m25 packages are looking for funding
[2m[grosiree-e2e] [m run `npm fund` for details
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [mfound [32m[1m0[22m[39m vulnerabilities
[2m[grosiree-e2e] [mpatching script interpreter paths in node_modules
[2m[grosiree-e2e] [mnode_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [mnode_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_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"
[2m[grosiree-e2e] [mnode_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh"
[2m[grosiree-e2e] [mnode_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [mnode_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [mnode_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [mnode_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [mnode_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "nodedir". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "platform". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "arch". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [mrebuilt dependencies successfully
[2m[grosiree-e2e] [mpatching script interpreter paths in node_modules
[2m[grosiree-e2e] [mFinished npmConfigHook
[2m[grosiree-e2e] [m[1;36mPhase: updateAutotoolsGnuConfigScriptsPhase[m
[2m[grosiree-e2e] [m[1;36mPhase: configurePhase[m
[2m[grosiree-e2e] [mno configure script, doing nothing
[2m[grosiree-e2e] [m[1;36mPhase: buildPhase[m
[2m[grosiree-e2e] [mno Makefile or custom buildPhase, doing nothing
[2m[grosiree-e2e] [m[1;36mPhase: checkPhase[m
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "nodedir". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "platform". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m[1mnpm[22m [33mwarn[39m [94mUnknown env config "arch". This will stop working in the next major version of npm.[39m
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:32 starting GrosireΓ© server
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from data/store.db
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/cmd/app/main.go:57: listening on 6001
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:47: per-session database = on
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/debug/db/per-session 200 0
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [mRunning 4 tests using 1 worker
[2m[grosiree-e2e] [mSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token Tgx7ksNmERtqc1q39m4SA4BCMj2iZF
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22432
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries/clear 200 87
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
[2m[grosiree-e2e] [mΒ·[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token j8I5aP6PiTLZrRNbsLV0nEWuYPiyL9
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 23252
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 23252
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:35 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 1808
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:35 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 68
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:35 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
[2m[grosiree-e2e] [mFSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token WsYnC0dkjy3ZXgYaiHnwpnkPfGkJfu
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 24129
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 68
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 2570
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /grocery-items 200 10428
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: DELETE /api/item-sections/Frozen peas 200 0
[2m[grosiree-e2e] [mΒ·[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token 5aPoTjTtTVqBZyCctbyjmHiufai3ov
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 303 33
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
[2m[grosiree-e2e] [m[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
[2m[grosiree-e2e] [mΒ·
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m 1) [chromium] βΊ e2e/index.spec.ts:41:7 βΊ Main grocery form βΊ warns before adding an item without a section
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m Error: [2mexpect([22m[31mlocator[39m[2m).[22mtoContainText[2m([22m[32mexpected[39m[2m)[22m failed
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m Locator: locator('.section-label')
[2m[grosiree-e2e] [m Expected substring: [32m"Unsorted"[39m
[2m[grosiree-e2e] [m Error: strict mode violation: locator('.section-label') resolved to 2 elements:
[2m[grosiree-e2e] [m 1)
Dairy
aka getByText('Dairy')
[2m[grosiree-e2e] [m 2) Unsorted
aka getByText('Unsorted')
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m Call log:
[2m[grosiree-e2e] [m [2m - Expect "toContainText" with timeout 5000ms[22m
[2m[grosiree-e2e] [m [2m - waiting for locator('.section-label')[22m
[2m[grosiree-e2e] [m [2m 2 Γ locator resolved to Dairy
[22m
[2m[grosiree-e2e] [m [2m - unexpected value "Dairy"[22m
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m 70 | await page.getByRole("button", { name: "Add without section" }).click();
[2m[grosiree-e2e] [m 71 |
[2m[grosiree-e2e] [m > 72 | await expect(page.locator(".section-label")).toContainText("Unsorted");
[2m[grosiree-e2e] [m | ^
[2m[grosiree-e2e] [m 73 | await expect(page.locator(".grocery-item .name")).toContainText("Bananas");
[2m[grosiree-e2e] [m 74 | });
[2m[grosiree-e2e] [m 75 | });
[2m[grosiree-e2e] [m at /build/source/e2e/index.spec.ts:72:50
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m attachment #1: video (video/webm) ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
[2m[grosiree-e2e] [m e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/video.webm
[2m[grosiree-e2e] [m ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m Error Context: e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/error-context.md
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m attachment #3: trace (application/zip) βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
[2m[grosiree-e2e] [m e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/trace.zip
[2m[grosiree-e2e] [m Usage:
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m npx playwright show-trace e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/trace.zip
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
[2m[grosiree-e2e] [m
[2m[grosiree-e2e] [m 1 failed
[2m[grosiree-e2e] [m [chromium] βΊ e2e/index.spec.ts:41:7 βΊ Main grocery form βΊ warns before adding an item without a section
[2m[grosiree-e2e] [m 3 passed (6.1s)
[2mProgress: 0 of 1 built (1 failed)[m
[1;31mCannot build '[35;1m/nix/store/blv4s98khbpy5hajn39jpbd5shvmxwg4-grosiree-e2e-0.0.1.drv[0m'.
Reason: [31;1mbuilder failed with exit code 1[0m.
Output paths:
[35;1m/nix/store/iz8hx4n8vs06krz2s8c3azdm46xj9lh1-grosiree-e2e-0.0.1[0m
Last 194 log lines:
> Running phase: unpackPhase
> unpacking source archive /nix/store/jh03p1x4gpnfgn5k9fv839f24g7clwwh-source
> source root is source
> Running phase: patchPhase
> Executing npmConfigHook
> Configuring npm
> Validating consistency between /build/source/package-lock.json and /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps/package-lock.json
> Setting npm_config_cache to /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps
> Installing dependencies
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "nodedir". This will stop working in the next major version of npm.[39m
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "platform". This will stop working in the next major version of npm.[39m
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "arch". This will stop working in the next major version of npm.[39m
>
> added 100 packages, and audited 101 packages in 623ms
>
> 25 packages are looking for funding
> run `npm fund` for details
>
> found [32m[1m0[22m[39m vulnerabilities
> patching script interpreter paths in node_modules
> 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/which/bin/node-which: 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"
> 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/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_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_chrome_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_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_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_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_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_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
> 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/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/prettier/bin/prettier.cjs: 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/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "nodedir". This will stop working in the next major version of npm.[39m
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "platform". This will stop working in the next major version of npm.[39m
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "arch". This will stop working in the next major version of npm.[39m
> 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
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "nodedir". This will stop working in the next major version of npm.[39m
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "platform". This will stop working in the next major version of npm.[39m
> [1mnpm[22m [33mwarn[39m [94mUnknown env config "arch". This will stop working in the next major version of npm.[39m
> [WebServer] 2026/04/26 23:54:32 starting GrosireΓ© server
> [WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from data/store.db
> [WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/cmd/app/main.go:57: listening on 6001
> [WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:47: per-session database = on
> [WebServer] 2026/04/26 23:54:32 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/debug/db/per-session 200 0
>
> Running 4 tests using 1 worker
> Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token Tgx7ksNmERtqc1q39m4SA4BCMj2iZF
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22432
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries/clear 200 87
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
> [WebServer] 2026/04/26 23:54:33 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
> Β·[WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token j8I5aP6PiTLZrRNbsLV0nEWuYPiyL9
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 23252
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 23252
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
> [WebServer] 2026/04/26 23:54:34 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
> [WebServer] 2026/04/26 23:54:35 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 1808
> [WebServer] 2026/04/26 23:54:35 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 68
> [WebServer] 2026/04/26 23:54:35 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
> FSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token WsYnC0dkjy3ZXgYaiHnwpnkPfGkJfu
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 24129
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 68
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 2570
> [WebServer] 2026/04/26 23:54:36 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /grocery-items 200 10428
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: DELETE /api/item-sections/Frozen peas 200 0
> Β·[WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token 5aPoTjTtTVqBZyCctbyjmHiufai3ov
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 303 33
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
> [WebServer] 2026/04/26 23:54:37 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
> Β·
>
> 1) [chromium] βΊ e2e/index.spec.ts:41:7 βΊ Main grocery form βΊ warns before adding an item without a section
>
> Error: [2mexpect([22m[31mlocator[39m[2m).[22mtoContainText[2m([22m[32mexpected[39m[2m)[22m failed
>
> Locator: locator('.section-label')
> Expected substring: [32m"Unsorted"[39m
> Error: strict mode violation: locator('.section-label') resolved to 2 elements:
> 1) Dairy
aka getByText('Dairy')
> 2) Unsorted
aka getByText('Unsorted')
>
> Call log:
> [2m - Expect "toContainText" with timeout 5000ms[22m
> [2m - waiting for locator('.section-label')[22m
> [2m 2 Γ locator resolved to Dairy
[22m
> [2m - unexpected value "Dairy"[22m
>
>
> 70 | await page.getByRole("button", { name: "Add without section" }).click();
> 71 |
> > 72 | await expect(page.locator(".section-label")).toContainText("Unsorted");
> | ^
> 73 | await expect(page.locator(".grocery-item .name")).toContainText("Bananas");
> 74 | });
> 75 | });
> at /build/source/e2e/index.spec.ts:72:50
>
> attachment #1: video (video/webm) ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
> e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/video.webm
> ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
>
> Error Context: e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/error-context.md
>
> attachment #3: trace (application/zip) βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
> e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/trace.zip
> Usage:
>
> npx playwright show-trace e2e-results/index-Main-grocery-form-wa-c6c9a-g-an-item-without-a-section-chromium/trace.zip
>
> ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
>
> 1 failed
> [chromium] βΊ e2e/index.spec.ts:41:7 βΊ Main grocery form βΊ warns before adding an item without a section
> 3 passed (6.1s)
For full logs, run:
[1mnix log /nix/store/blv4s98khbpy5hajn39jpbd5shvmxwg4-grosiree-e2e-0.0.1.drv[0m[m