# Frontend Agent Task List > Use this file to track steps for complex features or bug fixes. > **Status:** Stable โ€” ongoing development. > **Scope:** Active/open work only. Completed detail lives in archive files. ## ๐Ÿ”ด CMSC Charlotte โ€” May 27 (Presentation Management) **Post-show hardening only** - [ ] **[Launcher/Electron] Wallpaper reliability (post-CMSC)** - [ ] Use timestamp/randomized temp filename so macOS always sees a new path. - [ ] Add resilient reconciliation loop or event-driven reapply on display topology changes. --- ## ๐Ÿ”ด Axonius DC โ€” June 9 (Badge Printing) **Setup/Registration:** June 8 | **Show:** June 9 - [x] **[Badges] Epson C3500 fanfold badge layout** โ€” `badge_4x6_fanfold` layout CSS created, wired, and documented. First live use: Axonius Adapt DC, June 9, 2026. (2026-05-15) --- ## ๐Ÿšง V3 CRUD Migration (Surgical Cleanup) Finalizing the 100% adoption of V3 Standard endpoints and retirement of legacy wrappers. - [ ] **[Core] Legacy Utility Helpers** โ€” Refactor `ae_core_functions.ts` to use V3 helpers. - [ ] **[Cleanup] Delete Legacy Wrappers** โ€” Once all callsites are migrated, remove `src/lib/ae_api/api_get__crud_obj_id.ts` and the legacy exports from `api.ts`. --- ## ๐Ÿšง High Priority Workstreams ### [Stores] Svelte 4 โ†’ Svelte 5 State Migration The app uses `svelte-persisted-store` (coarse reactivity). Migration target: replace with Svelte 5 `$state`-based persistence for fine-grained updates. - [ ] **Phase A โ€” Project plan + wrapper decision:** Write `PROJECT__Stores_Svelte5_Migration.md`. - [ ] **Phase B โ€” Core auth stores (highest impact):** `ae_loc`, `idaa_loc`. - [ ] **Phase C โ€” Remaining persisted stores:** `ae_api`, `ae_events_stores`. - [ ] **Phase D โ€” Non-persisted writable stores:** `ae_sess`, `slct`, `ae_snip`, etc. ### [Data Layer] IDB sorting + content version rollout Sorting baseline is now `build_tmp_sort` (ASC chain, no `.reverse()` on tmp-sort lists). - [ ] **[IDB Sort] Roll out to `ae_events__event_session`** after sort behavior review. - [ ] **[IDB Sort] Roll out to `ae_events__event_presenter`** after sort behavior review. - [ ] **[IDB Sort] Roll out to `ae_events__event_location`** after sort behavior review. - [ ] **[IDB Sort] Roll out to `ae_core__person` + `ae_core__account`** after sort behavior review. - [ ] **[IDB Version] Roll out to `db_events.ts`** (session, presenter, badge, etc.). - [ ] **[IDB Version] Roll out to `db_core.ts`** (site_domain, person, user). ### [Journals] Journal Entry Config follow-ups - [ ] **[Journals] Entry passcode secondary auth** โ€” implement `passcode_hash` comparison. --- ## ๐Ÿงช Testing & Optimization - [ ] **[IDAA] IDB fast-path contact search** โ€” parse `contact_li_json` in `search__event()`. - [ ] **[IDAA] Optimize Recovery Meetings SQL VIEW and indexes.** - [ ] **[IDAA / Events] Audit `default_qry_str` coverage** in all other event search pages. - [ ] **[Launcher/VLC] Linux playback investigation** โ€” fullscreen + pause-on-end flags. --- ## โš™๏ธ DevOps & Backend - [ ] **[Backend] `event_file` โ€” add `cfg_json` column (post-CMSC)** โ€” The per-file display override currently uses a localStorage workaround (`$events_loc.launcher.file_display_overrides`) because `event_file` has no JSON blob column. Proper fix: add `cfg_json` to the `event_file` DB table, expose it through the FastAPI model, then migrate the frontend back to reading/writing the backend field (restoring global/cross-device persistence). Frontend code is in `launcher_file_cont.svelte` โ€” search for `file_display_overrides`. - [ ] **[Backend] Re-add `Access-Control-Allow-Private-Network: true` CORS header.** - [ ] **[DevOps] Nginx caching** โ€” Investigate `index.html` cache-pickup issues. - [ ] **[DevOps] Simplify Dockerfile env file selection** โ€” Use plain `.env` instead of `BUILD_MODE`. --- ## โœ… Completed (archived) See the full completed history in: [documentation/archive/TODO__Agents__ARCHIVE_2026-03.md](documentation/archive/TODO__Agents__ARCHIVE_2026-03.md) [documentation/archive/TODO__Agents__ARCHIVE_2026-04.md](documentation/archive/TODO__Agents__ARCHIVE_2026-04.md) [documentation/archive/TODO__Agents__ARCHIVE_2026-05.md](documentation/archive/TODO__Agents__ARCHIVE_2026-05.md) [documentation/archive/TODO__Agents__ARCHIVE_2026-06.md](documentation/archive/TODO__Agents__ARCHIVE_2026-06.md)