Core reproduction
GET /topics/private-messages/ashley.json?page=0&per_page=20
Observed
TypeError: String can't be coerced into Integer
lib/topic_query/private_message_lists.rb:277
Cause
offset = options[:page].to_i * options[:per_page]
The MCP’s list.ts always constructs:
new URLSearchParams({
page: String(page),
per_page: String(per_page),
});
Expected fix
Omit unsupported per_page from the upstream request, or coordinate a bounded integer-coercion fix in Discourse core.