Docs emit duplicate heading IDs on Chart Factories and Capability Matrix
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 55/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Quiet
- Domain
- documentation, testing-qa
Research direction
Start by locating the source for /docs/xy/api-reference/chart-factories/ and /docs/xy/styling/capabilities/, then inspect the production build at commit d505ef5789d8b18e23fd838300b039932dc399ce. Use document.querySelectorAll('[id]') and check the page TOCs and copied anchors. Done means every public route has unique IDs, with regression coverage for duplicate IDs.
Written by the indexing model from the issue text.
Description
Summary
Two production documentation pages emit duplicate DOM IDs, making copied anchors and table-of-contents navigation ambiguous.
Verified on the production build for main at d505ef5789d8b18e23fd838300b039932dc399ce.
Affected pages
| Page | Duplicate IDs |
|---|---|
/docs/xy/api-reference/chart-factories/ |
xy-chart, shared-chart-props |
/docs/xy/styling/capabilities/ |
notes |
The Capability Matrix source has two visible ### Notes headings. Chart Factories combines authored and generated reference headings; the generated route contains both colliding strings twice.
Actual behavior
document.querySelectorAll('[id]') returns more than one element for each ID above. Both Capability Matrix TOC entries point to #notes.
Expected behavior
Every public page has unique DOM IDs, and each TOC/copy-link target identifies exactly one section.
Acceptance criteria
- Rename or disambiguate both
Notesanchors. - Disambiguate authored/generated
xy-chartandshared-chart-propsanchors. - TOC links and copied anchors land on the intended sections.
- Add an all-public-route duplicate-ID regression check.
- Dominant language
- Python
- Stars
- 1.9k
- Forks
- 76
- Avg merge
- 1h 25m
- Merged PRs (30d)
- 5
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from reflex-dev/xy
-
Skip finite/log visibility scans when zone maps already prove all-finite on linear axesMay be free again A pull request for this issue was closed without being merged. Openneeds investigate performance
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
reflex-dev/xy#169 ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
reflex-dev/xy#523 ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
reflex-dev/xy#516 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 74/100
reflex-dev/xy#512 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 68/100
reflex-dev/xy#511 ·
Maintainers usually reply within 1 day
Similar issues
-
[BUG] Container scenario crashes without expected_recovery_time, kube DNS example uses retry_waitOpenneeds-triage
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
krkn-chaos/krkn#1627 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
NousResearch/hermes-agent#136483 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
[BUG] LazyStackedTensorDictStore zeroes the last byte of a new key set on the last elementPossibly taken @peterdsharpe claimed this today. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
pytorch/tensordict#2307 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day