Evidence type
19 nodes · 3 flows · 3 specialized AI tools
Automation case study · AI application architecture
AI Resume Builder là workflow-backed application prototype xoay quanh một POST /resume contract ổn định. n8n giữ routing, AI/tool execution, file conversion và delivery ở backend để frontend mỏng, dễ thay và có thể reuse cùng operating logic.
Proof summary
Evidence type
19 nodes · 3 flows · 3 specialized AI tools
Evidence status
Workflow-backed application prototype
Measurement / operating scope
Webhook-first routing, specialized AI tools, structured outputs, PDF rendering, email delivery and evaluation
Observed state
The workflow-backed prototype demonstrates the application contract and three bounded capabilities.
Claim boundary
No production adoption, resume-quality lift, job-placement impact, throughput, uptime or commercial outcome is claimed from the prototype.
Proof reviewed
2026-09-25
Direct answer
Nó chứng minh một pattern có thể tái sử dụng cho AI-enabled application: define client contract trước, route known intent bằng deterministic logic, giới hạn AI trong specialized execution, constrain model output và giữ credentials cùng external side effects phía sau orchestration boundary.
Application boundary
Interface được tách khỏi workflow internals. Một client khác có thể reuse backend nếu gửi cùng HTTP contract thay vì phải copy prompt, credentials, PDF conversion và delivery logic sang từng frontend.
Frontend chỉ thu input, upload/download state và gọi HTTP contract; AI credentials, file conversion và orchestration ở backend workflow.
body.flow đã khai báo create, download hoặc check nên Switch router xử lý intent này bằng deterministic logic thay vì hỏi model đoán điều đã biết.
Mỗi branch chỉ gọi AI, file processing hoặc external integration cần cho operation tương ứng, giảm coupling giữa các capability.
HTML resume, PDF delivery và evaluation report đi qua output contract có cấu trúc thay vì trả agent response tự do cho application.
Three application flows
Input
Candidate profile · target role/JD · tone · template
Process
Resume Builder → validate template → Classic / Modern / Creative → structured output
Output
Complete HTML resume
Input
Approved HTML + user identity/email
Process
HTML → file → Gotenberg → PDF render → Gmail
Output
Rendered PDF delivered by email
Input
Uploaded resume · base64 PDF
Process
Base64 → file → extract PDF text → Resume Evaluation agent
Output
Structured evaluation report
AI boundary
Điểm quan trọng của case không phải “dùng AI ở mọi bước”, mà là biết AI nên dừng ở đâu. Routing, rendering và delivery là controlled operations; generation và evaluation mới là interpretation/generation tasks.
Create/download/check đã nằm trong request contract nên routing là rule-based. Không dùng AI để suy một intent mà caller đã khai báo rõ.
Resume Builder orchestrator dùng AI ở nơi generation thực sự cần language reasoning, rồi delegate sang Classic, Modern hoặc Creative specialist tool.
Structured output/parser boundary ép generation về complete HTML contract mà downstream application có thể xử lý ổn định hơn free-form text.
Gotenberg chịu trách nhiệm render approved HTML thành PDF; model không sở hữu side effect tạo file cuối.
Gmail delivery nằm ở backend workflow và dùng backend-side credentials; model không quyết định recipient/delivery side effect một cách tự do.
Extracted resume text được đưa vào agent chuyên đánh giá, nơi interpretation có giá trị; result vẫn cần output contract rõ.
Output contracts
Return complete HTML resume đủ để application preview hoặc chuyển tiếp sang download flow, thay vì một đoạn prose chưa định dạng.
Input là approved HTML; output operational là rendered PDF được attach và gửi qua Gmail theo workflow branch.
Resume Evaluation trả structured report gồm criterion-level assessment, overall score và prioritized recommendations theo architecture evidence.
Invalid flow, malformed payload, unsupported template hoặc file-processing failure nên được xử lý như explicit application state thay vì để model response che mất lỗi contract.
Published evidence
Evidence ở đây đủ mạnh để nói về application architecture và workflow implementation. Nó không đủ để suy production traffic, hiring performance hoặc ROI.
Workflow export chứa một POST /resume webhook làm single application-facing entry point.
Workflow branch trực tiếp theo download, create và check thay vì dùng AI intent classification.
Ba tool nodes cung cấp generation behavior chuyên biệt phía sau một Resume Builder orchestrator.
Generated content được constrain trước khi trả về application hoặc đi tiếp downstream.
Download flow chuyển HTML thành file và gọi backend PDF rendering service.
Rendered PDF được attach và gửi từ backend-side workflow.
Check flow chuyển base64 thành PDF file, extract text và đưa text đó vào dedicated evaluation agent.
Reuse model
Website, internal portal hoặc một client khác có thể reuse cùng POST /resume nếu gửi đúng request contract, không cần copy AI/file orchestration vào frontend mới.
Classic, Modern và Creative nằm sau orchestrator nên prompt/tool implementation có thể evolve mà không buộc application-facing contract đổi theo.
PDF generation được tách khỏi language model. Rendering provider hoặc deployment của Gotenberg có thể thay mà không biến AI agent thành file engine.
Check flow đọc uploaded resume độc lập với create flow, cho phép reuse như một resume-review service thay vì buộc user phải generate CV trong cùng product.
Failure model
body.flow không thuộc create/download/check phải bị reject ở deterministic routing boundary thay vì đẩy sang AI để đoán.
AI output thiếu required HTML shape hoặc template behavior cần được coi là output-validation failure, không phải success chỉ vì model trả text.
HTML-to-file hoặc Gotenberg rendering error thuộc deterministic delivery path và cần explicit retry/recovery policy riêng với generation.
PDF render thành công nhưng Gmail send fail vẫn là incomplete download operation; workflow status không nên gộp hai side effects thành một success mơ hồ.
Base64 decode, PDF conversion hoặc text extraction lỗi phải được tách khỏi Resume Evaluation agent để không đánh giá trên input rỗng/sai.
AI-generated score/recommendation là interpretation output trong prototype; không được suy thành hiring decision, ATS acceptance hoặc employment outcome.
Claim boundary
19-node workflow chứng minh implementation architecture trong scope case; không chứng minh traffic capacity, uptime, concurrency hoặc production SLA.
Generation có thể tạo structured resume content; case không claim interview rate, hiring success, ATS pass rate hoặc employment outcome.
Evaluation report là AI-assisted interpretation của extracted resume text, không phải authoritative recruiter decision hoặc validated psychometric measurement.
Đúng HTML/schema chỉ chứng minh output shape; content vẫn cần user review để tránh fabricated, overstated hoặc semantically incorrect candidate claims.
Gotenberg tạo file thành công không tự động chứng minh Gmail đã gửi thành công hoặc người nhận đã nhận/mở file.
Backend delivery status không chứng minh resume được sử dụng, nộp việc, đọc bởi recruiter hay tạo conversion.
Page không claim evaluation accuracy, generation quality score, conversion lift, time saving, hiring impact hoặc ROI khi chưa có measured evidence tương ứng.
Technology footprint
Stack phản ánh separation of concerns: n8n orchestration, AI generation/evaluation, deterministic file rendering và backend delivery. Việc một component xuất hiện trong architecture không tự động chứng minh production SLA hoặc outcome.
Related knowledge
Đối chiếu AI Resume Builder với các case AI, n8n, API, data và production automation khác của D2.
Đặt AI generation/interpretation trong deterministic routing, validation, state và side-effect boundaries.
Dùng n8n làm orchestration layer cho webhooks, AI tools, files, APIs và delivery systems.
Thiết kế stable application contract để frontend có thể thay mà không phải build lại operating logic phía sau.
Hiểu orchestration, contracts, execution state, AI boundaries và recovery ở lớp công nghệ phía dưới AI-enabled applications.
Đối chiếu Truth → Formula → Rule → Workflow → Outcome để không biến model output hoặc process success thành business claim thiếu evidence.
FAQ
Đây là workflow-backed application prototype với một POST /resume endpoint và ba capability được route rõ: create resume, render/deliver approved resume thành PDF và check uploaded resume để trả structured evaluation report.
Một stable application-facing contract giúp frontend đơn giản hơn và cho phép nhiều client reuse cùng backend. body.flow quyết định create, download hoặc check, còn orchestration chi tiết được giữ phía sau n8n.
Vì operation đã được caller khai báo trong body.flow. Switch router có thể xử lý deterministic, dễ test và dễ debug hơn việc yêu cầu model suy intent đã biết.
Candidate profile, target role/JD, tone và template đi vào Resume Builder orchestrator; template được validate rồi route sang Classic, Modern hoặc Creative specialist tool; output được constrain thành complete HTML resume.
Chúng tách generation behavior theo template phía sau cùng một orchestrator, giúp mỗi behavior có thể thay đổi độc lập mà không làm application contract hoặc các flow khác phụ thuộc trực tiếp vào prompt/tool cụ thể.
Approved HTML được chuyển thành file, gửi qua Gotenberg để render PDF, sau đó PDF được attach và gửi qua Gmail trong backend workflow.
Uploaded resume dạng base64 PDF được chuyển thành file, extract text rồi text được đưa vào dedicated Resume Evaluation agent để tạo structured report với scores và prioritized recommendations.
Nó tạo output shape ổn định cho application/downstream steps. Tuy nhiên đúng schema hoặc HTML không tự động chứng minh nội dung đúng sự thật, nên candidate information vẫn cần user review.
Không theo architecture này. Generation/evaluation là AI-assisted; PDF rendering và Gmail delivery nằm trong deterministic workflow branches phía backend.
Có về mặt architecture: một client khác gửi cùng HTTP request contract có thể reuse backend capabilities mà không cần duplicate orchestration logic. Production integration vẫn cần authentication, rate limit, file limits và environment-specific controls phù hợp.
Không. Evidence công bố hỗ trợ workflow-backed application prototype với 19 nodes, ba routed flows và ba specialized AI generation tools; không chứng minh production traffic, uptime, concurrency hoặc SLA.
Không. Case không claim ATS pass rate, interview conversion, hiring outcome, model accuracy, time saving hoặc ROI khi chưa có measured evidence tương ứng.