CodeChefVIT / CodeChefVIT/papers-codechef

[BUG] Zip download missing extension, silent fail on empty

Ouverte Adaptée aux débutants
#523 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
TypeScript
Étoiles
20
Forks
64
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

**Describe the bug**
Zip download lacks file extension and shows success even when download fails entirely.

**To Reproduce**
1. Go to Catalogue page
2. Select 2+ papers
3. Click "Download Selected"
4. (Optional: throttle network in DevTools to simulate all requests failing)
5. File downloads with no `.zip` extension
6. If all fetches failed, empty ZIP is created but success toast still appears

**Expected behavior**
- Downloaded file should have `.zip` extension (e.g., `Physics.zip`)
- If all paper fetches fail, show error toast instead of success
- Success message should show count: "Downloaded 3 of 5 papers"

**Screenshots**
N/A (UX issue — filename shows `Physics` not `Physics.zip` in downloads folder)

**Desktop**
- OS: Any
- Browser: Chrome/Firefox/Safari
- Issue occurs on all browsers

**Root cause**
File: `src/context/filterContext.tsx`
- Line 180: `a.download = getDownloadName(...)` missing `.zip`
- Lines 150–164: Fetch errors silently caught, no success counter
- Line 186: Always shows success toast regardless of download state

**Additional context**
Low severity — UX friction, not data loss. User gets empty ZIP but can retry.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start in src/context/filterContext.tsx, checking lines 150–164 for fetch failure handling and line 180 for the download filename. Reproduce the Catalogue download with multiple papers, including an all-fail network case, and verify the filename has a .zip extension, failures produce an error toast, and partial success reports the downloaded count.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
typescript
Domaine
frontend
Type d'issue
Bug
Difficulté
2/5
Temps estimé
1-3 heures
Activité
Calme
Clarté
Clairement spécifiée
Accessibilité débutants
78/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.