# Bug List for 1.0.6 Set 2 ## On mobile, the COMPLETED (and possible other banners) overflow it's bounding box - [x] Fixed ![alt text](image.png) We need the banner text to be a little smaller on mobile screens so it does not go outside the dark border box. **Fix:** Added `@media (max-width: 480px)` CSS rule for `.chore-stamp` in both ChildView.vue and ParentView.vue. Reduces `font-size` to `0.82rem`, `letter-spacing` to `1px`, and `padding` to `0.3rem 0` on small screens. ## Extending time on a chore that is too late causes task icons to disappear. - [x] Fixed When the user extends time on a chore that is TOO LATE, I think 2 identical calls are being made to the api /child/[id]/list-tasks. This is causing a condition where images no longer appear until the user refreshes. Could SSE calls be causing this? Could also be a childChoreListRef.value?.refresh() is called in the UI too many times too quickly. **Root Cause:** Two issues combined: 1. `doExtendTime` in ParentView called `childChoreListRef.value?.refresh()` directly AND the SSE `chore_time_extended` event handler also called `refresh()`, causing two concurrent fetches. 2. `ScrollingList.fetchItems()` had no protection against concurrent calls. When two fetches raced, `items.value` was set before images were resolved, and the second call's `loading.value = false` didn't trigger a re-render (already false), leaving images from the second fetch invisible. **Fix:** - Removed the manual `refresh()` call from `doExtendTime` in ParentView — the SSE event handler already handles it. - Added a fetch generation counter to `ScrollingList.fetchItems()` that discards stale results from superseded fetches. - After image resolution, `items.value` is re-assigned (`[...itemList]`) to trigger Vue reactivity for image URLs set on raw objects. ## When adding a schedule to a task and submitting, icons dissappear. - [x] Fixed This is related to the previous bug. API calls to /child[id]/list-tasks are called very quickly causing a problem. **Fix:** The `ScrollingList` generation counter fix (described above) resolves this for all callers. Any concurrent `refresh()` calls — whether from SSE events, manual triggers, or timer-based refreshes — are now safely handled.