Severity: low — discoverability gap.
Surfaced by: titan Phase 2.4 (Wheels 4.0 upgrade), 2026-05-15.
Description
paginationNav() builds a local.subArgs struct by skipping a fixed list of its own argument names and copying everything else through to its sub-helpers (firstPageLink, previousPageLink, pageNumberLinks, nextPageLink, lastPageLink). When an arg doesn't match any sub-helper's accepted args, it's silently dropped — no error, no warning, no log.
Example: passing windowSize=3 works (it goes to pageNumberLinks). Passing divider=\" / \" works on the page-number primitive. Passing something like prependToList=\"<ul>\" does nothing — no error, but the user has no signal that the arg was rejected.
Why this matters
Users coming from paginationLinks() have muscle memory for arg names that no longer apply. Without a signal that those args were ignored, debugging styling issues becomes "is this arg working? let me try a different value… still doesn't work… is the value being applied at all?"
Suggested fix
At the bottom of paginationNav()'s arg fan-out, if any arg in arguments didn't get consumed by a sub-helper, log a warning:
if (StructCount(local.unconsumedArgs)) {
DeprecationLogger.log(message=\"paginationNav: ignored args [#StructKeyList(local.unconsumedArgs)#]\");
}
Or fail fast in development environment, warn in production.
cc @bpamiri
Severity: low — discoverability gap.
Surfaced by: titan Phase 2.4 (Wheels 4.0 upgrade), 2026-05-15.
Description
paginationNav()builds alocal.subArgsstruct by skipping a fixed list of its own argument names and copying everything else through to its sub-helpers (firstPageLink,previousPageLink,pageNumberLinks,nextPageLink,lastPageLink). When an arg doesn't match any sub-helper's accepted args, it's silently dropped — no error, no warning, no log.Example: passing
windowSize=3works (it goes topageNumberLinks). Passingdivider=\" / \"works on the page-number primitive. Passing something likeprependToList=\"<ul>\"does nothing — no error, but the user has no signal that the arg was rejected.Why this matters
Users coming from
paginationLinks()have muscle memory for arg names that no longer apply. Without a signal that those args were ignored, debugging styling issues becomes "is this arg working? let me try a different value… still doesn't work… is the value being applied at all?"Suggested fix
At the bottom of
paginationNav()'s arg fan-out, if any arg inargumentsdidn't get consumed by a sub-helper, log a warning:if (StructCount(local.unconsumedArgs)) { DeprecationLogger.log(message=\"paginationNav: ignored args [#StructKeyList(local.unconsumedArgs)#]\"); }Or fail fast in
developmentenvironment, warn inproduction.cc @bpamiri