Repository navigation
v0.2: Admin Dashboard, Signed URL PDF Delivery & Cloud Run Optimization
🎉 ReadPaper v0.2
✨ New Features
-
Admin Dashboard — Full admin panel at
/adminwith:- System overview (total users, papers, translations)
- User management with paper/data deletion
- Paper management with re-compilation support
-
GCS Signed URL PDF Delivery — PDFs are now served via time-limited signed URLs directly from Google Cloud Storage, eliminating the backend proxy bottleneck that caused 5+ minute load times for 6MB PDFs.
-
Translation Cache — GCS-backed cache with integrity validation. Previously translated papers are served instantly without re-using Gemini API credits.
🚀 Performance Improvements
-
Cloud Run Optimization:
--cpu=2for faster LaTeX compilation--timeout=900(15 min) for long papers--no-cpu-throttling— background PDF compilation gets full CPU even after the HTTP request returns (fixes the root cause of compilation timeouts)
-
Eliminated
list_files()overhead — Backend now checks known PDF paths directly in GCS instead of listing all blobs under the prefix. -
Frontend proxy streaming — Binary responses (PDFs) are streamed through the Next.js proxy instead of buffered, preventing serverless function timeouts.
🔧 Bug Fixes
- Fixed
cloudbuild-hotfix.yamlmissingGOOGLE_CLIENT_IDandDISABLE_AUTHenv vars - Fixed
_TaskStatusProxy.pop()missing method - Fixed frontend PDF viewer cross-origin redirect failure with signed URLs
📚 Documentation
- Updated
README.mdwith v0.2 features and Cloud Run configuration - Updated
ARCHITECTURE.mdwith PDF delivery flow, cache system, admin dashboard, and Cloud Run settings
Files Changed
10 files changed, 1229 insertions(+), 299 deletions(-)