Skip to content

Fix CRM skill truncation on profile pages#836

Merged
wicksipedia merged 2 commits intomainfrom
fix/835-crm-skill-pagination
Apr 30, 2026
Merged

Fix CRM skill truncation on profile pages#836
wicksipedia merged 2 commits intomainfrom
fix/835-crm-skill-pagination

Conversation

@wicksipedia
Copy link
Copy Markdown
Member

@wicksipedia wicksipedia commented Apr 30, 2026

Summary

  • Dataverse OData responses are capped at 5000 rows; src/helpers/CRMApi.js ignored @odata.nextLink, silently truncating /ssw_userskills, /ssw_skills, /ssw_consultingservices, and the saved-query systemusers view.
  • Marina Gerber's profile (and likely others) was showing only a couple of skills because most user-skill rows fell on a later page, and many that were returned were filtered out when their matching skill row hadn't been fetched.
  • Adds a fetchAllPages helper that loops on @odata.nextLink and uses it for the four unbounded collections. /sites left as-is.

Fixes #835

Test plan

  • Build locally with real CRM creds (yarn build) and confirm console shows Fetched N rows from .../ssw_userskills across M page(s) with N > 5000 and M > 1
  • Load Marina Gerber's profile and confirm TinaCMS plus other Published skills render
  • Spot-check 2-3 other profiles for previously-missing skills
  • Staging deploy from this PR's merge to main — verify the same on staging before promoting to release/xx

🤖 Generated with Claude Code

wicksipedia and others added 2 commits April 30, 2026 14:11
Dataverse caps each OData response at 5000 rows and returns
@odata.nextLink for the rest. The CRM helper ignored that link, so
once /ssw_userskills, /ssw_skills, /ssw_consultingservices, or the
saved-query systemusers view grew past one page, rows were silently
dropped. When a userskill row's matching skill fell on a later page,
the skill lookup returned undefined and the row was filtered out as
unpublished — explaining why some users (e.g. Marina Gerber) saw only
a couple of skills on their profile despite having many Published
skills in CRM.

Add a fetchAllPages helper that loops while @odata.nextLink is set and
use it for the four collections that can grow without bound. Leave
/sites alone — it's a small fixed list.

Fixes #835

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Documents the three-source build pipeline (markdown profiles + Dynamics
CRM + YouTube) that gatsby-node.js stitches together, the China build
branching, the webpack polyfill setup, the dev-only rules proxy, and
the pinned dependencies that should not be bumped without checking
packageComments in package.json.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Member

@bradystroud bradystroud left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@wicksipedia wicksipedia merged commit cd56055 into main Apr 30, 2026
2 checks passed
@wicksipedia wicksipedia deleted the fix/835-crm-skill-pagination branch April 30, 2026 04:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

🐛 Bug - Updated skills not отображing on SSW People profile

2 participants