{"id":"rec-candidate-pipeline-csv-export","audience":"recruiting","category":"people-work","track":"people","level":"advanced","technique":"format","title":"Turn a recruiter's messy pipeline notes into a CSV","free":false,"task":"Convert the notes into CSV in one code block with the header: name,role,stage,next_step,date. One row per candidate, the stage must be one of: screen, interview, final, offer. Use dates as YYYY-MM-DD (year 2026) or leave blank when none. Write nothing outside the code block. Sort rows by date, earliest first, with blank dates last. next_step is lowercase and under 4 words. Do not include candidates who withdrew or were rejected.","materialLabel":"Recruiter's pipeline notes (attached to your prompt automatically)","material":"Pipeline as of Nov 9 (Riya):\n- Lena Park, Data Analyst: had the recruiter screen; hiring manager interview set for Nov 12.\n- Tomas Wright, Data Analyst: in final panel, next is reference checks, no date.\n- Aman Gill, Data Analyst: withdrew Nov 5 (took another job).\n- Sophie Dubois, Data Analyst: rejected after interview Nov 3.\n- Marcus Lee, Product Designer: offer going out, expected Nov 13.\n- Priyanka Rao, Product Designer: on the hiring manager interview stage, scheduling for the week of Nov 16, date not set.\n- Jonah Fields, Product Designer: recruiter screen booked Nov 11.\n\nNotes: Lena's first name is sometimes spelled Lina in the ATS, correct is Lena. \"Final\" means final panel done or scheduled.","rules":[{"type":"codeBlocks","count":1},{"type":"maxCodeLines","max":12},{"type":"maxProseWords","max":5}],"mistakes":[{"title":"Including withdrawn","why":"The AI keeps Aman and Sophie.","fix":"Say: \"Do not include candidates who withdrew or were rejected.\"","checks":["r2"]},{"title":"Free-text stages","why":"The AI writes 'hiring manager interview'.","fix":"Say: \"Stage is one of screen, interview, final, offer.\"","checks":["r1"]},{"title":"Explanations outside","why":"The AI adds notes after the CSV.","fix":"Say: \"Write nothing outside the code block.\"","checks":["maxProseWords","codeBlocks","maxCodeLines"]},{"title":"Wrong header","why":"The AI changes column names.","fix":"Say: \"Header exactly name,role,stage,next_step,date.\"","checks":["r0"]}],"promptHints":[{"label":"CSV header","patterns":["name,role,stage,next_step,date"]},{"label":"Allowed stages","patterns":["screen","interview","final","offer"]},{"label":"ISO dates","patterns":["yyyy-mm-dd"]},{"label":"Skip inactive","patterns":["withdrew","rejected"]},{"label":"Only the block","patterns":["nothing outside","only the code block"]}],"hint":"Give the header, allowed stage values and date format, and say who to exclude.","mission":"Show where each active candidate stands in the pipeline.","musts":["One CSV code block","Skip withdrawn and rejected","Stage from four options"],"rubricLabels":["The code block has the header name,role,stage,next_step,date and one row per active candidate (5 rows) with five comma-separated fields each","Stage values are only screen, interview, final or offer, dates are in 2026-MM-DD form or blank, next_step is lowercase and under 4 words, and rows are sorted by date earliest first with blank dates last (Lena 2026-11-12, Jonah 2026-11-11 first, then Marcus 2026-11-13, then blanks)","Aman and Sophie are not included, and the name is spelled Lena Park"]}