1. 0.01 s $ /nix/store/wkkwxc04gdw6b263l1h29pjarjnjdyb6-coreutils-9.8/bin/timeout --kill-after=15s 1800s /nix/store/vnjf0zi1lbln0srm2z743j70kjav76ln-nix-2.34.4/bin/nix --extra-experimental-features nix-command --extra-experimental-features flakes build --no-link git+https://codeberg.org/mtlynch/grosiree?ref=fix-all-items&rev=24471aab066721afaa5f1c2ded00f90bbc5242f6#packages.x86_64-linux.e2e-tests --print-build-logs
  2. 3.03 s this derivation will be built:
  3. 3.03 s /nix/store/r0ds8lig81vs3f8v677ndb34av091dav-grosiree-e2e-0.0.1.drv
  4. 3.03 s this path will be fetched (7.3 MiB download, 7.4 MiB unpacked):
  5. 3.03 s /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps
  6. 3.04 s copying path '/nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps' from 'https://cache.nix-ci.com'...
  7. 3.48 s building '/nix/store/r0ds8lig81vs3f8v677ndb34av091dav-grosiree-e2e-0.0.1.drv'...
  8. 3.54 s grosiree-e2e> Running phase: unpackPhase
  9. 3.55 s grosiree-e2e> unpacking source archive /nix/store/44410mf4gnjar8nl043iy4lbizs2yvhz-source
  10. 3.57 s grosiree-e2e> source root is source
  11. 3.59 s grosiree-e2e> Running phase: patchPhase
  12. 3.60 s grosiree-e2e> Executing npmConfigHook
  13. 3.60 s grosiree-e2e> Configuring npm
  14. 3.60 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
  15. 3.65 s grosiree-e2e> Setting npm_config_cache to /nix/store/xg9n2cx43bwcgqzw3a1nj3wjf6f8x10c-grosiree-e2e-0.0.1-npm-deps
  16. 3.65 s grosiree-e2e> Installing dependencies
  17. 3.79 s grosiree-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  18. 3.79 s grosiree-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  19. 3.79 s grosiree-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  20. 4.60 s grosiree-e2e>
  21. 4.60 s grosiree-e2e> added 100 packages, and audited 101 packages in 855ms
  22. 4.60 s grosiree-e2e>
  23. 4.60 s grosiree-e2e> 25 packages are looking for funding
  24. 4.60 s grosiree-e2e> run `npm fund` for details
  25. 4.60 s grosiree-e2e>
  26. 4.60 s grosiree-e2e> found 0 vulnerabilities
  27. 4.65 s grosiree-e2e> patching script interpreter paths in node_modules
  28. 4.67 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"
  29. 4.68 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"
  30. 4.69 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"
  31. 4.70 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"
  32. 4.71 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"
  33. 4.72 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"
  34. 4.73 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"
  35. 4.74 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"
  36. 4.75 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"
  37. 4.76 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"
  38. 4.77 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"
  39. 4.78 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"
  40. 4.79 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"
  41. 4.80 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"
  42. 4.81 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"
  43. 4.82 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"
  44. 4.83 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"
  45. 4.84 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"
  46. 4.85 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"
  47. 4.86 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"
  48. 4.97 s grosiree-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  49. 4.97 s grosiree-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  50. 4.97 s grosiree-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  51. 5.38 s grosiree-e2e> rebuilt dependencies successfully
  52. 5.40 s grosiree-e2e> patching script interpreter paths in node_modules
  53. 5.52 s grosiree-e2e> Finished npmConfigHook
  54. 5.52 s grosiree-e2e> Running phase: updateAutotoolsGnuConfigScriptsPhase
  55. 5.55 s grosiree-e2e> Running phase: configurePhase
  56. 5.59 s grosiree-e2e> no configure script, doing nothing
  57. 5.59 s grosiree-e2e> Running phase: buildPhase
  58. 5.60 s grosiree-e2e> no Makefile or custom buildPhase, doing nothing
  59. 5.60 s grosiree-e2e> Running phase: checkPhase
  60. 5.76 s grosiree-e2e> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  61. 5.76 s grosiree-e2e> npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  62. 5.76 s grosiree-e2e> npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  63. 6.94 s grosiree-e2e> [WebServer] 2026/04/04 20:46:44 starting Grosireé server
  64. 6.94 s grosiree-e2e> [WebServer] 2026/04/04 20:46:44 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from data/store.db
  65. 7.99 s grosiree-e2e> [WebServer] 2026/04/04 20:46:45 codeberg.org/mtlynch/grosiree/cmd/app/main.go:57: listening on 6001
  66. 8.83 s grosiree-e2e> [WebServer] 2026/04/04 20:46:46 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:47: per-session database = on
  67. 8.83 s grosiree-e2e> [WebServer] 2026/04/04 20:46:46 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/debug/db/per-session 200 0
  68. 8.91 s grosiree-e2e>
  69. 8.91 s grosiree-e2e> Running 5 tests using 1 worker
  70. 9.53 s grosiree-e2e> Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  71. 9.73 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token B57eHrcuQ7nHiYTDVZY3bxqPD3BbGQ
  72. 9.73 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
  73. 9.73 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4437
  74. 9.75 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
  75. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
  76. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
  77. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
  78. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
  79. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
  80. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
  81. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
  82. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
  83. 9.76 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 873
  84. 9.99 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
  85. 9.99 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 19961
  86. 10.04 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
  87. 10.04 s grosiree-e2e> [WebServer] 2026/04/04 20:46:47 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 3
  88. 10.08 s grosiree-e2e> [WebServer] 2026/04/04 20:46:48 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 946
  89. 10.10 s grosiree-e2e> [WebServer] 2026/04/04 20:46:48 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 20820
  90. 10.14 s grosiree-e2e> [WebServer] 2026/04/04 20:46:48 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
  91. 10.15 s grosiree-e2e> [WebServer] 2026/04/04 20:46:48 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 9
  92. 10.15 s grosiree-e2e> [WebServer] 2026/04/04 20:46:48 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
  93. 14.69 s grosiree-e2e> [WebServer] 2026/04/04 20:46:52 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries/1/toggle 200 1214
  94. 15.88 s grosiree-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  95. 16.07 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token qWdEI7ftMfDz9Ct9juB3ga6KCHHUPc
  96. 16.07 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
  97. 16.08 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4437
  98. 16.09 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
  99. 16.10 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
  100. 16.10 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
  101. 16.10 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
  102. 16.10 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
  103. 16.11 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
  104. 16.11 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
  105. 16.11 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
  106. 16.11 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
  107. 16.11 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 873
  108. 16.31 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
  109. 16.31 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 21088
  110. 16.36 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 9
  111. 16.36 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
  112. 16.38 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
  113. 16.42 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 2073
  114. 16.43 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 21947
  115. 16.48 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 9
  116. 16.48 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
  117. 16.90 s grosiree-e2e> ·[WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token ELwkq222AJ1taLqpHWIvNs54xjbImU
  118. 16.90 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
  119. 16.90 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4437
  120. 16.91 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
  121. 16.91 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
  122. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
  123. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
  124. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
  125. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
  126. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
  127. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
  128. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
  129. 16.92 s grosiree-e2e> [WebServer] 2026/04/04 20:46:54 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 873
  130. 17.18 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
  131. 17.18 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 21959
  132. 17.22 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
  133. 17.22 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 9
  134. 17.24 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
  135. 17.27 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 2821
  136. 17.28 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22707
  137. 17.32 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 9
  138. 17.32 s grosiree-e2e> [WebServer] 2026/04/04 20:46:55 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
  139. 21.90 s grosiree-e2e> [WebServer] 2026/04/04 20:46:59 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries/3/toggle 200 2828
  140. 23.11 s grosiree-e2e> TSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  141. 23.29 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token sNST6ZxuMwc15joW3NySFK2tcgZ6NX
  142. 23.29 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
  143. 23.29 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4437
  144. 23.32 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
  145. 23.32 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
  146. 23.33 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
  147. 23.33 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
  148. 23.33 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
  149. 23.34 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
  150. 23.34 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
  151. 23.34 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
  152. 23.34 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
  153. 23.34 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 873
  154. 23.57 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /login 303 0
  155. 23.58 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 200 22726
  156. 23.63 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/sections 200 3
  157. 23.63 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /api/autocomplete/items 200 9
  158. 23.63 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/webfonts/fa-solid-900.woff2 200 150472
  159. 23.68 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: POST /api/groceries 200 3590
  160. 23.69 s grosiree-e2e> [WebServer] 2026/04/04 20:47:01 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /grocery-items 200 9671
  161. 24.75 s grosiree-e2e> [WebServer] 2026/04/04 20:47:02 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: DELETE /api/item-sections/Frozen peas 200 0
  162. 25.13 s grosiree-e2e> ·[WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/db_dev.go:91: provisioning a new private database with token D0XFTQpWIRcMmocFCXXZNgR09xZAUz
  163. 25.13 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/store/sqlite/sqlite.go:23: reading DB from :memory:
  164. 25.13 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET / 303 33
  165. 25.13 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /login 200 4437
  166. 25.15 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/css/bootstrap.min.css 200 194901
  167. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/fontawesome.min.css 200 80651
  168. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/fontawesome@6.2.0/css/solid.min.css 200 572
  169. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/css/style.css 200 574
  170. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/confirm-dialog.js 200 873
  171. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-settings.js 200 813
  172. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/js/htmx-ext/clear-before-send.js 200 775
  173. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx@2.0.4/htmx.min.js 200 50917
  174. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/bootstrap@5.2.2/js/bootstrap.bundle.min.js 200 80496
  175. 25.17 s grosiree-e2e> [WebServer] 2026/04/04 20:47:03 codeberg.org/mtlynch/grosiree/handlers/middleware.go:13: GET /static/third-party/htmx-ext-response-targets@2.0.0/response-targets.js 200 3722
  176. 25.58 s grosiree-e2e> ·
  177. 25.58 s grosiree-e2e>
  178. 25.58 s grosiree-e2e> 1) [chromium] › e2e/index.spec.ts:23:7 › Index page › optimistically applies in-cart class before server responds
  179. 25.58 s grosiree-e2e>
  180. 25.58 s grosiree-e2e> Test timeout of 5000ms exceeded.
  181. 25.58 s grosiree-e2e>
  182. 25.58 s grosiree-e2e> Error: expect(locator).toHaveClass(expected) failed
  183. 25.58 s grosiree-e2e>
  184. 25.58 s grosiree-e2e> Locator: locator('#grocery-list .grocery-item').first()
  185. 25.58 s grosiree-e2e> Expected pattern: /in-cart/
  186. 25.58 s grosiree-e2e> Received string: "
  187. 25.58 s grosiree-e2e> grocery-item
  188. 25.58 s grosiree-e2e> "
  189. 25.58 s grosiree-e2e>
  190. 25.58 s grosiree-e2e> Call log:
  191. 25.58 s grosiree-e2e> - Expect "toHaveClass" with timeout 5000ms
  192. 25.58 s grosiree-e2e> - waiting for locator('#grocery-list .grocery-item').first()
  193. 25.58 s grosiree-e2e> 8 × locator resolved to <div id="item-1" class="↵ grocery-item↵ ">…</div>
  194. 25.58 s grosiree-e2e> - unexpected value "
  195. 25.58 s grosiree-e2e> grocery-item
  196. 25.58 s grosiree-e2e> "
  197. 25.58 s grosiree-e2e>
  198. 25.58 s grosiree-e2e>
  199. 25.58 s grosiree-e2e> 36 | await needItem.locator('input[type="checkbox"]').click();
  200. 25.58 s grosiree-e2e> 37 |
  201. 25.58 s grosiree-e2e> > 38 | await expect(needItem).toHaveClass(/in-cart/);
  202. 25.58 s grosiree-e2e> | ^
  203. 25.58 s grosiree-e2e> 39 | unblock();
  204. 25.58 s grosiree-e2e> 40 | });
  205. 25.58 s grosiree-e2e> 41 |
  206. 25.58 s grosiree-e2e> at /build/source/e2e/index.spec.ts:38:28
  207. 25.58 s grosiree-e2e>
  208. 25.58 s grosiree-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  209. 25.58 s grosiree-e2e> e2e-results/index-Index-page-optimisti-3051a-lass-before-server-responds-chromium/video.webm
  210. 25.58 s grosiree-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
  211. 25.58 s grosiree-e2e>
  212. 25.58 s grosiree-e2e> Error Context: e2e-results/index-Index-page-optimisti-3051a-lass-before-server-responds-chromium/error-context.md
  213. 25.58 s grosiree-e2e>
  214. 25.58 s grosiree-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  215. 25.58 s grosiree-e2e> e2e-results/index-Index-page-optimisti-3051a-lass-before-server-responds-chromium/trace.zip
  216. 25.58 s grosiree-e2e> Usage:
  217. 25.58 s grosiree-e2e>
  218. 25.58 s grosiree-e2e> npx playwright show-trace e2e-results/index-Index-page-optimisti-3051a-lass-before-server-responds-chromium/trace.zip
  219. 25.58 s grosiree-e2e>
  220. 25.58 s grosiree-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
  221. 25.58 s grosiree-e2e>
  222. 25.58 s grosiree-e2e> 2) [chromium] › e2e/index.spec.ts:55:7 › Index page › checking an item off fades it to partial opacity
  223. 25.58 s grosiree-e2e>
  224. 25.58 s grosiree-e2e> Test timeout of 5000ms exceeded.
  225. 25.58 s grosiree-e2e>
  226. 25.58 s grosiree-e2e> Error: expect(locator).not.toHaveCSS(expected) failed
  227. 25.58 s grosiree-e2e>
  228. 25.58 s grosiree-e2e> Locator: locator('#grocery-list .grocery-item').first()
  229. 25.58 s grosiree-e2e> Expected: not "1"
  230. 25.58 s grosiree-e2e> Received: "1"
  231. 25.58 s grosiree-e2e>
  232. 25.58 s grosiree-e2e> Call log:
  233. 25.58 s grosiree-e2e> - Expect "not toHaveCSS" with timeout 5000ms
  234. 25.58 s grosiree-e2e> - waiting for locator('#grocery-list .grocery-item').first()
  235. 25.58 s grosiree-e2e> 8 × locator resolved to <div id="item-3" class="↵ grocery-item↵ ">…</div>
  236. 25.58 s grosiree-e2e> - unexpected value "1"
  237. 25.58 s grosiree-e2e>
  238. 25.58 s grosiree-e2e>
  239. 25.58 s grosiree-e2e> 69 |
  240. 25.58 s grosiree-e2e> 70 | // Wait for the CSS transition to start and measurably change the opacity.
  241. 25.58 s grosiree-e2e> > 71 | await expect(needItem).not.toHaveCSS("opacity", opacityBefore);
  242. 25.58 s grosiree-e2e> | ^
  243. 25.58 s grosiree-e2e> 72 |
  244. 25.58 s grosiree-e2e> 73 | unblock();
  245. 25.58 s grosiree-e2e> 74 | });
  246. 25.58 s grosiree-e2e> at /build/source/e2e/index.spec.ts:71:32
  247. 25.58 s grosiree-e2e>
  248. 25.58 s grosiree-e2e> attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  249. 25.58 s grosiree-e2e> e2e-results/index-Index-page-checking--26714-fades-it-to-partial-opacity-chromium/video.webm
  250. 25.58 s grosiree-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
  251. 25.58 s grosiree-e2e>
  252. 25.58 s grosiree-e2e> Error Context: e2e-results/index-Index-page-checking--26714-fades-it-to-partial-opacity-chromium/error-context.md
  253. 25.58 s grosiree-e2e>
  254. 25.58 s grosiree-e2e> attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  255. 25.58 s grosiree-e2e> e2e-results/index-Index-page-checking--26714-fades-it-to-partial-opacity-chromium/trace.zip
  256. 25.58 s grosiree-e2e> Usage:
  257. 25.58 s grosiree-e2e>
  258. 25.58 s grosiree-e2e> npx playwright show-trace e2e-results/index-Index-page-checking--26714-fades-it-to-partial-opacity-chromium/trace.zip
  259. 25.58 s grosiree-e2e>
  260. 25.58 s grosiree-e2e> ────────────────────────────────────────────────────────────────────────────────────────────────
  261. 25.58 s grosiree-e2e>
  262. 25.58 s grosiree-e2e> 2 failed
  263. 25.58 s grosiree-e2e> [chromium] › e2e/index.spec.ts:23:7 › Index page › optimistically applies in-cart class before server responds
  264. 25.58 s grosiree-e2e> [chromium] › e2e/index.spec.ts:55:7 › Index page › checking an item off fades it to partial opacity
  265. 25.58 s grosiree-e2e> 3 passed (18.7s)
  266. 25.77 s error: Cannot build '/nix/store/r0ds8lig81vs3f8v677ndb34av091dav-grosiree-e2e-0.0.1.drv'.
  267. 25.77 s Reason: builder failed with exit code 1.
  268. 25.77 s Output paths:
  269. 25.77 s /nix/store/syj78hla9gk96894sxax857nl19gdz89-grosiree-e2e-0.0.1