fix(day-sheet): composite key prevents duplicate-key crash for helper+assignee rows
buildDayRows can emit both an 'assignee' row and a 'helper' row for the same taskId when a programmer previously held a task (accumulated clock time) and later helped on it after reassignment. ValueKey(row.taskId) collided in that case, crashing Flutter's widget tree with a red screen. Fixed by keying on taskId:kind, making each row unique. Caught during targeted QA on the new loading-state / dialog flows. Co-Authored-By: claude-flow <ruv@ruv.net>
This commit is contained in:
@@ -53,7 +53,7 @@ class DaySheetRowsTable extends StatelessWidget {
|
|||||||
children: [
|
children: [
|
||||||
for (final row in rows)
|
for (final row in rows)
|
||||||
_RowTile(
|
_RowTile(
|
||||||
key: ValueKey(row.taskId),
|
key: ValueKey('${row.taskId}:${row.kind}'),
|
||||||
row: row,
|
row: row,
|
||||||
isFlagged: flaggedTaskIds.contains(row.taskId),
|
isFlagged: flaggedTaskIds.contains(row.taskId),
|
||||||
isSelected: selectedTaskIds?.contains(row.taskId) ?? false,
|
isSelected: selectedTaskIds?.contains(row.taskId) ?? false,
|
||||||
|
|||||||
Reference in New Issue
Block a user