Service and industry meta descriptions run two sentences together #234

Closed
opened 2026-09-10 04:13:36 -05:00 by null · 1 comment
Owner

Seen at a25077d (v0.9.5).

What is true now. clampDescription (src/lib/seo.js:21) joins its parts with a space, and no shortDesc in src/data/services.js or src/data/industries.js ends in a full stop. All 11 detail pages ship descriptions like "...seamless integration Delivered by Queue North..." and "...for medical providers Queue North delivers...". It also cuts at 158 characters, which would truncate Levi's approved 164- and 191-character descriptions.

What it costs. The description is the snippet a searcher reads first, on 11 pages.

What to do. buildDescription({ approved, parts }) in src/lib/seo.js: approved text is emitted verbatim, and parts are joined as sentences (a full stop added where one is missing) and then clamped. ServiceDetail and IndustryDetail use it, and build their canonicals from SITE_URL.

Not in scope. The four industry descriptions (167 to 178 characters) are still cut with an ellipsis afterwards; shortening them is a wording decision for Null.

Verify: every service and industry page's meta description in dist/ has a full stop after its short description, and node scripts/audit-html.js passes its run-on check.

Seen at a25077d (v0.9.5). **What is true now.** `clampDescription` (`src/lib/seo.js:21`) joins its parts with a space, and no `shortDesc` in `src/data/services.js` or `src/data/industries.js` ends in a full stop. All 11 detail pages ship descriptions like "...seamless integration Delivered by Queue North..." and "...for medical providers Queue North delivers...". It also cuts at 158 characters, which would truncate Levi's approved 164- and 191-character descriptions. **What it costs.** The description is the snippet a searcher reads first, on 11 pages. **What to do.** `buildDescription({ approved, parts })` in `src/lib/seo.js`: approved text is emitted verbatim, and parts are joined as sentences (a full stop added where one is missing) and then clamped. `ServiceDetail` and `IndustryDetail` use it, and build their canonicals from `SITE_URL`. **Not in scope.** The four industry descriptions (167 to 178 characters) are still cut with an ellipsis afterwards; shortening them is a wording decision for Null. Verify: every service and industry page's meta description in `dist/` has a full stop after its short description, and `node scripts/audit-html.js` passes its run-on check.
null added this to the Batch 18: Guards and landmines found building Batch 17 milestone 2026-09-10 04:13:36 -05:00
null added the
P2
bug
seo
labels 2026-09-10 04:13:36 -05:00
null closed this issue 2026-09-10 04:28:30 -05:00
Author
Owner

Fixed in fef8b07. buildDescription in src/lib/seo.js replaces clampDescription: composed fragments are joined as sentences (a full stop added where one is missing) and an owner-approved description is emitted verbatim, never joined and never clamped. ServiceDetail.jsx:42 and IndustryDetail.jsx:36 use it. Verified page by page against a build: all 11 service and industry descriptions gained exactly a full stop between the short description and the sentence that follows, for example /services/unified-communications now reads 'Modernize your business communications with seamless integration. Delivered by Queue North, a veteran-owned 8x8 and Cisco Certified Partner.' and /industries/healthcare 'HIPAA-compliant communications and infrastructure for medical providers. Queue North delivers phone, contact center, network, and IT support...'. No other page's description changed.

Fixed in fef8b07. buildDescription in src/lib/seo.js replaces clampDescription: composed fragments are joined as sentences (a full stop added where one is missing) and an owner-approved description is emitted verbatim, never joined and never clamped. ServiceDetail.jsx:42 and IndustryDetail.jsx:36 use it. Verified page by page against a build: all 11 service and industry descriptions gained exactly a full stop between the short description and the sentence that follows, for example /services/unified-communications now reads 'Modernize your business communications with seamless integration. Delivered by Queue North, a veteran-owned 8x8 and Cisco Certified Partner.' and /industries/healthcare 'HIPAA-compliant communications and infrastructure for medical providers. Queue North delivers phone, contact center, network, and IT support...'. No other page's description changed.
Sign in to join this conversation.
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: null/Queue-North-Website#234
No description provided.