Found while implementing the task-list width work in packages/plugin-gantt/src/GanttView.tsx (PR #7420). Filed unassigned, not claiming, and deliberately not fixed in that PR — it is outside its scope.
What is there
One line inside the GanttView component body:
consttaskListWidth_LEGACY_REMOVED=null;// taskListWidth now derived from useResizeObserver above
Measured on origin/main24d4a21ff5ea7a4baa5915c0e3701cd06b8f77e9:
- the identifier appears exactly once in the whole repo — its own declaration.
git grep -n taskListWidth_LEGACY_REMOVED returns one line, so there is no reader anywhere, in plugin-gantt or outside it. - its value is the literal
null, so it carries no state and no side effect. - its comment describes a migration that has already happened: the real
taskListWidth is derived a few hundred lines above it from the useResizeObserver container width.
Why it is worth a card rather than nothing
It is inert, so nothing is broken today. The cost is that it reads like a live seam: a name with LEGACY_REMOVED in it, inside the component, sitting near the width logic, invites the next reader to believe there is a legacy width path still to be reconciled. The comment is the only documentation of a refactor that is complete, and it documents it in the one place a reader will mistake it for a to-do.
It also sits directly adjacent to the container-sizing helpers that #7228 already covers (columnWidthForContainer branching on width and returning 110 from all three arms). Same file, same class of leftover — a dead arm of a finished change that the compiler and lint have no reason to complain about — so the two may want to be settled in one stroke. That is triage's call, not this card's.
Reproduction
git grep -n 'taskListWidth_LEGACY_REMOVED' # exactly one hit, the declaration
Suggested directions — none proposed as decided
- A. Delete the line. Nothing reads it; if the fact that the width now comes from the ResizeObserver is worth recording, the derivation site already carries a comment saying so.
- B. Delete the line and fold the surviving intent into the comment already sitting on the
taskListWidth derivation, so the note lives where a reader needs it. - C. Leave it. Cheapest, and it keeps costing one confused read at a time.
Related: #7228 (the same file's other dead sizing arm), #7204 / #7224 (the width work this was found under).
Generated by Claude Code
Found while implementing the task-list width work in
packages/plugin-gantt/src/GanttView.tsx(PR #7420). Filed unassigned, not claiming, and deliberately not fixed in that PR — it is outside its scope.What is there
One line inside the
GanttViewcomponent body:Measured on
origin/main24d4a21ff5ea7a4baa5915c0e3701cd06b8f77e9:git grep -n taskListWidth_LEGACY_REMOVEDreturns one line, so there is no reader anywhere, inplugin-ganttor outside it.null, so it carries no state and no side effect.taskListWidthis derived a few hundred lines above it from theuseResizeObservercontainer width.Why it is worth a card rather than nothing
It is inert, so nothing is broken today. The cost is that it reads like a live seam: a name with
LEGACY_REMOVEDin it, inside the component, sitting near the width logic, invites the next reader to believe there is a legacy width path still to be reconciled. The comment is the only documentation of a refactor that is complete, and it documents it in the one place a reader will mistake it for a to-do.It also sits directly adjacent to the container-sizing helpers that #7228 already covers (
columnWidthForContainerbranching on width and returning 110 from all three arms). Same file, same class of leftover — a dead arm of a finished change that the compiler and lint have no reason to complain about — so the two may want to be settled in one stroke. That is triage's call, not this card's.Reproduction
Suggested directions — none proposed as decided
taskListWidthderivation, so the note lives where a reader needs it.Related: #7228 (the same file's other dead sizing arm), #7204 / #7224 (the width work this was found under).
Generated by Claude Code