JOB / docs /workflow-mapping.md
TahaFawzyElshrif
refine ui
d93baf5
|
Raw History Blame Contribute Delete
1.56 kB
# Workflow mapping
This project reimplements the exported `JobWorkfllow` behavior without calling
n8n.
## Input
The Gradio application exposes only the job description and the account-status
answer. Source CV, advantage, and recommendation content are loaded server-side
from `keys.env`.
## Profile data
The original workflow read three n8n Data Table rows by `KEY`:
- `SOFTWARE_CV`
- `ADVANTAGE`
- `RECOMMENDATION_LETTER`
The standalone replacement loads these values from `SOURCE_CV`, `ADV`, and
`RECOMMENDATION_LETTER` in `keys.env`. They are not exposed as Gradio inputs.
## AI branches
The original three agents use the connected Google Gemini Chat Model:
1. Job Info Agent: Arabic structured JSON analysis.
2. CV Creator Agent: factual, ATS-focused LaTeX CV, maximum two pages.
3. Email Creator Agent: concise English job-application email.
The Python implementation runs these three Gemini calls concurrently after
assembling the same source inputs. The prompt constraints are kept in
`services/prompts.py`.
## Google Sheets
The original Code node added the current ISO date and the Sheets node appended
the analysis fields. `GoogleSheetsService` preserves the same columns and
appends one row only when the spreadsheet configuration is complete.
## PDF output
The generated CV remains LaTeX. The application writes the source to
`outputs/cv_draft.tex` and uses `pylatex` plus `pdflatex` when available to
produce `outputs/cv_draft.pdf`. A `reportlab` fallback keeps a downloadable
PDF output available when a TeX compiler is not installed.