data(filters): stop blacklisting the Shredder Operating Manual pages - #36
Merged
Merged
Conversation
z_filter_disabled_and_trash.sql excludes every item whose name contains "manual". That rule is aimed at the "Manual: ..." / "Manual of ..." teaching items, but it also swallows "Shredder Operating Manual - Page N", which are tradeable world drops players are meant to buy on the auction house and combine themselves. The filter rule now carries an exception for the pages, and a migration removes the rows it already inserted. The combined "Shredder Operating Manual - Chapter N" items keep matching the rule: they are bound, cannot be traded, and must not be listed. Both statements are name-based, so they resolve against whatever entries the realm's item_template actually holds instead of hardcoded ids.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Reported: the bound chapters are on the auction house instead of the single pages. Desired end state — chapters never listed, pages listed.
What I found
z_filter_disabled_and_trash.sqlblacklistsNAME LIKE '%manual%'. That single pattern catches every "Shredder Operating Manual - ..." entry — the tradeable pages and the combined chapters. So the pages were never eligible in the first place; they are sitting inmod_auctionhousebot_disabled_itemsright now.The rule is clearly aimed at the "Manual: Strong Anti-Venom" / "Manual of Eviscerate" teaching items. The pages are collateral.
Change
(NAME LIKE '%manual%' AND NAME NOT LIKE 'Shredder Operating Manual - Page%'), so a re-apply of that file no longer re-adds the pages. Editing this file is safe — it isINSERT IGNOREonly, unlikemod_auctionhousebot.sql.zz_2026_08_25_00_unblacklist_shredder_pages.sqldeletes the rows already inserted. Idempotent, andzz_keeps it sorted afterz_filter_....Both statements match by name, so they resolve against whatever entries your
item_templateholds — no hardcoded ids that could be wrong.The chapters are deliberately untouched: they still match
%manual%, stay blacklisted, and are bound on top of that.This needs #35 to actually work
The blacklist is only consulted in
InitializeBins(). Any item with a row inmod_auctionhousebot_priceOverrideskips that path entirely, which is what #35 fixes. Until #35 is merged and deployed, blacklisting a chapter has no effect if it holds a price override row.closes #31
Caveat worth knowing: items without a price override are effectively never listed
GetItemsToSell()puts all price-override items in blocks 1 and 2, and the bin-sourced items in blocks 3 and 4. Each cycle only consumesItemsPerCycle(200) entries from the front of that list, and blocks 1+2 hold thousands. Blocks 3 and 4 are in practice never reached.So un-blacklisting the pages makes them eligible, but they will only really show up if they also carry price override rows. Worth checking:
If the pages come back with
has_price_override = 0, they need a backfill run (tools/price-backfill) or hand-written rows before they appear in the market.Verification
%manual%rule was read directly fromz_filter_disabled_and_trash.sql:39; nothing else in that file matches these items.