2.48 s[grosiree-e2e] Validating consistency between /build/source/package-lock.json and /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps/package-lock.json
2.49 s[grosiree-e2e] Setting npm_config_cache to /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps
3.15 s[grosiree-e2e] patching script interpreter paths in node_modules
3.16 s[grosiree-e2e] node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.17 s[grosiree-e2e] node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.18 s[grosiree-e2e] node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh"
3.18 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.19 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.20 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.20 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.21 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.22 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.23 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.23 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.24 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.25 s[grosiree-e2e] node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
3.25 s[grosiree-e2e] node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.26 s[grosiree-e2e] node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.27 s[grosiree-e2e] node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.28 s[grosiree-e2e] node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.29 s[grosiree-e2e] node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.29 s[grosiree-e2e] node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.30 s[grosiree-e2e] node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
3.36 s[grosiree-e2e] npmwarnUnknown env config "nodedir". This will stop working in the next major version of npm.
3.36 s[grosiree-e2e] npmwarnUnknown env config "platform". This will stop working in the next major version of npm.
3.36 s[grosiree-e2e] npmwarnUnknown env config "arch". This will stop working in the next major version of npm.
5.36 s[grosiree-e2e] Running 4 tests using 1 worker
5.80 s[grosiree-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
5.88 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token X9W65NyVbX6zAD2YTa50V6kXd2dVIK
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
5.89 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
5.90 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
5.90 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
5.90 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
5.90 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
6.02 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22396
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
6.03 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
6.04 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
6.06 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
6.06 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
6.08 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
6.08 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries/clear 200 87
6.09 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
6.09 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
6.09 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
6.09 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
6.09 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
6.10 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
6.10 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
6.10 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
6.10 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
6.10 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
6.10 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
6.12 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
6.12 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
6.18 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
6.19 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
6.19 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
6.19 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
6.47 s[grosiree-e2e] ·[WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token pWWa6THYPmA1819YWtmCCa7pIC7cbF
6.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
6.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
6.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
6.59 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
6.59 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
6.59 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
6.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
6.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
6.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
6.63 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
6.64 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
6.66 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
6.66 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
8.18 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 952
8.19 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
8.19 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
8.19 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
8.47 s[grosiree-e2e] ·[WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token QAvhjkwUL4WWNiT97XXgdS0kJtepRx
8.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
8.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
8.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
8.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
8.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
8.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
8.47 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
8.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
8.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
8.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
8.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
8.48 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
8.57 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
8.57 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22396
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
8.58 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
8.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
8.60 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
8.61 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 960
8.61 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /grocery-items 200 8515
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
8.62 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
8.63 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.16 s[grosiree-e2e] TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
14.24 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token wvL0u1jWmGYghEY5VbLGzAV0jPBQ3S
14.24 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
14.24 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 303 33
14.24 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
14.24 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.25 s[grosiree-e2e] [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> Validating consistency between /build/source/package-lock.json and /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps/package-lock.json
14.60 s> Setting npm_config_cache to /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps
14.60 s> patching script interpreter paths in node_modules
14.60 s> node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh"
14.60 s> node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
14.60 s> node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
14.60 s> npmwarnUnknown env config "nodedir". This will stop working in the next major version of npm.
14.60 s> npmwarnUnknown env config "platform". This will stop working in the next major version of npm.
14.60 s> npmwarnUnknown env config "arch". This will stop working in the next major version of npm.
14.60 s> Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token X9W65NyVbX6zAD2YTa50V6kXd2dVIK
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22396
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries/clear 200 87
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 943
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 36
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 10
14.60 s> ·[WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token pWWa6THYPmA1819YWtmCCa7pIC7cbF
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22408
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
14.60 s> [WebServer] 2026/06/30 00:24:22 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 952
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
14.60 s> ·[WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token QAvhjkwUL4WWNiT97XXgdS0kJtepRx
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22396
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 960
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /grocery-items 200 8515
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:24 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023
14.60 s> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:81: provisioning a new private database with token wvL0u1jWmGYghEY5VbLGzAV0jPBQ3S
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:24: reading DB from :memory:
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 303 33
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4498
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
14.60 s> [WebServer] 2026/06/30 00:24:30 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 3023