next at aba02bc fails make check on its own, with no branch applied.
--- FAIL: TestGormScanIsNeverCalledOutsideTests (0.15s)
Error: Should be empty, but was
[internal/delivery/queue_depth.go:109:3 internal/delivery/queue_depth.go:161:3]
FAIL sneak.berlin/go/webhooker/internal/gormlog 0.889s
Both call sites are in internal/delivery/queue_depth.go, which arrived
with the queue-depth metrics work. internal/gormlog/scan_guard_test.go
exists because (*gorm.DB).Scan swaps GORM's own trace recorder in for
the logging adapter, and that recorder does not implement gorm.ParamsFilter — so the statement is logged with its bound values
interpolated, bypassing (*Logger).ParamsFilter. The guard is the only
thing holding that invariant.
The second call site binds a status IN ? list of delivery statuses,
so today's leak is low-value; the point of the guard is that the next
call site added by copying this pattern will not be.
The fix per the guard's own message is Find, Pluck, or Raw(...).Row().Scan.
Reproduced by checking out origin/next clean and running make check
— it is not caused by any open branch. Found while running the gate for #228, whose branch inherits the
failure through its rebase; nothing in that branch touches internal/delivery/queue_depth.go or internal/gormlog.
`next` at `aba02bc` fails `make check` on its own, with no branch applied.
```
--- FAIL: TestGormScanIsNeverCalledOutsideTests (0.15s)
Error: Should be empty, but was
[internal/delivery/queue_depth.go:109:3 internal/delivery/queue_depth.go:161:3]
FAIL sneak.berlin/go/webhooker/internal/gormlog 0.889s
```
Both call sites are in `internal/delivery/queue_depth.go`, which arrived
with the queue-depth metrics work. `internal/gormlog/scan_guard_test.go`
exists because `(*gorm.DB).Scan` swaps GORM's own trace recorder in for
the logging adapter, and that recorder does not implement
`gorm.ParamsFilter` — so the statement is logged with its bound values
interpolated, bypassing `(*Logger).ParamsFilter`. The guard is the only
thing holding that invariant.
The second call site binds a `status IN ?` list of delivery statuses,
so today's leak is low-value; the point of the guard is that the next
call site added by copying this pattern will not be.
The fix per the guard's own message is `Find`, `Pluck`, or
`Raw(...).Row().Scan`.
Reproduced by checking out `origin/next` clean and running `make check`
— it is not caused by any open branch. Found while running the gate for
https://git.eeqj.de/sneak/webhooker/pulls/228, whose branch inherits the
failure through its rebase; nothing in that branch touches
`internal/delivery/queue_depth.go` or `internal/gormlog`.
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.
nextataba02bcfailsmake checkon its own, with no branch applied.Both call sites are in
internal/delivery/queue_depth.go, which arrivedwith the queue-depth metrics work.
internal/gormlog/scan_guard_test.goexists because
(*gorm.DB).Scanswaps GORM's own trace recorder in forthe logging adapter, and that recorder does not implement
gorm.ParamsFilter— so the statement is logged with its bound valuesinterpolated, bypassing
(*Logger).ParamsFilter. The guard is the onlything holding that invariant.
The second call site binds a
status IN ?list of delivery statuses,so today's leak is low-value; the point of the guard is that the next
call site added by copying this pattern will not be.
The fix per the guard's own message is
Find,Pluck, orRaw(...).Row().Scan.Reproduced by checking out
origin/nextclean and runningmake check— it is not caused by any open branch. Found while running the gate for
#228, whose branch inherits the
failure through its rebase; nothing in that branch touches
internal/delivery/queue_depth.goorinternal/gormlog.clawbot referenced this issue2026-08-20 07:38:15 +02:00
clawbot referenced this issue2026-08-20 11:07:50 +02:00