You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
ppr on a NAMELESS route is silently ignored — no shell lane, no header, no warning #714
path("/test/:id",handler,{ppr: {ttl: 300,swr: 86400}})// no name
Document GETs return no x-rango-shell header at all — the shell lane never engages: no store read, no capture, no MISS/HIT, no log. Adding { name: "testDetail", ppr: ... } makes the identical route engage immediately (MISS + capture scheduled).
Why it was never caught
Every ppr route in both fixture apps AND the discovering app's working routes happens to carry name. The nameless+ppr combination has zero coverage.
Mechanism (to verify during fix)
resolvePprConfig(reqCtx._classifiedRoute?.manifestEntry) returns null when the classified entry doesn't carry the ppr option — for nameless routes the manifest entry apparently loses (or never receives) route options. Null is indistinguishable from "route never declared ppr" by design ("no store read, no capture, no logs"), so the misconfiguration is silent.
Fix bar
Either nameless ppr WORKS (preferred — name is orthogonal to caching), or route registration fails loudly at startup ("ppr requires name"). Silent ignore is the only unacceptable outcome. E2e coverage: a nameless ppr route in both apps, dev + production, asserting MISS→HIT.
Activity
feat(ppr): captureTimeout route option + handle-settle capture gate; …
feat(ppr): captureTimeout route option + handle-settle capture gate; …