Scrum-board sprint-graph data table overflows the fixed w-[300px] burndown slot (compact chart hardcoded width=360, no min-w-0/overflow containment)
Bug: On the scrum board sprint header, the cycle-graph (burndown) slot's data table overflows its fixed-width card — the table runs past the right edge / pushes horizontal scroll.
Surface & component chain (verified):
app/(authed)/boards/_components/SprintHeaderBurndown.tsx— the sprint-header slot is a fixedw-[300px] shrink-0card.- It renders
CycleGraphChartwithvariant="compact"(app/(authed)/backlog/_components/CycleGraphChart.tsx), which hardcodes the compact chartwidth={360}(line ~274) — already 60px wider than the 300px slot. - The chart primitive renders the finding-#35 a11y fallback via
ChartDataTable(components/ui/charts/ChartDataTable.tsx): a visible<details>disclosure containing a real<table className="w-full">(line ~62), 5 columns (Day + scope/completed/started/target). It is NOT sr-only — a sighted user can open it.
Root cause: the compact chart + its <table w-full> size to ~360px (and the 5-column table can demand even more at min-content), but the slot card is fixed w-[300px] with no min-w-0 / overflow-x containment — so the chart/table overflow horizontally. This is the min-w-0 horizontal-overflow bug class.
Repro: open a board with an active sprint → the sprint-header burndown slot; the chart/data table overflows the 300px card (open the "data table" <details> to see the table run past the card edge). More day-rows / wider locale labels make it worse.
Fix direction:
- Make the compact chart responsive to the slot width (drop the fixed
width={360}; size to the container, ≤ the card width) instead of a hardcoded 360 inside a 300px box. - Constrain the
ChartDataTable<details>within the card:min-w-0on the flex column +overflow-x-autoon the table wrapper so a wide table scrolls inside the card rather than overflowing it. - Keep AA contrast and the finding-#35 data-table fallback intact; verify on the board at the 300px slot width and on the full report variant (no regression).
Acceptance criteria:
- The sprint-header cycle-graph slot (chart + the data-table
<details>, expanded) stays within thew-[300px]card — no horizontal page/card overflow at the board's slot width. - A long sprint (many day-rows) and a wide-label locale both stay contained (table scrolls within the card if needed).
- The
fullreport variant is unaffected.