feat(dashboard): Add "Pick up where you left off" personalization panel#935
feat(dashboard): Add "Pick up where you left off" personalization panel#935ishaanxgupta wants to merge 21 commits into
Conversation
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ✅ Deployment successful! View logs |
supermemory-mcp | 504490f | May 21 2026, 10:46 AM |
|
Claude finished @ishaanxgupta's task in 1m 51s —— View job Review Complete
Overview: Adds a "Pick up where you left off" panel showing recent plugin/MCP activity. Issues found:
The new feature logic is well-implemented — date validation, error handling, deduplication, and query gating are all correct. The redirect fix for the reported issue also looks good. Score: 6/10 — Once the encoding issue is fixed, this is ready to ship. |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
supermemory-app | 504490f | Commit Preview URL Branch Preview URL |
May 21 2026, 10:47 AM |
There was a problem hiding this comment.
Overview: Adds a "Pick up where you left off" panel showing recent plugin/MCP activity by parsing API key metadata and document sources.
Issues found: None — this looks good to ship.
The implementation is solid:
toValidDateproperly handles invalid dates withNumber.isNaNcheck- JSON.parse of metadata is wrapped in try-catch with graceful fallback
- Deduplication logic correctly keeps the most recent usage per tool
- Sorting prioritizes used items over never-used, then by recency
- Empty state handling is clean
- React Query usage is correct with appropriate
staleTimeandenabledconditions
Score: 9/10
Minor note (not blocking): The API keys fetch uses raw fetch while other endpoints use the typed $fetch wrapper. This is fine if /v3/auth/keys isn't in the API schema, but worth considering adding it for consistency if the endpoint stabilizes.
- Replace non-null assertions with nullish coalescing fallbacks - Rename unused parameter with underscore prefix - Apply Biome formatting fixes Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…ai/supermemory into feat/personalisation
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Overview: Adds a "Pick up where you left off" panel showing recent plugin/MCP activity by parsing API key metadata and document sources.
Issues found: None — this looks good to ship.
The implementation is solid:
toValidDateproperly handles invalid dates withNumber.isNaNcheck- JSON.parse of metadata is wrapped in try-catch with graceful fallback
- Deduplication logic correctly keeps the most recent usage per tool
- Sorting prioritizes used items over never-used, then by recency
- Empty state handling is clean
- React Query usage is correct with appropriate
staleTimeandenabledconditions
Score: 9/10
Minor note (not blocking): The API keys fetch uses raw fetch while other endpoints use the typed $fetch wrapper. This is fine if /v3/auth/keys isn't in the API schema, but worth considering adding it for consistency if the endpoint stabilizes.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
@MaheshtheDev resolved, please have a look |
There was a problem hiding this comment.
Overview: Adds a "Pick up where you left off" panel showing recent plugin/MCP activity, with a fix for the redirect issue reported by @MaheshtheDev.
Issues found: None — this looks good to ship.
The fix for the reported issue is correctly implemented:
- New
handleOpenToolDocumentfunction (page.tsx:408-421) properly extracts the document's space/container tag and callssetSelectedProject()before opening the document - This ensures clicking a tool usage item navigates to the correct space context instead of redirecting to the plugins page
The implementation remains solid:
toValidDateproperly handles invalid dates withNumber.isNaNcheck- JSON.parse of metadata is wrapped in try-catch with graceful fallback
- Deduplication logic correctly keeps the most recent usage per tool
- Query enabled condition now includes
!!org?.idto prevent premature fetching - Empty state handling is clean
Score: 9/10
|
@claude resolve these conflicts |
|
Claude encountered an error after 1m 40s —— View job Resolving Merge Conflicts
|
# Conflicts: # apps/web/components/dashboard-view.tsx # apps/web/middleware.ts
There was a problem hiding this comment.
Overview: Adds a "Pick up where you left off" panel showing recent plugin/MCP activity by parsing API key metadata and document sources.
Issues found:
- Character encoding corruption (blocking): The
TIPSarray and several other strings throughoutdashboard-view.tsxhave corrupted Unicode characters. Special characters like⌘,—,✓,→, and·are displaying as mojibake (⌘,â€",âœ",â†',·). This will cause garbled text in the UI for all users.
The new feature implementation itself is solid:
toValidDatecorrectly usesNumber.isNaNfor date validation- JSON.parse of metadata is properly wrapped in try-catch
- Deduplication and sorting logic is correct
- Query enabled conditions properly gate fetches on
org?.id - The fix for @MaheshtheDev's reported redirect issue looks correct
Score: 6/10 — The encoding issue is a significant visual bug that affects the entire dashboard. Once fixed, this should be ready to ship.
Fix corrupted Unicode characters (⌘, —, ✓, →, ·) that were displaying as mojibake (⌘, â€", âœ", â†', ·) in the TIPS array and other strings. Co-authored-by: Ishaan Gupta <ishaanxgupta@users.noreply.github.com>


Summary
Adds a new "Pick up where you left off" panel to the home dashboard that displays the user's most recent plugin and MCP activity, filling the empty space to the right of "Suggested for you" on desktop.
Changes
Data Layer: