Conversation
…resume generation
…s, enhance report content handling
…eration tool in dashboard
…on states and display
…ccessibility and UI consistency
…s for consistency
…sume generation components
…esume generation tool
…replacing react-pdf with pdfjs-dist, enhancing loading states and error management
…component, introducing skeleton loader and improved state management
…t handling for Typst-based resumes
|
@AnishSarkar22 is attempting to deploy a commit to the Rohan Verma's projects Team on Vercel. A member of the Team first needs to authorize it. |
There was a problem hiding this comment.
Review by RecurseML
🔍 Review performed on 4e68565..706d5b9
✨ No bugs found, your code is sparkling clean
✅ Files analyzed, no issues (23)
• surfsense_backend/alembic/versions/126_add_report_content_type.py
• surfsense_backend/alembic/versions/127_seed_build_resume_prompt.py
• surfsense_backend/app/agents/new_chat/system_prompt.py
• surfsense_backend/app/agents/new_chat/tools/registry.py
• surfsense_backend/app/agents/new_chat/tools/resume.py
• surfsense_backend/app/db.py
• surfsense_backend/app/prompts/system_defaults.py
• surfsense_backend/app/routes/public_chat_routes.py
• surfsense_backend/app/routes/reports_routes.py
• surfsense_backend/app/schemas/reports.py
• surfsense_backend/app/services/public_chat_service.py
• surfsense_backend/app/tasks/chat/stream_new_chat.py
• surfsense_web/app/dashboard/[search_space_id]/new-chat/[[...chat_id]]/page.tsx
• surfsense_web/atoms/chat/report-panel.atom.ts
• surfsense_web/components/assistant-ui/assistant-message.tsx
• surfsense_web/components/public-chat/public-thread.tsx
• surfsense_web/components/report-panel/pdf-viewer.tsx
• surfsense_web/components/report-panel/report-panel.tsx
• surfsense_web/components/shared/ExportMenuItems.tsx
• surfsense_web/components/tool-ui/generate-report.tsx
• surfsense_web/components/tool-ui/generate-resume.tsx
• surfsense_web/package.json
• surfsense_web/pnpm-lock.yaml
…d visibility management
…ge, public chat footer, and report panel
Description
Motivation and Context
FIX #
Screenshots
API Changes
Change Type
Testing Performed
Checklist
High-level PR Summary
This PR adds a comprehensive resume builder feature that allows users to generate professional resumes as Typst documents. The implementation includes a new
generate_resumeagent tool that produces structured resume content, database migrations to support a newcontent_typefield distinguishing between Markdown reports and Typst-based resumes, backend endpoints for PDF preview and export, and frontend components for rendering PDF previews with zoom controls. The feature integrates into the existing chat interface with a new "Build Resume" default prompt and supports versioning for resume modifications.⏱️ Estimated Review Time: 30-90 minutes
💡 Review Order Suggestion
surfsense_backend/alembic/versions/126_add_report_content_type.pysurfsense_backend/alembic/versions/127_seed_build_resume_prompt.pysurfsense_backend/app/db.pysurfsense_backend/app/prompts/system_defaults.pysurfsense_backend/app/schemas/reports.pysurfsense_backend/app/agents/new_chat/tools/resume.pysurfsense_backend/app/agents/new_chat/tools/registry.pysurfsense_backend/app/agents/new_chat/system_prompt.pysurfsense_backend/app/routes/reports_routes.pysurfsense_backend/app/routes/public_chat_routes.pysurfsense_backend/app/services/public_chat_service.pysurfsense_backend/app/tasks/chat/stream_new_chat.pysurfsense_web/components/tool-ui/generate-resume.tsxsurfsense_web/components/report-panel/pdf-viewer.tsxsurfsense_web/atoms/chat/report-panel.atom.tssurfsense_web/components/report-panel/report-panel.tsxsurfsense_web/components/shared/ExportMenuItems.tsxsurfsense_web/components/tool-ui/generate-report.tsxsurfsense_web/components/assistant-ui/assistant-message.tsxsurfsense_web/components/public-chat/public-thread.tsxsurfsense_web/app/dashboard/[search_space_id]/new-chat/[[...chat_id]]/page.tsxsurfsense_web/package.jsonsurfsense_web/pnpm-lock.yaml