Feature Owner : Joylynne Esportuno
Module : Notifications (Updates)
Priority : P3
Sprint #6 : Fully Implemented
Date : July 2, 2026
EXECUTIVE SUMMARY
What is this feature ?
View Feedback routes creators from a notification to reviewer feedback in the quest editor.
Why does it matter ?
Creators need to quickly find reviewer comments without hunting through the canvas.
What's the MVP scope ?
Notification deep link opens the relevant quest/canvas feedback view.
1. USER PAIN POINT & SOLUTION
Without View Feedback
Creators may receive feedback but not know where to address it.
Pain Point
Emotional : Feedback feels scattered.
Functional : Manual navigation wastes time.
Business Impact : Review turnaround slows down.
Current State (Already implemented)
Clicking a notification opens the quest feedback surface on the quest editor.
Marketing Hook
"Jump straight from review alerts to the feedback that matters."
2. 4D FRAMEWORK MAPPING
Diagnose
Shows exactly which quest needs revision.
Design
Keeps reviewer notes attached to content context.
Develop
Uses notification links and feedback panel routing.
Deliver
Speeds creator review-response cycles.
3. USER FLOWS
Entry Point
Creator notification bell.
Success Criteria
Notification click opens quest editor feedback area and marks notification read.
Main Flow
Reviewer leaves comment or requests changes.
Notification is created.
Creator clicks notification.
App marks notification read.
Router opens linked quest feedback view.
Edge Cases
No link : Keep notification visible and avoid broken navigation
API error : Keep unread state or roll back local update
Permission denied : Show access denied
Decision Points
IF notification link has feedback query, open feedback panel
ELSE route to quest overview/editor fallback
4. INFORMATION ARCHITECTURE
Primary Information
Quest title
Feedback status
Reviewer comment context
Secondary Information
Notification read state
Comment timestamp
Tertiary Information
Reviewer identity and resolved state
Actions
Primary CTA : Open feedback
Secondary Actions : Mark read, resolve comment
5. WIREFRAMES
Excluded — Feature fully implemented.
6. WIREFLOWS
Excluded — Feature fully implemented
7. PROTOTYPE
Excluded — Feature fully implemented
8. BACKEND SCHEMA
Database Tables
notificationsreviewer comment tables
quests
Indexes
-- Primary lookup: user's notifications (most common query)CREATE INDEX IF NOT EXISTS idx_notifications_to_user_id ON notifications(to_user_id); -- Unread notifications filter (for badge counts)CREATE INDEX IF NOT EXISTS idx_notifications_to_user_unread ON notifications(to_user_id, is_read) WHERE is_read = FALSE; -- Chronological ordering (recent first)CREATE INDEX IF NOT EXISTS idx_notifications_created_at ON notifications(created_at DESC);
Constraints
Notifications must belong to the authenticated recipient.
Feedback comments must belong to a quest the creator/reviewer is authorized to access.
Stale links should fail safely without exposing hidden comment data.
9. API ENDPOINTS
Endpoint 1: GET /api/notifications/get-notifications
Purpose: Loads creator notifications, including review feedback links.
Auth: Authenticated user.
Frontend Use: Notification bell/list rendering.
Endpoint 2: POST /api/notifications/update-notifications
Purpose: Marks the clicked notification as read.
Auth: Notification owner only.
Frontend Use: Called before or during navigation to feedback.
10. DATA REQUIREMENTS
Frontend Needs
Notification ID, title, body, type, read state, created timestamp, and link.
Quest ID from the notification link or route params.
Feedback panel open/closed state.
Comment list, resolved status, author metadata, and timestamps when loaded.
API Calls Frontend Will Make
Load notifications on bell open/poll interval.
Mark clicked notification read.
Load reviewer comments after reaching the editor.
Caching Strategy
Notification data should be refreshed after mark-read. Comment data may be cached per quest during the editor session but should refetch after create/resolve actions.
11. PERFORMANCE CONSIDERATIONS
Database Optimization
Notification queries should filter by recipient and order by created date. Comment queries should filter by quest ID and avoid loading unrelated feedback.
Client Optimization
Do not load full reviewer comment data for every notification item. Load feedback details only after navigation to the relevant quest/editor.
Caching Strategy
Use notification polling/manual refresh for the bell. Avoid aggressive caching of unread counts because read actions change them frequently.
API Response Time
Notification list should load quickly enough for bell interaction. Feedback panel can show a loading state while comments are fetched.
12. SECURITY & AUTHORIZATION
Who Can Access This Feature?
Creator: Can view feedback on owned quests.
Reviewer Can access comments through review flows.
Learner: No access.
Authorization Logic
Notification API must return only notifications for the authenticated recipient. Feedback/comment APIs must verify quest ownership or reviewer role/scope.
13. ERROR HANDLING
401 Unauthorized: Redirect to sign-in or show session expired. Keep the notification unread if the user never reaches the feedback destination.
403 Forbidden: Show access denied when the creator does not own or cannot edit the quest. Do not reveal reviewer comment content to unauthorized users.
404 Quest Not Found: Show a missing quest message and keep the notification available for reference.
404 Comment Not Found: Open the quest feedback panel if possible and show a message that the specific comment may have been deleted or resolved.
14. TESTING CHECKLIST
Happy Path
Notification created from reviewer action.
Creator click marks read.
Deep link opens quest editor.
Feedback panel opens.
Edge Cases
Unauthorized user blocked.
Missing comment falls back to quest feedback view.
Mark-read failure rolls back unread state.
Stale notification link does not crash route.
15. OPEN QUESTIONS
For Frontend:
Should deep links scroll to a specific comment thread?
Should the feedback panel open as a sheet, modal, or inline canvas panel long-term?
For Backend:
Should email links match in-app feedback links?
Should notifications store
comment_idseparately from the link URL?
16. OUT OF SCOPE
Browser push notifications and exact comment scroll targeting.
17. SUCCESS METRICS
Notification click-through rate
Review turnaround time
Unresolved comment count
18. DEPENDENCIES
This feature depends on:
Notifications table and bell UI
Reviewer comment APIs
Quest editor feedback/comment panel
Review status/comment creation flows
These features depend on this:
Review Alert click-through
Creator review turnaround workflow
Reviewer feedback resolution tracking
19. TIMELINE & OWNERSHIP
Backend: Joylynne Esportuno
Frontend: Joylynne Esportuno & Jethro Lagmay
QA: Uriel Tribiana
Estimated Completion: Fully implemented