An unidentified item keeps its party name outside the wiki (#877) #994
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/877-title-reads"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #877. A privacy fix.
The problem
An unidentified item (IS-122) shows players its
player_titleand GMs its true title. The wiki's own reads made that swap; about 250 other reads of a.titleunderapp/had never been audited.PUT /lore/{id}/identityaccepts any kind of page, not only items, so quests, characters and NPCs can be unidentified too.Sixteen leaks, each fixed with a test
All eleven new tests in
tests/wiki/test_unidentified_titles.pyfail against main and pass here./quests.New helpers in
wiki_audience:sql_table_title()andsql_title_for(viewer), checked against the Python helpers on every page in the test campaign.So it can't reopen quietly
tests/wiki/test_title_readers.py, in the shape oftest_body_readers.py. It lists every.titleread underapp/by module, function and expression. Each page-title read has a count and a reason; a new read, or a second read in an already-listed function, fails CI until someone classifies it. Its docstring states its blind spots (rows read by key, a title copied into another column, aliases, anything outsideapp/).Decisions
titlein two events.Checked
tests/wikiand the retention tests, 621 passed.securityfragment).🤖 Generated with Claude Code