TryGhostOSS
    Ghost
    Mirrored eager's excluded columns in lazy filter eval ref https://linear.app/ghost/issue/HKG-1937 Eager drops a set of columns from its in-memory URL cache (the exclude lists in services/url/config.js) and evaluates each router's collection filter against that reduced record. An excluded column therefore reads as absent, and NQL treats absent as null — so a filter like custom_template:null matches and eager serves the post. Lazy loads full records and saw the real column value, so the same filter failed to match and it 404'd posts eager routes. Since we are preserving eager's behaviour, lazy now strips eager's excluded columns before evaluating router filters (and neither requires nor force-loads them), reproducing eager's blind spot exactly where eager has one. The base filter is untouched: it still runs against the full record, as eager applies status/type/visibility at query time rather than in the cache.
    nx run ghost:test:e2e
Succeeded
CI Pipeline Execution
Linux
4 CPU cores
read-write access token used
6f56d39029517
95%

Cache hits

19 of 20 tasks used cache.

Get faster results

Learn how to enable distribution.

Atomizer enabled

20 groups of tasks optimized.

© 2026 - Nx Cloud

Terms of ServicePrivacy PolicyChangelogStatusDocsContact Nx CloudPricingCompany@NxDevTools