Fixed article page bugs - #30527
Conversation
❌ PR checklist incompleteThis PR cannot be merged until the following are addressed on its linked issue:
The fields live on the linked issue in the Shipping project (open the issue → right sidebar → Projects). After you set them, re-run this check (or push a commit) — issue/project changes do not re-trigger it automatically. Maintainers can bypass this check by adding the |
✅ Playwright Results — workflow succeededValidated commit ✅ 577 passed · ❌ 0 failed · 🟡 0 flaky · ⏭️ 5 skipped · 🧰 0 lifecycle flaky PerformanceBlocking targets: ✅ met · Optimization targets: 🟡 in progress Shard-job maxima below are not the full workflow wall time; the linked run includes build, fixture, planning, and reporting. 🕒 Full workflow signal wall (to summary) 49m 48s ⏱️ Max setup 3m 33s · max shard execution 16m 16s · max shard-job elapsed before upload 19m 50s · reporting 4s 🌐 200.11 requests/attempt · 2.80 app boots/UI scenario · 17.73% common-shard skew Optimization targets still in progress:
How to debug locally# Download playwright-test-results-<shard> artifact and unzip
npx playwright show-trace path/to/trace.zip # view trace |
|
Code Review ✅ Approved 2 resolved / 2 findingsFixes article hierarchy pagination limits and descendant preservation during moves, addressing the infinite loop and stale FQN findings. New unit and E2E tests have been added. ✅ 2 resolved✅ Bug: Moved subtree retains stale descendant FQNs after move
✅ Bug: handleExpandAll can loop forever when childrenCount is unreachable
OptionsDisplay: compact → Showing less information. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Gitar | Powered by Gitar — free for open source |
* Fixed Article page bugs * fixed hierarchy issues * addressed gitar comment * addressed gitar comment * lint fix * fixed playwright test * lint fix



Describe your changes:
Fixes 30576
I worked on ... because ...
Type of change:
High-level design:
N/A — small change.
Tests:
Use cases covered
Unit tests
Backend integration tests
Ingestion integration tests
Playwright (UI) tests
Manual testing performed
UI screen recording / screenshots:
Not applicable.
Checklist:
Fixes <issue-number>: <short explanation>Fixes #<issue-number>above.Summary by Gitar
KnowledgePagesHierarchyand added checks for pagination limitsKnowledgeCenterLayoutwithKnowledgePagesHierarchyandKnowledgePagePureUtilsThis will update automatically on new commits.
Greptile Summary
The PR revises article hierarchy loading and tree reconciliation.
Confidence Score: 3/5
The PR is not yet safe to merge because stale request completions and mutable offset pagination can still leave the article hierarchy incomplete.
Force refresh clears pagination metadata without invalidating older child requests, allowing those requests to restore stale exhaustion, offsets, and tree state; positional pagination also remains vulnerable to sibling insertions or deletions shifting page boundaries.
Files Needing Attention: openmetadata-ui/src/main/resources/ui/src/components/KnowledgeCenter/KnowledgePagesHierarchy/KnowledgePagesHierarchy.tsx; openmetadata-ui/src/main/resources/ui/src/utils/KnowledgePagePureUtils.ts
Important Files Changed
Sequence Diagram
Reviews (6): Last reviewed commit: "lint fix" | Re-trigger Greptile