fix: keep collapsed browse instrumentation private

This commit is contained in:
Jonathan Finley 2026-03-14 00:13:29 -04:00
parent 8f969b1235
commit b241e29e0c
2 changed files with 5 additions and 2 deletions

View file

@ -646,13 +646,15 @@ class LibraryController {
if (filterByGroup === 'series' && filterByValue !== 'no-series' && payload.collapseseries) {
const seriesId = libraryFilters.decode(payload.filterBy.split('.')[1])
payload.sortBy = libraryItemsBookFilters.getCollapsedSeriesBrowseSort(payload.sortBy)
payload.browseProfile = browseProfile
const collapsedSeriesWindow = {
limit: Number(payload.limit) || 0,
offset: Number(payload.offset) || 0
}
payload.hideSingleBookSeries = !!req.library.settings.hideSingleBookSeries
const { libraryItems, count } = await libraryItemsBookFilters.getCollapsedSeriesWindow(req.library.id, seriesId, req.user, include, payload, collapsedSeriesWindow)
const { libraryItems, count } = await libraryItemsBookFilters.getCollapsedSeriesWindow(req.library.id, seriesId, req.user, include, {
...payload,
browseProfile
}, collapsedSeriesWindow)
payload.total = count
payload.results = await libraryHelpers.toCollapsedSeriesPayload(libraryItems, seriesId, req.library.settings.hideSingleBookSeries)
} else {

View file

@ -341,6 +341,7 @@ describe('LibraryController large-library browse contract', () => {
libraryId: 'lib_1'
})
expect(getCollapsedSeriesWindowStub.firstCall.args[4].browseProfile.mark).to.be.a('function')
expect(res.json.firstCall.args[0].browseProfile).to.equal(undefined)
})
it('does not run exact count work or joined findAndCountAll again on follow-up keyset chunks', async () => {