{"id":"hr-onboarding-tasks-to-json","audience":"hr","category":"people-work","track":"people","level":"advanced","technique":"format","title":"Convert onboarding task notes into a JSON block","free":false,"task":"Turn the notes into one JSON array in a single code block, with nothing else before or after the code block, one object per line (no pretty-printing). Each object has exactly these keys in this order: task, owner, due, status. Use ISO dates (YYYY-MM-DD, year 2026). Status is \"done\" or \"open\" only. Owner is the first name only; if the notes name no owner, use \"unassigned\". If a due date is missing, use null. Sort by due date, earliest first, with null dates last. Use only tasks in the notes. At most 8 tasks.","materialLabel":"Onboarding tracker notes (attached to your prompt automatically)","material":"Hire: Nia Fernandez, start Dec 1, 2026. Notes from the People Team stand-up (Nov 6):\n\n- Offer letter signed, done Oct 28. Owner: Hana Ito.\n- Background check: Hana says it's cleared, so done. Completed Nov 2.\n- Order laptop and monitor. Owner IT (Rob Vance). Due Nov 20. Not yet ordered.\n- Create email account. Owner Rob. Due Nov 27.\n- Add Nia to payroll and benefits system. Owner Hana, due Nov 24. In progress.\n- Manager (Elan Ward) to write the 30-60-90 plan. No due date set.\n- Send the welcome email with first-day details. Owner Hana, due Nov 25.\n- Book a first-week team lunch. Nobody has taken it; wanted by Nov 27.\n- Parking: Nia says she'll bike. Nothing to do.\n- Team swag bag - maybe, nobody owns it. Skip.\n\"In progress\" counts as open. For done tasks use the date it was done as the due value.","rules":[{"type":"codeBlocks","count":1},{"type":"maxCodeLines","max":10},{"type":"maxProseWords","max":3}],"mistakes":[{"title":"Prose around the JSON","why":"The AI adds an intro and notes.","fix":"Say: \"Output only the code block.\"","checks":["maxProseWords","codeBlocks"]},{"title":"Wrong owner or dates","why":"The AI writes 'Nov 20' or full names.","fix":"Say: \"ISO dates, first names only, unassigned if none, null if no date.\"","checks":["r1"]},{"title":"Unsorted or extra tasks","why":"The AI keeps note order and adds parking or swag.","fix":"Say: \"Sort by due date earliest first, nulls last. Skip parking and swag.\"","checks":["r2"]},{"title":"Extra keys","why":"The AI adds notes keys or reorders them.","fix":"Say: \"Exactly four keys in this order.\"","checks":["r0","maxCodeLines"]}],"promptHints":[{"label":"One JSON block","patterns":["json","code block"]},{"label":"Exact keys","patterns":["task","owner","due","status"]},{"label":"ISO dates","patterns":["iso","yyyy-mm-dd"]},{"label":"Owner rule","patterns":["first name","unassigned"]},{"label":"Sort order","patterns":["sort","earliest first","null"]}],"hint":"Name the keys, the date format, the allowed statuses and what to do with missing dates.","mission":"List the onboarding tasks, owners and due dates from the notes.","musts":["One JSON array","Missing owner: unassigned","Max 8 tasks"],"rubricLabels":["The code block holds a JSON array whose objects have exactly the keys task, owner, due, status in that order and nothing else","Owners are first names only (Hana, Rob, Elan), the team lunch owner is \"unassigned\", dates are ISO 2026 form, and the 30-60-90 plan has due null","Done tasks have status done (offer letter, background check) and in-progress payroll is open, objects are sorted by due date earliest first with the null one last, and there is no parking or swag task"]}