""" Task definitions for NovaTech AI - Series B AI infrastructure startup. CEO: Alex Rivera. Company: NovaTech AI (AI infrastructure, ~80 employees). """ from typing import Dict, Any def get_task_easy() -> Dict[str, Any]: """ Monday Morning Catchup A calm Monday with a few clear priorities. Good agent handles everything well. max_steps: 6 """ return { "task_id": "easy", "task_name": "Monday Morning Catchup", "description": "A manageable Monday inbox. Priorities are clear - handle critical items first.", "objective": "Handle all 3 critical goals: approve production deploy, respond to GlobalBank contract, delegate onboarding signatures.", "constraints": "6 steps maximum. One trivial email can safely be ignored.", "success_condition": "All 3 goals completed. Score >= 0.85 indicates strong performance.", "max_steps": 6, "start_time_slot": 0, "emails": [ { "id": "e1", "sender": "Sarah Chen ", "subject": "URGENT: Production deploy approval needed", "body": ( "Alex, we need your sign-off on the production deploy for v2.4.1. " "It fixes the memory leak that's been degrading API latency by 40% since Friday. " "Engineering is standing by - every hour of delay costs us $3K in compute waste. " "Please reply with approval ASAP so we can push before the morning traffic spike." ), "priority": 5, "urgency": 0.95, }, { "id": "e2", "sender": "David Park ", "subject": "Enterprise contract - GlobalBank review needed", "body": ( "Alex, the GlobalBank contract ($1.2M ARR) is ready for your review. " "Legal has signed off. Their procurement team needs a response by EOD Tuesday " "or they go to a competitor. I've attached the redlines - just need your go-ahead " "to execute. This would be our largest enterprise customer." ), "priority": 4, "urgency": 0.75, }, { "id": "e3", "sender": "Priya Nair ", "subject": "New hire onboarding docs - your signature needed", "body": ( "Hi Alex, we have 3 new engineers starting next Monday. " "I just need your digital signature on the offer letters and NDA templates " "to complete their onboarding packets. No rush today, but would love to have " "these by Wednesday so HR can send welcome packages in time." ), "priority": 3, "urgency": 0.50, }, { "id": "e4", "sender": "Jake Martinez ", "subject": "Office snack order - preferences?", "body": ( "Hey Alex! Planning the monthly office snack order. " "Do you have any preferences for the break room this month? " "I was thinking maybe some healthier options alongside the usual stuff. " "Let me know by Friday, totally non-urgent!" ), "priority": 1, "urgency": 0.10, }, ], "calendar": [ {"time_slot": 3, "title": "Board Sync", "attendee": "Board of Directors", "locked": True}, ], "goals": [ { "id": "g1", "description": "Approve production deploy to fix memory leak", "priority": 5, "required_action": "reply", "target_email_id": "e1", }, { "id": "g2", "description": "Review and approve GlobalBank enterprise contract", "priority": 4, "required_action": "reply", "target_email_id": "e2", }, { "id": "g3", "description": "Handle new hire onboarding signatures", "priority": 3, "required_action": "delegate", "target_email_id": "e3", }, ], } def get_task_medium() -> Dict[str, Any]: """ Investor Demo Day Prep Conflicting high-priority items on demo day. Requires triage and smart delegation. max_steps: 8 """ return { "task_id": "medium", "task_name": "Investor Demo Day Prep", "description": ( "NovaTech's Series B investor demo is today. Multiple P5 items are competing " "for your attention. Smart scheduling and delegation required." ), "objective": "Balance 5 competing goals on investor demo day: schedule investor pre-call, resolve architecture with CTO, align with CFO on runway, sign Sequoia NDA, and approve ML engineer offer.", "constraints": "8 steps for 7 emails. Two locked calendar events limit scheduling windows. Conflicts between P5 items force tradeoffs.", "success_condition": "All 5 goals completed within 8 steps. Score >= 0.80 indicates strong prioritization.", "max_steps": 8, "start_time_slot": 0, "emails": [ { "id": "e1", "sender": "Marcus Williams ", "subject": "URGENT: Pre-demo call - need 30 min before 2PM", "body": ( "Alex, before today's full demo I need a quick 30-min call with you. " "Specifically about the competitive landscape - one of your direct competitors " "just announced a major funding round this morning. I want to hear your positioning " "before I brief my partners. This is important for the partnership discussion." ), "priority": 5, "urgency": 0.95, }, { "id": "e2", "sender": "Sarah Chen ", "subject": "CRITICAL: Architecture review - infra decisions before demo", "body": ( "Alex, I've flagged this twice already - we need a decision on the multi-region " "architecture BEFORE the demo. Investors will ask about our scaling story. " "If we say the wrong thing, it'll contradict the technical deck. " "Need 45 minutes with you today. Can we slot this in the morning?" ), "priority": 5, "urgency": 0.90, }, { "id": "e3", "sender": "Rachel Torres ", "subject": "CFO: Runway concern - cash position update", "body": ( "Alex, reviewed our burn rate with the updated headcount projections. " "We have 8.5 months of runway at current rate, down from 11 months last quarter. " "Before you take on any new commitments in the investor conversation today, " "I need to align with you on the bridge financing contingency. Can we connect?" ), "priority": 4, "urgency": 0.80, }, { "id": "e4", "sender": "Legal ", "subject": "NDA with Sequoia - needs signature today", "body": ( "Hi Alex, standard NDA with Sequoia Capital needs your signature before " "the demo meeting. This is required before we can share our technical roadmap " "and customer data in the presentation. Please sign via DocuSign - link below. " "Takes 2 minutes and is legally necessary." ), "priority": 4, "urgency": 0.85, }, { "id": "e5", "sender": "Tom Bradley ", "subject": "Designer needs brand approval for pitch deck", "body": ( "Hey, our external designer has the final pitch deck revisions ready. " "She needs your approval on the updated brand treatment - specifically the " "new color palette and logo placement on slides 3, 7, and 12. " "Can someone on your team give a thumbs up? I can handle if you delegate." ), "priority": 3, "urgency": 0.60, }, { "id": "e6", "sender": "Amy Liu ", "subject": "Offer letter approval - senior ML engineer", "body": ( "Alex, I have a verbal offer pending for Dr. James Okafor (senior ML engineer, " "ex-Google Brain). He has a competing offer from OpenAI and needs our written " "offer by tomorrow morning. Compensation is within approved bands. " "Just need your approval to proceed - HR can handle the paperwork." ), "priority": 3, "urgency": 0.65, }, { "id": "e7", "sender": "Office Manager ", "subject": "Catering confirmation for demo - allergies list", "body": ( "Hi Alex, just need to confirm the catering order for today's investor visit. " "We have the standard setup but wanted to check if Sequoia team has dietary restrictions. " "I'll just go ahead with the usual if I don't hear back. No action needed from you!" ), "priority": 1, "urgency": 0.15, }, ], "calendar": [ {"time_slot": 1, "title": "Team Standup", "attendee": "Engineering Team", "locked": True}, {"time_slot": 4, "title": "Sequoia Demo Presentation", "attendee": "Marcus Williams", "locked": True}, ], "goals": [ { "id": "g1", "description": "Schedule pre-demo call with Marcus Williams (Sequoia)", "priority": 5, "required_action": "schedule", "target_email_id": "e1", }, { "id": "g2", "description": "Address architecture decision with CTO before demo", "priority": 5, "required_action": "reply", "target_email_id": "e2", }, { "id": "g3", "description": "Align with CFO on runway and bridge contingency", "priority": 4, "required_action": "delegate", "target_email_id": "e3", }, { "id": "g4", "description": "Sign NDA with Sequoia Capital", "priority": 4, "required_action": "reply", "target_email_id": "e4", }, { "id": "g5", "description": "Approve offer letter for Dr. James Okafor", "priority": 3, "required_action": "delegate", "target_email_id": "e6", }, ], } def get_task_hard() -> Dict[str, Any]: """ Series B Crisis Day Cascading crises. Multiple P5 items. Impossible to handle everything perfectly. A great agent scores ~0.65-0.75. Perfect score is intentionally unachievable. max_steps: 8 DESIGN NOTE: This task is intentionally unsolvable to a perfect score. With 7 goals across 10 emails in only 8 steps, no agent can complete everything. This forces meaningful prioritization decisions - the score reflects *which* crises the agent chose to address, not whether it completed all tasks. A score of 0.65-0.75 represents excellent triage under impossible constraints. """ return { "task_id": "hard", "task_name": "Series B Crisis Day", "description": ( "Everything is happening at once. Four P5 crises are competing for your " "8 available steps. Ruthless triage is required. You CANNOT handle everything." ), "objective": "Triage 7 competing goals across 10 emails in 8 steps. Prioritize by impact: investor term sheet > DB rollback > PR crisis > GDPR deadline.", "constraints": ( "8 steps for 10 emails with 7 goals - mathematically impossible to complete all. " "This is intentional: the task measures ruthless prioritization, not completion rate. " "Perfect score is not achievable by design. Score 0.65-0.75 = excellent performance." ), "success_condition": "Handle the 4 highest-priority P5 goals (investor, DB, PR, GDPR). Score >= 0.65 indicates strong triage.", "max_steps": 8, "start_time_slot": 0, "emails": [ { "id": "e1", "sender": "Marcus Williams ", "subject": "URGENT: Term sheet - pulling out unless we talk TODAY", "body": ( "Alex, I'm going to be direct. After this morning's news about Vertex AI's " "competitive product launch, my partners are getting cold feet on NovaTech. " "I need to speak with you TODAY - before 4PM - to understand your differentiation " "strategy or we are pulling the $18M term sheet. This is not a negotiating tactic. " "Please call me immediately: +1-415-555-0142." ), "priority": 5, "urgency": 0.98, }, { "id": "e2", "sender": "Sarah Chen ", "subject": "CRITICAL: Production database corruption - customers affected", "body": ( "Alex, we have a P0 incident. PostgreSQL replication lag caused data inconsistency " "on our primary cluster. 23 enterprise customers are experiencing incorrect API responses. " "We've isolated the issue but need your authorization to execute the emergency rollback " "procedure - it will take the platform offline for ~45 minutes. Revenue impact: ~$85K/hour. " "Awaiting your go-ahead. The longer we wait, the worse the customer impact." ), "priority": 5, "urgency": 0.97, }, { "id": "e3", "sender": "Jordan Kim ", "subject": "I'm resigning - effective in 2 weeks", "body": ( "Alex, I've decided to accept an offer at Anthropic. I know the timing is terrible " "with the Series B, but I need to do what's right for my career. I'll give you a " "full 2 weeks and do everything I can to transition my work - I'm leading the " "inference optimization project and the enterprise API roadmap. I'm happy to discuss " "how to minimize impact. Please let me know when you can talk." ), "priority": 5, "urgency": 0.85, }, { "id": "e4", "sender": "PR Crisis Line ", "subject": "TechCrunch article going live in 2 hours - security breach allegation", "body": ( "Alex - TechCrunch is publishing an article in 2 hours alleging NovaTech had " "a security breach exposing customer model weights. This appears to be based on " "a disgruntled former contractor's claims, which are false. However, without a " "statement from you, they will publish uncontested. We need a quote from the CEO " "within 90 minutes. Legal is on standby. Please respond immediately." ), "priority": 5, "urgency": 0.96, }, { "id": "e5", "sender": "Elena Vasquez ", "subject": "Co-founder disagreement - need to resolve before board meeting", "body": ( "Alex, I need to talk before the board meeting Thursday. I fundamentally disagree " "with the enterprise pivot - I think we're abandoning the developer community that " "got us here for short-term ARR. I've prepared a counter-proposal. If we can't align, " "I may need to raise this in front of the board. Can we get 30 minutes this week?" ), "priority": 4, "urgency": 0.70, }, { "id": "e6", "sender": "Legal ", "subject": "GDPR data deletion request - 72-hour deadline expires at 5PM", "body": ( "Alex, we have a GDPR Article 17 data deletion request from EU customer Hoffmann GmbH. " "The 72-hour response clock expires at 5PM today. Failure to respond opens us to " "a €20M fine or 4% of annual revenue. Engineering needs your authorization to " "execute the deletion script in production. This is a legal obligation - not optional." ), "priority": 4, "urgency": 0.92, }, { "id": "e7", "sender": "Vendor Relations ", "subject": "AWS contract renewal - expires midnight tonight", "body": ( "Alex, our AWS Enterprise Agreement expires tonight at midnight. If we don't renew, " "we revert to on-demand pricing - cost jumps from $180K/mo to $340K/mo immediately. " "Procurement needs a signed PO before 6PM. I've reviewed the terms and they're " "acceptable. Just need your authorization to proceed." ), "priority": 3, "urgency": 0.80, }, { "id": "e8", "sender": "BD Team ", "subject": "Acquisition offer from Microsoft - NDA required to review", "body": ( "Alex, Microsoft's Corp Dev team has reached out about an acquisition conversation. " "They've indicated interest in the $400-600M range based on public info. " "They want us to sign an NDA to share more details. I know the timing with Series B " "is complex, but wanted you to know this exists. Your call on how to proceed." ), "priority": 3, "urgency": 0.40, }, { "id": "e9", "sender": "People Ops ", "subject": "Employee complaint escalation - needs response by EOW", "body": ( "Alex, we've received a formal complaint from two engineers about management practices " "in the infrastructure team. This has been escalated past the manager level and now " "requires executive acknowledgment. I can handle the investigation entirely - " "just need you to sign off that it's being addressed officially. No urgency today." ), "priority": 2, "urgency": 0.30, }, { "id": "e10", "sender": "Office Manager ", "subject": "Office lease renewal - decision needed this month", "body": ( "Hi Alex, our SF office lease is up for renewal in 6 weeks. Landlord wants a " "decision on whether we're renewing (3-year term, 8% increase) or vacating. " "With the Series B timeline, I'm not sure what our headcount plans are. " "Can we schedule time this week to discuss? No rush today." ), "priority": 1, "urgency": 0.10, }, ], "calendar": [ {"time_slot": 1, "title": "Incident Review (P0)", "attendee": "Engineering", "locked": True}, {"time_slot": 3, "title": "Investor Check-in", "attendee": "Marcus Williams", "locked": True}, {"time_slot": 5, "title": "Board Prep Call", "attendee": "Board", "locked": True}, ], "goals": [ { "id": "g1", "description": "Respond to Sequoia investor to save the $18M term sheet", "priority": 5, "required_action": "reply", "target_email_id": "e1", }, { "id": "g2", "description": "Authorize emergency DB rollback to stop customer impact", "priority": 5, "required_action": "reply", "target_email_id": "e2", }, { "id": "g3", "description": "Provide PR statement to stop TechCrunch breach article", "priority": 5, "required_action": "reply", "target_email_id": "e4", }, { "id": "g4", "description": "Authorize GDPR deletion before 5PM legal deadline", "priority": 4, "required_action": "reply", "target_email_id": "e6", }, { "id": "g5", "description": "Authorize AWS contract renewal before midnight", "priority": 3, "required_action": "delegate", "target_email_id": "e7", }, { "id": "g6", "description": "Acknowledge co-founder disagreement before board meeting", "priority": 4, "required_action": "schedule", "target_email_id": "e5", }, { "id": "g7", "description": "Respond to key engineer resignation", "priority": 5, "required_action": "reply", "target_email_id": "e3", }, ], } TASKS = { "easy": get_task_easy, "medium": get_task_medium, "hard": get_task_hard, } def get_task(task_id: str) -> Dict[str, Any]: if task_id not in TASKS: raise ValueError(f"Unknown task: {task_id}. Valid: {list(TASKS.keys())}") return TASKS[task_id]()