wulf-pulse/.planning/phases/07-engagement-overview-new/07-HUMAN-UAT.md

2.4 KiB

status phase source started updated
partial 07-engagement-overview-new
07-VERIFICATION.md
2026-05-04T00:00:00Z 2026-05-04T00:00:00Z

Current Test

[awaiting human testing]

Tests

1. Drawer-to-page navigation

expected: From the More drawer, tapping "Engagement" lands on /mobile/engagement inside the Phase 2 shell. Page renders with H1 "Engagement", sticky 3-chip period selector (7d/30d/90d), 4 stacked summary cards, sparkline card, sort chips, search input, and the employee list (or skeleton placeholders during initial load). result: [pending]

2. Period chip refetch behavior

expected: Tapping a different period chip (e.g., 7d → 30d → 90d) fires three independent fetches (summary, trend, users) and updates the cards, sparkline, and list. Active chip changes to bg-primary text-primary-foreground. result: [pending]

3. Sort chip behavior

expected: Tapping a sort chip (Hours / Name / Utilization) refetches only the users list (summary and trend stay unchanged). Active sort chip styling updates. List reorders accordingly. result: [pending]

4. Search input behavior

expected: Typing in the search input filters loaded users client-side after a 300ms debounce, matching displayName and email. When no matches, an inline "No matches for '{query}'" message appears with a "Clear search" button that resets the filter. result: [pending]

5. Sparkline visual rendering

expected: The hours-trend sparkline renders as a single thin line (stroke-primary stroke-2 fill-none) over the selected period. Faint baseline at the bottom. Label row above shows "Hours trend · last {periodLabel}" left and the latest-value indicator right (text-xs text-muted-foreground). When no points, renders "No activity" inline. result: [pending]

6. IntersectionObserver infinite scroll + Load more

expected: When more than 50 employees exist (pagination.totalPages > 1), scrolling to the bottom of the list auto-loads page 2 via IntersectionObserver. Load more button serves as a11y fallback. On error, the button label flips to "Retry". result: [pending]

7. User row tap navigation

expected: Tapping any employee row navigates to /mobile/engagement/[graphUserId] (Phase 8's destination — the URL should resolve to a 404 or placeholder until Phase 8 lands; the link itself must work). result: [pending]

Summary

total: 7 passed: 0 issues: 0 pending: 7 skipped: 0 blocked: 0

Gaps