Project › Memory tab: usability fixes seen

Task 6316 · Done · Coder · created · updated

This list of usability fixes comes from checking Project › Memory for the project `jaah` on app.dev.jaah.ai (version 1.2.367) at 1280 and 360 px during the finish phase of epic 6291. That epic delivered the Sort control and the Used/Followed counts. It works, and `sort=bogus` returns 422. ## Observed - With the defaults (Status All, Sort Newest), the list opens on a wall of retired codemap chunks. The top 200 rows by `number` on dev are mostly `retired` code-map units, each showing Injected 0, Used 0, Followed 0. The units an operator wants to act on are buried. - At 360 px, the project drawer's sticky Cancel/Save footer and the mobile bottom nav cover the unit list. Only part of one row's facts stay visible. The Memory tab has nothing to save, so the footer only gets in the way here. - At 1280 px in the drawer, each unit's facts row wraps: Read and Cited drop to a second line. Every row is two lines of counts. - When Sort is Used or Followed and every unit has zero, the order looks identical to Newest. Nothing tells the operator that no unit has been used yet. ## Suggestions (one requirement each) 1. Default the Status filter to hide `retired` units, and keep "All" one click away. The list should open on the units that can still be served. 2. Hide the drawer's Cancel/Save footer on the Memory tab, or on any tab with no editable field, so it never covers the list at 360 px. 3. Keep a unit's counts on one line at 1280 px in the drawer. Use a compact numeric layout, or drop the zero-valued Read and Cited facts. 4. When the chosen sort's count is zero for every listed unit, show a one-line note such as "No unit used yet." per `docs/standards/ui-copy-standards.md`. 5. Show the codemap generation (source sha) only on codemap rows, and collapse a directory's `(i/N)` chunks into one expandable row. Seventeen near-identical rows per directory is noise. Out of scope: the API sort semantics, the counts' definitions (`apps/api/app/project_memory/events.py`), any change to memory serving, and the other project tabs, except for hiding the footer. Done means: - Each suggestion is implemented, or declined with a one-line reason in the PR body. - `npx vitest run src/components/projects/ProjectMemoryTab.test.tsx` passes, with new cases for items 1, 2 and 4. - Screenshots of the Memory tab on dev at 360, 768 and 1280 px are attached to the report, showing no overlap and no wrapped title. - `./dc check full` exits 0. - The PR is merged to develop and its Jaah Deploy succeeds.

Outcome

Memory tab: Live default (status=live), no Cancel/Save bar, one-line counts, zero-sort note, folded codemap chunks. Full gate green; PR #5454 merged; dev deploy 38625182342 green (own run superseded); dev visual check at 360/768/1280 clean. mem-2 used.

Pull request

Artifacts

Activity

  • Ready
  • Runner started
  • Runner ended (done)