feat: Implement Team-Based Standup Upload Propagation
ISSUE: Implement Team-Level Standup Upload Propagation
1. Problem Statement
Currently, the standup verification system tracks "Uploaded" status on a per-individual basis. In a team-based workflow, if one member fulfills the requirement for the group, the entire team should be visually and logically marked as "Uploaded." The current siloed tracking leads to "incomplete" status for teammates even when the team's task is effectively done.
2. Technical Requirements & Scope
-
Verification Logic (DashboardLayout.tsx): - Modify
handleVerifyTeamto create a map ofteamIdtouploadStatus.- If any
intern.hasUploadedis true within a team, set the status for the entireteamIdto true.
- If any
-
UI Synchronization (InternCard.tsx & TeamList.tsx):
- Update
InternCardto prioritize the team-level upload flag over the individual flag. - Ensure the "Uploaded" badge appears for all members once the propagation logic triggers.
- Update
- Aggregation: - Update the team completion counter to reflect the propagated status (e.g., if 1 of 3 uploaded, the UI should reflect 3/3 uploaded based on propagation).
3. Validation Criteria
- Scenario A: Intern 1 uploads a standup. Interns 2 and 3 (same team) must immediately show as "Uploaded" without a page refresh.
- Scenario B: The Team Progress bar must jump to 100% completion upon a single valid upload from any member.
- Scenario C: Ensure that deleting an upload reverts the status for the entire team, not just the individual.
4. Impact
- High impact on User Experience (UX) by reducing redundant "Missing Standup" warnings.
- Directly affects Dashboard reporting accuracy for team leads.