Skip to content

Feature/resume context workflow#38

Open
antmikinka wants to merge 4 commits intomainfrom
feature/resume-context-workflow
Open

Feature/resume context workflow#38
antmikinka wants to merge 4 commits intomainfrom
feature/resume-context-workflow

Conversation

@antmikinka
Copy link
Contributor

Adding the Resume back into the context of the interviewer so more personally tailored questions.
Was initially implemented but encountered a bug and wrongfully removed it from everywhere as a simple fix to work on later.

AI Assistant added 4 commits March 12, 2026 15:36
…safeguards

Restores resume analysis to persona generation and live interviews after removal due to name-confusion bug (commit 12485dd). Implements defense-in-depth with data-level and prompt-level protections.

- LemonadeClient.ts: Upgrade MODEL_CTX_WINDOW 16384 -> 32768, export derived token budget constants
- PromptManager.ts: Add resume: string parameter to prompt methods
- PersonaGeneratorService.ts: Add stripResumeHeader() preprocessor, pass resume to LLM
- InterviewService.ts: Use derived token constants, add resume to withPersona call
- prompts.json: Add name safeguard, signal-carrier directives, RESUME blocks, CONDITION blocks

32K context provides 6x headroom for resume + history without truncation.

Made-with: Cursor
Job description intelligence is already encoded in persona fields (q1Topic,
primaryProbeArea, mustCoverTopic1/2/3) during persona generation. Including
raw JD in interview system prompt adds ~2000 tokens with zero functional gain.

- prompts.json: Replace JD block with <candidate_context> in fallback
- InterviewService: Remove jobDescription from documents param, session, logs
- PromptManager: Remove jobDescription from fallback variables
- main.ts: Stop fetching/passing JD to startInterview

Saves ~2000 tokens per interview turn, reducing TTFT by ~100ms.
Refs: docs/07_context-optimization-analysis.md

Made-with: Cursor
Fixes the bug where resuming an interview lost the persona, causing fallback
to generic interviewer. Now personaId is stored on interview creation and restored
on resume.

- types/index.ts: Add personaId?: string to Interview interface
- main.ts: Store personaId when creating interview
- InterviewService: Add PersonaRepository, restore persona in resumeInterview()

This enables eventual removal of the fallback prompt scenario.
Refs: docs/08_fallback-analysis-and-removal-plan.md

Made-with: Cursor
- Add personaId field to Interview type and repository
- Store personaId when creating interview in main.ts
- Add interview:resume IPC handler to restore persona on resume
- Wire up resumeInterview in Dashboard.tsx on interview click
- Add console logging for resume flow verification

Fixes issue where resuming an interview would always use fallback
prompt instead of restoring the generated persona.

Made-with: Cursor
@antmikinka antmikinka added the enhancement New feature or request label Mar 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant