A list read shipped every article's body, and a category page listed nothing

FixKBService
Shipped
September 2, 2026 at 4:26 AM UTC
Author
Kamo
Commit
61e762b

Two defects on the public reads, both visible on kamocrm.com/help-center. The index served 3.9 MB of HTML. tree-by-parent-slug returns every node with its full contentJson and contentPlainText, so the entire knowledge base -- 307 Lexical documents -- was serialized into the page in order to render sixteen headings and a list of titles. List reads now carry a 220-character excerpt instead, which is what a card actually shows and about one percent of the size. The single-article reads keep the body; listNode is a separate step from node precisely so they cannot lose it by accident. A category page rendered "In this section" above nothing. single() set hasChildren and never set the children themselves, so a visitor who reached /help-center/crm arrived at a dead end with eight sections one level below them and no way to see any of them. childLinks now carries them -- a list of links, not a nested copy of the subtree, which is how a list view ends up dragging a whole branch along. Tree nodes also gain descendantCount, and links gain childCount, so a directory can say how big a section is without asking again.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing