BOOTSTRAP__AI_Agent_Quickstart.md: rewrite store reactivity trap section to distinguish events sub-stores (PersistedState, fine-grained) from ae_loc/idaa_loc (svelte-persisted-store, coarse). Add import/read/write syntax examples and pointer to migration doc. PROJECT__Stores_Svelte5_Migration.md: rewritten to reflect events module fully complete; documents established PersistedState pattern with canonical examples; tables show all 5 sub-stores done + events_loc retired. TODO__Agents.md: events migration marked complete (2026-06-11); idaa_loc and ae_loc listed as remaining work; stale events_loc file_display_overrides ref fixed. tests/README.md: replace Leads-only store migration note with full events sub-store table, localStorage keys, and explanation of PersistedState deserialization (no __version guard needed). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
6.0 KiB
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
- [Badges] Epson C3500 fanfold badge layout —
badge_4x6_fanfoldlayout 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.tsto use V3 helpers. - [Cleanup] Delete Legacy Wrappers — Once all callsites are migrated, remove
src/lib/ae_api/api_get__crud_obj_id.tsand the legacy exports fromapi.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
PersistedState (from runed) for fine-grained updates. See PROJECT__Stores_Svelte5_Migration.md.
- Events module — COMPLETE (2026-06-11):
events_locfully retired. All 5 sub-stores (badges_loc,leads_loc,pres_mgmt_loc,launcher_loc,events_auth_loc) are onPersistedState. Unused fields also pruned fromae_stores.tsandae_idaa_stores.ts. idaa_loc→ PersistedState — Highest remaining priority. Root cause of the IDAA "Access Denied" corruption bug (ae_locbootstrap writes stomp onauthenticated_access). Promotenovi_*identity fields andarchives/bb/recovery_meetingssub-objects.ae_loc→ PersistedState — Largest scope. Extractauth_locsub-store first (the identity/permission fields are what get corrupted). Defer full migration until afteridaa_loc.- Non-persisted writables (
ae_sess,slct, etc.) — Low priority; no coarse-reactivity problem.
[Data Layer] IDB sorting + content version rollout
Sorting baseline is now build_tmp_sort (ASC chain, no .reverse() on tmp-sort lists).
⚠️ Exception: ae_events__event.ts and ae_events__event_session.ts use legacy encoding
(priority ? 1 : 0, priority=true→'1'). Their sort comparators must remain descending
until the modules are migrated to build_tmp_sort. ae_events__event_presentation.ts already
uses build_tmp_sort (overrides generic encoding in its specific_processor). See
CLIENT__IDAA_and_customized_mods.md → "Sort Encoding" for full table.
- [IDB Sort] Migrate
ae_events__event.tstobuild_tmp_sort— requires bumpingIDB_CONTENT_VERSIONS.events.event(currently v3) and switching all event sort comparators to ascending. Check all pages that sort events before doing this. - [IDB Sort] Roll out to
ae_events__event_sessionafter sort behavior review. - [IDB Sort] Roll out to
ae_events__event_presenterafter sort behavior review. - [IDB Sort] Roll out to
ae_events__event_locationafter sort behavior review. - [IDB Sort] Roll out to
ae_core__person+ae_core__accountafter 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_hashcomparison.
🧪 Testing & Optimization
- [IDAA] IDB fast-path contact search — parse
contact_li_jsoninsearch__event(). - [IDAA] Optimize Recovery Meetings SQL VIEW and indexes.
- [IDAA / Events] Audit
default_qry_strcoverage in all other event search pages. - [Launcher/VLC] Linux playback investigation — fullscreen + pause-on-end flags.
⚙️ DevOps & Backend
- [Backend]
event_file— addcfg_jsoncolumn (post-CMSC) — The per-file display override currently uses a localStorage workaround (launcher_loc.current.file_display_overrides) becauseevent_filehas no JSON blob column. Proper fix: addcfg_jsonto theevent_fileDB 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 inlauncher_file_cont.svelte— search forfile_display_overrides. - [Backend] Re-add
Access-Control-Allow-Private-Network: trueCORS header. - [DevOps] Service worker
skipWaiting+clients.claim— Root cause of "users see old code / can't reproduce in dev testing": the SW sat in waiting state until all tabs closed. IDAA members leave idaa.org open all day. Fixed 2026-06-03: both calls added tosrc/service-worker.js. See mistake #16 inBOOTSTRAP__AI_Agent_Quickstart.md. - [DevOps] Nginx proxy buffer tuning — Buffer settings copied from PHP guide; not
optimal for Node.js.
proxy_busy_buffers_sizetechnically exceeds safe limit. Re-examine when enabling compression (now re-enabled) stabilizes. - [DevOps] Simplify Dockerfile env file selection — Use plain
.envinstead ofBUILD_MODE.
✅ Completed (archived)
See the full completed history in: documentation/archive/TODO__Agents__ARCHIVE_2026-03.md documentation/archive/TODO__Agents__ARCHIVE_2026-04.md documentation/archive/TODO__Agents__ARCHIVE_2026-05.md documentation/archive/TODO__Agents__ARCHIVE_2026-06.md