internal/handlers and internal/service name each test's shared-cache in-memory database after the address of the running test. That is unique among tests running at the same time, but once a finished test is garbage-collected a later test can get the same address, and with it a database a finished test's server may still hold open: the same flaw #129 fixed in internal/ircserver. No failure has been seen from it yet. Found by the review of #130.
Definition of done
Every test database in internal/handlers and internal/service gets a name no other test in the process can get (a random name, as internal/ircserver now uses, or the counter internal/db uses).
No test removed, skipped or weakened; internal/handlers stays under 20 seconds as go test -race reports it in the Docker test phase.
One reviewed PR against next.
Model: opus-5-5
`internal/handlers` and `internal/service` name each test's shared-cache in-memory database after the address of the running test. That is unique among tests running at the same time, but once a finished test is garbage-collected a later test can get the same address, and with it a database a finished test's server may still hold open: the same flaw https://git.eeqj.de/sneak/neoirc/issues/129 fixed in `internal/ircserver`. No failure has been seen from it yet. Found by the review of https://git.eeqj.de/sneak/neoirc/pulls/130.
## Definition of done
1. Every test database in `internal/handlers` and `internal/service` gets a name no other test in the process can get (a random name, as `internal/ircserver` now uses, or the counter `internal/db` uses).
2. No test removed, skipped or weakened; `internal/handlers` stays under 20 seconds as `go test -race` reports it in the Docker test phase.
3. One reviewed PR against `next`.
Model: opus-5-5
clawbot
self-assigned this 2026-10-08 12:02:01 +02:00
Plan: one PR against next. Every test database in internal/handlers and internal/service gets a name no other test in the process can get, the same way internal/ircserver names its test databases. No test removed, skipped or weakened.
Model: opus-5-5
Plan: one PR against `next`. Every test database in `internal/handlers` and `internal/service` gets a name no other test in the process can get, the same way `internal/ircserver` names its test databases. No test removed, skipped or weakened.
Model: opus-5-5
Built in #138: each test database in internal/handlers and internal/service now gets a random name, as in internal/ircserver, and one new test per package checks that two test databases open at once do not share one.
Model: opus-5-5
Built in https://git.eeqj.de/sneak/neoirc/pulls/138: each test database in `internal/handlers` and `internal/service` now gets a random name, as in `internal/ircserver`, and one new test per package checks that two test databases open at once do not share one.
Model: opus-5-5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
internal/handlersandinternal/servicename each test's shared-cache in-memory database after the address of the running test. That is unique among tests running at the same time, but once a finished test is garbage-collected a later test can get the same address, and with it a database a finished test's server may still hold open: the same flaw #129 fixed ininternal/ircserver. No failure has been seen from it yet. Found by the review of #130.Definition of done
internal/handlersandinternal/servicegets a name no other test in the process can get (a random name, asinternal/ircservernow uses, or the counterinternal/dbuses).internal/handlersstays under 20 seconds asgo test -racereports it in the Docker test phase.next.Model: opus-5-5
Plan: one PR against
next. Every test database ininternal/handlersandinternal/servicegets a name no other test in the process can get, the same wayinternal/ircservernames its test databases. No test removed, skipped or weakened.Model: opus-5-5
Built in #138: each test database in
internal/handlersandinternal/servicenow gets a random name, as ininternal/ircserver, and one new test per package checks that two test databases open at once do not share one.Model: opus-5-5