v1.6.4
Pairs with fogproject #1054–#1058 (ADR 0011).
25 call sites across 19 plugins move off Route::listem(...); json_decode(Route::getData()) and onto getList() / getItem() / asValue(). A router failure inside a plugin hook now raises instead of reaching breakHead()'s exit, so it can no longer end a page render half-written.
The 12 raw sites that remain are HTTP response boundaries and stay as they are: the nine report endpoints, location's two storage lookups, and listsitehosts's AJAX_DATA_DISPLAY_CHANGE payload. There the paginated envelope is the response.
Requires a core carrying the wrappers. FOG_PLUGINS_VERSION and route.class.php both live in the core tree, so the pin and the wrappers always upgrade together — an install cannot end up with this release on a core that lacks them.